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.

171 lines
8.3 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: 50px;">${_('Journal')}</div>
  36. ## move reference
  37. <div class="act_as_cell" style="width: 75px;">${_('Ref.')}</div>
  38. ## label
  39. <div class="act_as_cell" style="width: 200px;">${_('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. ## currency balance
  51. <div class="act_as_cell amount sep_left" style="width: 80px;">${_('Curr. Balance')}</div>
  52. ## curency code
  53. <div class="act_as_cell amount" style="width: 30px; text-align: right;">${_('Curr.')}</div>
  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 grouped_lines:
  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. ## move reference
  84. <div class="act_as_cell">${line.get('lref') 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. ## currency balance
  99. <div class="act_as_cell sep_left amount">${formatLang(line.get('amount_currency') or 0.0) | amount }</div>
  100. ## curency code
  101. <div class="act_as_cell" style="text-align: right; ">${line.get('currency_code') or ''}</div>
  102. </div>
  103. %endfor
  104. <div class="act_as_row lines labels">
  105. ## date
  106. <div class="act_as_cell first_column"></div>
  107. ## period
  108. <div class="act_as_cell"></div>
  109. ## move
  110. <div class="act_as_cell"></div>
  111. ## journal
  112. <div class="act_as_cell"></div>
  113. ## label
  114. <div class="act_as_cell">${_('Cumulated Balance on Partner')}</div>
  115. ## reconcile
  116. <div class="act_as_cell"></div>
  117. ## maturity date
  118. <div class="act_as_cell"></div>
  119. ## debit
  120. <div class="act_as_cell amount">${formatLang(total_debit) | amount }</div>
  121. ## credit
  122. <div class="act_as_cell amount">${formatLang(total_credit) | amount }</div>
  123. ## balance cumulated
  124. <div class="act_as_cell amount" style="padding-right: 1px;">${formatLang(cumul_balance) | amount }</div>
  125. %if account.currency_id:
  126. ## currency balance
  127. <div class="act_as_cell sep_left amount" style="padding-right: 1px;">${formatLang(cumul_balance_curr) | amount }</div>
  128. %else:
  129. <div class="act_as_cell sep_left amount" style="padding-right: 1px;">${ u'-' }</div>
  130. %endif
  131. ## curency code
  132. <div class="act_as_cell" style="text-align: right; ">${ account.currency_id.name if account.currency_id else u'' }</div>
  133. </div>
  134. </div>
  135. </div>
  136. <%
  137. account_total_debit += total_debit
  138. account_total_credit += total_credit
  139. account_balance_cumul += cumul_balance
  140. account_balance_cumul_curr += cumul_balance_curr
  141. %>
  142. %endfor
  143. %endfor
  144. <div class="act_as_table list_table" style="margin-top:5px;">
  145. <div class="act_as_row labels" style="font-weight: bold; font-size: 12px;">
  146. <div class="act_as_cell first_column" style="width: 330px;">${account.code} - ${account.name}</div>
  147. ## label
  148. <div class="act_as_cell" style="width: 395px;">${_("Cumulated Balance on Account")}</div>
  149. ## debit
  150. <div class="act_as_cell amount" style="width: 80px;">${ formatLang(account_total_debit) | amount }</div>
  151. ## credit
  152. <div class="act_as_cell amount" style="width: 80px;">${ formatLang(account_total_credit) | amount }</div>
  153. ## balance cumulated
  154. <div class="act_as_cell amount" style="width: 80px; ">${ formatLang(account_balance_cumul) | amount }</div>
  155. ## currency balance cumulated
  156. %if account.currency_id:
  157. <div class="act_as_cell amount sep_left" style="width: 80px;">${ formatLang(account_balance_cumul_curr) | amount }</div>
  158. %else:
  159. <div class="act_as_cell amount sep_left" style="width: 80px; padding-right: 1px;">${ u'-' }</div>
  160. %endif
  161. ## curency code
  162. <div class="act_as_cell amount" style="width: 30px; text-align: right;">${ account.currency_id.name if account.currency_id else u'' }</div>
  163. </div>
  164. </div>
  165. </div>
  166. %endif