Problem bei Erzeugung Debitor Lastschriftdiskette

20. Januar 2010 17:51

Hallo zusammen,

seit dem techn. Upgrade auf 2009 Client 6.0 Buil 29140 (mit Objektbasis 2.60) haben wir folgendes Problem mit dem Report "Debitor Lastschriftdiskette" (Aufruf über runmodal).
Über die Tabelle 81 werden Funktionen der Form 232 "Debitorenpostenausgleich" aufgerufen.
Das führt am Ende des Reports zu der Fehlermeldung "Debitor Lastschriftdiskette kann nicht geschlossen werden, da sie bereits von Debitorenpostenausgleich gesperrt ist. ..."
Allerdings ist die Form 232 "Debitorenpostenausgleich" gar nicht geöffnet. Beim testen habe ich festgestellt, dass der Code ohne SetTableView funktioniert.
Interessanterweise funktioniert dieser Code unter NAV 4.0 ohne Probleme..

Der Source sieht folgendermaßen aus:

Code:
        DebPostenAusgl.FibuBuchBlZeileErr(Rec,FIELDNO("Ausgleich-mit Belegnr."));
        DebPostenAusgl.SETTABLEVIEW(DebPosten);
        DebPostenAusgl.SETRECORD(DebPosten);
      END ELSE
        DebPostenAusgl.FibuBuchBlZeileErr(Rec,FIELDNO("Ausgleichs ID"));
      DebPostenAusgl.BerechAusglBetrag;
      OrigBetrag := DebPostenAusgl.BetragBekommen(0);


Habt Ihr eine Idee woran das liegen könnte?

Gruß
42

Re: Problem bei Erzeugung Debitor Lastschriftdiskette

20. Januar 2010 18:48

Es ist so, dass Code der unter 2.x funktioniert nicht unter höheren Versionen laufen muss. Insgesamt ist das ein von MS auch nicht unterstütztes Szenario, da aufgrund geänderter Funktionen im Client auch die Applikationslogik angepasst werden muss.

Empfehlung: Upgrade der Applikation ebenfalls auf ein passendes Release, in diesem Fall 2009, besser 2009 SP1.

Zur Frage ansich: Ohne den gesamten Code zu kennen und auch zu testen ist eine Antwort schwierig, ich hatte ein solches Phänomen aber auch noch nicht. Vielleicht kann jemand anders was sagen, weil er das Problem bereits kennt...

Re: Problem bei Erzeugung Debitor Lastschriftdiskette

20. Januar 2010 20:54

Hallo Carsten,

was mich nur wundert ist die Tatsache, dass NAV durch ein Settableview zu der Annahme kommt das auch ein Applikationsfenster geöffnet ist.Wenn der alte Client das Fensterhandling beherrscht, sollte der neue Client doch intern eine Verwaltung darüber haben was er geöffnet hat und was nicht. Wie funktioniert denn sonst die Steuerung z.B. über Strg+Tab?

Gruß
42