Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   подсчет даты для запроса за х-дней назад (http://forum.oszone.net/showthread.php?t=249544)

val_k 19-12-2012 18:17 2049091

подсчет даты для запроса за х-дней назад
 
Наваял скрипт - не понимаю почему неправильно считает - переходы по иф неправильно работают - бред какой-то

Суть такая берем из лога на какую дату хотим отчет (например за 2, 26 дней от текущего)
проверяем что текущий день больше чем дайсемпл=26 к примеру и сразу же иф не работает .....
пример кода :
Код:

#Include <Date.au3>
Global $DaySample,$TimeOut
if FileExists(@ScriptDir&"\ini1.ini") then
        MsgBox(4096, "start","read ini: "&@ScriptDir&"\ini1.ini",3)
        $DaySample = IniRead(@ScriptDir&"\ini1.ini","Main","DaySample","2")
        $TimeOut = IniRead(@ScriptDir&"\ini1.ini","Main","TimeOut","12")
Else
        MsgBox(4096, "error",@ScriptDir&"\ini1.ini"&" | ini open error!")
        Exit 0
EndIf
MsgBox(4096, "start","run    ",3)
        $date=_NowDate()
        $dd=StringLeft($date,2)
        $mm=StringMid($date,4,2)
        $yy=StringRight($date,2)

        if $dd > $DaySample then
                $dd=$dd-$DaySample
        ElseIf        $mm>2 then
                $mm=$mm-1
                $dd = _DateDaysInMonth(@YEAR,$mm)-$DaySample+$dd
                ElseIf $mm=1        Then
                $mm = 12
                $yy=$yy-1
                EndIf
               
        MsgBox(4096, "start        ","data    ="&$dd&$mm&$yy ,34)       
        Exit


madmasles 20-12-2012 23:45 2050064

val_k,
Если я Вас правильно понял.
Код:

#include <Date.au3>

$iDays = -26
$sNewDate = _DateAdd('d', $iDays, _NowCalcDate())
MsgBox(64, 'Info', 'New Date: ' & $sNewDate & @LF &  _DateTimeFormat($sNewDate, 2))


val_k 21-12-2012 12:26 2050296

madmasles, спасибо , ваш код помог избавиться от ненужных расчетов , моя задача решена.


Время: 20:09.

Время: 20:09.
© OSzone.net 2001-