Ansicht
Dokumentation

/SAPAPO/OM_ORDER_CHANGE - Anlegen / ändern / löschen von Aufträgen im liveCache

/SAPAPO/OM_ORDER_CHANGE - Anlegen / ändern / löschen von Aufträgen im liveCache

General Data in Customer Master   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Der Funktionsbaustein dient zum Anlegen, Löschen und Ändern von Aufträgen im liveCache. Welche Aktion (anlegen, löschen oder ändern) durchzuführen ist, wird über das Feld METHOD der Import-Tabelle IT_ORDER_METHOD pro Auftrag individuell gesteuert.

Der Funktionsbaustein benötigt folgende Import-Daten:

  • IV_SIMSESSION: GUID der transaktionalen Simulation
  • IV_ATP_DELTA_MODE: ATP-Delta-Modus
  • IT_ORDER_METHOD: Tabelle mit den Methoden und der jeweiligen Order-GUID
  • IT_ORDERS: Tabelle der zu bearbeitenden Aufträge
  • IT_ACTIVITIES: Tabelle der Aktivitäten.
  • IT_MODE: Tabelle der Modi
  • IT_CAP_REQS: Tabelle der Kapazitätsbedarfe der Modi
  • IT_POSISTIONS: Tabelle mit Auftragspositionen (deskriptive Merkmale)
  • IT_INPUTS: Tabelle der Inputknoten eines Auftrags.
  • IT_OUTPUTS: Tabelle der Outputknoten eines Auftrags.
  • IT_INTERN_CONSTRAINTS: Tabelle der auftragsinternen Anordnungsbeziehungen zwischen den Aktivitäten
  • IT_EXTERN_CONSTRAINTS: Tabelle der auftragsexternen Anordnungsbeziehungen zwischen den Aktivitäten
  • IS_CONTROLPARAMETERS: Parameter, über die das Einplanen bzw. Umplanen eines Auftrags gesteuert werden kann.
  • IT_RES_PLAN_INTERVALLS: Tabelle der beplanbaren Zeitintervalle der Ressourcen.
  • IT_CHARACT_REQ_INPNODE: Tabelle der Merkmalsanforderungen der Input-Knoten.
  • IT_CHARACT_VAL_OUTNODE: Tabelle der Merkmalsbewertungen der Output-Knoten.
  • IT_CHARACT_VAL_ACTS: Tabelle der Merkmalsbewertungen der Aktivitäten.

Über den Importparameter IS_GET_CHANGED_OPTIONS kann man steuern, welche Informationen über modifizierte Objekte in den Exporttabellen geliefert werden sollen:

  • Falls SEND_CHG_TOP_ORDER = GC_TRUE, werden in ET_CHANGED_ORDERS Informationen über die bei diesem Funktionsaufruf veränderten (Top-)Orders zurückgeliefert.
  • Falls SEND_CHG_CAP_REQ = GC_TRUE, werden in ET_CHANGED_CAP_REQS Informationen über die bei diesem Funktionsaufruf veränderten Kapazitätsbedarfe (Aktivitäten) zurückgeliefert.
  • Falls SEND_CHG_DUMMY_CAP_REQ = GC_TRUE, werden, sofern SEND_CHG_CAP_REQ ebenfalls den Wert GC_TRUE besitzt, in ET_CHANGED_CAP_REQS auch Informationen über veränderte Dummy-Aktivitäten (Aktivitäten, die keine Modi besitzen, also auf keiner Ressource eingelastet werden können) geliefert. Ansonsten werden in ET_CHANGED_CAP_REQ keine Informationen über Dummy-Aktivitäten geliefert.
  • Falls SEND_CHG_IONODE = GC_TRUE, werden in ET_CHANGED_IONODES Informationen über die bei diesem Funktionsaufruf veränderten I/O-Knoten zurückgeliefert.
  • Falls SEND_CHG_IO_PP = GC_TRUE, werden in ET_CHANGED_IO_PP_NODES ausführlichere Informationen über die bei diesem Funktionsaufruf veränderten I/O-Knoten zurückgeliefert.
  • Falls SEND_CHG_PEGID = GC_TRUE, werden in ET_CHANGED_PEGIDS die GUIDs der bei diesem Funktionsaufruf von Veränderungen betroffene Pegging Areas zurückgeliefert.
  • Falls SEND_DEL_FIX_PEG = GC_TRUE, werden in ET_DELETED_FIX_PEGGING Informationen über die bei diesem Funktionsaufruf gelöschten fixierten Peggingbeziehungen zurückgeliefert.

Die Strukturen der genannten Exporttabellen besitzen jeweils ein Änderungskennzeichen CHANGE_FLAG, das anzeigt, ob das betreffende Objekt geändert (GC_CHANGED) oder gelöscht (GC_DELETED) wurde. Bei der Tabelle ET_CHANGED_CAP_REQS ist die Besonderheit zu beachten, daß sich das Änderungskennzeichen auf die gesamte Aktivität und nicht auf die einzelnen Kapazitätsbedarfe bezieht, d.h. eine Aktivität, die einem Moduswechsel unterworfen wurde, ist nur mit ihren aktuellen Kapazitätsbedarfen in der Tabelle vertreten, wobei das Änderungskennzeichen den Wert GC_CHANGED hat. Im Falle einer Löschung von Aktivitäten (als Folge einer Orderlöschung) sind die unmittelbar vor der Löschung aktuellen Kapazitätsbedarfe gelistet, wobei das Änderungskennzeichen den Wert GC_DELETED hat.

Über den Importparameter IV_GET_ALL_OBJECTS kann man steuern, ob bei der Rückgabe der geänderten Kapazitätsbedarfe und I/O-Knoten nur die wirklich veränderten Objekte geliefert werden sollen, oder ob alle Kapazitätsbedarfe und I/O-Knoten, die zu geänderten Orders gehören, auch wenn sie im einzelnen gar nicht geändert worden sind, geliefert werden sollen.

Außer den gerade genannten Rückgabetabellen werden folgende Daten exportiert:

  • ET_SCHED_FAILURES: Tabelle mit Scheduler-Fehlermeldungen. Immer, wenn das anlegen oder ändern eines Auftrags mit dem Rückgabewert OM_SCHEDULING_ERROR in ET_RC fehlschlägt, befindet sich in dieser Tabelle ein Eintrag mit Hinweisen zur Fehlerursache. Das Feld OBJECT_ID enthält dabei die GUID des Auftrags, dessen Einplanung nicht erfolgreich war.
  • ET_RC: Tabelle mit Fehlern, die u.U. bei der Bearbeitung der einzelnen Aufträge angefallen sind.

Die Aufträge werden bei der Anlage grundsätzlich eingeplant. Schlägt diese Einplanung fehl, wird der Auftrag nicht im liveCache angelegt.

Die Struktur eines Auftrags muß den nachfolgenden Anforderungen genügen:

  • Allgemeine Anforderungen
  • Ein Auftrag muß entweder Aktivitäten oder Unteraufträge besitzen. Beides gleichzeitig ist nicht erlaubt.

  • Die maximale Schachtelungstiefe für Unteraufträge ist eins, ein Unterauftrag darf also nicht wiederum Unteraufträge besitzen.

  • Alle Unteraufträge müssen den gleichen Auftragstyp wie der übergeordnete Auftrag besitzen.

  • Der Gültigkeitszeitraum eines Unterauftrags muß innerhalb dessen des übergeordneten Auftrags liegen.

  • Bei Vorgabe der Start- und/oder Endezeit einer Aktivität müssen diese innerhalb des Gültigkeitszeitraums des zugehörigen Auftrags liegen. (Bei Aktivitäten mit Modi wird in Abhängigkeit von der Terminierungsrichtung entweder die Startzeit oder die Endezeit als Scheduler-Vorgabe genommen. Bei Aktivitäten ohne Modi wird die Bruttodauer der Aktivität aus der Differenz der Ende- und Startzeit berechnet. Ist die Startzeit darüber hinaus noch größer als GC_MINTIME, werden die beiden Zeiten als solche übernommen und der Planstatus der Aktivität auf geplant gesetzt.)

  • Bei Umlagerungsaufträgen muß die Zahl der Input-Knoten am Auftrag der der Output-Knoten entsprechen.

  • Anforderungen an Constraints:
  • Constraints zwischen Aktivitäten des gleichen Hauptauftrags aber verschiedener Unteraufträge sind nicht erlaubt.

  • Alle Constraints zwischen zwei Aktivitäten müssen im Attribut MODE_REL_TYPE übereinstimmen.

  • Andere Werte als GC_RESOURCE_INDEPENDENT (keine Moduskopplung) sind für das Attribut MODE_REL_TYPE nur dann erlaubt, wenn beide am Constraint beteiligten Aktivitäten Modi besitzen oder beide keine Modi besitzen.

  • Anforderungen bzgl. eines Arbeitsvorgangs
  • Entweder besitzen alle Aktivitäten im Arbeitsvorgang Modi oder keine.

  • Alle Aktivitäten mit Modi eines Arbeitsvorgangs besitzen den gleichen Rüstschlüssel.

  • Pro Arbeitsvorgang ist nur eine Rüstaktivität erlaubt. (Bei einer Rüstaktivität handelt es sich um eine Aktivität, bei der das Attribut IS_SETUP_ACT auf GC_TRUE gesetzt ist. Das Attribut ACTTYPE hat für die Algorithmen im liveCache keine semantische Bedeutung.)

  • Eine Rüstaktivität besitzt mindestens einen Modus.

  • Die Modi einer Rüstaktivität dürfen nur Single-Ressourcen als Primärressource verwenden.

  • Die Modi einer Rüstaktivität dürfen keine Sekundärressourcen belegen.

  • Eine Rüstaktivität besitzt keinen Vorgänger. (Eine Aktivität A1 ist genau dann Vorgänger einer Aktivität A2, wenn ein Constraint existiert, der von A1 nach A2 gerichtet ist.)

  • Eine Rüstaktivität besitzt genau einen AVO-internen Nachfolger.

  • Einer Rüstaktivität dürfen keine Input-Knoten zugeordnet sein.

  • Anforderungen an die Modi eines Segments
  • Eine Ressource darf innerhalb eines Modus nur einmal vertreten sein.

  • Ein Modus besitzt genau eine Primärressource.

  • Ein Modus besitzt genau eine zeitstrahlrelevante Ressource.

  • Auf einer Bucket-Ressource darf nicht gecovert werden.

  • Auf einer Nebenressource darf nicht gecovert werden.

  • Wenn eine Aktivität Modi besitzt, auf deren Primärressource gecovert wird, dann muß diese Aktivität zu genau einem AVO-internen Nachfolger über Constraints mit MODE_REL_TYPE GC_IDENTICAL_RESOURCE in Beziehung stehen.

  • Kompatibilitätstest bei Moduskopplung zwischen Aktivitäten mit Modi
Wenn über den Constraint-Modustyp eine Moduskopplung eingestellt ist, dann gilt für die Modi M1 und M2 der beteiligten Aktivitäten A1 und A2 (A1 sei die Vorgängeraktivität von A2):
Zu jedem M1 aus S1 existiert ein kompatibler M2 aus S2 und
zu jedem M2 aus S2 existiert ein kompatibler M1 aus S1.
Als Moduskopplung ist z.Z. nur GC_IDENTICAL_RESOURCE implementiert. Die beiden Modi M1 und M2 gelten in diesem Sinn als kompatibel, wenn für die Primärressourcen RPn und alle Nebenressourcen mit Covering RC1 gilt:
RP1 aus M1 = RP2 aus M2 und
zu jeder RC1 aus M1 existiert eine R2 aus M2 mit RC1 = R2.
Diese Gleichheit bezieht sich bei Single- und Multi-Ressourcen auch auf den Kapazitätsbedarf.

Beispiel

Hinweise

Abzufragende Fehlercodes (Tabelle ET_RC):

  • 40 = om_invalid_order: Der Auftrag mit der angegebenen GUID ist im liveCache nicht vorhanden.
  • 54 = om_duplicate_order: Der Auftrag mit der angegebenen GUID ist im liveCache bereits vorhanden
  • 57 = om_duplicate_activity: Die Aktivität ist im liveCache bereits vorhanden
  • 47 = om_invalid_resource: Aktivität soll auf nicht vorhandener Ressource eingeplant werden.
  • 38 = om_invalid_pegarea: Auftrag hat einen Input- bzw. Output-Interface- Knoten der auf eine nicht vorhandene PegArea verweist.
  • 59 = om_scheduling_error: Auftrag konnte nicht terminiert werden.

Weiterführende Informationen





Parameter

ET_CHANGED_CAP_REQS
ET_CHANGED_IO_NODES
ET_CHANGED_IO_PP_NODES
ET_CHANGED_ORDERS
ET_CHANGED_PEGIDS
ET_DELETED_FIX_PEGGING
ET_OVERFLOWS
ET_RC
ET_SCHED_FAILURES
ET_SCHED_LOG
IS_ATP_INFO
IS_CONTROLPARAMETERS
IS_EXCLUDE_FIELDS
IS_GEN_PARAMS
IS_GET_CHANGED_OPTIONS
IT_ACTIVITIES
IT_BUCKETVECTOR_CHARACTS
IT_CAP_REQS
IT_CHARACT_REQ_INPNODE
IT_CHARACT_VAL_ACTS
IT_CHARACT_VAL_OUTNODE
IT_EXTERN_CONSTRAINTS
IT_INPUTS
IT_INTERN_CONSTRAINTS
IT_MODE
IT_ORDERS
IT_ORDER_METHOD
IT_ORDKEYS
IT_ORDMAPS
IT_OUTPUTS
IT_POSITIONS
IT_PRODFLOW
IT_RES_PLAN_INTERVALLS
IT_SCHED_PARAMS
IV_GET_ALL_OBJECTS
IV_SIMSESSION
IV_USE_IO_SHLF_LIFE

Ausnahmen

LC_APPL_ERROR
LC_COM_ERROR
LC_CONNECT_FAILED

Funktionsgruppe

APO/SAPLOM_PLANNING

CL_GUI_FRONTEND_SERVICES - Frontend Services   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 17416 Date: 20240523 Time: 154538     sap01-206 ( 196 ms )