//kt -- Modified with SourceScanner on 7/15/2007 unit fDateRange; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, fAutoSz, ORCtrls, StdCtrls, ORFn, ORDtTm, DKLang; type TfrmDateRange = class(TfrmAutoSz) txtStart: TORDateBox; txtStop: TORDateBox; lblStart: TLabel; lblStop: TLabel; cmdOK: TButton; cmdCancel: TButton; lblInstruct: TOROffsetLabel; DKLanguageController2: TDKLanguageController; procedure cmdOKClick(Sender: TObject); procedure cmdCancelClick(Sender: TObject); procedure FormCreate(Sender: TObject); private //kt Begin Mod (change Consts to Vars) 7/15/2007 TX_INVALID_DATE : string; //kt TC_INVALID_DATE : string; //kt //kt End Mod ------------------- OKPressed: Boolean; Flags: string; procedure SetupVars; //kt 7-15-07 end; function ExecuteDateRange(var Start, Stop: string; const AFlag, ATitle, Instruct, StartLabel, StopLabel: string): Boolean; implementation {$R *.DFM} uses rCore; //const //TX_INVALID_DATE = 'The date/time entered could not be validated.'; <-- original line. //kt 7/15/2007 //TC_INVALID_DATE = 'Unable to interpret date/time entry.'; <-- original line. //kt 7/15/2007 procedure TfrmDateRange.SetupVars; //kt Added entire function to replace constant declarations 7/15/2007 begin TX_INVALID_DATE := DKLangConstW('fDateRange_The_datetime_entered_could_not_be_validated'); TC_INVALID_DATE := DKLangConstW('fDateRange_Unable_to_interpret_datetime_entry'); end; function ExecuteDateRange(var Start, Stop: string; const AFlag, ATitle, Instruct, StartLabel, StopLabel: string): Boolean; var frmDateRange: TfrmDateRange; begin Result := False; frmDateRange := TfrmDateRange.Create(Application); try ResizeFormToFont(TForm(frmDateRange)); with frmDateRange do begin if Flags <> '' then Flags := AFlag; if ATitle <> '' then Caption := ATitle; if Instruct <> '' then lblInstruct.Caption := Instruct; if StartLabel <> '' then lblStart.Caption := StartLabel; if StopLabel <> '' then lblStop.Caption := StopLabel; txtStart.Text := Start; txtStop.Text := Stop; ShowModal; if OKPressed then begin Start := txtStart.Text; Stop := txtStop.Text; Result := True; end; end; finally frmDateRange.Release; end; end; procedure TfrmDateRange.FormCreate(Sender: TObject); begin inherited; OKPressed := False; end; procedure TfrmDateRange.cmdOKClick(Sender: TObject); //const //TX_BAD_START = 'The start date is not valid.'; <-- original line. //kt 7/15/2007 //TX_BAD_STOP = 'The stop date is not valid.'; <-- original line. //kt 7/15/2007 //TX_STOPSTART = 'The stop date must be after the start date.'; <-- original line. //kt 7/15/2007 var x, ErrMsg: string; TX_BAD_START : string; TX_BAD_STOP : string; TX_STOPSTART : string; begin SetupVars; //kt added 7/15/2007 to replace constants with vars. TX_BAD_START := DKLangConstW('fDateRange_The_start_date_is_not_valid'); //kt added 7/15/2007 TX_BAD_STOP := DKLangConstW('fDateRange_The_stop_date_is_not_valid'); //kt added 7/15/2007 TX_STOPSTART := DKLangConstW('fDateRange_The_stop_date_must_be_after_the_start_date'); //kt added 7/15/2007 inherited; ErrMsg := ''; txtStart.Validate(x); if Length(x) > 0 then ErrMsg := ErrMsg + TX_BAD_START + CRLF; with txtStop do begin Validate(x); if Length(x) > 0 then ErrMsg := ErrMsg + TX_BAD_STOP + CRLF; if (Length(Text) > 0) and (FMDateTime <= txtStart.FMDateTime) then ErrMsg := ErrMsg + TX_STOPSTART; end; if Length(ErrMsg) > 0 then begin InfoBox(ErrMsg, TC_INVALID_DATE, MB_OK); Exit; end; // if ((Length(txtStart.Text) > 0) and (ValidDateTimeStr(txtStart.Text, Flags) < 0)) // or ((Length(txtStop.Text) > 0) and (ValidDateTimeStr(txtStop.Text, Flags) < 0)) then // begin // InfoBox(TX_INVALID_DATE, TC_INVALID_DATE, MB_OK); // Exit; // end; OKPressed := True; Close; end; procedure TfrmDateRange.cmdCancelClick(Sender: TObject); begin inherited; Close; end; end.