TBeCbProductResolving
Eigenschaften
|
Eigenschaft |
Beschreibung |
|---|---|
|
ArtNo:C |
Artikel-Nummer |
|
BatchNo:C |
Serien-Nummer des Artikels |
|
CalcOnlySerialNoArticles:L |
Berechnungen und Auflösungen nur für Serien-Nummer Artikel durchführen Default = False |
|
CalcUnambiguousSerialNoBooking:L |
Berechnung für die Ermittlung von "eindeutige Serien-Nummer Buchung" ausführen Default = False |
|
Name:C |
|
|
RecordLimit:N |
Max. Datensätze pro Bauzustand (wird die Anzahl überschritten wird eine EBeProductResolvingLimitReached Exception ausgelöst) |
|
Tag:N |
|
Methoden
|
Methode |
Beschreibung |
|---|---|
|
CreateMemView(aOwner:O):O |
MemTable für Ausgabe erzeugen |
|
CreateMemView_Extended(aOwner:O):O |
Erweiterte MemTable für Ausgabe erzeugen (für Berechnung von "eindeutigen Serien-Nummer Buchungen" notwendig) |
|
Validate_BatchNo(aArtNo:C, aBatchNo:C):L |
Artikel Serien-Nummer prüfen ob diese für die Berechnung erlaubt ist |
|
Validate_ArtNo(aArtNo:C, aOnlySerialNoArticle:L):L |
Artikel prüfen ob dieser gültig ist |
|
ValidateAll():L |
Alle gesetzten Eigenschaften validieren |
|
Execute() |
Berechnung ausführen (Produktauflösung) |
|
TransferResult(aDestMemView:O, aWithHeaderLine:L, aWithNeutralizedBookings:L, aOnlyBatchArticles:L) |
Berechnetes Ergebnis in eine MemTable übertragen |
|
TransferMaterialListResult(aDestMemView:O, aWithHeaderLine:L, aOnlyBatchArticles:L) |
Material-Liste vom berechnetem Ergebnis in eine MemTable übertragen |
|
DataModule():O |
Gibt das intern verwendete DatenModul zurück |
Beispiel
//******************************************************************************
// Beispiel für Produktauflösung
//******************************************************************************
|oProdRes, oMemRes, bShowOnlyBatch|
oProdRes := CreateObject('TBeCbProductResolving'),
startseq
bShowOnlyBatch := False,
oMemRes := oProdRes.CreateMemView(oProdRes),
oProdRes.ArtNo := 'PC',
oProdRes.BatchNo := '0909',
oProdRes.CalcOnlySerialNoArticles := False,
oProdRes.CalcUnambiguousSerialNoBooking := False,
if oProdRes.ValidateAll() then
oProdRes.Execute(),
oProdRes.TransferResult(oMemRes, True, False, bShowOnlyBatch),
oProdRes.TransferMaterialListResult(oMemRes, True, bShowOnlyBatch),
Browse(, oMemRes),
else
Meld('Artikel ' + oProdRes.ArtNo + ' mit der Serien-Nr. ' + oProdRes.BatchNo + ' ist ungültig!'),
endif,
always
DestroyObject(oProdRes),
stopseq,
//******************************************************************************
// Beispiel für Bauzustand
//******************************************************************************
|oProdRes, oMemRes, bAllBookings, bOnlySerialNoArticles|
oProdRes := CreateObject('TBeCbProductResolving'),
startseq
bAllBookings := False,
bOnlySerialNoArticles := False,
oMemRes := oProdRes.CreateMemView_Extended(oProdRes),
oProdRes.ArtNo := 'PC',
oProdRes.BatchNo := '0909',
oProdRes.CalcOnlySerialNoArticles := bOnlySerialNoArticles,
oProdRes.CalcUnambiguousSerialNoBooking := False,
if oProdRes.ValidateAll() then
oProdRes.Execute(),
oProdRes.TransferResult(oMemRes, False, bAllBookings, True),
Browse(, oMemRes),
else
Meld('Artikel ' + oProdRes.ArtNo + ' mit der Serien-Nr. ' + oProdRes.BatchNo + ' ist ungültig!'),
endif,
always
DestroyObject(oProdRes),
stopseq,