factura_venta_conecta5.xml 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <openerp>
  3. <data>
  4. <report id="factura_venta_conecta5"
  5. model="account.invoice"
  6. string="Factura Legal"
  7. report_type="qweb-pdf"
  8. name="factura_venta_conecta5.report_factura_conecta5"
  9. file="factura_venta_conecta5.report_factura_conecta5"
  10. />
  11. <template id="report_factura_conecta5">
  12. <t t-call="report.html_container">
  13. <t t-foreach="docs" t-as="o">
  14. <div class="page" style="width:21cm; height:29.7cm; margin:0; padding:0; font-family:Arial,Helvetica,sans-serif; font-size:11px;">
  15. <!-- Tres copias en la misma hoja -->
  16. <t t-foreach="[1,2,3]" t-as="i">
  17. <!-- Corregido: concatenación en lugar de % -->
  18. <div class="copia"
  19. t-att-style="'position:relative; height:9.7cm; width:100%; page-break-inside:avoid; margin-top:' + ('2' if i in [2,3] else '0') + 'cm;'">
  20. <style type="text/css">
  21. .campo{position:absolute; font-size:10px;}
  22. .detalle{position:absolute; top:3.6cm; left:1.2cm; width:19cm; font-size:10px; line-height:0.47cm;}
  23. .total_pagar_data{position:absolute; top:7.7cm; left:2cm; width:14cm;}
  24. .total_pagar{position:absolute; top:7.7cm; right:2.8cm; text-align:right; width:3cm;}
  25. .iva_5_data{position:absolute; top:8.3cm; left:7.6cm; width:3cm; text-align:right; padding-bottom:0.7cm;}
  26. .iva_10_data{position:absolute; top:8.3cm; left:10.4cm; width:3cm; text-align:right; padding-bottom:0.7cm;}
  27. .iva_total_data{position:absolute; top:8.3cm; left:14.5cm; width:3cm; text-align:right; padding-bottom:0.7cm;}
  28. .xmark{position:absolute; font-weight:bold; font-size:12px;}
  29. </style>
  30. <!-- Fecha de emisión -->
  31. <div class="campo" style="top:0.1cm; left:7.8cm;">
  32. <span t-field="o.date_invoice" t-field-options='{"format":"dd MMM yyyy"}'/>
  33. </div>
  34. <!-- Condición de venta (Contado / Crédito) -->
  35. <div class="xmark" style="top:0.1cm; left:18.7cm;">
  36. <t t-if="o.contado">X</t>
  37. </div>
  38. <div class="xmark" style="top:0.1cm; left:19.2cm;">
  39. <t t-if="o.credito">X</t>
  40. </div>
  41. <!-- Cliente: Nombre y RUC -->
  42. <div class="campo" style="top:0.8cm; left:3cm; width:19cm;">
  43. <t t-if="o.partner_id.street">
  44. <span t-field="o.partner_id.name"/>
  45. </t>
  46. <span style="position:absolute; left:14.3cm;">
  47. <span t-field="o.partner_id.ruc"/>
  48. </span>
  49. </div>
  50. <!-- Dirección + Teléfono -->
  51. <div class="campo" style="top:1.3cm; left:2.5cm; width:19cm;">
  52. <t t-if="o.partner_id.street">
  53. <span t-field="o.partner_id.street"/> <span t-field="o.partner_id.street2"/>
  54. </t>
  55. <span style="position:absolute; left:14.0cm;">
  56. <span t-field="o.partner_id.mobile"/>
  57. </span>
  58. </div>
  59. <!-- Espacio antes del detalle -->
  60. <div style="position:absolute; top:3.3cm;"></div>
  61. <!-- Detalle -->
  62. <div class="detalle" style="top:3.3cm;">
  63. <t t-foreach="o.invoice_line" t-as="l">
  64. <div style="display:flex;">
  65. <div style="width:1.8cm; text-align:center;"><span t-esc="'{0:,.2f}'.format(l.quantity)"/></div>
  66. <div style="width:9.5cm;"><span t-field="l.product_id.name"/></div>
  67. <div style="width:2.3cm; text-align:right;"><span t-esc="'{0:,.0f}'.format(l.price_unit)"/></div>
  68. <div style="width:2.7cm; text-align:right;">
  69. <t t-if="l.invoice_line_tax_id and l.invoice_line_tax_id[0].amount == 0">
  70. <span t-esc="'{0:,.0f}'.format(l.price_subtotal)"/>
  71. </t>
  72. </div>
  73. <div style="width:2.2cm; text-align:right;"></div>
  74. <div style="width:2.2cm; text-align:right;">
  75. <span t-esc="'{0:,.0f}'.format((l.quantity * l.price_unit))"/>
  76. </div>
  77. </div>
  78. </t>
  79. </div>
  80. <!-- Totales -->
  81. <div class="total_pagar_data">
  82. <span t-esc="convertir(o.amount_total, o.currency_id.en_letras)"/>
  83. </div>
  84. <div class="total_pagar">
  85. <span t-esc="'{0:,.0f}'.format(o.amount_total)"/>
  86. </div>
  87. <!-- IVA -->
  88. <div class="iva_5_data"></div>
  89. <div class="iva_10_data">
  90. <span t-esc="'{0:,.0f}'.format(o.amount_tax)"/>
  91. </div>
  92. <div class="iva_total_data">
  93. <span t-esc="'{0:,.0f}'.format(o.amount_tax)"/>
  94. </div>
  95. </div>
  96. </t>
  97. </div>
  98. </t>
  99. </t>
  100. </template>
  101. </data>
  102. </openerp>