Produktionszeitanpassung
Zusätzlich zu [Produktion] der Hauptnutzungsanweisungen der Integrierten Stammdaten (oder direkt der Ressourcen) können sie die [Produktionszeitanpassungsformel] setzen. Diese dient der dynamischen Anpassung der [Produktionszeit] während der Zuweisung. Ist diese Formel gesetzt, so wird zweimal vorläufig zugewiesen. Beim ersten Mal wird die Produktionszeit ohne die Eigenschaft berechnet, beim zweiten mit dieser, wobei das Ergebnis der vorläufigen Zuweisung des ersten Mals die Grundlage ist.
Inhaltsverzeichnis
Argument OTHER
Das dem Formelargument OTHER zugeordnete Objekt 'Produktionszeitanpassung' ist ein virtuelles Objekt, welches während der Zuweisung genutzt wird. Es hat die folgenden Eigenschaften:
| Eigenschaft | Interner Code | Beschreibung | 
|---|---|---|
| Vorläufige Zuweisung - Produktionsbeginn | TentAssignProductionStartTime | Produktionsbeginn der vorläufigen Zuweisung. | 
| Vorläufige Zuweisung - Produktionsende | TentAssignProductionEndTime | Produktionsende der vorläufigen Zuweisung. | 
| Vorläufige Zuweisung - Ressource | TentAssignResource | Ressource der vorläufigen Zuweisung. | 
| Vorläufige Zuweisung - Linker Vorgang | TentAssignLeftOper | Linker Vorgang der vorläufigen Zuweisung. | 
| Vorläufige Zuweisung - Rechter Vorgang | TentAssignRightOper | Rechter Vorgang der vorläufigen Zuweisung. | 
| Vorläufige Zuweisung - Aktueller Vorgang | TentAssignCurrOper | Aktueller Vorgang der vorläufigen Zuweisung. | 
Beispiele
Beispiel Y-1
Vorgänge, die sich über mehr als einen Tag erstrecken, dauern zwei Stunden länger als andere Vorgänge.
If( StartOfNextDay( OTHER.TentAssignProductionEndTime-1s,
                   0
                  )>StartOfNextDay( OTHER.TentAssignProductionStartTime,
                                   0
                                  ),
   2h,
   0
  )
Beispiel Y-2
Erstreckt sich ein Vorgang über mehrere Tage, so wird dieser dynamisch, tageweise in Lose geteilt, wobei die [Produktionsmenge] je Tag - und damit je Los - immer weiter zunimmt.
20mp*MaxValue( 0,
              ( 4-Truncate( If( ME.Parent.Work_Type=='S'
                                   && ME.Parent.Child[1].Work_IsAssigned=='1',
                               OTHER.TentAssignProductionStartTime-ME.Parent.Child[1].Work_OperationProductionStartTime,
                               0
                              )/24h,
                           0
                          ) )
             )
Zusätzlich ist auch die [Teilungsbedingung] der Ressource gesetzt, um den Vorgang dynamisch zu teilen.
Beispiel Y-3
Die Produktionsgeschwindigkeit erhöht sich von Tag zu Tag, so dass die gleiche Menge in kürzerer Zeit produziert werden kann. Dies kann genutzt werden um das Anfahren der Produktion darzustellen.
20mp*MaxValue( 0,
              ( 2-Truncate( ( OTHER.TentAssignProductionStartTime-MinIF( ME.OperationOutMainItem.OutputWorkInstruction,
                                                                        TARGET.Operation.IsAssigned=='1',
                                                                        TARGET.Operation.OperationProductionStartTime
                                                                       ) )/24h,
                           0
                          ) )
             )
Die Formel prüft an welchem Tag zuerst ein Vorgang mit gleichem [Haupt-Output-Artikel] produziert wird. Bei Vorgängen an diesem Tag, sowie in geringerem Umfang auch dem nächsten Tag, ist die [Produktionszeit] länger.
- Hinweis
 - Erfordert mindesten eine Lizenz für Version 17.4.0.
 


