在窗体界面,有可以选择时间段的(从某个日期到某个日期),那选择日期后,有没有哪个函数可以实现这段时间内的周报表,月报表,年报表??盼高手解答,谢谢!
call cnn   '连接数据库
call rsopen1("select * from outh1 where xsrq between '" & DTPicker1.Value & "' and '" & DTPicker2.Value & "'")       '连接表我如何求这段时间内销售的周报表、月报表、年报表???

解决方案 »

  1.   

    'Oracle 10g 中的做法(建议使用数据库中的函数来进行处理):
    create or replace view v_ia_dc_rtdata_withdevice as
    select iqms.ia_dc_realtime_data.id,
           iqms.ia_dc_realtime_data.pvvoltage,
           iqms.ia_dc_realtime_data.pvcurrent,
           iqms.ia_dc_realtime_data.energyinput,
           iqms.ia_dc_realtime_data.energyoutput,
           iqms.ia_dc_realtime_data.pvpower,
           iqms.ia_dc_realtime_data.runhour,
           to_char(iqms.ia_dc_realtime_data.rtdc_date,'hh24') as Hours,
           to_char(RTDC_DATE,'YYYY') AS Years,
           to_char(RTDC_DATE,'MM') AS Months,
           to_char(RTDC_DATE,'WW') AS Weeks,
           to_char(RTDC_DATE,'DD') AS Days,
           iqms.ia_dc_realtime_data.rtdc_date,
           iqms.ia_dc_realtime_data.userid,
           iqms.ia_dc_realtime_data.device_address,
           iqms.ia_dc_realtime_data.ia_dc_device_id,
           iqms.ia_dc_device.devicename,
           iqms.ia_dc_device.devicedescription,
           iqms.ia_dc_device.devicetype
     from iqms.ia_dc_device,iqms.ia_dc_realtime_data
     where iqms.ia_dc_realtime_data.ia_dc_device_id = iqms.ia_dc_device.id
      

  2.   

    你在dtp中选择时间这个不是很好吗
      

  3.   

    写存储过程 用SQLSERVER 作业调度  或者前台写个程序定时刷新
      

  4.   

    工程文件地址:http://download.csdn.net/source/2651278,代码如下Private Sub Command1_Click()    Text2(0).Text = StartWeekDay(Text1.Text)
        Text2(1).Text = StartMonthDay(Text1.Text)
        Text2(2).Text = StartYear(Text1.Text)    Text3.Text = StartMonthDay2(Text1.Text)    '或者格式化处理
        '    Text2(0).Text = Format(StartWeekDay(Text1.Text), "YYYY-MM-DD")
        '    Text2(1).Text = Format(StartMonthDay(Text1.Text), "YYYY-MM-DD")
        '    Text2(2).Text = Format(StartYear(Text1.Text), "YYYY-MM-DD")
        '    Text3.Text = Format(StartMonthDay2(Text1.Text), "YYYY-MM-DD")End SubPrivate Sub Form_Load()
        Text1.Text = Date
    End SubPublic Function StartWeekDay(InputDay) As Date    Dim AddNum As Integer
        AddNum = Weekday(InputDay)    StartWeekDay = DateAdd("d", 1 - AddNum, InputDay)End Function
    Public Function StartMonthDay(InputDay) As Date    Dim AddNum As Integer    '方式一
        'AddNum = Day(InputDay)
        'StartMonthDay = DateAdd("d", 1 - AddNum, InputDay)    '方式二
        AddNum = Month(InputDay)
        StartMonthDay = Year(InputDay) & "-" & AddNum & "-1"End FunctionPublic Function StartYear(InputDay) As Date
        StartYear = Year(InputDay) & "-1-1"
    End FunctionPublic Function StartMonthDay2(InputDay) As Date
        Dim MonthNum As Integer, DayNum As Integer
        '方式一    'AddNum = Day(InputDay)
        'StartMonthDay = DateAdd("d", 1 - AddNum, InputDay)    '方式二
        MonthNum = Month(InputDay)  
        DayNum = Day(InputDay)         
        If DayNum <= 21 Then
         StartMonthDay2 = Year(InputDay) & "-" & MonthNum - 1 & "-20"
        Else
         StartMonthDay2 = Year(InputDay) & "-" & MonthNum & "-22"
        End IfEnd Function