Parametergruppe BGPos
Parametergruppe BGPos
Die Parametergruppe BGPos enthält die Positionsdaten einer kompletten Baugruppe. Sie wird zum Datenaustausch von der Funktion p$TDV:SMPAPI:X_BauGrpp$TDV:SMPAPI:X_BauGrp verwendet.
Parameter | Datentyp | Index | Bedeutung |
Position | Zeichenkette | 5000 | Klassifizierung der einzelnen Positionen (s.u.) |
MerkmalsPG | Zeichenkette | 5000 | Name einer PG mit allgemeinen Positionsmerkmalen je Position.(1) |
AliasMerkmalsPG | Zeichenkette | 5000 | Name, unter dem die Daten in MerkMalsPG in der Datenbank abgelegt werden. Bei LEER wird der Name in MerkmalsPG verwendet (ohne Index). |
PosMerkPG | Zeichenkette | 5000 | Name einer PG mit speziellen Positionsmerkmalen je Position.(1) |
AliasPosMerkPG | Zeichenkette | 5000 | Name, unter dem die Daten in PosMerkPG in der Datenbank abgelegt werden. Bei LEER wird der Name in PosMerkPG verwendet (ohne Index). |
Menge | Ganzzahl | 5000 | Menge je Position (Standard: 1) |
Warenkorb | Zeichenkette | 5000 | Name einer Parametergruppe mit Positionsdaten der Tabelle V_Warenpos je Position. Dieser Name kann LEER übergeben werden. |
StartPosNr | Zeichenkette | - | Positionsnummer der 1. übergebenen Position. Die weiteren Positionsnummern werden entsprechend der Anordnung im Feld Position hochgezählt. |
MaterialPG | Zeichenkette | 5000 | Parametergruppe, auf welche die Daten der angelegten Datensätze der Tabelle V_Warenpos gelesen werden |
PosNrFormat | Zeichenkette | - | Formatierung der Positionsnummer. Die Syntax entspricht der Funktion f$Zahlzutext. Das Defaultformat ist %02.0lf |
B_Sprache | Zeichenkette | 5000,10 | Zuordnung der Sprachen der Benennungen der Warenkorbpositionen |
B_Benennung | Zeichenkette | 5000,10 | Benennungen der Warenkorbpositionen in verschiedenen Sprachen |
Anmerkung:
(1) Ein einfacher Index mit Angabe einer festen Zahl ist möglich, z.B. a[3].
Die Anzahl der Positionen wird indirekt durch den ersten Eintrag mit einer Position im Zustand LEER angegeben.
Bitte beachten:
Nicht belegte Daten oder Werte müssen in dieser Parametergruppe immer durch den Zustand LEER angegeben werden, der durch die Funktion f$Leer erreicht wird. Eine Angabe eines leeren Textes (’’) ist nicht zulässig. Die gesamte PG kann mittels f$PGLeer vor dem Füllen der Daten initialisiert werden.
Für die Speicherung der Merkmale stehen die beiden Felder MerkmalsPG und PosMerkPG zur Verfügung, so dass an jeder Position zwei verschiedene Merkmals-Parametergruppen gespeichert werden können.
Damit nicht viele einzelne Parametergruppen vereinbart werden müssen, können die Merkmals-Parametergruppen, die die Daten enthalten, wiederum indiziert sein. Der Index muss dabei als feste Zahl angegeben werden. Für den Namen der Parametergruppe in der Datenbank wird dann ebenfalls dieser Name verwendet, allerdings ohne Index. Mit Hilfe der Felder AliasMerkMalsPG und AliasPosMerkPG kann der Parametergruppen-Name in der Datenbank auch frei gewählt werden.
Beispiele:
MerkmalsPG | AliasMerkmalsPG | PG-Name in der Datenbank |
Preise | LEER | Preise |
Preise[3] | LEER | Preise |
Preise | Konditionen | Konditionen |
Preise[3] | Konditionen[3] | F E H L E R ! kein Index zulässig! |
Die Belegung des Parameters Position
Der Parameter Position enthält die Hauptdaten für die jeweilige Position in komprimierter Form:
’tis:xxx..x’ |
Der Aufbau ist im Einzelnen:
Ein Zeichen für den Typ der Position gemäß:
’Ü’Überschrift
’P’Preisposition
’O’Option
’A’Alternative
’I’Positionsinhalt
’T’Text
Ein Zeichen für den Identifikationstyp des Artikels gemäß:
’T’der Artikel kommt aus dem Produktkatalog unter Angabe der Materialnummer
’S’der Artikel kommt aus dem Produktkatalog unter Angabe der Katalognummer
’_’(Unterstrich) die Position ist ohne Bezug zum Produktkatalog („freier Artikel" oder auch Überschrift)
Ein Zeichen für die relative Stufe der Position in der Baugruppe (’1’..’6’). Ist die übergebene Baugruppe einstufig, also „flach", wird immer eine 1 übergeben. Unterpositionen müssen immer direkt der Oberposition folgen. Die Positionsnummer einer neuen Stufe beginnt immer mit 1.
Ein Doppelpunkt (’:’) als Trennzeichen Bei Aufruf der Funktion p$tdv:smpapi:x_baugrp kann statt des ’:’ an dieser Stelle auch ’A’ oder ’O’ stehen, um die aktuelle Position als Alternative bzw. Option anzulegen. Auf diese Weise ist es auch möglich Positionsinhalte als Alternative bzw. Option anzulegen.
Identifikation des Artikels. Falls der Artikel im Produktkatalog nicht gefunden wird, wird eine freie Position angelegt. Je nach angegebenem Identifikationstyp (s.o.) folgt jetzt:
bei ’T’:die Materialnummer aus dem Produktkatalog
bei ’S’:die Katalognummer aus dem Produktkatalog
bei ’_’:der Benennungstext für die Warenkorbposition
Beispiel einer Baugruppenstruktur:
’PT1:4711’ | Preisposition der Stufe 1 mit Materialnummer "4711" |
’Ü_1:Weiteres Zubehör’ | Überschrift auf Stufe 1 mit der angegebenen Benennung |
’O_2:Eine Option’ | Option auf Stufe 2 (freie Position) |
’AS1:4712’ | Alternative auf Stufe 1 mit Katalognummer "4712" |
Diese Positionen ergeben folgende Struktur:
Position | Benennung |
1 | Baugruppe |
1.1 | Artikel 4712 |
1.2 | Weiteres Zubehör |
1.2.1 | Eine Option |
1.3 | Katalogartikel 4712 |