안녕하세요?? 흑흑...
like를 사용해서 만든 프로그램이 있습니다...
그런데... 프로그램이 그냥 죽어버리더군요...
그래서 필터를 사용헤서 사용할려구 하는데.. 저의 머리로는 이해가 잘 되질 않더군요...
그래서 고수님들의 조언을 부탁하고자 이렇게 글을 또 올립니다...
이번에 좀 필터에 대해 확실히 알고자 하는 마음에...
쿼리문과 소스문을 모두 올리겠습니다....
QA 의 쿼리 문입니다.....
SELECT name, jumin_no, Dept_name
(floor(overtime/60)||'시'|| mod(overtime, 60)||'분') overtime
FROM vwMasterList M, tbAccounts A
WHERE (M.card_no = A.card_no) and
(grade_cd not like 'D%') And
(dept_cd like '64311420%') and
(fromdate = :FD And todate = :TD)
ORDER BY name, jumin_no
///// 글구 하나가 더 있거든요... 똑같은 것인데...
하나는 Minus를 이용해야 합니다.. 소스문은 같구요...
SELECT name, jumin_no, M.Dept_name,
(floor(overtime/60)||'시'|| mod(overtime, 60)||'분') overtime
FROM vwMasterList M, tbTimebook A
WHERE (M.card_no = A.card_no)
minus
SELECT name, jumin_no, m.Dept_name,
(floor(overtime/60)||'시'|| mod(overtime, 60)||'분') overtime
FROM vwMasterList M, tbTimebook A
WHERE (M.card_no = A.card_no) And
(grade_cd NOT Like 'D%') and
((dept_cd like '64311410%') or
(dept_cd like '64311420%') or
(dept_cd like '64311239%'))
ORDER BY name, jumin_no
쿼리를 이용해 DBGrid에 뿌려주기 위해 만는 소스문..
procedure TForm10.SpeedButton1Click(Sender: TObject);
begin
If StrToDateTime(DateToStr(DP1.date)) > StrToDateTime(DateToStr(DP2.date)) then
begin
messagedlg('시작일자가 종료일자 다음입니다' + #13 +
'시작.종료 일자을 확인 하신 후 다시 입력하십시요.',
mtInformation, [mbOk], 0);
end
else
begin
QAcc.Close;
QAcc.ParamByName('FD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP1.Date));
QAcc.ParamByName('TD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP2.Date));
QAcc.Open;
Edit5.Text := IntToStr(QAcc.FieldByName('persons').AsInteger);
Edit6.Text := IntToStr(QAcc.FieldByName('otpays').AsInteger);
{ QAc.Close;
QAc.ParamByName('dept_cd').AsString := QDept.FieldByName('dept_cd').AsString;
QAc.ParamByName('FD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP1.Date));
QAc.ParamByName('TD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP2.Date));
QAc.Open;
Edit6.Text := IntToStr(QAc.FieldByName('otpays').AsInteger);}
If QAcc.BOF And QAcc.EOF Then
begin
MessageDlg('월말집계 자료가 존재하지 않습니다.',
mtInformation, [mbOk], 0);
dp1.SetFocus;
exit;
QA.Active := False;
end
else
begin
QA.Close;
QA.ParamByName('FD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP1.Date));
QA.ParamByName('TD').AsDateTime := StrToDateTime(FormatDateTime('yyyy-mm-dd', DP2.Date));
QA.Open;
end;
end;
end;
고수님들의 빠른 조언이 절실합니다...
시간은 없구.. 흑흑흑....
제발 이 문장을 가지고 필터로 사용할수 있게좀 해주세요.....
그럼 부탁드리겠습니다...
제발요...
항상 건강하시고...