You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

832 lines
42 KiB

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <odoo>
  3. <template id="general_ledger">
  4. <t t-call="web.html_container">
  5. <t t-foreach="docs" t-as="o">
  6. <t t-call="account_financial_report.internal_layout">
  7. <t t-call="account_financial_report.report_general_ledger_base" />
  8. </t>
  9. </t>
  10. </t>
  11. </template>
  12. <template id="report_general_ledger_base">
  13. <!-- Saved flag fields into variables, used to define columns display -->
  14. <t t-set="foreign_currency" t-value="foreign_currency" />
  15. <t t-set="filter_partner_ids" t-value="filter_partner_ids" />
  16. <!-- Defines global variables used by internal layout -->
  17. <t t-set="title">General Ledger - <t t-raw="company_name" /> - <t
  18. t-raw="currency_name"
  19. /></t>
  20. <div class="page">
  21. <div class="row">
  22. <h4
  23. class="mt0"
  24. t-esc="title or 'Odoo Report'"
  25. style="text-align: center;"
  26. />
  27. </div>
  28. <!-- Display filters -->
  29. <t t-call="account_financial_report.report_general_ledger_filters" />
  30. <t t-foreach="general_ledger" t-as="account">
  31. <div class="page_break">
  32. <!-- Display account header -->
  33. <div class="act_as_table list_table" style="margin-top: 10px;" />
  34. <div class="act_as_caption account_title" style="width: 100%">
  35. <span
  36. t-esc="o._get_atr_from_dict(account['id'], accounts_data, 'code')"
  37. /> -
  38. <span
  39. t-esc="o._get_atr_from_dict(account['id'], accounts_data, 'name')"
  40. />
  41. </div>
  42. <t t-if="not account['partners']">
  43. <!-- Display account move lines without partner regroup -->
  44. <t t-set="type" t-value='"account_type"' />
  45. <t
  46. t-call="account_financial_report.report_general_ledger_lines"
  47. >
  48. <t t-set="account_or_partner_object" t-value="account" />
  49. </t>
  50. <!-- Display account footer -->
  51. <t
  52. t-call="account_financial_report.report_general_ledger_ending_cumul"
  53. >
  54. <t t-set="account_or_partner_object" t-value="account" />
  55. <t t-set="type" t-value='"account_type"' />
  56. </t>
  57. </t>
  58. <t t-if="account['partners']">
  59. <!-- Display account partners -->
  60. <t t-foreach="account['list_partner']" t-as="partner">
  61. <t t-set="type" t-value='"partner_type"' />
  62. <div class="page_break">
  63. <!-- Display partner header -->
  64. <div class="act_as_caption account_title">
  65. <span
  66. t-esc="o._get_atr_from_dict(partner['id'], partners_data, 'name')"
  67. />
  68. </div>
  69. <!-- Display partner move lines -->
  70. <t
  71. t-call="account_financial_report.report_general_ledger_lines"
  72. >
  73. <t
  74. t-set="account_or_partner_object"
  75. t-value="partner"
  76. />
  77. </t>
  78. <!-- Display partner footer -->
  79. <t
  80. t-call="account_financial_report.report_general_ledger_ending_cumul"
  81. >
  82. <t
  83. t-set="account_or_partner_object"
  84. t-value="partner"
  85. />
  86. <t t-set="type" t-value='"partner_type"' />
  87. </t>
  88. <!-- Display account footer -->
  89. <t t-if="not filter_partner_ids">
  90. <t
  91. t-call="account_financial_report.report_general_ledger_ending_cumul"
  92. >
  93. <t
  94. t-set="account_or_partner_object"
  95. t-value="account"
  96. />
  97. <t t-set="type" t-value='"account_type"' />
  98. </t>
  99. </t>
  100. </div>
  101. </t>
  102. </t>
  103. </div>
  104. </t>
  105. </div>
  106. </template>
  107. <template id="account_financial_report.report_general_ledger_filters">
  108. <div class="act_as_table data_table" style="width: 100%;">
  109. <div class="act_as_row labels">
  110. <div class="act_as_cell">Date range filter</div>
  111. <div class="act_as_cell">Target moves filter</div>
  112. <div class="act_as_cell">Account balance at 0 filter</div>
  113. <div class="act_as_cell">Centralize filter</div>
  114. <div class="act_as_cell">Show analytic tags</div>
  115. </div>
  116. <div class="act_as_row">
  117. <div class="act_as_cell">
  118. From: <span t-esc="date_from" /> To: <span t-esc="date_to" />
  119. </div>
  120. <div class="act_as_cell">
  121. <t t-if="only_posted_moves">All posted entries</t>
  122. <t t-if="not only_posted_moves">All entries</t>
  123. </div>
  124. <div class="act_as_cell">
  125. <t t-if="hide_account_at_0">Hide</t>
  126. <t t-if="not hide_account_at_0">Show</t>
  127. </div>
  128. <div class="act_as_cell">
  129. <t t-if="centralize">Yes</t>
  130. <t t-if="not centralize">No</t>
  131. </div>
  132. <div class="act_as_cell">
  133. <t t-if="show_analytic_tags">Yes</t>
  134. <t t-if="not show_analytic_tags">No</t>
  135. </div>
  136. </div>
  137. </div>
  138. </template>
  139. <template id="account_financial_report.report_general_ledger_lines">
  140. <div class="act_as_table data_table" style="width: 100%;">
  141. <!-- Display table headers for lines -->
  142. <div class="act_as_thead">
  143. <div class="act_as_row labels">
  144. <!--## date-->
  145. <div class="act_as_cell first_column" style="width: 3.51%;">
  146. Date</div>
  147. <!--## move-->
  148. <div class="act_as_cell" style="width: 8.03%">Entry</div>
  149. <!--## journal-->
  150. <div class="act_as_cell" style="width: 4.13%;">Journal</div>
  151. <!--## account code-->
  152. <div class="act_as_cell" style="width: 4.75%;">Account</div>
  153. <!--## account code-->
  154. <div class="act_as_cell" style="width: 8.89%;">Taxes</div>
  155. <!--## partner-->
  156. <div class="act_as_cell" style="width: 12.01%;">Partner
  157. </div>
  158. <!--## ref - label-->
  159. <div class="act_as_cell" style="width: 16.9%;">Ref -
  160. Label</div>
  161. <t t-if="show_cost_center">
  162. <!--## cost_center-->
  163. <div class="act_as_cell" style="width: 8.03%;">Cost
  164. center</div>
  165. </t>
  166. <t t-if="show_analytic_tags">
  167. <!--## analytic tags-->
  168. <div class="act_as_cell" style="width: 4.75%;">Tags</div>
  169. </t>
  170. <!--## matching_number-->
  171. <div class="act_as_cell" style="width: 2.41%;">Rec.</div>
  172. <!--## debit-->
  173. <div class="act_as_cell amount" style="width: 8.02%;">Debit</div>
  174. <!--## credit-->
  175. <div class="act_as_cell amount" style="width: 8.02%;">Credit</div>
  176. <!--## balance cumulated-->
  177. <div class="act_as_cell amount" style="width: 8.02%;">Cumul. Bal.</div>
  178. <t t-if="foreign_currency">
  179. <!--## currency_name-->
  180. <div class="act_as_cell" style="width: 2.08%;">Cur.</div>
  181. <!--## amount_currency-->
  182. <div
  183. class="act_as_cell amount"
  184. style="width: 5.19%;"
  185. >Amount cur.</div>
  186. </t>
  187. </div>
  188. </div>
  189. <!-- Display first line with initial balance -->
  190. <div class="act_as_row lines">
  191. <!--## date-->
  192. <div class="act_as_cell" />
  193. <!--## move-->
  194. <div class="act_as_cell" />
  195. <!--## journal-->
  196. <div class="act_as_cell" />
  197. <!--## account code-->
  198. <div class="act_as_cell" />
  199. <!--## taxes-->
  200. <div class="act_as_cell" />
  201. <!--## partner-->
  202. <div class="act_as_cell" />
  203. <!--## ref - label-->
  204. <div class="act_as_cell amount">Initial balance</div>
  205. <t t-if="show_cost_center">
  206. <!--## cost_center-->
  207. <div class="act_as_cell" />
  208. </t>
  209. <t t-if="show_analytic_tags">
  210. <!--## analytic tags-->
  211. <div class="act_as_cell" />
  212. </t>
  213. <!--## matching_number-->
  214. <div class="act_as_cell" />
  215. <!--## debit-->
  216. <div class="act_as_cell amount">
  217. <t t-if="type == 'account_type'">
  218. <t
  219. t-set="domain"
  220. t-value="[('account_id', '=', account['id']),
  221. ('date', '&lt;', date_from),
  222. ('debit', '&lt;&gt;', 0)]"
  223. />
  224. <span>
  225. <a
  226. t-att-data-domain="domain"
  227. t-att-data-res-model="'account.move.line'"
  228. class="o_account_financial_reports_web_action_monetary_multi"
  229. style="color: black;"
  230. >
  231. <t
  232. t-raw="account_or_partner_object['init_bal']['debit']"
  233. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  234. />
  235. </a>
  236. </span>
  237. </t>
  238. <t t-if="type == 'partner_type'">
  239. <t
  240. t-set="domain"
  241. t-value="[('account_id', '=', account['id']),
  242. ('partner_id', '=', partner['id']),
  243. ('date', '&lt;', date_from),
  244. ('debit', '&lt;&gt;', 0)]"
  245. />
  246. <span>
  247. <a
  248. t-att-data-domain="domain"
  249. t-att-data-res-model="'account.move.line'"
  250. class="o_account_financial_reports_web_action_monetary_multi"
  251. style="color: black;"
  252. >
  253. <t
  254. t-raw="account_or_partner_object['init_bal']['debit']"
  255. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  256. />
  257. </a>
  258. </span>
  259. </t>
  260. </div>
  261. <!--## credit-->
  262. <div class="act_as_cell amount">
  263. <t t-if="type == 'account_type'">
  264. <t
  265. t-set="domain"
  266. t-value="[('account_id', '=', account['id']),
  267. ('date', '&lt;', date_from),
  268. ('credit', '&lt;&gt;', 0)]"
  269. />
  270. <span>
  271. <a
  272. t-att-data-domain="domain"
  273. t-att-data-res-model="'account.move.line'"
  274. class="o_account_financial_reports_web_action_monetary_multi"
  275. style="color: black;"
  276. >
  277. <t
  278. t-raw="account_or_partner_object['init_bal']['credit']"
  279. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  280. />
  281. </a>
  282. </span>
  283. </t>
  284. <t t-if="type == 'partner_type'">
  285. <t
  286. t-set="domain"
  287. t-value="[('account_id', '=', account['id']),
  288. ('partner_id', '=', partner['id']),
  289. ('date', '&lt;', date_from),
  290. ('credit', '&lt;&gt;', 0)]"
  291. />
  292. <span>
  293. <a
  294. t-att-data-domain="domain"
  295. t-att-data-res-model="'account.move.line'"
  296. class="o_account_financial_reports_web_action_monetary_multi"
  297. style="color: black;"
  298. >
  299. <t
  300. t-raw="account_or_partner_object['init_bal']['credit']"
  301. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  302. />
  303. </a>
  304. </span>
  305. </t>
  306. </div>
  307. <!--## balance cumulated-->
  308. <div class="act_as_cell amount">
  309. <t t-if="type == 'account_type'">
  310. <t
  311. t-set="domain"
  312. t-value="[('account_id', '=', account['id']),
  313. ('date', '&lt;', date_from)]"
  314. />
  315. <span>
  316. <a
  317. t-att-data-domain="domain"
  318. t-att-data-res-model="'account.move.line'"
  319. class="o_account_financial_reports_web_action_monetary_multi"
  320. style="color: black;"
  321. >
  322. <t
  323. t-raw="account_or_partner_object['init_bal']['balance']"
  324. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  325. />
  326. </a>
  327. </span>
  328. </t>
  329. <t t-if="type == 'partner_type'">
  330. <t
  331. t-set="domain"
  332. t-value="[('account_id', '=', account['id']),
  333. ('partner_id', '=', partner['id']),
  334. ('date', '&lt;', date_from)]"
  335. />
  336. <span>
  337. <a
  338. t-att-data-domain="domain"
  339. t-att-data-res-model="'account.move.line'"
  340. class="o_account_financial_reports_web_action_monetary_multi"
  341. style="color: black;"
  342. >
  343. <t
  344. t-raw="account_or_partner_object['init_bal']['balance']"
  345. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  346. />
  347. </a>
  348. </span>
  349. </t>
  350. </div>
  351. <t t-if="foreign_currency">
  352. <t
  353. t-if="o._get_atr_from_dict(account['id'], accounts_data, 'currency_id')"
  354. >
  355. <div class="act_as_cell amount" style="width: 2.08%;">
  356. <span
  357. t-field="o._get_atr_from_dict(account['id'], accounts_data, 'currency_name')"
  358. />
  359. </div>
  360. <div class="act_as_cell amount" style="width: 5.19%;">
  361. <t t-if="type == 'account_type'">
  362. <t
  363. t-set="domain"
  364. t-value="[('account_id', '=', account['id']),
  365. ('date', '&lt;', o.date_from)]"
  366. />
  367. <span>
  368. <a
  369. t-att-data-domain="domain"
  370. t-att-data-res-model="'account.move.line'"
  371. class="o_account_financial_reports_web_action_monetary_multi"
  372. style="color: black;"
  373. >
  374. <t
  375. t-raw="account_or_partner_object['init_bal']['bal_curr']"
  376. t-options="{'widget': 'monetary', 'display_currency': account.account_id.currency_id}"
  377. />
  378. </a>
  379. </span>
  380. </t>
  381. <t t-if="type == 'partner_type'">
  382. <t
  383. t-set="domain"
  384. t-value="[('account_id', '=', account['id']),
  385. ('partner_id', '=', partner['id']),
  386. ('date', '&lt;', o.date_from)]"
  387. />
  388. <span>
  389. <a
  390. t-att-data-domain="domain"
  391. t-att-data-res-model="'account.move.line'"
  392. class="o_account_financial_reports_web_action_monetary_multi"
  393. style="color: black;"
  394. >
  395. <t
  396. t-raw="account_or_partner_object['init_bal']['bal_curr']"
  397. t-options="{'widget': 'monetary', 'display_currency': account.account_id.currency_id}"
  398. />
  399. </a>
  400. </span>
  401. </t>
  402. </div>
  403. </t>
  404. <t
  405. t-if="not o._get_atr_from_dict(account['id'], accounts_data, 'currency_id')"
  406. >
  407. <div class="act_as_cell" style="width: 2.08%;" />
  408. <div class="act_as_cell" style="width: 5.19%;" />
  409. </t>
  410. </t>
  411. </div>
  412. <!-- Display each lines -->
  413. <t t-foreach="account_or_partner_object['move_lines']" t-as="line">
  414. <!-- # lines or centralized lines -->
  415. <div class="act_as_row lines">
  416. <!--## date-->
  417. <div class="act_as_cell left">
  418. <t t-set="res_model" t-value="'account.move.line'" />
  419. <span>
  420. <t t-if="line['id']">
  421. <a
  422. t-att-data-active-id="line['id']"
  423. t-att-data-res-model="res_model"
  424. class="o_account_financial_reports_web_action"
  425. style="color: black;"
  426. >
  427. <!--## We don't use t-field because it throws an error on click -->
  428. <t
  429. t-esc="line['date']"
  430. t-options="{'widget': 'date'}"
  431. />
  432. </a>
  433. </t>
  434. <t t-if="not line['id']">
  435. <a
  436. class="o_account_financial_reports_web_action"
  437. style="color: black;"
  438. >
  439. <!--## We don't use t-field because it throws an error on click -->
  440. <t
  441. t-esc="line['date']"
  442. t-options="{'widget': 'date'}"
  443. />
  444. </a>
  445. </t>
  446. </span>
  447. </div>
  448. <!--## move-->
  449. <div class="act_as_cell left">
  450. <t t-set="res_model" t-value="'account.move'" />
  451. <t t-if="line['entry_id']">
  452. <span>
  453. <a
  454. t-att-data-active-id="line['entry_id']"
  455. t-att-data-res-model="res_model"
  456. class="o_account_financial_reports_web_action"
  457. style="color: black;"
  458. >
  459. <t t-raw="line['entry']" />
  460. </a>
  461. </span>
  462. </t>
  463. </div>
  464. <!--## journal-->
  465. <div class="act_as_cell left">
  466. <t t-set="res_model" t-value="'account.journal'" />
  467. <span>
  468. <a
  469. t-att-data-active-id="line['journal_id']"
  470. t-att-data-res-model="res_model"
  471. class="o_account_financial_reports_web_action"
  472. style="color: black;"
  473. >
  474. <t
  475. t-raw="o._get_atr_from_dict(line['journal_id'], journals_data, 'code')"
  476. />
  477. </a>
  478. </span>
  479. </div>
  480. <!--## account code-->
  481. <div class="act_as_cell left">
  482. <t t-set="res_model" t-value="'account.account'" />
  483. <span>
  484. <a
  485. t-att-data-active-id="account['id']"
  486. t-att-data-res-model="res_model"
  487. class="o_account_financial_reports_web_action"
  488. style="color: black;"
  489. >
  490. <t
  491. t-raw="o._get_atr_from_dict(account['id'], accounts_data, 'code')"
  492. />
  493. </a>
  494. </span>
  495. </div>
  496. <!--## taxes-->
  497. <div class="act_as_cell left">
  498. <t t-if="taxes_data and line['tax_ids']">
  499. <t t-foreach="line['tax_ids']" t-as="tax_id">
  500. <span
  501. t-esc="o._get_atr_from_dict(tax_id, taxes_data, 'amount')"
  502. />
  503. <span
  504. t-esc="o._get_atr_from_dict(tax_id, taxes_data, 'string')"
  505. />
  506. </t>
  507. </t>
  508. </div>
  509. <!--## partner-->
  510. <div class="act_as_cell left">
  511. <t t-set="res_model" t-value="'res.partner'" />
  512. <span t-if="line['partner_id']">
  513. <a
  514. t-att-data-active-id="line['partner_id']"
  515. t-att-data-res-model="res_model"
  516. class="o_account_financial_reports_web_action"
  517. style="color: black;"
  518. >
  519. <t t-raw="line['partner_name']" />
  520. </a>
  521. </span>
  522. </div>
  523. <!--## ref - label-->
  524. <div class="act_as_cell left">
  525. <t t-set="res_model" t-value="'account.move.line'" />
  526. <t t-if="line['id']">
  527. <span>
  528. <a
  529. t-att-data-active-id="line['id']"
  530. t-att-data-res-model="res_model"
  531. class="o_account_financial_reports_web_action"
  532. style="color: black;"
  533. >
  534. <t t-raw="line['ref']" />
  535. </a>
  536. </span>
  537. </t>
  538. <t t-if="not line['id']">
  539. <span>
  540. <a
  541. class="o_account_financial_reports_web_action"
  542. style="color: black;"
  543. >
  544. <t t-raw="line['ref']" />
  545. </a>
  546. </span>
  547. </t>
  548. </div>
  549. <!--## cost_center-->
  550. <t t-if="show_cost_center">
  551. <div class="act_as_cell left">
  552. <t t-set="res_model" t-value="'account.analytic.account'" />
  553. <span t-if="line.cost_center">
  554. <a
  555. t-att-data-active-id="line.move_line_id.analytic_account_id.id"
  556. t-att-data-res-model="res_model"
  557. class="o_account_financial_reports_web_action"
  558. style="color: black;"
  559. >
  560. <t t-raw="line.cost_center" />
  561. </a>
  562. </span>
  563. </div>
  564. </t>
  565. <t t-if="show_analytic_tags">
  566. <!--## analytic tags-->
  567. <div class="act_as_cell left">
  568. <t t-if="line['tag_ids']">
  569. <t t-foreach="line['tag_ids']" t-as="tag_id">
  570. <span
  571. t-esc="o._get_atr_from_dict(tag_id, tags_data, 'name')"
  572. />
  573. </t>
  574. </t>
  575. </div>
  576. </t>
  577. <!--## matching_number-->
  578. <div class="act_as_cell">
  579. <t t-set="res_model" t-value="'account.full.reconcile'" />
  580. <span t-if="line['rec_id']">
  581. <a
  582. t-att-data-active-id="line['rec_id']"
  583. t-att-data-res-model="res_model"
  584. class="o_account_financial_reports_web_action"
  585. style="color: black;"
  586. >
  587. <t t-raw="line['rec_name']" />
  588. </a>
  589. </span>
  590. </div>
  591. <!--## debit-->
  592. <div class="act_as_cell amount">
  593. <t t-set="res_model" t-value="'account.move.line'" />
  594. <t t-if="line['id']">
  595. <span>
  596. <a
  597. t-att-data-active-id="line['id']"
  598. t-att-data-res-model="res_model"
  599. class="o_account_financial_reports_web_action_monetary"
  600. style="color: black;"
  601. >
  602. <t
  603. t-raw="line['debit']"
  604. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  605. />
  606. </a>
  607. </span>
  608. </t>
  609. <t t-if="not line['id']">
  610. <span>
  611. <a
  612. class="o_account_financial_reports_web_action_monetary"
  613. style="color: black;"
  614. >
  615. <t
  616. t-raw="line['debit']"
  617. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  618. />
  619. </a>
  620. </span>
  621. </t>
  622. </div>
  623. <!--## credit-->
  624. <div class="act_as_cell amount">
  625. <t t-set="res_model" t-value="'account.move.line'" />
  626. <t t-if="line['id']">
  627. <span>
  628. <a
  629. t-att-data-active-id="line['id']"
  630. t-att-data-res-model="res_model"
  631. class="o_account_financial_reports_web_action_monetary"
  632. style="color: black;"
  633. >
  634. <t
  635. t-raw="line['credit']"
  636. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  637. />
  638. </a>
  639. </span>
  640. </t>
  641. <t t-if="not line['id']">
  642. <span>
  643. <a
  644. class="o_account_financial_reports_web_action_monetary"
  645. style="color: black;"
  646. >
  647. <t
  648. t-raw="line['credit']"
  649. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  650. />
  651. </a>
  652. </span>
  653. </t>
  654. </div>
  655. <!--## balance cumulated-->
  656. <div class="act_as_cell amount">
  657. <t t-set="res_model" t-value="'account.move.line'" />
  658. <t t-if="line['id']">
  659. <span>
  660. <a
  661. t-att-data-active-id="line['id']"
  662. t-att-data-res-model="res_model"
  663. class="o_account_financial_reports_web_action_monetary"
  664. style="color: black;"
  665. >
  666. <t
  667. t-raw="line['balance']"
  668. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  669. />
  670. </a>
  671. </span>
  672. </t>
  673. <t t-if="not line['id']">
  674. <span>
  675. <a
  676. class="o_account_financial_reports_web_action_monetary"
  677. style="color: black;"
  678. >
  679. <t
  680. t-raw="line['balance']"
  681. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  682. />
  683. </a>
  684. </span>
  685. </t>
  686. </div>
  687. <t t-if="foreign_currency">
  688. <t t-if="line['currency_id']">
  689. <!--## currency_name-->
  690. <div class="act_as_cell amount" style="width: 2.08%;">
  691. <span t-esc="line['currency_id'][1]" />
  692. </div>
  693. <!--## amount_currency-->
  694. <div class="act_as_cell amount" style="width: 5.19%;">
  695. <t t-set="res_model" t-value="'account.move.line'" />
  696. <span>
  697. <a
  698. t-att-data-active-id="line['id']"
  699. t-att-data-res-model="res_model"
  700. class="o_account_financial_reports_web_action"
  701. style="color: black;"
  702. >
  703. <t t-raw="line['bal_curr']" />
  704. </a>
  705. </span>
  706. </div>
  707. </t>
  708. <t t-if="not line['currency_id']">
  709. <!--## currency_name-->
  710. <div class="act_as_cell amount" style="width: 2.08%;" />
  711. <!--## amount_currency-->
  712. <div class="act_as_cell amount" style="width: 5.19%;" />
  713. </t>
  714. </t>
  715. </div>
  716. </t>
  717. </div>
  718. </template>
  719. <template id="account_financial_report.report_general_ledger_ending_cumul">
  720. <!-- Display ending balance line for account or partner -->
  721. <div class="act_as_table list_table" style="width: 100%;">
  722. <div class="act_as_row labels" style="font-weight: bold;">
  723. <!--## date-->
  724. <t t-if='type == "account_type"'>
  725. <div class="act_as_cell first_column" style="width: 41.32%;"><span
  726. t-esc="o._get_atr_from_dict(account['id'], accounts_data, 'code')"
  727. /> - <span
  728. t-esc="o._get_atr_from_dict(account['id'], accounts_data, 'name')"
  729. /></div>
  730. <div class="act_as_cell right"
  731. style="width: 16.9%;">Ending balance</div>
  732. </t>
  733. <t t-if='type == "partner_type"'>
  734. <div class="act_as_cell first_column" style="width: 41.32%;"/>
  735. <div class="act_as_cell right" style="width: 16.9%;">Partner ending balance</div>
  736. </t>
  737. <t t-if="show_cost_center">
  738. <!--## cost_center-->
  739. <div class="act_as_cell" style="width: 8.03%" />
  740. </t>
  741. <t t-if="show_analytic_tags">
  742. <!--## analytic tags-->
  743. <div class="act_as_cell" style="width: 4.75%;" />
  744. </t>
  745. <!--## matching_number-->
  746. <div class="act_as_cell" style="width: 2.41%;" />
  747. <!--## debit-->
  748. <div class="act_as_cell amount" style="width: 8.02%;">
  749. <span
  750. t-esc="account_or_partner_object['fin_bal']['debit']"
  751. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  752. />
  753. </div>
  754. <!--## credit-->
  755. <div class="act_as_cell amount" style="width: 8.02%;">
  756. <span
  757. t-esc="account_or_partner_object['fin_bal']['credit']"
  758. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  759. />
  760. </div>
  761. <!--## balance cumulated-->
  762. <div class="act_as_cell amount" style="width: 8.02%;">
  763. <span
  764. t-esc="account_or_partner_object['fin_bal']['balance']"
  765. t-options="{'widget': 'monetary', 'display_currency': res_company.currency_id}"
  766. />
  767. </div>
  768. <!--## currency_name + amount_currency-->
  769. <t t-if="foreign_currency">
  770. <t
  771. t-if="o._get_atr_from_dict(account['id'], accounts_data, 'currency_id')"
  772. >
  773. <div class="act_as_cell amount" style="width: 2.08%;">
  774. <span
  775. t-field="o._get_atr_from_dict(account['id'], accounts_data, 'currency_name')"
  776. />
  777. </div>
  778. <div class="act_as_cell amount" style="width: 5.19%;">
  779. <t t-if="type == 'account_type'">
  780. <t
  781. t-set="domain"
  782. t-value="[('account_id', '=', account['id']),
  783. ('date', '&lt;', date_from)]"
  784. />
  785. <span>
  786. <a
  787. t-att-data-domain="domain"
  788. t-att-data-res-model="'account.move.line'"
  789. class="o_account_financial_reports_web_action_monetary_multi"
  790. style="color: black;"
  791. >
  792. <t
  793. t-raw="account_or_partner_object['fin_bal']['bal_curr']"
  794. t-options="{'widget': 'monetary', 'display_currency': account_or_partner_object.account_id.currency_id}"
  795. />
  796. </a>
  797. </span>
  798. </t>
  799. <t t-if="type == 'partner_type'">
  800. <t
  801. t-set="domain"
  802. t-value="[('account_id', '=', account['id']),
  803. ('partner_id', '=', partner['id']),
  804. ('date', '&lt;', date_from)]"
  805. />
  806. <span>
  807. <a
  808. t-att-data-domain="domain"
  809. t-att-data-res-model="'account.move.line'"
  810. class="o_account_financial_reports_web_action_monetary_multi"
  811. style="color: black;"
  812. >
  813. <t
  814. t-raw="account_or_partner_object['fin_bal']['bal_curr']"
  815. t-options="{'widget': 'monetary', 'display_currency': account_or_partner_object.report_account_id.currency_id}"
  816. />
  817. </a>
  818. </span>
  819. </t>
  820. </div>
  821. </t>
  822. <t
  823. t-if="not o._get_atr_from_dict(account['id'], accounts_data, 'currency_id')"
  824. >
  825. <div class="act_as_cell amount" style="width: 2.08%;" />
  826. <div class="act_as_cell amount" style="width: 5.19%;" />
  827. </t>
  828. </t>
  829. </div>
  830. </div>
  831. </template>
  832. </odoo>