p$TDV:SMPAPI:L_MrkMal
p$TDV:SMPAPI:L_MrkMal
Lesen der Merkmale (freie Parameter) zu einem gegebenen SalesManager NG-Objekt. Die Objektart (z.B. „Angebot") wird im Parameter ObjektArt in Form eines Buchstabencodes übergeben. Das Objekt selbst wird über die Identifikationsnummer dieses Objektes (z.B. ist dies die KontaktID bei einem Angebot) bestimmt.
Mit dieser Funktion kann eine einzelne Merkmals-Parametergruppe gelesen werden. Dann wird im Parameter MerkmalPG der Name dieser PG als Text übergeben. Weicht der Name der PG der gespeicherten Parameter in der Datenbank von dem gewünschten PG-Namen in der Logik ab, so können die Parameter beim Lesen auch „umbenannt" werden. Dies wird bei der Übergabe des Parameters MerkmalPG wie folgt festgelegt:
’{<PGName in der Datenbank>}<PGName in der Logik>’ |
d.h. der gespeicherte Parametergruppen-Name wird in geschweifte Klammern eingeschlossen (siehe Beispiel). Diese Technik kann z.B. dann sinnvoll sein, wenn Daten verschiedener Artikelgruppen in individuellen Parametergruppen gespeichert werden, aber dennoch allgemeine Merkmale gleichen Parameternamens existieren, die gemeinsam verarbeitet werden können.
Ebenso können auch mehrere Parametergruppen gleichzeitig gefüllt werden. Dann muss im Parameter MerkmalPG ein Name eines globalen Feld-Parameters übergeben werden, der dann wiederum die Namen der Merkmals-Parametergruppen enthält (siehe Beispiel). Den Abschluss dieser Liste bildet ein Feldelement im Zustand LEER. Ein Umbenennen der Merkmals-Parametergruppen-Namen ist hier ebenfalls möglich.
Bei der Übergabe der Parametergruppen der Merkmalswerte sind folgende Punkte zu beachten:
·Sie dürfen nicht indiziert sein, bzw. bei indizierten Parametergruppen muss der Index angegeben werden, außer wenn als Typ des Merkmals 4 (komprimierte indizierte Parametergruppe) angegeben wurde. In diesem Fall muss eine indizierte Parametergruppe übergeben werden.
·Sie müssen global sein
Zu Einzelheiten über den generellen Datenaustausch mit SalesManager NG über Parametergruppen siehe dort.
Bitte beachten: Die Parametergruppe bzw. das PG-Feld, die in MerkmalPG übergeben werden, werden jeweils indirekt in einer Zeichenkette übergeben, also in Anführungszeichen eingeschlossen. Außerdem müssen das Feld bzw. die Merkmals-Parametergruppen global sein!
Syntax: | Status = p$TDV:SMPAPI:L_MrkMal( MerkmalPG, ObjektID, ObjektArt ) | ||
| Argument | Typ | Bedeutung |
| MerkmalPG | Zeichenkette | a) Name der zu lesenden Parametergruppe mit den Merkmalswerten Nach Aufruf dieser Funktion enthalten die Merkmals-PGn die Merkmale dieser PGn des Warenkorbs |
| ObjektID | Zeichenkette | Identifikation des Objektes gemäß dem in ObjektArt übergebenen Code |
| ObjektArt | Zeichenkette | Bestimmung des SalesManager NG-Objektes gemäß: |
Ergebnis: | Ganzzahl | Status der Operation | |
Beispiel: | Lesen der Merkmals-Parametergruppe "Konditionen" einer Warenkorb-Position mit der MaterialID "4711": Status = p$TDV:SMPAPI:L_MrkMal( 'Konditionen', '4711', 'M' ) Dieser Aufruf ist funktional identisch zu: Status = p$TDV:SMPAPI:L_MrkPos( 'Konditionen', '4711', 0 ) Da die Funktion mit einer identischen Übergabe der Merkmals-Parametergruppen arbeitet, können die dortigen Beispiele (mit Ausnahme der Vererbung) auf diese Funktion übertragen werden. Merkmale[1] = 'Option' Es werden die Merkmale der Merkmalsdefinitions – Parametergruppen: Option, Sonder und Position gelesen und die Werte auf die Parametergruppen Option, Sonderliste[2] und Position geschrieben | ||