5 prompt "Simplify fnGetSqlConditions by making use of between operator"
5 removals
33 lines
4 additions
31 lines
function fnGetSqlConditions(const ASqlColumnName: String;
function fnGetSqlConditions(const ASqlColumnName: String;
const ADatePicker: TDatePickerFrame;
const ADatePicker: TDatePickerFrame;
const ATimePickerFrom, ATimePickerTo: TTimePickerFrame): String;
const ATimePickerFrom, ATimePickerTo: TTimePickerFrame): String;
begin
begin
Result := '';
Result := '';
if (ADatePicker.DateFrom <> 0) then begin
Result := Result + Format(' and %s >= %s', [ASqlColumnName, QuotedStr(fnDateToSqlStr(ADatePicker.DateFrom + IfThen(ATimePickerFrom.fnIsEmpty(), 0, ATimePickerFrom.Value)))])
end;
if (ADatePicker.DateTo <> 0) then begin
if (ADatePicker.DateTo <> 0) then begin
Result := Result + Format(' and %s <= %s', [ASqlColumnName, QuotedStr(fnDateToSqlStr(ADatePicker.DateTo + IfThen(ATimePickerTo.fnIsEmpty(), 0, ATimePickerTo.Value)))])
Result := Result + Format(' and %s between %s and %s', [ASqlColumnName,
QuotedStr(fnDateToSqlStr(ADatePicker.DateTo + IfThen(ATimePickerFrom.fnIsEmpty(), 0, ATimePickerFrom.Value))),
QuotedStr(fnDateToSqlStr(ADatePicker.DateTo + IfThen(ATimePickerTo.fnIsEmpty(), 0, ATimePickerTo.Value)))])
end;
end;
end;
end;
procedure TfmWebLogForm.prOpenSQL;
procedure TfmWebLogForm.prOpenSQL;
const
const
C_SQL = 'select hdl_d11, hdl_d02_d11, hdl_007_d11, hdl_d11_d11, event_d11, '
C_SQL = 'select hdl_d11, hdl_d02_d11, hdl_007_d11, hdl_d11_d11, event_d11, '
+ ' time_d11, '
+ ' time_d11, '
+ ' remote_ip_d11, user_d11, session_id_d11, url_d11, content_type_d11, content_d11'
+ ' remote_ip_d11, user_d11, session_id_d11, url_d11, content_type_d11, content_d11'
+ ' from tweb_srv_log_d11 d11 where'
+ ' from tweb_srv_log_d11 d11 where'
+ ' d11.hdl_d11_d11 is null';
+ ' d11.hdl_d11_d11 is null';
begin
begin
frmSQLGridFrame1.SQLText := C_SQL;
frmSQLGridFrame1.SQLText := C_SQL;
if (HdlD02 <> 0) then
if (HdlD02 <> 0) then
frmSQLGridFrame1.SQLText := frmSQLGridFrame1.SQLText + Format(' and HDL_D02_D11 = %d', [HdlD02]);
frmSQLGridFrame1.SQLText := frmSQLGridFrame1.SQLText + Format(' and HDL_D02_D11 = %d', [HdlD02]);
frmSQLGridFrame1.SQLText := frmSQLGridFrame1.SQLText
frmSQLGridFrame1.SQLText := frmSQLGridFrame1.SQLText
+ fnGetSqlConditions('DATA_INS_D11', dpCreated, edtTimeCreatedFrom, edtTimeCreatedTo)
+ fnGetSqlConditions('DATA_INS_D11', dpCreated, edtTimeCreatedFrom, edtTimeCreatedTo)
+ fnGetSqlConditions('TIME_D11', dpExecuted, edtTimeExecutedFrom, edtTimeExecutedTo)
+ fnGetSqlConditions('TIME_D11', dpExecuted, edtTimeExecutedFrom, edtTimeExecutedTo)
+ ' order by DATA_INS_D11 desc';
+ ' order by DATA_INS_D11 desc';
frmSQLGridFrame1.prOpenQuery;
frmSQLGridFrame1.prOpenQuery;
frmSQLGridFrame1.OnRowRefresh := prRowInfo;
frmSQLGridFrame1.OnRowRefresh := prRowInfo;
frmSQLGridFrame1.VisibleColumnsList.Values['DATA_INS_D11'] := 'Created';
frmSQLGridFrame1.VisibleColumnsList.Values['DATA_INS_D11'] := 'Created';
end;
end;