lazhen
2024-06-12 de982da373b3a8df0f1d6f28263fa591403e39d0
_Main/BL/Type_LibCal_SubscriberEventTable/Method_InitializeMonth.qbl
@@ -21,21 +21,24 @@
        column := table.LibCal_SubscriberEventColumn( relnew, Name := time.Format( 'M/D/Y' ), Period := time.Date() );
      }
      
      if( startTime.StartOfNextMonth() > endtime ){
        duration := endtime - startTime;
        cell := column.LibCal_SubscriberEventCell( relnew, Value := [String]duration.HoursAsReal()
                                                   , Start := startTime.Format( 'M/D/Y H:m' )
                                                   , End := endtime.Format( 'M/D/Y H:m' )
                                                   , Description := desc );
        row.LibCal_SubscriberEventCell( relinsert, cell );
      }else{
        duration := startTime.StartOfNextMonth() - startTime;
        cell := column.LibCal_SubscriberEventCell( relnew, Value := [String]duration.HoursAsReal()
                                                   , Start := startTime.Format( 'M/D/Y H:m' )
                                                   , End := startTime.StartOfNextMonth().Format( 'M/D/Y H:m' )
                                                   , Description := desc );
      cell := selectobject( column, LibCal_SubscriberEventCell, cell, cell.LibCal_SubscriberEventRow() = row );
      if( isnull( cell ) ){
        cell := column.LibCal_SubscriberEventCell( relnew, Value := '0'
                                                     , Description := desc );
        row.LibCal_SubscriberEventCell( relinsert, cell );
      }
      value := [Real]cell.Value();
      if( startTime.StartOfNextMonth() > endtime ){
        duration := endtime - startTime;
        value := value + duration.HoursAsReal();
        cell.Period( relnew, Start := startTime.Format( 'M/D/Y H:m' ), End := endtime.Format( 'M/D/Y H:m' ) );
      }else{
        duration := startTime.StartOfNextMonth() - startTime;
        value := value + duration.HoursAsReal();
        cell.Period( relnew, Start := startTime.Format( 'M/D/Y H:m' ), End := startTime.StartOfNextMonth().Format( 'M/D/Y H:m' ) );
      }
      cell.Value( [String]value );
    //  info( startTime, column.Name(), duration.AsQUILL(), duration.HoursAsReal() );
    }
  *]