Skip to main content
Skip table of contents

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
b) Name der Merkmals-PG in der Datenbank (eingeschlossen in geschweifte Klammern), gefolgt vom Namen der Merkmals-PG in der Logik (ohne Leerzeichen). Beispiel: '{Motor}Konfig'
c) Name eines Feldes mit den Namen der zu lesenden Parametergruppen (das Listenende ist durch einen Eintrag mit LEER hinter der letzten PG gekennzeichnet)

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äß:
'A': Anschrift, ObjektID ist AnschriftID aus V_Anschrift
'C': Produktkatalog, ObjektID ist MaterialID aus V_Produkt
'F': Angebot, ObjektID ist KontaktID aus V_Kontakt
'K': Auftrag, ObjektID ist AuftragID aus V_Auftrag
'M': Warenkorbposition, ObjektID ist MaterialID aus V_Warenpos
'P': Person, ObjektID ist PersonID aus V_Person

Ergebnis:

Ganzzahl

Status der Operation
0: Daten erfolgreich gelesen
<0: Fehler gemäß ePOS-Fehler-Liste
>0: Fehler gemäß SMP-Fehlerstatus-Liste
Der Rückgabestatus in SalesManager NG-Funktionen

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'
Merkmale[2] = '{Sonder}Sonderliste[2]'
Merkmale[3] = 'Position'
Status = p$TDV:SMPAPI:L_MrkMal( 'Konditionen', '4711', 'M' )

Es werden die Merkmale der Merkmalsdefinitions – Parametergruppen: Option, Sonder und Position gelesen und die Werte auf die Parametergruppen Option, Sonderliste[2] und Position geschrieben

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.