Q&A

  • Like를 Filter로 바꿔서 사용할려구 하는데 좀 도와 주세요...
안녕하세요?? 흑흑...

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;





고수님들의 빠른 조언이 절실합니다...

시간은 없구.. 흑흑흑....

제발 이 문장을 가지고 필터로 사용할수 있게좀 해주세요.....

그럼 부탁드리겠습니다...

제발요...

항상 건강하시고...



0  COMMENTS