[gelöst] Feld vom Typ DATEFORMULA befüllen

4. April 2007 11:00

Guten Morgen,

ich versuche, die Lagerhaltungsdaten von Navision 3.7 (wobei die Version eigentlich egal ist) automatisch zu befüllen. Manuell ist das kein Problem, nur bekomme ich das beim Import aus z.B. einer csv-Datei nicht hin.
Jeder Versuch, einen String in ein solches Feld zu schreiben, endet in Fehlermeldungen.
Probiert habe ich mit 10 Tagen Wiederbeschaffungszeit:

Feld := '10T'
Feld := '10D'
Feld := '<10D>'
Dasselbe sinngemäß über Variant mit der Funktion "ISDATEFORMULA".

Ich komme nicht weiter. Bin ich zu doof oder geht das wirklich nicht?

Viele Grüße

Kai
Zuletzt geändert von Tretroller am 4. April 2007 11:19, insgesamt 1-mal geändert.

4. April 2007 11:02

Versuche es mal mit
Code:
EVALUATE(DeinDateFormulaFeld, '10T');

4. April 2007 11:05

Hallo

So:
if not Evaluate(Feld, '<10D>') then
Error('Nein nein nein')

Ansonsten könntest Du Dir eine IsDateFormula Funktion selber schreiben.
Du kannst in dieser Funktion ja prüfen, ob CalcDate mit Deinem Ausdruck ein gültiges Datum liefert. Wenn Nein ist IsDateFormula = False.
Aber das ist ja gar nicht nötig.

Gruss

4. April 2007 11:08

War zu spät, oder zu langsam geschrieben :-)

4. April 2007 11:21

...da war ich zwar schon selber drauf gekommen, aber nachdem in der Hilfe steht, dass Evaluate zu allen möglichen Feldern passt außer dateformula... Da war die Hoffnung auf eine komplette Hilfe stärker als die Erfahrung.

Danke Timo, Du warst der Erste :-)

Kai

25. Oktober 2007 12:58

Ich habe hier noch eine Anschlussfrage.

Wie frage ich denn ab, ob ein Feld vom Type Dateformula leer ist? Ich steh da irgendwie auf dem Schlauch.

25. Oktober 2007 13:03

Warscheinlich hast du das schon ausprobiert. Aber ich werf es trotzdem mal in den Raum: Vielleicht mit TESTFIELD?

25. Oktober 2007 13:42

Ich habs rausgekriegt und ärgere mich jetzt darüber, dass es eigentlich so simpel und einfach ist :-D

Code:
IF FORMAT(DateFormula) = '' THEN...