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.

177 lines
8.7 KiB

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