dayof(datetimepicker2.date-datetimepicker1.date)

解决方案 »

  1.   

    没有dayof这个函数,编译不过去
      

  2.   

    //==============================================================================
    //计算日期间隔******************************************************************
    //==============================================================================
    procedure Interval(BeginDate, EndDate: TDateTime; var Diapause: DateRec);
    var
      BDay, BMonth, BYear: word;
      EDay, EMonth, EYear: word;
    begin
      DecodeDate(BeginDate, BYear, BMonth, BDay);
      DecodeDate(EndDate, EYear, EMonth, EDay);
      with Diapause do//Diapause为间歇期
      begin
        DayCount := EDay - BDay;
        MonthCount := EMonth - BMonth;
        YearCount := EYear - BYear;
        if DayCount < 0 then
        begin
           Inc(DayCount, 30);
           Dec(MonthCount);
        end;
        if MonthCount < 0 then
        begin
           Inc(MonthCount, 12);
           Dec(YearCount);
        end;
      end;
    end;
      

  3.   

    就是:
    Trunc(datetimepicker2.date-datetimepicker1.date)
      

  4.   

    应该是trunc(date1) - trunc(date2);gzmhero的方法会有一天以内的误差。
      

  5.   

    直接相减就是天数,不过是float,取整
      

  6.   

    用一名SQL写:select tt=datediff(dy,:p_sj1,:p_sj2)
    :p_sj1,:p_sj2是两个时间参数,tt就是它们的天数差
    取的时候:
    var s:integer;
    begin
       s:=query1.fieldbyname('tt').asinteger;
    end;
    没问题的,我就是这样做的。
      

  7.   

    DaysBetween(DataValue1,DataValue2);