TBeProductionMaterialAvailabilityBusinessController
Die Klasse TBeProductionMaterialAvailabilityBusinessController kapselt Funktionen um die Material-Verfügbarkeit bei Fertigungsaufträgen in der Produktion berechnen zu können.
Eigenschaften
|
Eigenschaft |
Beschreibung |
|---|---|
|
CbDataModule:N |
Zu verwendendes Datenmodul. Muss zugewiesen werden. |
|
CbOnlyOrderNo:C |
Erlaubt das setzen einer Fertigungs-Auftrags-Nummer. Ist dieser Wert gesetzt, wird eine Berechnung für Material-Verfügbarkeit über Calc() oder CalcAndWriteBack() nur für diesen Auftrag durchgeführt. (Default = leer => Berechnung für alle Fertigungsaufträge) |
|
CbCalcPacked:L |
Bei True werden bereits kommissionierte Fertigungsaufträge bei einer Berechnung berücksichtigt. (Default = False). |
|
CbCalcMissing:L |
Bestimmt ob trotz Fehlteilen mit der Fertigung begonnen werden darf. (Default = False) |
Methoden
|
Methode |
Beschreibung |
||||||||
|---|---|---|---|---|---|---|---|---|---|
|
CalcAndWriteBack() |
Diese Methode berechnet die Material-Verfügbarkeiten in Abhängigkeit der gesetzten Werte für z. B. CbOnlyOrderNo und schreibt die berechneten Werte zurück in die DAB035 |
||||||||
|
Calc() |
Diese Methode führt genau wie CalcAndWriteBack() eine Berechnung der Material-Verfügbarkeiten durch jedoch werden die Werte hier nicht in die Datenbank zurückgeschrieben. Stattdessen wird das Ergebnis zurückgegeben.
|
Verfügbare Ereignisse
|
Ereignis |
|---|
|
OnProgress |
Beispiel
//##############################################################################
//##############################################################################
// Beschreibung: Dieses Beispiel zeigt wie der
// ProductionMaterialAvailabilityBusinessController verwendet
// werden kann.
//##############################################################################
//##############################################################################
| oProductionMABC, oDM |
oDM := CreateObject('TBeDBGet'),
startseq
// Erzeugen des BusinessControllers mit oDM als Owner -> Kein Zerstören notwendig
oProductionMABC := CreateObject('TBeProductionMaterialAvailabilityBusinessController', 'TESTPMABC', oDM),
oProductionMABC.CbDataModule := oDM, // Zu verwendendes DatenModul zuweisen
// ohne eine Zuweisung werfen die
// Funktionen Calc() und
// CalcAndWriteBack() eine Exception
// Setzen der gewünschten Einstellungen
oProductionMABC.CbOnlyOrderNo := '600005', // Auftragsnummer für Einzelberechnung
oProductionMABC.CbCalcPacked := True, // Bereits kommissionierte FA berücksichtigen
oProductionMABC.CbCalcMissing := True, // Es darf trotz Fehlteilen begonnen werden
// Die berechnungen Calc() oder CalcAndWriteBack() erfordern eine aktive Transaktion.
DBStartTrans(oDM.ADSConnection),
startseq
// Berechnung für einzelnen FA ohne das Ergebnis in die DB zu schreiben
writeln('Berechneter Wert', oProductionMABC.Calc()),
// Nochmal berechnen und diesmal in die DB schreiben lassen (DAB035)
oProductionMABC.CalcAndWriteBack(),
// CbOnlyOrderNo leeren -> Berechnung für alle Fertigungsaufträge
oProductionMABC.CbOnlyOrderNo := '',
// Berechnung für mehrere FA ohne DB-Änderungen
writeln('Berechnete Werte: ' + ArrToStr(oProductionMABC.Calc())),
// Da dies nur ein Beispiel sein soll werden sämtliche Aktionen auf der
// Datenbank rückgewickelt
DBRollback(oDM.ADSConnection),
// DBCommit(oDM.ADSConnection),
always
if DBInTrans(oDM.ADSConnection) then
DBRollback(oDM.ADSConnection),
endif,
stopseq,
always
DestroyObject(oDM),
stopseq,
Weitere Verknüpfungen