p$TDV:SMPAPI:WkTx_Ini
p$TDV:SMPAPI:WkTx_Ini
Initialisierung der Schnittstelle zur Textgenerierung für Ausgabedokumente, die auf einem SalesManager Warenkorb beruhen. Es werden die Warenkorb-Kopfdaten sowie alle Warenkorb-Positionen (ohne Merkmale) gelesen.
Bitte beachten:
Nach Ausführung von p$TDV:SMPAPI:WkTx_Ini muss noch p$TDV:SMPAPI:EtTxInit zur Initialisierung des Ausgabedokumentes aufgerufen werden.
Zur Identifikation des Warenkorbs wird die Warenkorb-Identifikationsnummer verwendet. Sie wird indirekt im Parameter Filter der Übergabe-PG smtext (siehe dort) an diese Schnittstelle übergeben. Der Parameter Filter enthält einen Text mit folgender Syntax:
’WarenkorbID=<ID>’ |
wobei ID als ein Platzhalter für die aktuelle Warenkorb-ID steht, die dann dieser Funktion übergeben werden muss. Diese ID kann über die Funktion p$TDV:SMPWak:Wk_Id aus dem Text extrahiert werden.
Mit Hilfe dieser Warenkorb-ID wird dann eine Parametergruppe für die Kopfdaten (Parameter WkKopfPG) gelesen. Der Aufbau dieser PG kann der Dokumentation zu SMWkKopf entnommen werden.
Ebenso werden alle Positionen in das übergebene Parametergruppen-Feld WkPosPGL gelesen (siehe PG SMWkPos). Jeder Feldindex entspricht einer Warenkorb-Position, die Reihenfolge der Positionen entspricht der Reihenfolge im Warenkorb. Die Positions-Merkmale werden nicht automatisch für alle Positionen gelesen, sie können statt dessen mit den Funktionen der SalesManager-Schnittstelle, z.B. p$TDV:SMPAPI:WkTx_LMK oder p$TDV:SMPAPI:L_MrkMal, gelesen werden.
Syntax: | Status = p$TDV:SMPAPI:WkTx_Ini( WkKopfPG, WkPosPGL, WkID ) | ||
| Argument | Typ | Bedeutung |
| WkKopfPG | Zeichenkette | Name einer globalen PG für die Warenkorb-Kopfdaten |
| WkPosPGL | Zeichenkette | Name eines globalen, einfach indizierten PG-Feldes für die Daten der einzelnen Warenkorb-Positionen |
| WkID | Zeichenkette | Identifikationsnummer des Warenkorbs (als Text) |
Ergebnis: | - |
| |
Beispiel: Initialisierung eines Warenkorb-Ausgabedokumentes
Der Dokumentenname soll "Ang.doc" sein. Die Warenkorb-Kopfdaten sollen in die PG wkkopf geladen werden, die Positionen sollen in das PG-Feld wk geladen werden.
Extrahieren der zur Verfügung gestellten Warenkorb-ID:
ET "DokInit":
|
| R 01 | SONST |
B 01 |
|
|
|
A 01 | WkID = p$TDV:SMPWak:Wk_Init( smtext.Filter ) | X |
|
A 02 | p$DokInit2() | X |
|
Prüfen des Ergebnisses und Initialisieren der Textgenerierung:
ET "DokInit2":
|
| R 01 | SONST |
B 01 | WkID > 0 | J |
|
B 02 |
|
|
|
A 01 | p$TDV:SMPAPI:WkTx_Ini( ’wkkopf’, ’wk’, f$FormatZahl( WkID, ’#’ ) ) | X |
|
A 02 | p$TDV:SMPAPI:EtTxInit( ’c:’, ’WKDocs’, ’Ang’, 0 ) | X |
|
A 03 | f$Meldung(’Fehler’, ’Keine Warenkorb-ID übergeben!’ ) |
| x |