Hallo Leute,
ich brauch dringend eure Hilfe: (muss mit dem Script spätestens am Mittwoch online gehen)
Ich muss ein Script schreiben das das Journal Datum einen Tag vor dem Feiertag setzt.
zur Erklärung Journal Datum: das Journal wird in eine Datei exportiert. wir müssten vorher manuell das von und das bis Datum eingeben.
(von einen Tag vorm Feiertag bis jetzigen Arbeitstag z.B. von 24.12.2006 bis 27.12.2006 !! ACHTUNG: Wochenende also nicht vom 24.12.2006 sondern, durch das Wochenende bedingt vom 22.12.2006)
das gleiche ist am Wochenende: wenn Sonntag das Script läuft muss das von Datum auf Freitag gesetzt werden. (von Freitag bis Sonntag)
dies will ich automatisieren.
diese Script soll von Sonntag bis Freitag Nacht laufen.
die Feiertage sollten in einer Feiertage.txt stehen oder (evtl. automatisch berechnet werden)
so mein angefangenes Script:
Spoiler anzeigen
Global $root = IniRead(@ScriptDir &"\Export.ini", "PFADE", "root", "keine Pfad konfiguriert")
Global $CRS = IniRead($root&"\Scripts\Export.ini", "PFADE", "CRS", "keine Pfad konfiguriert")
Global $JACDAT = IniRead($root&"\Scripts\Export.ini", "PFADE", "JACDAT", "keine Pfad konfiguriert")
Global $feita = IniRead($root&"\time.stamp", "Feiertag", "Beginn", "keine Pfad konfiguriert")
;-Time.wbt------------------------------------------------------------------------;
; Sicherung des Beginndatums in einer TMP Datei ;
;---------------------------------------------------------------------------------------;
;-Errechnung des Belegdatums----------------------------------------------------------------------------;
;Errechnung des Wochentags
$WOTAG = _DateDayOfWeek( @WDAY, 1 )
[/autoit] [autoit][/autoit] [autoit];Errechnung des Feiertagdatums
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$path = @ScriptDir & "\Feiertage.txt"
[/autoit] [autoit][/autoit] [autoit]If _isFeiertag($path) = 1 Then
[/autoit] [autoit][/autoit] [autoit];~ $sNewDate = _DateAdd( 'd',-1, _NowCalcDate())
;~ $FDate= _DateTimeFormat($sNewDate,2)
;~ IniWrite($root&"\time.stamp", "Feiertag", "Beginn",$FDate)
;~ $FENDate= _DateTimeFormat(_NowCalcDate(),2)
;~ IniWrite($root&"\time.stamp", "Feiertag", "Ende",$FENDate)
;~ MsgBox(64, "Heute ausführen?", "Nein es ist Feiertag")
Else
;~ Errechnung des Beginndatum
If $WOTAG = "Son" THEN
$sNewDate = _DateAdd( 'd',-2, _NowCalcDate())
$BDate= _DateTimeFormat($sNewDate,2)
IniWrite($root&"\time.stamp", "TIME", "Beginn",$BDate)
else
$BNDate= _DateTimeFormat( _NowCalcDate(),2)
IniWrite($root&"\time.stamp", "TIME", "Beginn",$BNDate)
Endif
;Errechnung des Enddatum
[/autoit] [autoit][/autoit] [autoit]$ENDate= _DateTimeFormat( _NowCalcDate(),2)
IniWrite($root&"\time.stamp", "TIME", "Ende",$ENDate)
;~ MsgBox(64, "Heute ausführen?", "Ja")
EndIf
Func _isFeiertag($s_path)
global $dates
If Not _FileReadToArray($s_path, $dates) Then Return -1
For $i = 1 To $dates[0]
If $dates[$i] = _NowDate() Then
Return 1
EndIf
Next
Return 0
EndFunc ;==>_isFeiertag
Feiertags.txt
z.B.:
04.12.2006
05.12.2006
08.12.2006
25.12.2006
26.12.2006
01.01.2007
time.stamp:
[TIME]
Beginn=04.12.2006
Ende=04.12.2006
[Feiertag]
Beginn=
Ende=