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.

167 lines
8.1 KiB

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