Positionsübergreifende Konfiguration
  • 15 Oct 2024
  • 2 Minutes to read
  • Dark
    Light
  • PDF

Positionsübergreifende Konfiguration

  • Dark
    Light
  • PDF

The content is currently unavailable in English. You are viewing the default German version.
Article summary

Mit der Positionsübergreifenden Konfiguration ist es möglich in einer Konfiguration zu prüfen welche Positionen schon im Beleg enthalten sind. Von den Positionen können auch bestimmte Inhalte zur Verfügung gestellt werden damit man auch auf Merkmale in einem Beleg reagieren kann.

Beispiel für eine Positionsübergreifende Konfiguration:

Konfigurationsmodell für Transportkostenberechnung. Wenn dieses Modell erfasst wird dann soll der Konfigurator prüfen welche Modelle bereits im Beleg enthalten sind und wie sich diese auf die Transportkosten auswirken.

Aktivierung im Warensystem

Wenn eine Position erfasst wird welche auf bestehende Positionen prüfen soll dann muss dies in den Eigenschaften im Warensystem im Bereich 'Merkmale' aktiviert werden.

Es ist sehr wichtig, dass dies nur bei den benötigten Positionen aktiviert wird da sich dies ansonsten negativ auf die Performance auswirken kann.

Feld für Warenstamm CSV Export und Import: „PosOverlappingConfig“

Daten der bestehenden Positionen lesen

Wenn ein Modell konfiguriert wird welches die Einstellung im Warenstamm markiert hat dann steht in der Konfiguration ab dem Initmakro folgende Variable zur Verfügung:

LPOSITIONLIST = {}

Diese Variable ist eine Liste mit Attributen in welchen Daten der bestehenden Positionen enthalten sind. D.h. je Position gibt es einen Listeneintrag mit den jeweiligen Informationen als Attribut.

Beispiel siehe Screenshot:

Folgende Attribute werden von moveIT ISS+ automatisch zur Verfügung gestellt:

  • Sichtbare Positionsnummer

  • Laufende Positionsnummer

  • Interne Positionsnummer

  • Parametersystemversion

  • Eignernummer

  • Positionstyp

  • Menge

  • Einheit

  • Wert 1

  • Wert 2

  • Warenstammmodell

  • Warenversion

Als Zusätzliches Attribut wird noch „LGlobalVar“ angegeben. Dieses Attribut ist grundsätzlich leer kann jedoch vom Stammdatenentwickler selbst gefüllt werden. D.h. ich kann bei meiner Positionsübergreifenden Konfiguration auch Informationen darüber erhalten welche Farben, Griffe, Gläser, … in meinem Beleg bereits erfasst wurden. Wie diese Daten zur Verfügung gestellt werden siehe nachfolgender Punkt.

Daten der aktuellen Position speichern

Damit die Positionsübergreifende Konfiguration (Bsp.: Transportkostenberechnung) Informationen aus den Konfigurationen bekommt müssen diese Informationen im Makro gespeichert werden.

Dafür wird folgende Variable verwendet:
GLOBALCONFIGVARLIST = ""

Diese Variable ist eine Charaktervariable welche mit dem Trennzeichen „;“ (Semicolon) gefüllt werden muss.

Beispiel:
GLOBALCONFIGVARLIST = FpFarbe + ";" + FpEinbau + ";" + FpGriff

Das Ergebnis kann dann wie folgt aussehen: GLOBALCONFIGVARLIST = "RAL3003;G07;Std"
Diese Einträge werden dann später in der positionsübergreifenden Konfiguration als Listeneinträge zur Verfügung gestellt.

Organisatorisches

Eine positionsübergreifende Konfiguration ist von den bestehenden Positionen im Beleg abhängig. Dies hat zur Folge, dass es vorkommen kann, dass diese nicht mehr korrekt ist wenn sich bei den anderen Positionen etwas verändert.

Beispiel: Die Transportkosten errechnen sich aufgrund der bestehenden 10 Positionen. Wird bei einer Position die Größe verändert so kann dies bedeuten, dass die Transportkosten höher werden.

Um die technische Korrektheit sicherzustellen wird bei einer Änderung die Position auf „technisch nicht frei“ gestellt

Dies trifft grundsätzlich dann zu:

  • Es wird eine Position hinzugefügt

  • Es wird eine Position gelöscht

Erweiterte Überprüfung auf Änderung

Wenn sich innerhalb der Konfiguration etwas ändert dann muss die positionsübergreifende Konfiguration nicht immer auf „technisch nicht frei“ gesetzt werden. Beispiel: bei 2 Positionen werden die Sprossen anders angeordnet. Dies hat jedoch auf die Transportkosten keine Auswirkung.

D.h. grundsätzlich haben Änderungen innerhalb der Konfiguration keine Auswirkung auf den Status der positionsübergreifenden Konfiguration. Der Stammdatenentwickler kann jedoch Ausnahmen dafür angeben. Dies wird in folgender Variable gefüllt:

POSOVERLAPPINGDATAFIELDS = ""

Dies ist eine Charaktervariable welche mit den Attributen der Variable LPOSITIONLIST gefüllt werden muss wo der Stammdatenentwickler möchte, dass sich bei einer Änderung der Status auf „technisch nicht frei“ umstellt.

Beispiel:
POSOVERLAPPINGDATAFIELDS = "VALUE1, VALUE2, QUANTITY, lGlobalVar"

Bei diesem Beispiel wird die positionsübergreifende Konfiguration auf “technisch nicht frei” gesetzt sobald sich bei Wert 1, Wert 2, Menge oder bei den Konfigurationsdaten der Variable LGlobalVar etwas verändert.

Sonstiges:

  • Wird der Beleg überrechnet so werden die positionsübergreifenden Konfigurationen zum Schluss überrechnet.

  • Positionsübergreifende Konfigurationen können nicht abhängig von anderen positionsübergreifenden Konfigurationen sein. Dies wäre eine Endlosschleife und ist deshalb programmtechnisch unterbunden.


Was this article helpful?