Domino 9 und frühere Versionen > Entwicklung

Datevalue: Probs mit 29.2.2004 auf Server 5.06a AS/400

(1/3) > >>

AC:
Hi Leute,


hat jemand eine Ahnung was Datumsproblem mit 29.2.2004 auf AS/400 angeht in Verbindung mit Scriptfunction datevalue?

Folgendes Umfeld:
Selbstgeschriebener LS - Serveragent läuft in einer Anwendung.
Ging jetzt 3 Jahre problemlos und die Woche hats gescheppert.

Im log steht illegal function call.
Hab mir dann das Dokument angesehen bei dem es vermeintlich kracht und mir fiel das Datum dort drin auf.

Mit Printanweisungen habe ich mich dann durch den Quelltext gehangelt und mir im Log angesehen an welcher Stelle es scheppern muß.

Richtig. Beim Datum das ich seit 3 Jahren mit Datevalue mir zusammensetze.

Die Printanweisung davor steht noch im log, die Priintanweisung danach nicht mehr.

Sch***

Dominoversion ist 5.06a und läuft auf AS/400.

Weiß jemand etwas ? Bug ?
Helfen neuere Server-Versionen ?

Danke schonmal. Gruß. Alexander
 

 

Glombi:
Füttere uns doch mal mit etwas Quellcode - selbst Microsoft veröffentlich den  ;D

Andreas

Glombi:
Das mit dem 29.02.2004 scheint für die AS/400 tatsächlich ein Problem zu sein, so das Ergebnis meines googelns.

Das kommt dann noch auf uns zu:
http://www.iee.org/Policy/Areas/it/practice/problemdates/index.cfm

Andreas

AC:
Hallo Andreas,

nett, daß Du (wie fast immer) antwortest.

Am Quellcode liegts nicht (wette ich ... einen sixpacvk Bier).
Weil:
Der Agent läuft täglich auf hunderte von Dokumenten seit fast drei Jahren !!!

Ohne Erklärung wirds auch nicht viel helfen, aber bitteschön.

Ich bastel mir aus 4 Feldern wie sie via LEI kommen einen Datumswert zusammen. (jj für Jahr, mm für monat, tt für tag und jh für jahrhundert).


   Print  "jetzt lidat berechnen bis"
   '// Lieferterminbisdatum berechnen
      If sdoc.lbtta1(0) <> 0  And sdoc.lbmma1(0) <> 0 Then
         einstelligLb = "0" + Cstr(sdoc.LBJJA1(0))
         zweistelliglB = Cstr(sdoc.LBJJA1(0))
         If sdoc.LBJJA1(0) < 10 Then
            mjlb = einstelliglv
         Else
            mjlb = zweistelliglv
         End If
         lieferterminbis = Datevalue(Cstr(sdoc.lbmma1(0))+"/"+ Cstr(sdoc.lbtta1(0))+"/"+ Cstr(sdoc.lbjha1(0)) + mjlb)
      End If
      
      Print  "jettzt kundendaten schreiben"


Im log seh ich noch die erste printanweisung, die zweite nicht mehr.
Also MUSS es am Datevalue scheitern.  


Ich nehme an, daß es ein Serverbug ist.

Wenn keiner hier was weiß:
Das einzige was ich dann noch sehe, daß ich die Stammdaten (Liefer bis Datum) ändere.

Mit SQL auf der AS/400 in Db2 mir die Einträge mir 29.2.2004 zusammensuchen

Das Datum auf 28.2.2004 ändere. LEI dann wieder anwerfe und dann meinen Agenten nochmal laufen lasse.

Muß mir dann aber noch das OK holenb, die Stammdaten im Auftragssystem aufd er AS/400 zu ändern.  <grmpf>

Gruß, Holcomb


AC:
Andreas, danke für den Link . Werde ich gleich ansehen.

Mit welchen Begriffen hast Du da gesucht ?
Ich hab auf lotus.com und in der knowl4edgebase mal gesucht.

Gruß, holcomb

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln