dmi, skonto
commit
3c6281c03c
|
|
@ -33,7 +33,7 @@
|
||||||
""",
|
""",
|
||||||
'author': 'camadeus GmbH',
|
'author': 'camadeus GmbH',
|
||||||
'website': 'http://www.camadeus.at',
|
'website': 'http://www.camadeus.at',
|
||||||
'depends': ['account'],
|
'depends': ['account', 'sale'],
|
||||||
'data': [
|
'data': [
|
||||||
'cam_invoice_skonto_view.xml',
|
'cam_invoice_skonto_view.xml',
|
||||||
'cam_invoice_skonto_data.xml',
|
'cam_invoice_skonto_data.xml',
|
||||||
|
|
|
||||||
|
|
@ -387,4 +387,20 @@ def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context):
|
||||||
if result != None:
|
if result != None:
|
||||||
results.append(result)
|
results.append(result)
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
class sale_order(osv.osv):
|
||||||
|
_inherit = 'sale.order'
|
||||||
|
|
||||||
|
def _skonto_betrag_inkl(self, cr, uid, ids, field_name, arg, context=None):
|
||||||
|
res = {}
|
||||||
|
sos = self.browse(cr, uid, ids, context=context)
|
||||||
|
for so in sos:
|
||||||
|
if so.payment_term and so.payment_term.skonto_prozent:
|
||||||
|
res[so.id] = so.amount_total * (1 - so.payment_term.skonto_prozent/100.0)
|
||||||
|
return res
|
||||||
|
|
||||||
|
_columns = {
|
||||||
|
'skonto_betrag_inkl': fields.function(_skonto_betrag_inkl, string='Betrag inkl. Skonto', type='float'),
|
||||||
|
}
|
||||||
|
|
||||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,6 @@
|
||||||
<openerp>
|
<openerp>
|
||||||
<data>
|
<data>
|
||||||
|
|
||||||
<!-- account.payment.term -->
|
|
||||||
<record id="view_payment_term_form" model="ir.ui.view">
|
<record id="view_payment_term_form" model="ir.ui.view">
|
||||||
<field name="name">cam_invoice_skonto.payment.term.form</field>
|
<field name="name">cam_invoice_skonto.payment.term.form</field>
|
||||||
<field name="model">account.payment.term</field>
|
<field name="model">account.payment.term</field>
|
||||||
|
|
@ -46,7 +45,6 @@
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
<!-- account.invoice -->
|
|
||||||
<record id="invoice_form" model="ir.ui.view">
|
<record id="invoice_form" model="ir.ui.view">
|
||||||
<field name="name">cam_invoice_skonto.invoice.form</field>
|
<field name="name">cam_invoice_skonto.invoice.form</field>
|
||||||
<field name="model">account.invoice</field>
|
<field name="model">account.invoice</field>
|
||||||
|
|
@ -73,6 +71,17 @@
|
||||||
|
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
<record id="view_order_form" model="ir.ui.view">
|
||||||
|
<field name="name">sale.order.form</field>
|
||||||
|
<field name="model">sale.order</field>
|
||||||
|
<field name="inherit_id" ref="sale.view_order_form"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<field name="amount_total" position="after">
|
||||||
|
<field name="skonto_betrag_inkl"/>
|
||||||
|
</field>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
</data>
|
</data>
|
||||||
</openerp>
|
</openerp>
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,6 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!--
|
|
||||||
<reports>
|
|
||||||
<report>account.report_invoice</report>
|
|
||||||
</reports>
|
|
||||||
-->
|
|
||||||
<document filename="Rechnung.pdf">
|
<document filename="Rechnung.pdf">
|
||||||
<template pageSize="(595.0,842.0)" title="Sale Order" author="Andreas Brückl" allowSplitting="20">
|
<template pageSize="(595.0,842.0)" title="Sale Order" author="Camadeus Consulting" allowSplitting="20">
|
||||||
<pageTemplate id="first">
|
<pageTemplate id="first">
|
||||||
<frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
|
<frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
|
||||||
</pageTemplate>
|
</pageTemplate>
|
||||||
|
|
@ -18,87 +13,95 @@
|
||||||
</para>
|
</para>
|
||||||
<para>[[repeatIn(objects,'o')]] [[ setLang(o.partner_id.commercial_partner_id.lang)]]</para>
|
<para>[[repeatIn(objects,'o')]] [[ setLang(o.partner_id.commercial_partner_id.lang)]]</para>
|
||||||
|
|
||||||
|
<blockTable colWidths="270,85,145" style="Struktur">
|
||||||
<para style="fett">[[ o.partner_id.commercial_partner_id.name ]]</para>
|
<tr>
|
||||||
<para style="normal">[[ (o.partner_id.commercial_partner_id.id != o.partner_id.id and o.partner_id.name) or '' ]] </para>
|
<td>
|
||||||
<para style="normal">[[ (o.partner_id.street ) or '']]</para>
|
<section>
|
||||||
<para style="normal">[[ (o.partner_id.street2) or removeParentNode('para') ]]</para>
|
<para style="fett">[[ o.partner_id.commercial_partner_id.name ]]</para>
|
||||||
<para style="normal">[[ (o.partner_id.zip) or '' ]] [[ (o.partner_id and o.partner_id.city) or '' ]]</para>
|
<para style="normal">[[ (o.partner_id.commercial_partner_id.id != o.partner_id.id and o.partner_id.name) or '' ]] </para>
|
||||||
<para style="normal">[[ (o.partner_id.state_id and o.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
<para style="normal">[[ (o.partner_id.street ) or '']]</para>
|
||||||
<para style="normal">[[ (o.partner_id.country_id and o.partner_id.country_id.name) or '' ]]</para>
|
<para style="normal">[[ (o.partner_id.street2) or removeParentNode('para') ]]</para>
|
||||||
|
<para style="normal">[[ (o.partner_id.zip) or '' ]] [[ (o.partner_id and o.partner_id.city) or '' ]]</para>
|
||||||
<blockTable colWidths="90,110" style="Struktur" hAlign="RIGHT">
|
<para style="normal">[[ (o.partner_id.state_id and o.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
||||||
<tr>
|
<para style="normal">[[ (o.partner_id.country_id and o.partner_id.country_id.name) or '' ]]</para>
|
||||||
<td>
|
<!-- Für Sichtfenster -->
|
||||||
<para style="normal">Kundennr.:</para>
|
<section>[[ not (o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.ref) or removeParentNode('section') ]]
|
||||||
</td>
|
<para style="normal"> </para>
|
||||||
<td>
|
</section>
|
||||||
<para style="normal">[[ o.partner_id.ref or removeParentNode('tr') ]]</para>
|
</section>
|
||||||
</td>
|
<para></para>
|
||||||
</tr>
|
</td>
|
||||||
<tr>
|
<td>
|
||||||
<td>
|
<para style="normal">Datum:</para>
|
||||||
<para style="normal">Ihre Referenz:</para>
|
<para style="normal">Quelldokument:</para>
|
||||||
</td>
|
<para style="normal">Kundenreferenz:</para>
|
||||||
<td>
|
<!--<para style="normal">Kundennummer:</para>-->
|
||||||
<para style="normal">[[ o.name ]]</para>
|
<para style="normal">Kunde UID Nr.:</para>
|
||||||
</td>
|
<para style="normal">Ansprechpartner:</para>
|
||||||
</tr>
|
</td>
|
||||||
<tr>
|
<td>
|
||||||
<td>
|
<para style="normal">[[ formatLang(o.date_invoice,date = True) ]] </para>
|
||||||
<para style="normal">Ansprechpartner:</para>
|
<para style="normal">[[ o.origin ]] </para>
|
||||||
</td>
|
<para style="normal">[[ o.name ]] </para>
|
||||||
<td>
|
<!--<para style="normal">[[ o.partner_id.commercial_partner_id.ref ]] </para>-->
|
||||||
<para style="normal">[[ (o.user_id and o.user_id.name) or '' ]]</para>
|
<para style="normal">[[ o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.vat or '' ]] </para>
|
||||||
</td>
|
<para style="normal">[[ (o.user_id and o.user_id.name) or '' ]] </para>
|
||||||
</tr>
|
</td>
|
||||||
<tr>
|
</tr>
|
||||||
<td>
|
<!--
|
||||||
<para style="normal">Ihre UID:</para>
|
<tr>
|
||||||
</td>
|
<td>
|
||||||
<td>
|
<section>[[ (o.partner_shipping_id and o.partner_shipping_id.id != o.partner_id.id) or removeParentNode('section')]]
|
||||||
<para style="normal">[[ o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.vat or '' ]]</para>
|
<spacer length="0.5cm"/>
|
||||||
</td>
|
<para style="normal">Lieferadresse:</para>
|
||||||
</tr>
|
<para style="normal">[[ o.partner_shipping_id.commercial_partner_id.name ]]</para>
|
||||||
<tr>
|
<para style="normal">[[ (o.partner_shipping_id.commercial_partner_id.id != o.partner_shipping_id.id and o.partner_shipping_id.name) or '' ]] </para>
|
||||||
<td>
|
<para style="normal">[[ (o.partner_shipping_id.street ) or '']]</para>
|
||||||
<para style="normal">Datum:</para>
|
<para style="normal">[[ (o.partner_shipping_id.street2) or removeParentNode('para') ]]</para>
|
||||||
</td>
|
<para style="normal">[[ (o.partner_shipping_id.zip) or '' ]] [[ (o.partner_shipping_id and o.partner_shipping_id.city) or '' ]]</para>
|
||||||
<td>
|
<para style="normal">[[ (o.partner_shipping_id.state_id and o.partner_shipping_id.state_id.name) or removeParentNode('para')]]</para>
|
||||||
<para style="normal">[[ formatLang(o.date_invoice,date = True) ]]</para>
|
<para style="normal">[[ (o.partner_shipping_id.country_id and o.partner_shipping_id.country_id.name) or '' ]]</para>
|
||||||
</td>
|
</section>
|
||||||
</tr>
|
<para style="normal"> </para>
|
||||||
</blockTable>
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="normal"> </para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="normal"> </para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
-->
|
||||||
|
</blockTable>
|
||||||
|
|
||||||
|
<spacer length="1.0cm"/>
|
||||||
|
|
||||||
<para style="ueberschrift"><b>Rechnung [[ ((o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')) or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
<para style="ueberschrift2"><b>Rechnung [[ ((o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')) or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
||||||
<para style="ueberschrift"><b>PRO-FORMA [[ ((o.type == 'out_invoice' and o.state == 'proforma2') or removeParentNode('para')) and '' ]]</b></para>
|
<para style="ueberschrift2"><b>PRO-FORMA [[ ((o.type == 'out_invoice' and o.state == 'proforma2') or removeParentNode('para')) and '' ]]</b></para>
|
||||||
<para style="ueberschrift"><b>Rechnungsentwurf [[ ((o.type == 'out_invoice' and o.state == 'draft') or removeParentNode('para')) and '' ]]</b></para>
|
<para style="ueberschrift2"><b>Rechnungsentwurf [[ ((o.type == 'out_invoice' and o.state == 'draft') or removeParentNode('para')) and '' ]]</b></para>
|
||||||
<para style="ueberschrift"><b>Stornierte Rechnung [[ ((o.type == 'out_invoice' and o.state == 'cancel') or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
<para style="ueberschrift2"><b>Stornierte Rechnung [[ ((o.type == 'out_invoice' and o.state == 'cancel') or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
||||||
<para style="ueberschrift"><b>Stornorechnung [[ (o.type=='out_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
<para style="ueberschrift2"><b>Stornorechnung [[ (o.type=='out_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
||||||
<para style="ueberschrift"><b>Stornorechnung [[ (o.type=='in_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
<para style="ueberschrift2"><b>Stornorechnung [[ (o.type=='in_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
||||||
<para style="ueberschrift"><b>Rechnung [[ (o.type=='in_invoice' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
<para style="ueberschrift2"><b>Rechnung [[ (o.type=='in_invoice' or removeParentNode('para')) and '' ]] [[ o.number ]]</b></para>
|
||||||
|
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
<blockTable colWidths="30,57,203,45,60,40,75" repeatRows="1" style="TabelleHaupt" hAlign="LEFT">
|
<blockTable colWidths="30,57,170,75,63,40,75" repeatRows="1" style="TabelleHaupt" hAlign="LEFT">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header">Pos</para>
|
<para style="tabelle_header">Pos</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header">Art-nr.</para>
|
<para style="tabelle_header">Art.nr.</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header_links">Bezeichnung</para>
|
<para style="tabelle_header_links">Bezeichnung</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header">Menge</para>
|
<para style="tabelle_header_links">Menge</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header_rechts">E-Preis</para>
|
<para style="tabelle_header_rechts">Einzelpreis</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header"></para>
|
<para style="tabelle_header"></para>
|
||||||
|
|
@ -125,8 +128,8 @@
|
||||||
</section>
|
</section>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_daten_center">[[formatLang(line.quantity, digits=2)[-2:]=='00' and formatLang(line.quantity, digits=0) or formatLang(line.quantity, digits=2)]]</para>
|
<para style="tabelle_daten_links">[[formatLang(line.quantity, digits=2)[-2:]=='00' and formatLang(line.quantity, digits=0) or formatLang(line.quantity, digits=2)]] [[ line.uos_id.name ]]</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_daten_rechts">[[ formatLang(line.price_unit,digits=2) ]]</para>
|
<para style="tabelle_daten_rechts">[[ formatLang(line.price_unit,digits=2) ]]</para>
|
||||||
</td>
|
</td>
|
||||||
|
|
@ -151,15 +154,15 @@
|
||||||
<para style="schlussrechnung">[[ formatLang(o.amount_untaxed,digits=2 )]]</para>
|
<para style="schlussrechnung">[[ formatLang(o.amount_untaxed,digits=2 )]]</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>[[ repeatIn(o.tax_line,'tax') ]]
|
||||||
<td>
|
<td>
|
||||||
<para></para>
|
<para style="schlussrechnung"></para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="schlussrechnung">MwSt. in €</para>
|
<para style="schlussrechnung">MwSt. [[tax.name.split(" ")[0] or ""]] in €</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="schlussrechnung">[[ formatLang(o.amount_tax,digits=2 ) ]]</para>
|
<para style="schlussrechnung">[[ formatLang(tax.tax_amount) ]]</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
@ -173,7 +176,18 @@
|
||||||
<para style="schlussrechnung_fett">[[ formatLang(o.amount_total,digits=2 ) ]]</para>
|
<para style="schlussrechnung_fett">[[ formatLang(o.amount_total,digits=2 ) ]]</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</blockTable>
|
<tr>
|
||||||
|
<td>
|
||||||
|
<para></para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="schlussrechnung">Rechnungsbetrag inkl. Skonto in €</para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="schlussrechnung">[[ (o.skonto_betrag_inkl and formatLang(o.skonto_betrag_inkl,digits=2)) or removeParentNode('tr') ]]</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</blockTable>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
|
|
@ -184,8 +198,8 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
<blockTable colWidths="110,300" style="Struktur" hAlign="LEFT">
|
<blockTable colWidths="110,390" style="Struktur" hAlign="LEFT">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<para style="normal">Zahlungsbedingungen:</para>
|
<para style="normal">Zahlungsbedingungen:</para>
|
||||||
|
|
@ -196,13 +210,27 @@
|
||||||
</tr>
|
</tr>
|
||||||
</blockTable>
|
</blockTable>
|
||||||
|
|
||||||
|
<!--
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
<para style="normal">Vielen Dank für Ihren Auftrag!</para>
|
|
||||||
<spacer length="0.5cm"/>
|
|
||||||
<para style="normal">
|
|
||||||
Bis zur Bezahlung aller Ansprüche aus den Geschäftsverbindungen behält sich der Verkäufer das Eigentum an seinen Warenlieferungen vor. Es gelten unsere Allgemeinen Geschäftsbedingungen.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
<blockTable colWidths="500" style="Struktur" hAlign="LEFT">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<para style="normal"></para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>[[ o.date_due and o.payment_term and o.payment_term.skonto_prozent or removeParentNode('tr') ]]
|
||||||
|
<td>
|
||||||
|
<para style="normal">Zahlbar bis [[ formatLang(o.skonto_faelligkeit,date = True) ]] abzüglich [[ formatLang(o.payment_term.skonto_prozent,digits=2) ]]% beträgt [[ formatLang(o.skonto_betrag_inkl,digits=2) ]]€.</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>[[ o.date_due or removeParentNode('tr') ]]
|
||||||
|
<td>
|
||||||
|
<para style="normal">Zahlbar bis [[ formatLang(o.date_due,date = True) ]] ohne Abzug.</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</blockTable>
|
||||||
|
-->
|
||||||
|
|
||||||
</story>
|
</story>
|
||||||
</document>
|
</document>
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@
|
||||||
|
|
||||||
<blockTableStyle id="TabelleHaupt">
|
<blockTableStyle id="TabelleHaupt">
|
||||||
<blockAlignment value="LEFT"/>
|
<blockAlignment value="LEFT"/>
|
||||||
<blockValign value="MIDDLE"/>
|
<blockValign value="TOP"/>
|
||||||
<lineStyle kind="LINEBELOW" colorName="#000000" thickness="0.5"/>
|
<lineStyle kind="LINEBELOW" colorName="#000000" thickness="0.5"/>
|
||||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0" thickness="1"/>
|
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0" thickness="1"/>
|
||||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="-1,-1" thickness="1"/>
|
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="-1,-1" thickness="1"/>
|
||||||
|
|
@ -48,54 +48,50 @@
|
||||||
<blockValign value="MIDDLE"/>
|
<blockValign value="MIDDLE"/>
|
||||||
</blockTableStyle>
|
</blockTableStyle>
|
||||||
</stylesheet>
|
</stylesheet>
|
||||||
|
|
||||||
<pageGraphics>
|
<pageGraphics>
|
||||||
<!-- Logo -->
|
|
||||||
<image x="13cm" y="26.75cm" height="46" width="180" preserveAspectRatio="1" >[[ company.logo]]</image>
|
<!-- Logo Oben 1 -->
|
||||||
|
<place x="1.75cm" y="24.75cm" height="3cm" width="7cm">
|
||||||
<!-- Absenderkopf -->
|
<para style="footer">[[ company.partner_id.name ]]</para>
|
||||||
<place x="1.5cm" y="24.5cm" height="1.5cm" width="14cm">
|
<para style="footer">[[ company.street ]]</para>
|
||||||
<para style="header"><u>[[ company.partner_id.name ]], [[ company.partner_id.street ]], [[ company.partner_id.zip ]] [[ company.partner_id.city ]]</u></para>
|
<para style="footer">[[ company.zip ]] [[ company.city ]]</para>
|
||||||
|
<para style="footer">[[ company.country_id.name ]]</para>
|
||||||
</place>
|
</place>
|
||||||
|
|
||||||
<!-- Seitenzahl -->
|
<!-- Logo Oben 2 -->
|
||||||
<setFont name="Helvetica" size="9"/>
|
<place x="6.90cm" y="24.75cm" height="3cm" width="7cm">
|
||||||
<drawRightString x="18.9cm" y="3.5cm">Seite <pageNumber/> </drawRightString>
|
<para style="footer">Telefon:</para>
|
||||||
|
<para style="footer">Telefax:</para>
|
||||||
|
<para style="footer">E-Mail:</para>
|
||||||
|
<para style="footer">Web:</para>
|
||||||
|
</place>
|
||||||
|
<place x="8.10cm" y="24.75cm" height="3cm" width="7cm">
|
||||||
|
<para style="footer">[[ company.phone ]]</para>
|
||||||
|
<para style="footer">[[ company.fax ]]</para>
|
||||||
|
<para style="footer">[[ company.partner_id.email ]]</para>
|
||||||
|
<para style="footer">[[ company.partner_id.website ]]</para>
|
||||||
|
</place>
|
||||||
|
|
||||||
|
<!-- Logo Oben -->
|
||||||
|
<image x="13.80cm" y="26.60cm" height="1.5cm" preserveAspectRatio="1">[[ company.logo]]</image>
|
||||||
|
|
||||||
<!-- Seperator -->
|
<!-- Seperator -->
|
||||||
<fill color="#000000"/>
|
<rect x="1.70cm" y="26.40cm" width="18.00cm" height="0.01cm" fill="yes" stroke="no"/>
|
||||||
<rect x="1.4cm" y="3.1cm" width="17.5cm" height="0.01cm" fill="yes" stroke="no"/>
|
|
||||||
|
<!-- Seperator -->
|
||||||
|
<rect x="1.70cm" y="1.85cm" width="18.00cm" height="0.01cm" fill="yes" stroke="no"/>
|
||||||
|
|
||||||
<!-- Footer links -->
|
<!-- Footer links -->
|
||||||
<place x="1.5cm" y="0cm" height="3cm" width="7cm">
|
<place x="1.75cm" y="0cm" height="1.75cm" width="18cm">
|
||||||
<para style="footer">--</para>
|
<para style="footer">Bankverbindung: BANK, IBAN: AT000000000000000000, BIC: AAAAAAAA</para>
|
||||||
<para style="footer">--</para>
|
<para style="footer">UID: [[company.vat ]], FN: [[ company.company_registry ]]</para>
|
||||||
<para style="footer">--</para>
|
<para style="footer">Die Ware bleibt bis zur vollständigen Bezahlung unser Eigentum.</para>
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
</place>
|
|
||||||
|
|
||||||
<!-- Footer Mitte -->
|
|
||||||
<place x="8cm" y="0cm" height="3cm" width="7cm">
|
|
||||||
<para style="footer">[[ company.partner_id.street ]]</para>
|
|
||||||
<para style="footer">[[ company.partner_id.zip ]] [[ company.partner_id.city ]]</para>
|
|
||||||
<para style="footer">UID: [[company.vat ]]</para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
</place>
|
</place>
|
||||||
|
|
||||||
<!-- Footer rechts -->
|
<!-- Seitenzahl -->
|
||||||
<place x="15cm" y="0cm" height="3cm" width="7cm">
|
<setFont name="Helvetica" size="8"/>
|
||||||
<para style="footer"></para>
|
<drawRightString x="561" y="58">Seite <pageNumber/> </drawRightString>
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
<para style="footer"></para>
|
|
||||||
</place>
|
|
||||||
|
|
||||||
</pageGraphics>
|
</pageGraphics>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,85 +1,90 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!--
|
<document filename="Auftrag.pdf">
|
||||||
<reports>
|
<template pageSize="(595.0,842.0)" title="Sale Order" author="Camadeus Consulting" allowSplitting="20">
|
||||||
<report>sale.report_saleorder</report>
|
|
||||||
</reports>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<document filename="Sales Order.pdf">
|
|
||||||
<template pageSize="(595.0,842.0)" title="Sale Order" author="Andreas Brückl" allowSplitting="20">
|
|
||||||
<pageTemplate id="first">
|
<pageTemplate id="first">
|
||||||
<frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
|
<frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
|
||||||
</pageTemplate>
|
</pageTemplate>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<story>
|
<story>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<seqReset id="L1"/>
|
<seqReset id="L1"/>
|
||||||
</para>
|
</para>
|
||||||
<para>[[repeatIn(objects,'o')]] [[ setLang(o.partner_id.commercial_partner_id.lang)]]</para>
|
<para>[[repeatIn(objects,'o')]] [[ setLang(o.partner_id.commercial_partner_id.lang)]]</para>
|
||||||
|
|
||||||
<para style="fett">[[ o.partner_id.commercial_partner_id.name ]]</para>
|
<blockTable colWidths="270,85,145" style="Struktur">
|
||||||
<para style="normal">[[ (o.partner_id.commercial_partner_id.id != o.partner_id.id and o.partner_id.name) or '' ]] </para>
|
<tr>
|
||||||
<para style="normal">[[ (o.partner_id.street ) or '']]</para>
|
<td>
|
||||||
<para style="normal">[[ (o.partner_id.street2) or removeParentNode('para') ]]</para>
|
<section>
|
||||||
<para style="normal">[[ (o.partner_id.zip) or '' ]] [[ (o.partner_id and o.partner_id.city) or '' ]]</para>
|
<para style="fett">[[ o.partner_id.commercial_partner_id.name ]]</para>
|
||||||
<para style="normal">[[ (o.partner_id.state_id and o.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
<para style="normal">[[ (o.partner_id.commercial_partner_id.id != o.partner_id.id and o.partner_id.name) or '' ]] </para>
|
||||||
<para style="normal">[[ (o.partner_id.country_id and o.partner_id.country_id.name) or '' ]]</para>
|
<para style="normal">[[ (o.partner_id.street ) or '']]</para>
|
||||||
|
<para style="normal">[[ (o.partner_id.street2) or removeParentNode('para') ]]</para>
|
||||||
|
<para style="normal">[[ (o.partner_id.zip) or '' ]] [[ (o.partner_id and o.partner_id.city) or '' ]]</para>
|
||||||
<blockTable colWidths="100,110" style="Struktur" hAlign="RIGHT">
|
<para style="normal">[[ (o.partner_id.state_id and o.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
||||||
<tr>
|
<para style="normal">[[ (o.partner_id.country_id and o.partner_id.country_id.name) or '' ]]</para>
|
||||||
<td>
|
<!-- Für Sichtfenster -->
|
||||||
<para style="normal">Ihre Referenz:</para>
|
<section>[[ not (o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.ref) or removeParentNode('section') ]]
|
||||||
</td>
|
<para style="normal"> </para>
|
||||||
<td>
|
</section>
|
||||||
<para style="normal">[[ o.client_order_ref ]]</para>
|
</section>
|
||||||
</td>
|
<para></para>
|
||||||
</tr>
|
</td>
|
||||||
<tr>
|
<td>
|
||||||
<td>
|
<para style="normal">Angebotsdatum:[[ o.state not in ['draft','sent'] and removeParentNode('para') ]]</para>
|
||||||
<para style="normal">Ansprechpartner:</para>
|
<para style="normal">Bestelldatum:[[ o.state in ['draft','sent'] and removeParentNode('para') ]]</para>
|
||||||
</td>
|
<para style="normal">Quelldokument:</para>
|
||||||
<td>
|
<para style="normal">Referenz:</para>
|
||||||
<para style="normal">[[ (o.user_id and o.user_id.name) or '' ]]</para>
|
<!--<para style="normal">Kundennummer:</para>-->
|
||||||
</td>
|
<para style="normal">Kunde UID Nr.:</para>
|
||||||
</tr>
|
<para style="normal">Ansprechpartner:</para>
|
||||||
<tr> [[ o.user_id and o.user_id.phone or removeParentNode('tr') ]]
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="normal">Tel.:</para>
|
<para style="normal">[[ formatLang(o.date_order,date = True) ]] </para>
|
||||||
</td>
|
<para style="normal">[[ o.origin ]] </para>
|
||||||
<td>
|
<para style="normal">[[ o.client_order_ref ]] </para>
|
||||||
<para style="normal">[[ (o.user_id and o.user_id.phone) or '' ]]</para>
|
<!--<para style="normal">[[ o.partner_id.commercial_partner_id.ref ]] </para>-->
|
||||||
</td>
|
<para style="normal">[[ o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.vat or '' ]] </para>
|
||||||
</tr>
|
<para style="normal">[[ (o.user_id and o.user_id.name) or '' ]] </para>
|
||||||
<tr>
|
</td>
|
||||||
<td>
|
</tr>
|
||||||
<para style="normal">Ihre UID:</para>
|
<!--
|
||||||
</td>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<para style="normal">[[ o.partner_id.commercial_partner_id and o.partner_id.commercial_partner_id.vat or '' ]]</para>
|
<section>[[ (o.partner_shipping_id and o.partner_shipping_id.id != o.partner_id.id) or removeParentNode('section')]]
|
||||||
</td>
|
<spacer length="0.5cm"/>
|
||||||
</tr>
|
<para style="normal">Lieferadresse:</para>
|
||||||
<tr>
|
<para style="normal">[[ o.partner_shipping_id.commercial_partner_id.name ]]</para>
|
||||||
<td>
|
<para style="normal">[[ (o.partner_shipping_id.commercial_partner_id.id != o.partner_shipping_id.id and o.partner_shipping_id.name) or '' ]] </para>
|
||||||
<para style="normal">Angebotsdatum:[[ o.state not in ['draft','sent'] and removeParentNode('para') ]]</para>
|
<para style="normal">[[ (o.partner_shipping_id.street ) or '']]</para>
|
||||||
<para style="normal">Bestelldatum:[[ o.state in ['draft','sent'] and removeParentNode('para') ]]</para>
|
<para style="normal">[[ (o.partner_shipping_id.street2) or removeParentNode('para') ]]</para>
|
||||||
</td>
|
<para style="normal">[[ (o.partner_shipping_id.zip) or '' ]] [[ (o.partner_shipping_id and o.partner_shipping_id.city) or '' ]]</para>
|
||||||
<td>
|
<para style="normal">[[ (o.partner_shipping_id.state_id and o.partner_shipping_id.state_id.name) or removeParentNode('para')]]</para>
|
||||||
<para style="normal">[[ formatLang(o.date_order,date = True) ]]</para>
|
<para style="normal">[[ (o.partner_shipping_id.country_id and o.partner_shipping_id.country_id.name) or '' ]]</para>
|
||||||
</td>
|
</section>
|
||||||
</tr>
|
<para style="normal"> </para>
|
||||||
</blockTable>
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="normal"> </para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="normal"> </para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
-->
|
||||||
|
</blockTable>
|
||||||
|
|
||||||
|
<spacer length="1.0cm"/>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<para style="ueberschrift"><b>[[ o.state not in ['draft','sent'] and removeParentNode('para') ]] Angebot [[ o.name ]]</b></para>
|
<para style="ueberschrift2"><b>[[ o.state not in ['draft','sent'] and removeParentNode('para') ]] Angebot [[ o.name ]]</b></para>
|
||||||
<para style="ueberschrift"><b>[[ o.state in ['draft','sent'] and removeParentNode('para') ]] Bestellbestätigung [[ o.name ]]</b></para>
|
<para style="ueberschrift2"><b>[[ o.state in ['draft','sent'] and removeParentNode('para') ]] Bestellbestätigung [[ o.name ]]</b></para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
<blockTable colWidths="30,57,213,45,50,40,75" repeatRows="1" style="TabelleHaupt" hAlign="LEFT">
|
<blockTable colWidths="30,57,170,75,63,40,75" repeatRows="1" style="TabelleHaupt" hAlign="LEFT">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header">Pos</para>
|
<para style="tabelle_header">Pos</para>
|
||||||
|
|
@ -91,10 +96,10 @@
|
||||||
<para style="tabelle_header_links">Bezeichnung</para>
|
<para style="tabelle_header_links">Bezeichnung</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header">Menge</para>
|
<para style="tabelle_header_links">Menge</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header_rechts">E-Preis</para>
|
<para style="tabelle_header_rechts">Einzelpreis</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_header"></para>
|
<para style="tabelle_header"></para>
|
||||||
|
|
@ -103,7 +108,7 @@
|
||||||
<para style="tabelle_header_rechts">Gesamtpreis</para>
|
<para style="tabelle_header_rechts">Gesamtpreis</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr>[[repeatIn(o.order_line,'line')]]
|
<tr>[[repeatIn(o.order_line,'line')]]
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_daten_center" leftIndent="0" bulletIndent="0" size="8.0">
|
<para style="tabelle_daten_center" leftIndent="0" bulletIndent="0" size="8.0">
|
||||||
|
|
@ -118,12 +123,11 @@
|
||||||
<section>[[ repeatIn((line.name or '').split('\n\n')[1:],'paragraphs') ]]
|
<section>[[ repeatIn((line.name or '').split('\n\n')[1:],'paragraphs') ]]
|
||||||
<spacer length="0.4cm"/>
|
<spacer length="0.4cm"/>
|
||||||
<para style="tabelle_daten_links">[[ paragraphs ]]</para>
|
<para style="tabelle_daten_links">[[ paragraphs ]]</para>
|
||||||
</section>
|
</section>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_daten_center">[[ formatLang(line.product_uos and line.product_uos_qty or line.product_uom_qty, digits=0) ]]</para>
|
<para style="tabelle_daten_links">[[ formatLang(line.product_uos and line.product_uos_qty or line.product_uom_qty, digits=0) ]] [[ line.product_uom.name ]]</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="tabelle_daten_rechts">[[ formatLang(line.price_unit,digits=2) ]]</para>
|
<para style="tabelle_daten_rechts">[[ formatLang(line.price_unit,digits=2) ]]</para>
|
||||||
</td>
|
</td>
|
||||||
|
|
@ -135,7 +139,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</blockTable>
|
</blockTable>
|
||||||
|
|
||||||
<blockTable colWidths="210,200,100" style="TabelleSchlussrechnung">
|
<blockTable colWidths="210,200,100" style="TabelleSchlussrechnung">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
|
|
@ -170,6 +174,17 @@
|
||||||
<para style="schlussrechnung_fett">[[ formatLang(o.amount_total,digits=2 ) ]]</para>
|
<para style="schlussrechnung_fett">[[ formatLang(o.amount_total,digits=2 ) ]]</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<para></para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="schlussrechnung">Rechnungsbetrag inkl. Skonto in €</para>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<para style="schlussrechnung">[[ (o.skonto_betrag_inkl and formatLang(o.skonto_betrag_inkl,digits=2)) or removeParentNode('tr') ]]</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</blockTable>
|
</blockTable>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
@ -181,19 +196,39 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
<blockTable colWidths="110,300" style="Struktur" hAlign="LEFT">
|
<blockTable colWidths="110,390" style="Struktur" hAlign="LEFT">
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<para style="normal">Zahlungsziele:</para>
|
<para style="normal">Zahlungsbedingungen:</para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<para style="normal">[[ (o.payment_term and o.payment_term.note) or removeParentNode('blockTable') ]]</para>
|
<para style="normal">[[ (o.payment_term and o.payment_term.note) or removeParentNode('blockTable') ]]</para>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</blockTable>
|
</blockTable>
|
||||||
|
|
||||||
|
<!--
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
||||||
|
<blockTable colWidths="500" style="Struktur" hAlign="LEFT">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<para style="normal"></para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>[[ o.date_due and o.payment_term and o.payment_term.skonto_prozent or removeParentNode('tr') ]]
|
||||||
|
<td>
|
||||||
|
<para style="normal">Zahlbar bis [[ formatLang(o.skonto_faelligkeit,date = True) ]] abzüglich [[ formatLang(o.payment_term.skonto_prozent,digits=2) ]]% beträgt [[ formatLang(o.skonto_betrag_inkl,digits=2) ]]€.</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>[[ o.date_due or removeParentNode('tr') ]]
|
||||||
|
<td>
|
||||||
|
<para style="normal">Zahlbar bis [[ formatLang(o.date_due,date = True) ]] ohne Abzug.</para>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</blockTable>
|
||||||
|
-->
|
||||||
|
|
||||||
</story>
|
</story>
|
||||||
</document>
|
</document>
|
||||||
|
|
|
||||||
|
|
@ -1,69 +1,53 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!--
|
<document filename="Lieferschein.pdf">
|
||||||
<reports>
|
<template pageSize="(595.0,842.0)" title="Sale Order" author="Camadeus Consulting" allowSplitting="20">
|
||||||
<report>stock.report_picking</report>
|
|
||||||
</reports>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<document filename="test.pdf">
|
|
||||||
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
|
|
||||||
<pageTemplate id="first">
|
<pageTemplate id="first">
|
||||||
<frame id="first" x1="34.0" y1="57.0" width="504" height="728"/>
|
<frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
|
||||||
</pageTemplate>
|
</pageTemplate>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<story>
|
<story>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<seqReset id="L1"/>
|
<seqReset id="L1"/>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>[[ repeatIn(objects,'picking') ]] [[ picking.partner_id and setLang(picking.partner_id.lang) ]]</para>
|
<para>[[ repeatIn(objects,'picking') ]] [[ picking.partner_id and setLang(picking.partner_id.lang) ]]</para>
|
||||||
|
|
||||||
<para style="fett">[[ picking.partner_id.commercial_partner_id.name ]]</para>
|
<blockTable colWidths="270,85,145" style="Struktur">
|
||||||
<para style="normal">[[ (picking.partner_id.commercial_partner_id.id != picking.partner_id.id and picking.partner_id.name) or '' ]] </para>
|
<tr>
|
||||||
<para style="normal">[[ (picking.partner_id and picking.partner_id.street ) or '']]</para>
|
<td>
|
||||||
<para style="normal">[[ (picking.partner_id and picking.partner_id.street2) or removeParentNode('para') ]]</para>
|
<section>
|
||||||
<para style="normal">[[ (picking.partner_id and picking.partner_id.zip) or '' ]] [[ (picking.partner_id and picking.partner_id.city) or '' ]]</para>
|
<para style="fett">[[ picking.partner_id.commercial_partner_id.name ]]</para>
|
||||||
<para style="normal">[[ (picking.partner_id and picking.partner_id.state_id and picking.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
<para style="normal">[[ (picking.partner_id.commercial_partner_id.id != picking.partner_id.id and picking.partner_id.name) or '' ]] </para>
|
||||||
<para style="normal">[[ (picking.partner_id and picking.partner_id.country_id and picking.partner_id.country_id.name) or '' ]]</para>
|
<para style="normal">[[ (picking.partner_id.street ) or '']]</para>
|
||||||
|
<para style="normal">[[ (picking.partner_id.street2) or removeParentNode('para') ]]</para>
|
||||||
|
<para style="normal">[[ (picking.partner_id.zip) or '' ]] [[ (picking.partner_id and picking.partner_id.city) or '' ]]</para>
|
||||||
<blockTable colWidths="100,110" style="Struktur" hAlign="RIGHT">
|
<para style="normal">[[ (picking.partner_id.state_id and picking.partner_id.state_id.name) or removeParentNode('para')]]</para>
|
||||||
<tr>
|
<para style="normal">[[ (picking.partner_id.country_id and picking.partner_id.country_id.name) or '' ]]</para>
|
||||||
<td>
|
<!-- Für Sichtfenster -->
|
||||||
<para style="normal">Bestellung:</para>
|
<section>[[ not (picking.partner_id.commercial_partner_id and picking.partner_id.commercial_partner_id.ref) or removeParentNode('section') ]]
|
||||||
</td>
|
<para style="normal"> </para>
|
||||||
<td>
|
</section>
|
||||||
<para style="normal">[[ picking.origin ]]</para>
|
</section>
|
||||||
</td>
|
<para></para>
|
||||||
</tr>
|
</td>
|
||||||
<tr>
|
<td>
|
||||||
<td>
|
<para style="normal">Datum:</para>
|
||||||
<para style="normal">Datum:</para>
|
<para style="normal">Bestellung:</para>
|
||||||
</td>
|
<para style="normal">Kundenreferenz:</para>
|
||||||
<td>
|
<para style="normal">Kundennr.:</para>
|
||||||
<para style="normal">[[ formatLang(picking.date_done, date=True) or formatLang(time.strftime('%Y-%m-%d'),date=True) ]]</para>
|
</td>
|
||||||
</td>
|
<td>
|
||||||
</tr>
|
<para style="normal">[[ formatLang(picking.date_done, date=True) or formatLang(time.strftime('%Y-%m-%d'),date=True) ]] </para>
|
||||||
<tr>
|
<para style="normal">[[ picking.origin ]] </para>
|
||||||
<td>
|
<para style="normal">[[ picking.sale_id and picking.sale_id.client_order_ref or '' ]] </para>
|
||||||
<para style="normal">Referenz:</para>
|
<para style="normal">[[ picking.partner_id and picking.partner_id.commercial_partner_id and picking.partner_id.commercial_partner_id.ref or '' ]] </para>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
</tr>
|
||||||
<para style="normal">[[ picking.sale_id and picking.sale_id.client_order_ref or '' ]]</para>
|
</blockTable>
|
||||||
</td>
|
|
||||||
</tr>
|
<spacer length="1.0cm"/>
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<para style="normal">Kundennr.:</para>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<para style="normal">[[ picking.partner_id and picking.partner_id.commercial_partner_id and picking.partner_id.commercial_partner_id.ref or '' ]]</para>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</blockTable>
|
|
||||||
|
|
||||||
<para style="ueberschrift">Lieferschein [[ picking.name ]]</para>
|
<para style="ueberschrift">Lieferschein [[ picking.name ]]</para>
|
||||||
|
|
||||||
<spacer length="0.5cm"/>
|
<spacer length="0.5cm"/>
|
||||||
|
|
|
||||||
|
|
@ -97,11 +97,21 @@ class Config():
|
||||||
# 'prefix': 'AS-',
|
# 'prefix': 'AS-',
|
||||||
# 'padding': 5,
|
# 'padding': 5,
|
||||||
# },
|
# },
|
||||||
# FEHLER da gleich für alle Vorgangstypen!!! 'picking.out': {
|
# 'picking.out': {
|
||||||
# 'number_next_actual': 1,
|
# #'number_next_actual': 1,
|
||||||
# 'prefix': 'L-',
|
# 'prefix': 'LS/',
|
||||||
# 'padding': 5,
|
# 'padding': 4,
|
||||||
# },
|
# },
|
||||||
|
# 'picking.in': {
|
||||||
|
# #'number_next_actual': 1,
|
||||||
|
# 'prefix': 'LS/IN/',
|
||||||
|
# 'padding': 4,
|
||||||
|
# },
|
||||||
|
# 'picking.int': {
|
||||||
|
# #'number_next_actual': 1,
|
||||||
|
# 'prefix': 'LS/INT/',
|
||||||
|
# 'padding': 4,
|
||||||
|
# },
|
||||||
# 'purchase.order': {
|
# 'purchase.order': {
|
||||||
# 'number_next_actual': 1,
|
# 'number_next_actual': 1,
|
||||||
# 'prefix': 'B-',
|
# 'prefix': 'B-',
|
||||||
|
|
|
||||||
|
|
@ -203,18 +203,33 @@ class CamadeusFunctions():
|
||||||
res = self._execute('base.module.upgrade', 'upgrade_module', modules_to_install)
|
res = self._execute('base.module.upgrade', 'upgrade_module', modules_to_install)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def _set_picking_sequence_prefix(self, code, value):
|
||||||
|
seq_dict = self.config.sequences
|
||||||
|
|
||||||
|
#Hauptsequenz des Picking Types mit diesem code anpassen
|
||||||
|
picking_type_id = self._execute('stock.picking.type', 'search', [('code','=',code)], 0, 1, 'id')[0]
|
||||||
|
picking_type = self._execute('stock.picking.type', 'read', picking_type_id, ['sequence_id'])
|
||||||
|
s_id = picking_type['sequence_id'][0]
|
||||||
|
if not self._execute('ir.sequence', 'write', s_id, seq_dict.get(value)):
|
||||||
|
return False
|
||||||
|
|
||||||
|
#Allen Picking Types mit diesem code die Haupsequenz geben
|
||||||
|
picking_type_ids = self._execute('stock.picking.type', 'search', [('code','=',code)])
|
||||||
|
if not self._execute('stock.picking.type', 'write', picking_type_ids, {'sequence_id': s_id}):
|
||||||
|
return False
|
||||||
|
|
||||||
def set_dokumentennummern(self):
|
def set_dokumentennummern(self):
|
||||||
"""Dokumentennummern setzen"""
|
"""Dokumentennummern setzen"""
|
||||||
|
|
||||||
seq_dict = self.config.sequences
|
seq_dict = self.config.sequences
|
||||||
|
|
||||||
# Lieferschein
|
# Lieferschein
|
||||||
if seq_dict.get('picking.out',False):
|
if seq_dict.get('picking.out',False):
|
||||||
picking_type_ids = self._execute('stock.picking.type', 'search', [('code','=','outgoing')])
|
self._set_picking_sequence_prefix('outgoing', 'picking.out')
|
||||||
picking_types = self._execute('stock.picking.type', 'read', picking_type_ids, ['sequence_id'])
|
if seq_dict.get('picking.in',False):
|
||||||
s_ids = [t['sequence_id'][0] for t in picking_types]
|
self._set_picking_sequence_prefix('incoming', 'picking.in')
|
||||||
if not self._execute('ir.sequence', 'write', s_ids, seq_dict.get('picking.out')):
|
if seq_dict.get('picking.int',False):
|
||||||
return False
|
self._set_picking_sequence_prefix('internal', 'picking.int')
|
||||||
|
|
||||||
# Angebot
|
# Angebot
|
||||||
if seq_dict.get('sale.order',False):
|
if seq_dict.get('sale.order',False):
|
||||||
|
|
@ -493,4 +508,4 @@ class CamadeusFunctions():
|
||||||
res = self._execute('decimal.precision', 'write', ids, {'digits': self.config.digits})
|
res = self._execute('decimal.precision', 'write', ids, {'digits': self.config.digits})
|
||||||
if not res:
|
if not res:
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue