Mail mit PDF-Anhang an Kunde aus Datenbank mit Template

Dieses Skript implementiert die selbe Funktionalität wie das Skript Mail mit PDF-Anhang an Kunde aus Datenbank. Der Text für die E-Mail wird allerdings aus einer Template-Datei geholt:

Ihre Bestellung %Bestellnr% ist angekommen.

Mit freundlichen Grüßen,
Kabel GmbH

Dabei werden Texte, die mit Prozentzeichen umschlossen sind, durch die Variable mit dem selben Namen ersetzt. In unserem Beispiel gibt es die Variable KundenNr, in der wir die Kunden-Nummer aus der Index-Datei gespeichert haben. Durch deren Verwendung in der Template-Datei wird diese dann an der entsprechenden Stelle eingesetzt.

XML

Unten ist das obrige Skript als XML abgebildet. Sie können das Skript kopieren und als XML-Datei in Ihren Skriptordner ablegen. Dann können Sie das Skript in der Entwicklungsumgebung wie Ihre anderen Skripte wieder laden und weiter bearbeiten.

  <xml>
    <block type="phaseInit" deletable="false" movable="false" x="0" y="0">
      <next>
        <block type="phaseAnalysis" deletable="false" movable="false">
          <statement name="statements">
            <block type="extractCtlVar">
              <field name="VAR">KundenNr</field>
              <value name="charStart">
                <block type="math_number">
                  <field name="NUM">69</field>
                </block>
              </value>
              <value name="charEnd">
                <block type="math_number">
                  <field name="NUM">100</field>
                </block>
              </value>
              <value name="line">
                <block type="text">
                  <field name="TEXT">0103B10000</field>
                </block>
              </value>
              <next>
                <block type="extractCtlVar">
                  <field name="VAR">Bestellnr</field>
                  <value name="charStart">
                    <block type="math_number">
                      <field name="NUM">69</field>
                    </block>
                  </value>
                  <value name="charEnd">
                    <block type="math_number">
                      <field name="NUM">100</field>
                    </block>
                  </value>
                  <value name="line">
                    <block type="text">
                      <field name="TEXT">0104290000</field>
                    </block>
                  </value>
                </block>
              </next>
            </block>
          </statement>
          <next>
            <block type="phaseFunction" deletable="false" movable="false">
              <statement name="statements">
                <block type="dbGet">
                  <field name="table1">kunden</field>
                  <field name="whereKey1">Kunden-Nr.</field>
                  <value name="whereValue">
                    <block type="variables_get">
                      <field name="VAR">KundenNr</field>
                    </block>
                  </value>
                  <statement name="stack">
                    <block type="dbGetColumn">
                      <field name="getKey1">Mail</field>
                      <value name="var">
                        <block type="variables_get" deletable="false" movable="false">
                          <field name="VAR">KundenMail</field>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="mail_main">
                      <mutation html="false"></mutation>
                      <field name="htmlMode">false</field>
                      <value name="subject">
                        <block type="text">
                          <field name="TEXT">Vielen Dank für Ihre Bestellung</field>
                        </block>
                      </value>
                      <value name="adresses">
                        <block type="variables_get">
                          <field name="VAR">KundenMail</field>
                        </block>
                      </value>
                      <value name="body">
                        <block type="fileLoadTemplate">
                          <value name="filename">
                            <block type="text">
                              <field name="TEXT">mailTemplate.txt</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="attachements">
                        <block type="pdf">
                          <value name="title">
                            <block type="text">
                              <field name="TEXT">Bestellung</field>
                            </block>
                          </value>
                          <value name="name">
                            <block type="text">
                              <field name="TEXT">Bestellung</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </next>
        </block>
      </next>
    </block>
  </xml>