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.

166 lines
8.1 KiB

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