[Erp5-report] r10950 - /erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payr...
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Oct 26 11:09:59 CEST 2006
Author: kevin
Date: Thu Oct 26 11:09:58 2006
New Revision: 10950
URL: http://svn.erp5.org?rev=10950&view=rev
Log:
Print total payment on PDF.
Format PDF values according currency/
Modified:
erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getDetails.xml
erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsPDF.xml
Modified: erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getDetails.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getDetails.xml?rev=10950&r1=10949&r2=10950&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getDetails.xml (original)
+++ erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getDetails.xml Thu Oct 26 11:09:58 2006
@@ -347,12 +347,51 @@
\n
\n
\n
-details[\'totals\'][\'gross_salary\'] = gross_salary\n
-details[\'totals\'][\'net_salary\'] = net_salary\n
-details[\'totals\'][\'taxable_net_salary\'] = taxable_net_salary\n
-details[\'totals\'][\'total_employer_share\'] = total_employer_share\n
-details[\'totals\'][\'total_employee_share\'] = total_employee_share\n
-details[\'totals\'][\'total_addendum\'] = total_addendum\n
+details[\'totals\'][\'gross_salary\'] = gross_salary\n
+details[\'totals\'][\'net_salary\'] = net_salary\n
+details[\'totals\'][\'taxable_net_salary\'] = taxable_net_salary\n
+details[\'totals\'][\'total_employer_share\'] = total_employer_share\n
+details[\'totals\'][\'total_employee_share\'] = total_employee_share\n
+details[\'totals\'][\'total_addendum\'] = total_addendum\n
+details[\'totals\'][\'total_employee_payment\'] = r_(net_salary + total_addendum)\n
+\n
+\n
+\n
+##############################################################################\n
+# Transform every float value to a string representation according the currency.\n
+##############################################################################\n
+\n
+# There is 2 kind of numbers to format: rates and amounts.\n
+rate_propertie_list = [\'employer_rate\', \'employee_rate\']\n
+amount_propertie_list = [\'base\', \'employer_share\', \'employee_share\']\n
+\n
+# The "three decimals" format is arbitrary. "3" was choose because there is no rate with\n
+# precision above 3. Feel free to update dynamiccaly this format if required.\n
+RATE_PRECISION = 3\n
+\n
+# Format each "normal" lines\n
+for group_id in getPSLGroupIdList():\n
+ for subline_id in getGroupSubLineIdList(group_id=group_id):\n
+ subline = getSubLine(group_id=group_id, subline_id=subline_id)\n
+ for (property, value) in subline.items():\n
+ if same_type(value, 1.0) or same_type(value, 1):\n
+ new_value = None\n
+ if property in rate_propertie_list:\n
+ new_value = (\'%.\' + str(RATE_PRECISION) + \'f\') % value\n
+ elif property in amount_propertie_list:\n
+ new_value = (\'%.\' + str(precision) + \'f\') % value\n
+ if new_value != None:\n
+ updateSubLine( group_id = group_id\n
+ , subline_id = subline_id\n
+ , property = property\n
+ , value = new_value\n
+ )\n
+\n
+# Format totals\n
+for (key, value) in details[\'totals\'].items():\n
+ if same_type(value, 1.0) or same_type(value, 1):\n
+ details[\'totals\'][key] = (\'%.\' + str(precision) + \'f\') % value\n
+\n
\n
return details\n
@@ -457,6 +496,16 @@
<string>cell_rate</string>
<string>cell_base</string>
<string>cell_share</string>
+ <string>rate_propertie_list</string>
+ <string>amount_propertie_list</string>
+ <string>RATE_PRECISION</string>
+ <string>subline</string>
+ <string>property</string>
+ <string>value</string>
+ <string>same_type</string>
+ <string>new_value</string>
+ <string>str</string>
+ <string>key</string>
</tuple>
</value>
</item>
Modified: erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsPDF.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsPDF.xml?rev=10950&r1=10949&r2=10950&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsPDF.xml (original)
+++ erp5/trunk/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsPDF.xml Thu Oct 26 11:09:58 2006
@@ -192,6 +192,11 @@
</tr>\n
</table>\n
\n
+ <!-- This table act as a spacer -->\n
+ <table rowheight="0.6cm"><tr><td> </td></tr></table>\n
+\n
+ <h1>Payment</h1>\n
+\n
<tal:block repeat="group python: details[\'groups\']">\n
<table splitbyrow="1" rowheight=\'0.4cm\' repeatrows="1" repeatcols="0" style="decompte"\n
tal:condition="python: group[\'id\'] == ADDENDUM_GROUP_ID">\n
@@ -203,6 +208,16 @@
<td colwidth="2.288cm"> </td>\n
<td colwidth="2.397cm"> </td>\n
<td colwidth="1.959cm">Montant</td>\n
+ </tr>\n
+ <tr tal:attributes="stylecmd boldstyle">\n
+ <td>Salaire Net</td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td><tal:block replace="python: details[\'totals\'][\'net_salary\']"\n
+ condition="python: details[\'totals\'].has_key(\'net_salary\')"/> </td>\n
</tr>\n
<tr tal:attributes="stylecmd boldstyle">\n
<td tal:content="python: group[\'title\']"> </td>\n
@@ -228,7 +243,7 @@
condition="python: line[\'employee_share\'] != None"/> </td>\n
</tr>\n
<tr tal:attributes="stylecmd boldstyle">\n
- <td>Total</td>\n
+ <td>Total Addendum</td>\n
<td> </td>\n
<td> </td>\n
<td> </td>\n
@@ -236,6 +251,16 @@
<td> </td>\n
<td><tal:block replace="python: details[\'totals\'][\'total_addendum\']"\n
condition="python: details[\'totals\'].has_key(\'total_addendum\')"/> </td>\n
+ </tr>\n
+ <tr tal:attributes="stylecmd boldstyle">\n
+ <td>Paiement Final</td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td> </td>\n
+ <td><tal:block replace="python: details[\'totals\'][\'total_employee_payment\']"\n
+ condition="python: details[\'totals\'].has_key(\'total_employee_payment\')"/> </td>\n
</tr>\n
</table>\n
</tal:block>\n
More information about the Erp5-report
mailing list