Bestellung vs. Lieferanten-Rahmenauftrag
Moderator: SYNERPY
-
nbrommer
- Beiträge: 54
- Registriert: Di Jan 17, 2006 2:21 pm
- Wohnort: Hamburg
Bestellung vs. Lieferanten-Rahmenauftrag
Hallo,
wir sind auf folgendes Problem bei der Bestellungen gestossen:
- wenn wir eine Bestellung für ein Artikel, zu dem ein Rahmenauftrag existiert erfassen, z.B. Menge 500 Stck., die Bestellung drucken und als "Gedruckt" markieren, danach aber die Menge auf z.B. 400 Stck. korrigieren oder aber die Bestellung ganz löschen, wird die verbrauchte Menge im Rahmenauftrag weder geändert oder (beim Löschen der Bestellung) zurückgesetzt.
Das führt dazu, daß wir bei den Rahmenaufträgen falsche verbrauchte Mengen haben.
Wie können wir diesen Fehler korrigieren?
wir sind auf folgendes Problem bei der Bestellungen gestossen:
- wenn wir eine Bestellung für ein Artikel, zu dem ein Rahmenauftrag existiert erfassen, z.B. Menge 500 Stck., die Bestellung drucken und als "Gedruckt" markieren, danach aber die Menge auf z.B. 400 Stck. korrigieren oder aber die Bestellung ganz löschen, wird die verbrauchte Menge im Rahmenauftrag weder geändert oder (beim Löschen der Bestellung) zurückgesetzt.
Das führt dazu, daß wir bei den Rahmenaufträgen falsche verbrauchte Mengen haben.
Wie können wir diesen Fehler korrigieren?
Norbert B.
-
nbrommer
- Beiträge: 54
- Registriert: Di Jan 17, 2006 2:21 pm
- Wohnort: Hamburg
Hallo,
mittelweile habe ich eine Lösung gefunden und zwar im Trigger BBESP_AU0 von der Tabelle BBESP (After Update) habe ich folgende Zeilen eingefügt (mit Kommentar markiert):
danach funktionierte die Korrektur und die Verbrauchte Menge im Rahmenauftrag ist jetzt richtig.
Grüße
mittelweile habe ich eine Lösung gefunden und zwar im Trigger BBESP_AU0 von der Tabelle BBESP (After Update) habe ich folgende Zeilen eingefügt (mit Kommentar markiert):
Code: Alles auswählen
...
IF (NEW.BESTMENGE <> OLD.BESTMENGE) THEN
BEGIN
UPDATE BBESPD
SET MENGE = (MENGE / OLD.BESTMENGE * NEW.BESTMENGE)
WHERE BBESP_ID_LINKKEY = OLD.ID;
/* Die Menge im Lieferanten-Rahmenauftrag korrigieren */
IF (BBESP.BABES_ID > 0) then
UPDATE BABES
SET BABES.VERB_MENGE = BABES.VERB_MENGE - OLD.BESTMENGE + NEW.BESTMENGE
WHERE BABES.ID = BBESP.BABES_ID;
/* Leere Lagerbuchung machen */
FOR SELECT A.ID, A.BARTLH_ID_LAGERNR
FROM BBESPD A
WHERE A.BBESP_ID_LINKKEY = NEW.ID
INTO :BBESPD_ID, :BBESPD_BARTLH_ID
DO
EXECUTE PROCEDURE P_BARTLHBU01 (:BBESPD_BARTLH_ID, :BBESPD_ID, 'BB', 0);
END
...
Grüße
Norbert B.
-
nbrommer
- Beiträge: 54
- Registriert: Di Jan 17, 2006 2:21 pm
- Wohnort: Hamburg
Hi,
das selbe betrifft auch Löschen von Bestellungen. Dabei muss aber der Trigger BBESP_AD0 (After delete) von der Tabelle BBESP
funktioniert prima!
Ich hoffe, daß dieses Problem in dem nächsten Relase von AVERP behoben ist.
Grüße
das selbe betrifft auch Löschen von Bestellungen. Dabei muss aber der Trigger BBESP_AD0 (After delete) von der Tabelle BBESP
Code: Alles auswählen
...
IF (USER <> 'WORSTCASE') THEN
BEGIN
EXECUTE PROCEDURE P_BFIRMA_JANEIN RETURNING_VALUES :sJa, :sNein;
/* OLD.BBES_ID_LINKKEY IS NULL wird bereits in BeforeDelete geprüft */
SELECT GEDRUCKT
FROM BBES A
WHERE A.ID = OLD.BBES_ID_LINKKEY
INTO :sGEDRUCKT;
/* Die Menge im Lieferanten-Rahmenauftrag korrigieren N. Brommer 02.2007 */
IF (OLD.BABES_ID > 0) then
UPDATE BABES
SET BABES.VERB_MENGE = BABES.VERB_MENGE - OLD.BESTMENGE
WHERE BABES.ID = OLD.BABES_ID;
IF (sGEDRUCKT IS NULL) THEN sGEDRUCKT = sNein;
/* Summe der Felder EKGesamt der Positionen ermitteln */
EXECUTE PROCEDURE P_BBES_NEUBERECHNUNG(OLD.BBES_ID_LINKKEY);
END
...
Ich hoffe, daß dieses Problem in dem nächsten Relase von AVERP behoben ist.
Grüße
Norbert B.
-
festus01
- Beiträge: 515
- Registriert: Di Okt 19, 2004 5:45 am
- Wohnort: Diepholz
Hallo,
Wir haben hier jetzt das gleiche Problem.
Durch die Änderung der Trigger funktioniert es jetzt nur,
wenn die Bestellmenge geändert wird, aber was ist mit dem Wareneingang
Wird hier nämlich wenige als bestellt geliefert wird im Rahmenauftrag weiterhin die bestellte Menge angezeigt
Kann man da noch mit einer Lösung rechnen
Leider bis heute nicht.nbrommer hat geschrieben:
Ich hoffe, daß dieses Problem in dem nächsten Relase von AVERP behoben ist.![]()
Grüße
Wir haben hier jetzt das gleiche Problem.
Durch die Änderung der Trigger funktioniert es jetzt nur,
wenn die Bestellmenge geändert wird, aber was ist mit dem Wareneingang
Wird hier nämlich wenige als bestellt geliefert wird im Rahmenauftrag weiterhin die bestellte Menge angezeigt
Kann man da noch mit einer Lösung rechnen
MfG
KDP
----------------------------------------------------------
Durch den Computer spart der Mensch so viel Zeit,
dass er diese am Computer verbringen kann.
KDP
----------------------------------------------------------
Durch den Computer spart der Mensch so viel Zeit,
dass er diese am Computer verbringen kann.
-
miboe
- Beiträge: 1295
- Registriert: Fr Jul 28, 2006 9:13 am
Sinnvoller als über die Trigger der Bestellung wäre es, das ganze über die Trigger der Tabelle BLRCP, also über die Lieferanten - Rechnungsrückstände abzuwickeln. Dort werden nämlich auch die Mengendifferenzen zwischen Bestellung und Wareneingang behandelt.
Gruß
Michael
Gruß
Michael
Nur wer das Unmögliche versucht, wird das Machbare erreichen!
--
Datenbank: 2012-A02
Programm: 4.2.5.65
OS: Win 7 Pro / Ubuntu 10.04.3
--
Datenbank: 2012-A02
Programm: 4.2.5.65
OS: Win 7 Pro / Ubuntu 10.04.3