12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- $PBExportHeader$f_init_calendar_array.srf
- global type f_init_calendar_array from function_object
- end type
- forward prototypes
- global function integer f_init_calendar_array (long arg_year, ref s_calendar arg_s_calendar_array[])
- end prototypes
- global function integer f_init_calendar_array (long arg_year, ref s_calendar arg_s_calendar_array[]);//初始化月份
- string ins_year
- long ls_year
- boolean ifyear=false
- ls_year=arg_year
- if mod(ls_year,4)<>0 then
- ifyear=false
- elseif mod(ls_year,100)<>0 then
- ifyear=true
- elseif mod(ls_year,400)<>0 then
- ifyear=false
- else
- ifyear=true
- end if
- ins_year=string(ls_year)
- arg_s_calendar_array[1].cmonth=ls_year * 100 + 1
- arg_s_calendar_array[1].sdate=datetime(date(ins_year + '-01-01'),time(0))
- arg_s_calendar_array[1].edate=datetime(date(ins_year + '-01-31'),time(23:59:59))
- arg_s_calendar_array[2].cmonth=ls_year * 100 + 2
- arg_s_calendar_array[2].sdate=datetime(date(ins_year + '-02-01'),time(0))
- if ifyear then
- arg_s_calendar_array[2].edate=datetime(date(ins_year + '-02-29'),time(23:59:59))
- else
- arg_s_calendar_array[2].edate=datetime(date(ins_year + '-02-28'),time(23:59:59))
- end if
- arg_s_calendar_array[3].cmonth=ls_year * 100 + 3
- arg_s_calendar_array[3].sdate=datetime(date(ins_year + '-03-01'),time(0))
- arg_s_calendar_array[3].edate=datetime(date(ins_year + '-03-31'),time(23:59:59))
- arg_s_calendar_array[4].cmonth=ls_year * 100 + 4
- arg_s_calendar_array[4].sdate=datetime(date(ins_year + '-04-01'),time(0))
- arg_s_calendar_array[4].edate=datetime(date(ins_year + '-04-30'),time(23:59:59))
- arg_s_calendar_array[5].cmonth=ls_year * 100 + 5
- arg_s_calendar_array[5].sdate=datetime(date(ins_year + '-05-01'),time(0))
- arg_s_calendar_array[5].edate=datetime(date(ins_year + '-05-31'),time(23:59:59))
- arg_s_calendar_array[6].cmonth=ls_year * 100 + 6
- arg_s_calendar_array[6].sdate=datetime(date(ins_year + '-06-01'),time(0))
- arg_s_calendar_array[6].edate=datetime(date(ins_year + '-06-30'),time(23:59:59))
- arg_s_calendar_array[7].cmonth=ls_year * 100 + 7
- arg_s_calendar_array[7].sdate=datetime(date(ins_year + '-07-01'),time(0))
- arg_s_calendar_array[7].edate=datetime(date(ins_year + '-07-31'),time(23:59:59))
- arg_s_calendar_array[8].cmonth=ls_year * 100 + 8
- arg_s_calendar_array[8].sdate=datetime(date(ins_year + '-08-01'),time(0))
- arg_s_calendar_array[8].edate=datetime(date(ins_year + '-08-31'),time(23:59:59))
- arg_s_calendar_array[9].cmonth=ls_year * 100 + 9
- arg_s_calendar_array[9].sdate=datetime(date(ins_year + '-09-01'),time(0))
- arg_s_calendar_array[9].edate=datetime(date(ins_year + '-09-30'),time(23:59:59))
- arg_s_calendar_array[10].cmonth=ls_year * 100 + 10
- arg_s_calendar_array[10].sdate=datetime(date(ins_year + '-10-01'),time(0))
- arg_s_calendar_array[10].edate=datetime(date(ins_year + '-10-31'),time(23:59:59))
- arg_s_calendar_array[11].cmonth=ls_year * 100 + 11
- arg_s_calendar_array[11].sdate=datetime(date(ins_year + '-11-01'),time(0))
- arg_s_calendar_array[11].edate=datetime(date(ins_year + '-11-30'),time(23:59:59))
- arg_s_calendar_array[12].cmonth=ls_year * 100 + 12
- arg_s_calendar_array[12].sdate=datetime(date(ins_year + '-12-01'),time(0))
- arg_s_calendar_array[12].edate=datetime(date(ins_year + '-12-31'),time(23:59:59))
- return 1
- //cmonth
- //sdate
- //edate
- end function
|