User Tools

Site Tools


offer-cube:howto:pdf-special-variables

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
offer-cube:howto:pdf-special-variables [2016/10/16 11:13]
wiki
offer-cube:howto:pdf-special-variables [2024/02/19 11:26] (current)
Line 2: Line 2:
  
 Zurück zur [[offer-cube:​howto|Anleitungen / HowTos]] Zurück zur [[offer-cube:​howto|Anleitungen / HowTos]]
 +
 +Siehe auch [[offer-cube:​howto:​pdf-special-img|PDF Power-User Funktionen: Einfügen von Bildern aus Attachments]]. \\
 +Siehe auch [[offer-cube:​faq:​faq_ooi-defaulttext-customer-specific-appendix|Einstellungen globale und kundenspezifische Standard Texte]]. \\
 +Siehe auch [[offer-cube:​howto:​email-send|Email zusätzlicher Text und Anhänge]]. \\
 +Siehe auch [[offer-cube:​faq:​faq_offer-creator-on-pdf-with-profile-picture-and-name|Persönlicher Betreuer/​Angebotsersteller auf PDF]]. \\
 +Siehe auch [[offer-cube:​faq:​faq_invoice-cashdiscount|FAQ:​ Rechnung mit Skonto]]. \\
 +Siehe auch [[offer-cube:​faq:​faq_variables-positiongroup|FAQ:​ Positionsgruppen/​Text mit Variable]] \\
 +Siehe auch [[offer-cube:​howto:​order-recurring|FAQ:​ Dauerauftrag anlegen]] \\
 +Siehe auch [[offer-cube:​howto:​objref|Einstellungen Nummernkreise]] \\
 +
 +**Beispiele:​**
 +
 +Siehe auch [[offer-cube:​faq:​faq_ooi-syncsetting_notification_slack_channel|FAQ:​ Nachrichten in SLACK Channel posten]] \\
 +Siehe auch [[offer-cube:​faq:​faq_ooi-syncsetting_notification_email_offer_accepted|FAQ:​ Email bei Angebotsbeauftragung]] \\
 +Siehe auch [[offer-cube:​faq:​faq_projectmgr_offer_supplierorder|FAQ:​ Projektleiter benachrichtigen bei Erhalt einer Lieferantenbestellung]] \\
  
 ===== Allgemeines / Zusammenfassung ===== ===== Allgemeines / Zusammenfassung =====
  
 Die PDF Erweiterungen für Power-User ermöglichen folgende Funktionalitäten (link auf die entsprechenden Dokumente): Die PDF Erweiterungen für Power-User ermöglichen folgende Funktionalitäten (link auf die entsprechenden Dokumente):
-  * [[offer-cube:​howto:​pdf-special-font|Schriftstile]]:​ Fett <b>, Kursiv <i>, Unterstrichen <u> +  * [[offer-cube:​howto:​pdf-special-font#​detailsfett_b_kursiv_i_unterstrichen_u|Schriftstile]]:​ Fett <b>, Kursiv <i>, Unterstrichen <u> 
-  * [[offer-cube:​howto:​pdf-special-font|Links auf Webseiten]] <a> +  * [[offer-cube:​howto:​pdf-special-font#​detailslinks_auf_webseiten_a|Links auf Webseiten]] <a> 
-  * [[offer-cube:​howto:​pdf-special-font|Absätze/​Abstände]] <p> / <​br>​ +  * [[offer-cube:​howto:​pdf-special-font#​detailsabsaetze_abstaende_p_br|Absätze/​Abstände]] <p> / <​br>​ 
-  * [[offer-cube:​howto:​pdf-special-font|Seitenumbruch bzw. dynamischer Seitenumbruch]] <​pagebreak>​+  * [[offer-cube:​howto:​pdf-special-font#​detailsseitenumbruch_bzw_dynamischer_seitenumbruch_pagebreak|Seitenumbruch bzw. dynamischer Seitenumbruch]] <​pagebreak
 +  * [[offer-cube:​howto:​pdf-special-img|Einfügen von Bildern aus Attachments]] <img>
  
 Hier in diesem Dokument werden speziell folgende Funktionalitäten erläutert: Hier in diesem Dokument werden speziell folgende Funktionalitäten erläutert:
-  * Einfügen von Bildern aus Attachments <img> +  * [[offer-cube:​howto:​pdf-special-variables#​detailsvorhandene_variablen|Variablen verwenden]] wie z.B. $CONFIGURATION oder $obj 
-  * Objektdaten holen und über Variablen in den Text einfügen+  * [[offer-cube:​howto:​pdf-special-variables#​detailsholen_eines_objekts_mit_getobject|Objektdaten holen]] und über Variablen in den Text einfügen
  
 Gesteuert werden diese Funktionen über Funktionsaufrufe,​ die zwischen jeweils 2 eckigen Klammern aufgerufen werden. Gesteuert werden diese Funktionen über Funktionsaufrufe,​ die zwischen jeweils 2 eckigen Klammern aufgerufen werden.
Line 23: Line 39:
   * Position: Felder "​Positions-Bezeichnung",​ "​Positions-Beschreibung"​   * Position: Felder "​Positions-Bezeichnung",​ "​Positions-Beschreibung"​
   * Artikel: Feld "​Beschreibung"​   * Artikel: Feld "​Beschreibung"​
 +
 +Variablen/​Funktionen lassen sich größtenteils wie in der Dokumentation der Template Engine **smarty** [[http://​www.smarty.net/​docs/​en/​]] verwenden.
 +   
 +** ACHTUNG: ** seit Build 313 (2020-06-01) muss **_objref** statt _ref verwendet werden
 + 
 +===== Details: Variablen zuweisen =====
 +
 +Mit **<​nowiki>​[[assign var="​Variable"​ value="​Wert"​ scope="​global"​]]</​nowiki>​** kann der Variable "//​**$Variable**//"​ der Text "//​**Wert**//"​ zugewiesen werden.
 +
 +Das "​**//​scope="​global"//​**"​ sorgt dafür, dass diese Variable auch später zur Verfügung steht.
 +
 +**Hinweis:​** Die Texte (und damit die Variablenzuweisungen) werden der Reihenfolge nach durchgegangen,​ wie sie auch im PDF angezeigt werden. \\
 +Das bedeutet, die Variable $styp ist in allen nachfolgenden Positionen ebenfalls (mit dem letzten gesetzten Wert) verfügbar (durch scope="​global"​). In den vorhergehenden Positionen jedoch nicht! \\
 +Die Variable ist auch im Auftrags-Appendix verfügbar - jedoch nicht in der Auftrags-Beschreibung (da diese VOR den Positionen kommt).
 +
 +Beispiel siehe [[offer-cube:​faq:​faq_variables-positiongroup|FAQ:​ Positionsgruppen/​Text mit Variable]]
 +
 +===== Details: vorhandene Variablen =====
 +
 +Einige Variablen stehen grundsätzlich zur Verfügung.
 +
 +Siehe [[offer-cube:​howto:​pdf-special-variables#​detailsvariablen_uebersicht|Variablen Übersicht]]
 +
 +Hierzu gehören unter anderem:
 +  * ** $SCHEMA ** die Referenz auf das gesamte Datenbank Schema - siehe [[offer-cube:​webservice:​operation:​schema|Webservice Entwickler Doku Basisoperation <​module>/​schema]]
 +  * ** $CONFIGURATION ** die aktuelle Systemkonfiguration / Systemvariablen - siehe [[offer-cube:​howto:​pdf-special-variables#​detailsvariablen_uebersicht|Variablen Übersicht]]
 +  * ** $obj ** das aktuelle Hauptobjekt (siehe Angebot [[offer-cube:​webservice:​modules:​offer|offer]] / Auftrag [[offer-cube:​webservice:​modules:​order|order]] / Rechnung [[offer-cube:​webservice:​modules:​invoice|invoice]])
 +
 +===== Details: Variablen ausgeben =====
 +
 +Die Variablen lassen sich größtenteils in der von smarty bekannten Syntax ausgeben bzw. verwenden - siehe [[http://​www.smarty.net/​docs/​en/​language.syntax.variables.tpl]]
 +
 +**ACHTUNG:​** \\
 +**Entgegen der Angabe in der smarty Dokumentation werden Variablen und Funktionen mit 2 eckigen Klammern aufgerufen.**
 +
 +Also z.B. Aufruf einer Funktion //<​nowiki>​[[funktion parameter="​wert"​]]</​nowiki>//​ ODER Ausgabe einer Variable //<​nowiki>​[[$variable]]</​nowiki>//​
 +
 +**Beispiel: Verwendung des Firmennamens als Variable**
 +<​code>​
 +Vielen Dank für Ihren Auftrag, ​
 +Ihr [[$CONFIGURATION.ownCompany]] Team
 +</​code>​
 +
 +{{:​offer-cube:​howto:​pdf-special:​offer-cube_pdf-special_07-var1-configuration1.png|Verwendung der $CONFIGURATION Variablen}}
 +
 +
 +==== Anwendungsbeispiel:​ Verwendung der Rechnungsnummer und des Preises einer Rechnung ====
 +
 +Für die Zahlungsanweisung an den Kunden kann z.B. in der Bankverbindung (//​Einstellungen -> Eigene Firmendaten -> Bankverbindung//​) nochmals auf den Gesamtpreis und die Rechnungsnummer als Verwendungszweck verwiesen werden.
 +
 +Das aktuelle Objekt ist über die Variable //<​nowiki>​[[$obj.<​fieldname>​]]</​nowiki>//​ zugreifbar.
 +
 +**Beispiel: Bankverbindung mit Verwendungszweck Angabe:**
 +<​code>​
 +Bitte überweisen Sie den offenen Rechnungsbetrag von <​b>​[[$obj.price_wtax|d2bcurrency]]</​b>​ auf unser Konto und geben Sie als Verwendungszweck die Rechnungsnummer <​b>​[[$obj._objref]]</​b>​ an.
 +</​code>​
 +
 +{{:​offer-cube:​howto:​pdf-special:​offer-cube_pdf-special_07-var3-obj1-build313.png|Verwendung des aktuellen Objekts mit [[$obj]]}}
 +
 +In diesem Beispiel wird auch die [[offer-cube:​howto:​pdf-special-font#​detailsfett_b_kursiv_i_unterstrichen_u|Schriftstil-Formatierung]] mit <b> verwendet.
 +
 +Zusätzlich kommt ein Modifikator //​d2bcurrency//​ zur Verwendung, der eine Zahl als Euro Betrag mit Tausendertrennzeichen und Komma formatiert.
 +
 +**TIPP:** Ein vollständiger Code der auch unterschiedliche Zahlungsarten berücksichtigt findet sich hier: [[offer-cube:​howto:​paymentterm#​zahlungsart_einziehungsauftrag_in_bankverbindung_verwenden|Zahlungsart in Bankverbindung verwenden]]
 +
 +===== Details: Holen eines Objekts mit [[getobject]] =====
 +
 +Die Funktion // <​nowiki>​[[getobject]]</​nowiki>​ // erlaubt das Holen von Daten eines Objekts aus der Datenbank. \\
 +Ein Objekt kann hierbei ein Angebot/​Auftrag/​Rechnung sein, aber auch andere Objekte wie resource oder article.
 +
 +**Beispiel: Holen einer //​resource//​ mit Namen und Verwendung der Beschreibung //​description//:​**
 +<​code>​
 +Ihr Projektleiter:​ [[getobject module="​resource"​ by="​name"​ name="​Leo Eibler"​ assign="​projectmgr"​]]
 +[[$projectmgr.description|nl2br]]
 +</​code>​
 +
 +{{:​offer-cube:​howto:​pdf-special:​offer-cube_pdf-special_07-var2-getobject.png|Verwendung der Funktion [[getobject]]}}
 +
 +===== Details: Variablen Übersicht =====
 +
 +Eine Übersicht der gängigsten Variablen:
 +
 +**ACHTUNG: Immer Groß- und Kleinschreibung beachten!**
 +
 +| // $CONFIGURATION // | Die systemweite Konfigurations-Variable $CONFIGURATION ist ein assoziatives Array mit Systemeinstellungen,​ Standardtexten,​ etc. |
 +| // $obj // | Das aktuelle Objekt (Angebot, Auftrag, Rechnung) als assoziatives Array |
 +
 +Beispiele:
 +
 +| // $CONFIGURATION.ownCompany // | Eigener Firmenname: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownAddress // | Eigene Firmen Adresse (mit Newlines): //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownTelephone // | Eigene Firmen Telefon Nummer: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownFax // | Eigene Firmen Fax Nummer: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownMail // | Eigene Firmen Mailadresse:​ //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownWeb // | Eigene Firmen Internetseite:​ //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownUID // | Eigene Umsatzsteuer ID: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownBankIBAN // | Eigene Bankverbindung IBAN: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownBankBIC // | Eigene Bankverbindung BIC: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownBankOwner // | Eigene Bankverbindung Inhaber: //​Einstellung//​ -> //Eigene Firmendaten//​ |
 +| // $CONFIGURATION.ownBankAccount // | Eigene Bankverbindung:​ //​Einstellung//​ -> //Druck// -> // Standard Texte // |
 +| // $CONFIGURATION.useInvoicePdfOwnBankAccountHeadline // | Überschrift Rechnung Bankverbindung:​ //​Einstellung//​ -> //Druck// -> // Standard Texte // |
 +| // $CONFIGURATION.useInvoicePdfOwnBankAccountHeadline_EN // | Überschrift Rechnung Bankverbindung (Englisch): //​Einstellung//​ -> //Druck// -> // Standard Texte // |
 +| // $CONFIGURATION.ownBankAccount_EN // | Eigene Bankverbindung (Englisch): //​Einstellung//​ -> //Druck// -> // Standard Texte // |
 +| // $ANREDE // | Für Angebot, Auftrag und Rechnung automatisch generierte Anrede per-Sie z.B. "//​Sehr geehrter Herr Ing. Max Mustermann, MSc//" |
 +| // $ANREDE_DU // | Für Angebot, Auftrag und Rechnung automatisch generierte Anrede per-Du z.B. "//​Lieber Max//" |
 +| // $SALUTATION // | Für Angebot, Auftrag und Rechnung automatisch generierte Anrede in englisch per-Sie z.B. "//​Dear Mr. Ing. Max Mustermann, MSc//" |
 +| // $SALUTATION_DU // | Für Angebot, Auftrag und Rechnung automatisch generierte Anrede in englisch per-Du z.B. "//​Hello Max//" |
 +| // $PDF_LINK // | Für Angebot, Auftrag und Rechnung direkter Link auf das PDF aufrufbar durch den Kunden |
 +| // $time // | Aktuelles Datum/​Uhrzeit als Unixtimestamp (Sekunden seit 1.1.1970 UTC) - siehe '​date_format'​ |
 +| // $obj // | Das aktuelle Haupt-Objekt (z.B. Angebot, Auftrag, Rechnung) als assoziatives Array |
 +| // $obj.id // | Aktuelle interne numerische ID des Objekts (ohne Objektkürzel) - z.B. bei Angebot interne Angebots-ID //1234//, bei Auftrag interne Auftrags-ID //1234// oder bei Rechnung interne Rechnungs-ID //1234// |
 +| // $obj._ref // | Aktuelle interne Referenz-ID des Objekts (mit internem Objektkürzel) - z.B. bei Angebot interne Angebots-Referenz-ID //xo1234//, bei Auftrag interne Auftrags-Referenz-ID //xn1234// oder bei Rechnung interne Rechnungs-ID //xr1234// |
 +| // $obj._objref // | Aktuelle Referenz-Nummer des Objekts lt. [[offer-cube:​howto:​objref|Nummernkreise]] - z.B. bei Angebot Angebotsnr. //o1234//, bei Auftrag Auftragsnr //n1234// oder bei Rechnung Rechnungsnr //r1234// \\ Siehe auch [[offer-cube:​howto:​objref|Einstellungen Nummernkreise]] |
 +| // $obj.price // | Ursprungspreis netto ohne Mehrwertsteuer. |
 +| // $obj.price_wdiscount // | Rabattierter Preis netto ohne Mehrwertsteuer. |
 +| // $obj.price_wtax // | End-Preis mit Mehrwertsteuer. Kann mit Tausendertrennzeichen und 2 Nachkommastellen formatiert werden mit //%% [[$obj.price_wtax|d2bCurrency]] %%// |
 +| // $obj.tax_portion_a // | Mehrwertsteuer für Satz-A (mit //_b// für Satz-B usw) |
 +| // $obj.summary // | Überschrift |
 +| // $obj.description // | Beschreibung |
 +| // $obj.appendix // | Appendix |
 +| // $obj.startdate // | Start Datum als Unix-Timestamp. Kann zu lesbaren Datum formatiert werden mit //%% [[$obj.startdate|ut2humandate]] %%// |
 +| // $obj.enddate // | End Datum als Unix-Timestamp. Kann zu lesbaren Datum formatiert werden mit //%% [[$obj.enddate|ut2humandate]] %%// |
 +| // $obj.invoice_dt // | Nur bei Rechnung: Rechnungsdatum als Unix-Timestamp. Kann zu lesbaren Datum formatiert werden mit //%% [[$obj.invoice_dt|ut2humandate]] %%// |
 +| // $obj.duepayment_dt // | Nur bei Rechnung: Zahlungsziel als Unix-Timestamp. Kann zu lesbaren Datum formatiert werden mit //%% [[$obj.duepayment_dt|ut2humandate]] %%// |
 +| // $obj.created_user // | Benutzer der das Objekt (z.B. Angebot) **angelegt** hat |
 +| // <​nowiki>​$obj.created_user__email</​nowiki>​ // | Email Adresse des Benutzer der das Objekt (z.B. Angebot) **angelegt** hat |
 +| // $obj.modified_user // | Benutzer der das Objekt (z.B. Angebot) **zuletzt geändert** hat |
 +| // <​nowiki>​$obj.modified_user__email</​nowiki>​ // | Email Adresse des Benutzer der das Objekt (z.B. Angebot) **zuletzt geändert** hat |
 +| // $obj.projectmgr_user // | Projektleiter Benutzer der dem Objekt zugeordnet ist - siehe [[offer-cube:​faq:​faq_projectmgr_offer_supplierorder|FAQ:​ Projektleiter]] |
 +| // <​nowiki>​$obj.projectmgr_user__email</​nowiki>​ // | Email Adresse des Projektleiter Benutzers |
 +| // $obj.customer // | Die Referenz zum Kundenstammdatensatz |
 +| // <​nowiki>​$obj.customer___objref</​nowiki>​ // | Kundennummer (ACHTUNG: 3 Unterstriche!) |
 +| // <​nowiki>​$obj.customer__language</​nowiki>​ // | Sprache des Kunden: 0=Standard (Deutsch), 1=Deutsch, 2=Englisch |
 +| // $obj.site_name // | Zusammengesetzter Kundenname für das jeweilige Objekt (Achtung: muss nicht identisch mit dem Stammdatensatz sein) |
 +| // $obj.site_company // | Firmenname für das jeweilige Objekt (Achtung: muss nicht identisch mit dem Stammdatensatz sein) |
 +| // $obj.site_title // | Anrede des Kunden: 0=Unbekannt/​nicht gepflegt, 1=Herr, 2=Frau, 4=Familie |
 +| // $obj.site_firstname // | Vorname für das jeweilige Objekt (Achtung: muss nicht identisch mit dem Stammdatensatz sein) |
 +| // $obj.site_lastname // | Nachname für das jeweilige Objekt (Achtung: muss nicht identisch mit dem Stammdatensatz sein) |
 +| // $obj.site_cashdiscount_percent // | Skonto Prozent ​ - siehe [[offer-cube:​howto:​paymentterm|Zahlungskonditionen/​Skonto]] |
 +| // $obj.site_duepayment_days // | Zahlungsziel Tage (bei einer Rechnung wird das beim Versand nach Auswahl des Zahlungsziel automatisch angepasst) - siehe [[offer-cube:​howto:​paymentterm|Zahlungskonditionen/​Skonto]] |
 +| // $obj.site_cashdiscount_days // | Skonto (Tage) - siehe [[offer-cube:​howto:​paymentterm|Zahlungskonditionen/​Skonto]] |
 +| // $obj.site_paymethod // | Zahlungsart (interner Code 0=Überweisung/​Rechnung,​ 11=Einziehungsauftrag,​ 15=Nachnahme,​ 18=Vorkasse) - siehe [[offer-cube:​howto:​paymentterm|Zahlungskonditionen/​Skonto]] |
 +| // $obj.site_tax // | Flag ob Inlands-Steuersatz angewendet wird (20) oder keine Steuer (0). \\ Hinweis: Dies ist NICHT der Steuersatz sondern nur eine Kennzeichnung ob Steuersätze grundsätzlich angewendet werden. |
 +| // $obj.site_country_code2 // | 2 stelliger ISO 3166-2 Ländercode |
 +| // $position // | Die aktuelle Position (nur innerhalb einer Position sinnvoll) |
 +| // $position.posnr // | Die Positionsnummer der aktuellen Position |
 +| // $position.amount // | Die Anzahl der aktuellen Position |
 +| // $position.price // | Ursprungspreis netto ohne Mehrwertsteuer der aktuellen Position |
 +| // $position.price_wdiscount // | Rabattierter Preis netto ohne Mehrwertsteuer der aktuellen Position |
 +| // $position.price_wtax // | End-Preis mit Mehrwertsteuer der aktuellen Position. Kann mit Tausendertrennzeichen und 2 Nachkommastellen formatiert werden mit //%% [[$position.price_wtax|d2bCurrency]] %%// |
 +
 +
 +Eine Übersicht der gängigsten Modifikatoren:​ \\
 +
 +| // escape // | Sollte **immer bei allen Textfeldern benutzt werden** und entfernt HTML Steuerzeichen - z.B. <​code>​[[$obj.summary|escape]]</​code>​ |
 +| // d2bCurrency // | Formatierung von Euro Beträgen mit Tausenderpunkt und Kommazeichen - z.B. <​code>​[[$obj.price_wtax|d2bCurrency]]</​code>​ |
 +| // date_format //       | formatiert eine Unixtimestamp Zeitangabe - z.B. <​code>​[[$obj.invoice_dt|date_format:"​%d.%m.%Y"​]]</​code>​ \\ %d = Tag, %m = Monat, %Y = Jahr 4 stellig |
 +| // nl2br //       | Sorgt für einen Zeilenumbruch im PDF, falls die Eingabevariable einen Zeilumbruch beinhaltet - z.B. <​code>​[[$projectmgr.description|escape|nl2br]]</​code>​ (inkl. //escape//, damit andere HTML Steuerzeichen unterbunden werden - WICHTIG: //escape// muss VOR //nl2br// kommen, da sonst der HTML Code für den Zeilenumbruch ebenfalls entfernt wird ) |
 +
 +Eine Übersicht der gängigsten Funktionen: \\
 +
 +| // addimg // | Die Funktion //<​nowiki>​[[addimg]]</​nowiki>//​ fügt ein Bild in das PDF ein - siehe [[offer-cube:​howto:​pdf-special-img|PDF Power-User Funktionen: Einfügen von Bildern aus Attachments]] |
 +| // getobject // | Die Funktion //<​nowiki>​[[getobject]]</​nowiki>//​ holt Daten zu einem Objekt - siehe [[offer-cube:​howto:​pdf-special-variables#​detailsholen_eines_objekts_mit_getobject|oben:​ Details: Holen eines Objekts]] |
 +| // setskip // | Die Funktion //<​nowiki>​[[setskip]]</​nowiki>//​ wird nur bei der Abbruchbedingung für [[offer-cube:​howto:​syscron|Erinnerung-Emails mittels Zeitaktionen]] verwendet. |
 +
 +
 +Die Variablen sind immer in // %%[[%% // und // %%]]%% // einzufassen. \\
 +Also z.B. um den eigenen Firmennamen zu verwenden: // %%[[$CONFIGURATION.ownCompany]]%% //
 +
 +Die Variablen werden in PDFs (z.B. bei der Angebotsbeschreibung,​ Auftragsbeschreibung,​ Rechnungsbeschreibung,​ Annex, etc.) als auch bei den Email Zusatz-Texten und [[offer-cube:​howto:​docmeta|Dokument Vorlagen für Textblöcke und Emails]] ausgewertet.
 +
 +Siehe auch [[offer-cube:​howto:​email-send|Email zusätzlicher Text und Anhänge]]. \\
 +Soehe auch [[offer-cube:​howto:​docmeta|Dokument Vorlagen für Textblöcke und Emails]]. \\
 +
 +
 +
 +===== Beispiele =====
 +
 +Nachfolgend finden sich Beispiele für den Variablen Einsatz.
 +
 +==== Beispiel: Angebot Gültigkeit ====
 +
 +Mit folgendem Schnipsel in den Angebots-Standardtexten (siehe //​Einstellung//​ -> //Druck// -> // [[offer-cube:​faq:​faq_ooi-defaulttext-customer-specific-appendix|Standard Texte]] //) wird die Gültigkeit (hier 14 Tage) automatisch berechnet und als Datum ausgewiesen. \\
 +Die 14 Tage lassen sich beliebig verändern, in dem in der Formel 14 durch die Anzahl an Tage ersetzt wird. \\
 +
 +<​code>​Angebot gültig bis [[($time+14*86400)|date_format:"​%d.%m.%Y"​]]</​code>​
 +
 +==== Beispiel: Angebot Anrede ====
 +
 +In diesem Beispiel wird die Anrede (//Sehr geehrter Herr//, //Sehr geehrte Frau//, //Sehr geehrte Damen und Herren//) automatisch korrekt aufgrund der Variablen gesetzt. \\
 +HINWEIS: Üblicherweise sollte direkt die Variable "//<​nowiki>​[[$ANREDE]]</​nowiki>//"​ verwendet werden.
 +
 +Weiters wird das //​Hauptbild//​ des Angebots mit //[ [ addimg ] ]// eingefügt (siehe [[offer-cube:​howto:​pdf-special-img|Einfügen von Bildern aus Attachments]]).
 +
 +Zum Abschluss wird der Benutzer, der das Angebot erstellt hat automatisch eingefügt sowie die Firmentelefonnummer und der Firmenname.
 +
 +<​code>​
 +Sehr geehrte[[if $obj.site_name != ""​]][[if $obj.site_title == 0]](r)[[elseif $obj.site_title == 1]]r[[/if]] [[$obj.site_name]][[else]] Damen und Herren[[/​if]],​
 +
 +vielen Dank für Ihre Anfrage zu unseren Leistungen.
 +
 +Anbei finden Sie unser Angebot.
 +
 +[[addimg]]
 +
 +Falls das Angebot noch nicht zur Gänze Ihren Wünschen entspricht,
 +zögern Sie nicht Ihren persönlichen Betreuer [[$obj.created_user__firstname]] [[$obj.created_user__lastname]] unter [[$CONFIGURATION.ownTelephone]] zu kontaktieren.
 +
 +Ihre [[$CONFIGURATION.ownCompany]]
 +</​code>​
 +
 +Resultat:
 +
 +{{:​offer-cube:​howto:​pdf-special:​offer-cube_pdf-special-example-01-offer-text-result.jpg|Erstelltes PDF mit Platzhalter}}
  
  
-===== DetailsEinfügen von Bildern aus Attachments <img> =====+==== BeispielRechnung Reverse Charge, i.g. Lieferung automatischer Text ====
  
-Über das HTML Tag <img src="​....">​ lassen ​sich Bilder aus Attachments einfügen sofern die interne Attachment ID bekannt ist.+Das folgende Beispiel kann in den Rechnungsstandardtext eingefügt werden und erkennt automatisch ob es sich um eine steuerfreie Bauleistung im österreichischem Inland handelt oder eine steuerfreie Lieferung im EU Ausland.
  
-Die ID kann aus der URL beim Öffnen eines Attachments ausgelesen werden.+<​code>​ 
 +[[if $obj.site_tax == 0 AND ( $obj.site_country_code2 == ''​ OR $obj.site_country_code2 == '​AT'​ )]] §19 Reverse Charge Bauleistungen  
 +[[else if $obj.site_tax == 0]] §19 Reverse Charge innergemeinschaftliche Lieferung 
 +[[else]] [[/if]] 
 +</​code>​
  
-{{:offer-cube:​howto:​pdf-special:​offer-cube_pdf-special_05-img1-attachmentid.png|Interne Attachment ID auslesen}}+==== BeispielBenachrichtigung bei Angebot beauftragt oder abgelehnt ====
  
-**Beispiel Attachment ID 2352 einfügen <img src="​attachment:2352">​:**+Das System schickt eine Email an die Firmenmailadresse,​ wenn ein Kunde im Bestellportal ein Angebot beauftragt oder abgelehnt hat - siehe [[offer-cube:faq:faq_ooi-syncsetting_notification_email_offer_accepted|FAQ:​ Email bei Angebotsbeauftragung]].
  
-{{:offer-cube:howto:pdf-special:offer-cube_pdf-special_05-img1-insert.png|Bild mit Attachment ID einfügen}}+Alternativ dazu kann das System auch einen Slack Channel Post machen - siehe [[offer-cube:faq:faq_ooi-syncsetting_notification_slack_channel|FAQNachrichten in SLACK Channel]].
  
-Achtung: Anschließend ist ein [[offer-cube:​howto:​pdf-special-font|Absatz mittels <p height="​...">​]] mit der exakten Höhe des Bildes einzufügen,​ damit der nachfolgende Text nicht über das Bild geschrieben wird.+==== Beispiel: Benachrichtigung an Projektleiter bei Erhalten ​der Artikel einer Lieferantenbestellung ====
  
 +Das System schickt eine Email, wenn eine Lieferantenbestellung als //​Erhalten//​ markiert wird - siehe [[offer-cube:​faq:​faq_projectmgr_offer_supplierorder|FAQ:​ Projektleiter]]
  
  
offer-cube/howto/pdf-special-variables.1476609224.txt.gz · Last modified: 2017/03/19 09:52 (external edit)