Event "Versions-Verwaltung_ Status-Änderung"
Event "Versions-Verwaltung: Status-Änderung"
Der Aufruf erfolgt abhängig von dem Parameter
nModus =
nachdem der neue Versions-Artikel angelegt wurde, noch vor der Anzeige des selben im Artikelstamm
nachdem der Versions-Wechsel abgeschlossen wurde aber noch vor Beendigung der Transaktion
bei der "Freigabe von technischen Änderungen" - nach der Archivierung der 'aktuellen Version' (assoziierte Stammdaten wurden noch nicht verschoben)
bei der "Freigabe von technischen Änderungen" - nach Übernahme der Daten von der 'künftigen Version' auf die 'aktuellen Version' (assoziierte Stammdaten wurden noch nicht verschoben)
Beispiel
| nEvtNo:P1, nModus:P2, oDab010Quell:P3, oDab010Ziel:P4, aPost |
// nModus : 1 - Neuanlage Artikel "als neue Version"
// 2 - Release-Wechsel - Neue Version freigeben
// 3 - Freigabe technische Änderungen - Archivierung
// 4 - Freigabe technische Änderungen - Übernahme
// oDab010Quell: Tabelle Artikelstamm positioniert auf der 'Quell-Version'
// oDab010Ziel : Tabelle Artikelstamm positioniert auf der 'Ziel-Version'
// HINWEIS : Transaktion aktiv!
aPost := False,
if (DbState(oDab010Ziel) <> dsEdit) and (DbState(oDab010Ziel) <> dsInsert) then
DbEdit(oDab010Ziel),
aPost := True,
endif,
// 1 - Neuanlage Artikel "als neue Version"
// - oDab010Quell = 'aktuelle Version'
// - oDab010Ziel = Neuer Artikel
if nModus = 1 then
oDab010Ziel:VERS_INFO := 'Neue Version!' + CRLF +
'Kopiert von Artikel: ' + oDab010Quell:ARTNR + CRLF +
'Datum/Zeit: ' + DateTimeToStr(Now()),
else
// 2 - Release-Wechsel - Neue Version freigeben
// - Kunden-Sonderpreise und Absatzplanung wurden (ggf.) bereits verschoben
// - Feld DAB010:VERS_STAT wurde bereits geändert
// - oDab010Quell = vormals 'aktuelle Version'
// - oDab010Ziel = vormals 'künftige Version'
if nModus = 2 then
oDab010Ziel:VERS_INFO := oDab010Ziel:VERS_INFO + CRLF +
'Freigegeben am: ' + DateTimeToStr(Now()),
else
// 3 - Freigabe technische Änderungen - Archivierung
// - assoziierte Stammdaten wurden noch nicht verschoben, nur Feldinhalte
// DAB010!
// - oDab010Quell = 'aktuelle Version'
// - oDab010Ziel = Archiv-Version
if nModus = 3 then
oDab010Ziel:VERS_INFO := oDab010Ziel:VERS_INFO + CRLF +
'Freigabe technischer Änderungen -------------' + CRLF +
'Archiviert am: ' + DateTimeToStr(Now()) + CRLF +
'von Artikel: ' + oDab010Quell:ARTNR,
else
// 4 - Freigabe technische Änderungen - Übernahme
// - assoziierte Stammdaten wurden noch nicht verschoben, nur Feldinhalte
// DAB010!
// - oDab010Quell = 'künftige Version'
// - oDab010Ziel = 'aktuelle Version'
if nModus = 4 then
oDab010Ziel:VERS_INFO := oDab010Ziel:VERS_INFO + CRLF +
'Freigabe technischer Änderungen --------------' +
CRLF + 'am: ' + DateTimeToStr(Now()) + CRLF +
'Daten-Übernahme von Artikel: ' + oDab010Quell:ARTNR,
endif,
endif,
endif,
endif,
if aPost then
DbPost(oDab010Ziel),
endif,