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.

183 lines
9.0 KiB

  1. ## -*- coding: utf-8 -*-
  2. <%page args="account, formatLang" />
  3. %if ledger_lines[account.id] and partners_order[account.id]:
  4. <%
  5. account_total_debit = 0.0
  6. account_total_credit = 0.0
  7. account_balance_cumul = 0.0
  8. account_balance_cumul_curr = 0.0
  9. %>
  10. <div class="account_title bg" style="width: 1080px; margin-top: 20px; font-size: 12px;">${account.code} - ${account.name}</div>
  11. %for partner_name, p_id, p_ref, p_name in partners_order[account.id]:
  12. <%
  13. total_debit = 0.0
  14. total_credit = 0.0
  15. cumul_balance = 0.0
  16. cumul_balance_curr = 0.0
  17. part_cumul_balance = 0.0
  18. part_cumul_balance_curr = 0.0
  19. %>
  20. <div class="act_as_table list_table" style="margin-top: 5px;">
  21. <div class="act_as_caption account_title">
  22. ${partner_name or _('No Partner')}
  23. </div>
  24. <div class="act_as_thead">
  25. <div class="act_as_row labels">
  26. ## date
  27. <div class="act_as_cell first_column" style="width: 60px;">${_('Date')}</div>
  28. ## period
  29. <div class="act_as_cell" style="width: 70px;">${_('Period')}</div>
  30. ## move
  31. <div class="act_as_cell" style="width: 100px;">${_('Entry')}</div>
  32. ## journal
  33. <div class="act_as_cell" style="width: 70px;">${_('Journal')}</div>
  34. ## partner
  35. <div class="act_as_cell" style="width: 120px;">${_('Partner')}</div>
  36. ## move reference
  37. <div class="act_as_cell" style="width: 100px;">${_('Reference')}</div>
  38. ## label
  39. <div class="act_as_cell" style="width: 180px;">${_('Label')}</div>
  40. ## reconcile
  41. <div class="act_as_cell" style="width: 80px;">${_('Rec.')}</div>
  42. ## maturity
  43. <div class="act_as_cell" style="width: 60px;">${_('Due Date')}</div>
  44. ## debit
  45. <div class="act_as_cell amount" style="width: 80px;">${_('Debit')}</div>
  46. ## credit
  47. <div class="act_as_cell amount" style="width: 80px;">${_('Credit')}</div>
  48. ## balance cumulated
  49. <div class="act_as_cell amount" style="width: 80px;">${_('Cumul. Bal.')}</div>
  50. %if amount_currency(data):
  51. ## currency balance
  52. <div class="act_as_cell amount sep_left" style="width: 80px;">${_('Curr. Balance')}</div>
  53. ## curency code
  54. <div class="act_as_cell amount" style="width: 30px; text-align: right;">${_('Curr.')}</div>
  55. %endif
  56. </div>
  57. </div>
  58. <div class="act_as_tbody">
  59. <%
  60. total_debit = 0.0
  61. total_credit = 0.0
  62. %>
  63. <%!
  64. def amount(text):
  65. return text.replace('-', '&#8209;') # replace by a non-breaking hyphen (it will not word-wrap between hyphen and numbers)
  66. %>
  67. %for line in ledger_lines[account.id].get(p_id, []):
  68. <%
  69. total_debit += line.get('debit') or 0.0
  70. total_credit += line.get('credit') or 0.0
  71. label_elements = [line.get('lname') or '']
  72. if line.get('invoice_number'):
  73. label_elements.append("(%s)" % (line['invoice_number'],))
  74. label = ' '.join(label_elements)
  75. %>
  76. <div class="act_as_row lines ${line.get('is_from_previous_periods') and 'open_invoice_previous_line' or ''} ${line.get('is_clearance_line') and 'clearance_line' or ''}">
  77. ## date
  78. <div class="act_as_cell first_column">${formatLang(line.get('ldate') or '', date=True)}</div>
  79. ## period
  80. <div class="act_as_cell">${line.get('period_code') or ''}</div>
  81. ## move
  82. <div class="act_as_cell">${line.get('move_name') or ''}</div>
  83. ## journal
  84. <div class="act_as_cell">${line.get('jcode') or ''}</div>
  85. ## partner
  86. <div class="act_as_cell overflow_ellipsis">${line.get('partner_name') or ''}</div>
  87. ## move reference
  88. <div class="act_as_cell">${line.get('lref') or ''}</div>
  89. ## label
  90. <div class="act_as_cell">${label}</div>
  91. ## reconcile
  92. <div class="act_as_cell">${line.get('rec_name') or ''}</div>
  93. ## maturity date
  94. <div class="act_as_cell">${formatLang(line.get('date_maturity') or '', date=True)}</div>
  95. ## debit
  96. <div class="act_as_cell amount">${formatLang(line.get('debit') or 0.0) | amount }</div>
  97. ## credit
  98. <div class="act_as_cell amount">${formatLang(line.get('credit') or 0.0) | amount }</div>
  99. ## balance cumulated
  100. <% cumul_balance += line.get('balance') or 0.0 %>
  101. <div class="act_as_cell amount" style="padding-right: 1px;">${formatLang(cumul_balance) | amount }</div>
  102. %if amount_currency(data):
  103. ## currency balance
  104. <div class="act_as_cell sep_left amount">${formatLang(line.get('amount_currency') or 0.0) | amount }</div>
  105. ## curency code
  106. <div class="act_as_cell" style="text-align: right; ">${line.get('currency_code') or ''}</div>
  107. %endif
  108. </div>
  109. %endfor
  110. <div class="act_as_row lines labels">
  111. ## date
  112. <div class="act_as_cell first_column"></div>
  113. ## period
  114. <div class="act_as_cell"></div>
  115. ## move
  116. <div class="act_as_cell"></div>
  117. ## journal
  118. <div class="act_as_cell"></div>
  119. ## partner
  120. <div class="act_as_cell"></div>
  121. ## move reference
  122. <div class="act_as_cell"></div>
  123. ## label
  124. <div class="act_as_cell">${_('Cumulated Balance on Partner')}</div>
  125. ## reconcile
  126. <div class="act_as_cell"></div>
  127. ## maturity date
  128. <div class="act_as_cell"></div>
  129. ## debit
  130. <div class="act_as_cell amount">${formatLang(total_debit) | amount }</div>
  131. ## credit
  132. <div class="act_as_cell amount">${formatLang(total_credit) | amount }</div>
  133. ## balance cumulated
  134. <div class="act_as_cell amount" style="padding-right: 1px;">${formatLang(cumul_balance) | amount }</div>
  135. %if amount_currency(data):
  136. %if account.currency_id:
  137. ## currency balance
  138. <div class="act_as_cell sep_left amount" style="padding-right: 1px;">${formatLang(cumul_balance_curr) | amount }</div>
  139. %else:
  140. <div class="act_as_cell sep_left amount" style="padding-right: 1px;">${ u'-' }</div>
  141. %endif
  142. ## curency code
  143. <div class="act_as_cell" style="text-align: right; ">${ account.currency_id.name if account.currency_id else u'' }</div>
  144. %endif
  145. </div>
  146. </div>
  147. </div>
  148. <%
  149. account_total_debit += total_debit
  150. account_total_credit += total_credit
  151. account_balance_cumul += cumul_balance
  152. account_balance_cumul_curr += cumul_balance_curr
  153. %>
  154. %endfor
  155. <div class="act_as_table list_table" style="margin-top:5px;">
  156. <div class="act_as_row labels" style="font-weight: bold; font-size: 12px;">
  157. <div class="act_as_cell first_column" style="width: 520px;">${account.code} - ${account.name}</div>
  158. ## label
  159. <div class="act_as_cell" style="width: 320px;">${_("Cumulated Balance on Account")}</div>
  160. ## debit
  161. <div class="act_as_cell amount" style="width: 80px;">${ formatLang(account_total_debit) | amount }</div>
  162. ## credit
  163. <div class="act_as_cell amount" style="width: 80px;">${ formatLang(account_total_credit) | amount }</div>
  164. ## balance cumulated
  165. <div class="act_as_cell amount" style="width: 80px; ">${ formatLang(account_balance_cumul) | amount }</div>
  166. %if amount_currency(data):
  167. ## currency balance cumulated
  168. %if account.currency_id:
  169. <div class="act_as_cell amount sep_left" style="width: 80px;">${ formatLang(account_balance_cumul_curr) | amount }</div>
  170. %else:
  171. <div class="act_as_cell amount sep_left" style="width: 80px; padding-right: 1px;">${ u'-' }</div>
  172. %endif
  173. ## curency code
  174. <div class="act_as_cell amount" style="width: 30px; text-align: right;">${ account.currency_id.name if account.currency_id else u'' }</div>
  175. %endif
  176. </div>
  177. </div>
  178. </div>
  179. %endif