Записать текущую дату в переменную
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | *Как поместить текущую дату в переменную. *Дата: 7 Oct 1999, вторник 17:43:44 -0400. *С адреса: emaguin@ACSU.BUFFALO.EDU. DATA LIST FREE /mydate(SDATE12). BEGIN DATA 2000/01/01 END DATA. LIST. * Преобразуем текущую дату к формату, который нам необходим. STRING #tmo(A3). COMPUTE #da=NUMBER(SUBSTR($DATE,1,2),F2.0). COMPUTE #tmo=SUBSTR($DATE,4,3). RECODE #tmo('JAN'=1)('FEB'=2)('MAR'=3)('APR'=4)('MAY'=5)('JUN'=6)('JUL'=7) ('AUG'=8)('SEP'=9)('OCT'=10)('NOV'=11)('DEC'=12) INTO #mo. COMPUTE #yr=NUMBER(SUBSTR($DATE,8,2),F2.0). COMPUTE currdate=DATE.MDY(#mo,#da,#yr). FORMATS currdate(ADATE10). * mydata - просто какая-то переменная со значениями формата даты. COMPUTE t1adays=(mydate-currdate)/(24*3600). *После 1/1/2000 может потребоваться другая версия (используются 4 знака для года) ***. *Размещено в SPSSX-L 12.09.2000. VARIABLE WIDTH mydate(11). STRING #tmo(A3). *$DATE11 - системная строковая переменная, содержащая текущую дату с 4 цифрами для года. *надо преобразовать её к формату даты того вида, который нужен. COMPUTE #da=NUMBER(SUBSTR($DATE11,1,2),F2.0). COMPUTE #tmo=SUBSTR($DATE11,4,3). RECODE #tmo('JAN'=1)('FEB'=2)('MAR'=3)('APR'=4)('MAY'=5)('JUN'=6)('JUL'=7) ('AUG'=8)('SEP'=9)('OCT'=10)('NOV'=11)('DEC'=12) INTO #mo. COMPUTE #yr=NUMBER(SUBSTR($DATE11,8,4),F4.0). COMPUTE currdate=DATE.MDY(#mo,#da,#yr). FORMATS currdate(ADATE10). COMPUTE test1=currdate-mydate. COMPUTE days = CTIME.DAYS(test1) . EXECUTE. |
Related pages
...