Systemzeit ausgeben
Moderator: Moderatoren
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Systemzeit ausgeben
Hi ich würde gerne einfach nur die Systemzeit in eine Variable schreiben bzw. mit einem Label oder so ausgeben. Wie bekomme ich die ?
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Moin,
Time()
Viele Grüße,
Martin
Time()
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
ok dann hab ich wohl was falsch gemacht, das hat iwie nicht funktioniert. Egal ich veruschs nochmals. Danke
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
Gibt es diese Funktion auch für das Datum ? date() funktioniert ja nicht oder?
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Hi,
und warum sollte date() nicht funktionieren ?
Oder brauchst du nur einen String
und warum sollte date() nicht funktionieren ?
Oder brauchst du nur einen String
Code: Alles auswählen
set date to german
? dtoc(date()) => z.b. "21.01.2011"
? dtos(date()) => z.B. "20110121"
Gruß
Hubert
Hubert
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
aaahhhh jetzt wird es Tag .
mir hat einfach die Funktion dtoc darum gefehlt . Sorry, dass ich eure Zeit gestohlen habe , hab da jetzt ewig und drei Tage dran rumprobiert, dabei ist es so einfach
mir hat einfach die Funktion dtoc darum gefehlt . Sorry, dass ich eure Zeit gestohlen habe , hab da jetzt ewig und drei Tage dran rumprobiert, dabei ist es so einfach
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
angenommen ich habe die Systemzeit und will da 30 Tage hinzuaddieren. Wie funktioniert das ?
Gibt es Unterschiede wenn ich Monate oder Jahre hinzuaddieren will ?
Gibt es Unterschiede wenn ich Monate oder Jahre hinzuaddieren will ?
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Hmm,
wenn Du die Systemzeit hast und da 30 Tage raufaddierst, ändert sich nichts!
Wenn Du auf das Datum 30 Tage addieren willst, dann machst Du das einfach:
dNextMonth := Date() + 30
Viele Grüße,
Martin
wenn Du die Systemzeit hast und da 30 Tage raufaddierst, ändert sich nichts!
Wenn Du auf das Datum 30 Tage addieren willst, dann machst Du das einfach:
dNextMonth := Date() + 30
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
ja sorry das Datum meinte ich natürlich
Danke :-P
Wenn ich jetzt 14 Monate hinzu addieren will muss ich dann 30 * 14 machen oder gibt es da noch einen anderen Weg? Es gibt ja auch noch den Februar mit seinen 28 Tagen und die 31 Tagemonate sind ja auch noch da ?!
Danke :-P
Wenn ich jetzt 14 Monate hinzu addieren will muss ich dann 30 * 14 machen oder gibt es da noch einen anderen Weg? Es gibt ja auch noch den Februar mit seinen 28 Tagen und die 31 Tagemonate sind ja auch noch da ?!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
30 Tage * 14 Monate ... stimmt nie !
Zwar sind im Bankwesen 30 Tage pro Monat üblich, aber bei Xbase zählt jeder einzelne ...
Im Prinzip Monatswert lesen, 14 Monate addieren und eventuelle Überläufe auf Jahre umrechnen !
Alles zusammen wieder als Datum zusammenbauen und zuweisen ...
Zwar sind im Bankwesen 30 Tage pro Monat üblich, aber bei Xbase zählt jeder einzelne ...
Im Prinzip Monatswert lesen, 14 Monate addieren und eventuelle Überläufe auf Jahre umrechnen !
Alles zusammen wieder als Datum zusammenbauen und zuweisen ...
Gruß
Hubert
Hubert
-
- Rekursionen-Architekt
- Beiträge: 440
- Registriert: Mo, 30. Mai 2011 15:06
- Danksagung erhalten: 1 Mal
Re: Systemzeit ausgeben
Ist das umständlich das beispielhaft anzugeben ?
ich habe nämlich nicht die geringste Ahnung wie ich das anfangen könnte
ich habe nämlich nicht die geringste Ahnung wie ich das anfangen könnte
- Bertram Hansen
- Foren-Moderator
- Beiträge: 1015
- Registriert: Di, 27. Sep 2005 8:55
- Wohnort: 51379 Leverkusen
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 20 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
In den Tools gibt es die Funktion
Code: Alles auswählen
AddMonth( [<dDate>], ; // Default: Date()
<nMonths> ;
) --> dNewDate
Gruß Bertram
http://www.tobax.de
Mitglied der XUG Cologne
Mitglied der XUG Osnabrück
Beisitzer des Deutschsprachige Xbase-Entwickler e.V.
Solange Kakaobohnen an Bäumen wachsen ist Schokolade Obst!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Hi,
nun fassen wir zusammen, was du vorhin erklärt bekommen hast *** und überlegen, wie man es per Hand macht
PS: ich habe es jetzt nicht geprüft, also eventuell verbessern
nun fassen wir zusammen, was du vorhin erklärt bekommen hast *** und überlegen, wie man es per Hand macht
Code: Alles auswählen
? "In 14 Monaten ist der", AddMonth( date(), 14 )
function AddMonth(dDatum, nAnzAddMon)
local nJahr, nMonat, nTag
do case
case valtype(dDatum) <> "D"
*** Fehlermeldung !
case empty(nAnzAddMon)
* nichts zu tun
case nAnzAddMon > 0
if ! empty(nAnzAddMon)
nJahr := year(dDatum)
nMonat := month(dDatum)
nTag := day(dDatum)
nMonat += nAddMon
if nMonat > 12
nJahr += int(nMonat/12)
nMonat := nMonat % 12 // nur der Rest sind Monate
endif
dDatum := stod( strzero(nJahr,4)+strzero(nMonat,2)+strzero(nTag,2) )
endif
case nAnzAddMon < 0
* Hausarbeit ;-)
end
return dDatum
Gruß
Hubert
Hubert
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Das geht einfacher. Und rekursiv. In dieser Variante aber nur für positive Werte. Ungetestet.
Ups. Abfangen müsste man natürlich noch, ob für den 31., 30., 29. abgefragt wird und der Zielmonat weniger Tage hat.
Code: Alles auswählen
FUNCTION AddMonth(dDate,nMonth)
LOCAL dTempDate := BoM(dDate)+10 // jeder Monat hat einen 10., 30 Tage hinzuaddiert liegt also immer im Folgemonat!
IF nMonth = 0 // mag ja auch vorkommen
RETURN dDate
ENDIF
IF nMonth = 1
RETURN BoM(dTempDate+30)+(Day(dDate)-1) // BoM liefert den ersten Tag des Monats, Day() die Nummer des Tages eines Datums
ENDIF
RETURN AddMonth(dDate,nMonth-1)
Herzlich,
Tom
Tom
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
ob das "einfacher" istTom hat geschrieben:Das geht einfacher. Und rekursiv. In dieser Variante aber nur für positive Werte. Ungetestet
...
Für den Rechner auf jeden Fall nicht, denn jeder Funktionsaufruf kostet mehr als normale Berechnungen
das trifft auf mein Beispiel auch zu ... das Datum könnte ungültig werden ... die Frage stellt sich dann, welches Datum richtig ist, wenn ...Tom hat geschrieben:Ups. Abfangen müsste man natürlich noch, ob für den 31., 30., 29. abgefragt wird und der Zielmonat weniger Tage hat.
31.Juli. + 2 Monate ... 30.September oder 01.Oktober ...
Gruß
Hubert
Hubert
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Hallo, Hubert.
Es ist in jedem Fall kompakter und eleganter - und man lernt gleich was über Rekursionen.
Einen Monat nach dem 31. August wäre der 30. September, würde ich mal sagen. Ansonsten müsste man das ggf. über einen Parameter oder eine Get/Set-Funktion steuern. Die Frage ist, wozu man den Tag bräuchte, der einen Monat nach dem 31. August liegt.
Es ist in jedem Fall kompakter und eleganter - und man lernt gleich was über Rekursionen.
Einen Monat nach dem 31. August wäre der 30. September, würde ich mal sagen. Ansonsten müsste man das ggf. über einen Parameter oder eine Get/Set-Funktion steuern. Die Frage ist, wozu man den Tag bräuchte, der einen Monat nach dem 31. August liegt.
Herzlich,
Tom
Tom
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Die von mir gezeigte Funktion liefert für den 31. August den 1. Oktober bei einer 1 als Parameter nMonth, dito für den 31. Juli mit einer 2, aber den 30. September bei einer 3 und für den 30. Juni.
Herzlich,
Tom
Tom
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Systemzeit ausgeben
wenn du es "genau" machen will würde ich zunächst "ungefähr" das neue Datum berechnen und dann die DatePicker aufrufenBenz hat geschrieben:Wenn ich jetzt 14 Monate hinzu addieren will muss ich dann 30 * 14 machen oder gibt es da noch einen anderen Weg? Es gibt ja auch noch den Februar mit seinen 28 Tagen und die 31 Tagemonate sind ja auch noch da ?!
Code: Alles auswählen
NewDate := DATE() + (30*14)
// native DatePicker
oDPick := DXE_DatePick():New(...):Create()
oDPick:SetData2Pick(NewDate)
oDPick:Show()
gruss by OHR
Jimmy
Jimmy
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Äh. Ich sehe da einen gewissen Widerspruch. Außerdem: Wie sinnvoll soll es sein, innerhalb einer automatischen Berechnung plötzlich den Datepicker aufzurufen?wenn du es "genau" machen will würde ich zunächst "ungefähr" das neue Datum berechnen
Ein Monat hat im Durchschnitt 30,4167 Tage (365 / 12), in Schaltjahren ist der Faktor geringfügig höher (exakt 30,5). Wenn man also den Tag haben will, der "durchschnittlich" vier Monate nach einem konkreten Datum liegt, müsste man 4 * 30,4167 auf das Tagesdatum addieren. Das wäre aber sicher nicht das, was sich der Computernutzer als "vier Monate später" vorstellt, denn der denkt (wie die meisten von uns): Vier Monate nach dem 10.6.2011 ist nicht der 9.10.2011 (was die Berechnung ergäbe), sondern durchaus der 10.10.2011.
Problematisch wird das ohnehin nur, wenn man den x.ten Folgemonat für ein Datum am 29., 30. oder 31. sucht und es gibt diesen Tag nicht im Zielmonat. Das entspricht der Antwort auf die Frage, wann jemand in Nicht-Schaltjahren Geburtstag hat, der am 29. Februar eines Schaltjahres geboren wurde. Im Prinzip kann man also nicht jedes Datum um x Monate inkrementieren, man kann es nur ungefähr (30,4167 Tage hinzuaddieren) oder, wie in meiner Funktion, tatsächlich x Monate weiterrechnen und dann analog zum Quelltag um die Anzahl der Tage inkrementieren, womit man als Folgetag für den 31. August im um eins erhöhten Monat auf den 1. Oktober käme. Und an dieser Stelle müsste man eine philosophische Entscheidung treffen: Gemeint ist dann entweder der letzte Tag im Zielmonat (womit man sich tatsächlich x Monate nach dem Quellmonat befände), oder man springt immer auf den ersten des Folgemonats (was merkwürdig anmutet) - oder man verfährt wie oben gezeigt. Eine "richtige" Lösung für dieses eigentlich unzulässige Additionsproblem gibt es aber nicht. Das gilt übrigens auch für den Fall, dass man ganze Jahre hinzuaddieren möchte, aber dort nur, wenn das Quelldatum an einem 29. Februar liegt und das Zieljahr kein Schaltjahr ist. Siehe oben. Wenn ich Geburtstage berechne, wähle ich in diesem Fall (und auch bei Monatsadditionen, die das betrifft) den letzten des intervallmäßig passenden Monats. Einen Datepicker zeige ich natürlich nicht an. Und auch keine Pornobildchen oder sonstwelchen Unsinn.
Herzlich,
Tom
Tom
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Systemzeit ausgeben
es kommt darauf an "wozu" du es benötigst.Tom hat geschrieben:Äh. Ich sehe da einen gewissen Widerspruch. Außerdem: Wie sinnvoll soll es sein, innerhalb einer automatischen Berechnung plötzlich den Datepicker aufzurufen?
wenn ich das "Ablauf" Datum von Lebensmittel angebe ist es egal ob es auf einem So. liegt oder nicht.
wenn ich nun eine "Termin" in 4 Monaten machen will sollte man schon den Wochentag abstimmen
was hat das eine mit dem andern zu tun ...Tom hat geschrieben:Einen Datepicker zeige ich natürlich nicht an. Und auch keine Pornobildchen oder sonstwelchen Unsinn.
gruss by OHR
Jimmy
Jimmy
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Nicht elegant, aber es funktioniert.
Code: Alles auswählen
*+
*+ Function DateAdd()
*+
FUNCTION DateAdd(dDate,nDays,nMonths,nYears)
Local dNewDate := dDate, nMonth := 0, nYear := 0, nDay := 0, nLastDay := 0
if nMonths > 12
nYears += int( nMonths / 12 )
nMonths := mod( nMonths, 12 )
endif
nMonth := MONTH( dNewDate ) + nMonths
nYear := YEAR( dNewDate ) + nYears
nDay := DAY( dNewDate )
IF nMonth < 1
nYear -= 1
nMonth += 12
ELSE
IF nMonth > 12
nYear += int( nMonth / 12 )
nMonth := mod( nMonth, 12 )
ENDIF
ENDIF
nLastDay := LastDay(nMonth, nYear)
if nDay > nLastDay
nDay := nLastDay
endif
dNewDate := CTOD( STRZERO( nDay, 2 ) + "." + ;
STRZERO( nMonth, 2 ) + "." + ;
STRZERO( nYear, 4 ) )
dNewDate := dNewDate + nDays
RETURN dNewDate
Function LastDay( nMnth, gnYear )
Local nMonth := Iif( ValType(nMnth)="D", Month(nMnth), nMnth ), ;
nDays := 30
Do Case
Case nMonth = 0 // Allow previous year, December
nDays := 31
// January
Case nMonth = 1
nDays := 31
// February
Case nMonth = 2 // Is this leap year ?
If !Empty( Day(CtoD("02/29/" + Str(gnYear,4,0) )) )
nDays := 29
Else
nDays := 28
EndIf
// March
Case nMonth = 3
nDays := 31
// April
Case nMonth = 4
nDays := 30
// May
Case nMonth = 5
nDays := 31
// June
Case nMonth = 6
nDays := 30
// July
Case nMonth = 7
nDays := 31
// August
Case nMonth = 8
nDays := 31
// September
Case nMonth = 9
nDays := 30
// October
Case nMonth = 10
nDays := 31
// November
Case nMonth = 11
nDays := 30
// December
Case nMonth = 12
nDays := 31
EndCase
Return nDays
Gruß
Klaus
Klaus
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Was auch wiederum davon abhängt, mit wem man einen Termin macht: Privat ginge auch am Sonntag, obwohl der Tag, an dem über "in vier Monaten" gesprochen wird, ein Mittwoch ist.wenn ich nun eine "Termin" in 4 Monaten machen will sollte man schon den Wochentag abstimmen
Spaß beiseite. Klar, es geht darum, was gemeint ist. Ich gehe davon aus, dass es sich um eine automatische Berechnung handeln soll, die also kein Popup anzeigen darf. Also beispielsweise eine Wiedervorlagetermin-Systematik mit der Option "In x Monaten erinnern" oder so. Oder eine Leistung, die alle drei Monate erbracht werden soll. Oder die Frage, wer heute in zwei Monaten Geburtstag hat. Je nach Ansatz müssen dann verschiedene Dinge passieren: Heute in zwei Monaten bei einem "heute" 31. Juli wäre dann vermutlich der 30. September. Die Antwort käme aber auch am 30. Juli schon. Wenn man mit dem 1. Oktober antworten würde, käme diese Antwort doppelt am 1. August. Vertrackt. Irgendwie richtig wäre: Heute in zwei Monaten hat keiner Geburtstag, denn es gibt keinen 31. September. Für die anderen beiden Tage hast Du, Benutzer, die Antwort am 30. Juli erhalten - oder bekommst sie am 1. August. Die Leistung, die alle 3 Monate erbracht werden soll, darf aber nicht ausfallen, weil es keinen 31. September gibt - hier muss eine Entscheidung getroffen werden. Und, ja, Du hast recht - Geschäftstermine in x Monaten sollten nicht auf einen Sonntag fallen. Aber auch nicht auf einen Feiertag. Bei sich automatisch wiederholenden Terminen rechne ich an solchen Stellen vom (virtuellen) Zieltag so lange zurück, bis ein Werktag erreicht ist.
Anders gesagt: Man muss eine solche Funktion so gestalten, dass sie der Systematik entspricht oder wenigstens nahe kommt.
Herzlich,
Tom
Tom
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Hi,
und ganz übel kommt es, wenn man auch noch gesetzliche Regelungen für Fristen beachten muss, was es da alles gibt
und ganz übel kommt es, wenn man auch noch gesetzliche Regelungen für Fristen beachten muss, was es da alles gibt
Gruß
Hubert
Hubert
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
So, wenn der Zieltag auf ein ungültiges Datum trifft, dann ist der Folgetag meist die beste Alternative.
Hier meine Routine die das berücksichtigt ... (ich sollte wirklich mal nachsehen wo ich sowas schon gebraucht habe ...)
Hier meine Routine die das berücksichtigt ... (ich sollte wirklich mal nachsehen wo ich sowas schon gebraucht habe ...)
Code: Alles auswählen
? "In 14 Monaten ist der", AddMonth( date(), 14 )
function AddMonth(dDatum, nAnzAddMon)
local nJahr, nMonat, nTag
do case
case valtype(dDatum) <> "D"
*** Fehlermeldung !
case empty(nAnzAddMon)
* nichts zu tun
case nAnzAddMon > 0
if ! empty(nAnzAddMon)
nJahr := year(dDatum)
nMonat := month(dDatum)
nTag := day(dDatum)
nMonat += nAddMon
if nMonat > 12
nJahr += int(nMonat/12)
nMonat := nMonat % 12 // nur der Rest sind Monate
endif
dDatum := stod( strzero(nJahr,4)+strzero(nMonat,2)+strzero(nTag,2) )
if empty(dDatum) // OK - 1. Tag des Folgemonats.
nTag := 1
if nMonat < 12
nMonat++
else
nMonat := 1
nJahr++
endif
dDatum := stod( strzero(nJahr,4)+strzero(nMonat,2)+strzero(nTag,2) )
endif
endif
case nAnzAddMon < 0
* Hausarbeit ;-)
end
return dDatum
Gruß
Hubert
Hubert
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2936
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Systemzeit ausgeben
Deswegen sollte man umgangssprachlich mit 1 Monat immer 4 Wochen meinen/rechnen, dann kann man sich diesen "Krempel" sparen (datum+=28)
Viele Grüße
Wolfgang
Wolfgang