아래 부분은 소스부분의 일부분을 카피해온것입니다.
아래 부분의 OPEN에서 에러가 나는데요..
General SQL Error 라 뜨면서 토큰이 올바르지 않다고 뜨네요...
안만 봐도 제 눈에는 안뜨이네요...
부탁드리겠습니다.
수고하세요.
With DM.Query1 Do
Begin
Sql.Clear;
Sql.Add('Select * from hw64usft.vat ');
Sql.Add('Where VTDATE between :F_DATE and :L_DATE');
If combobox1.ItemIndex <> 2 then
Sql.Add(' And VTTAG = :S_VTTAG ')
Else
Sql.Add('Order by :S_NUM ');
Parambyname('F_DATE').AsString := FormatDateTime('yymmdd', DateTimePicker1.date);
Parambyname('L_DATE').AsString := FormatDateTime('yymmdd', DateTimePicker2.date);
If Combobox1.ItemIndex = 0 then
ParamByname('S_VTTAG').AsString := '1'
Else
IF Combobox1.ItemIndex = 1 then
ParamByname('S_VTTAG').AsString := '2'
Else
Next;
If Combobox2.ItemIndex = 0 then
Parambyname('S_NUM').AsString := 'VTDATE'
Else
If Combobox2.ItemIndex = 1 then
ParamByname('S_NUM').AsString := 'VTSEQN'
Else
ParamByname('S_NUM').AsString := 'VTCUID';
Open;
End;
Sql.Add('Order by :S_NUM ');
여기서 ":S_NUM"이 틀렸네요...
그냥 S_NUM이지요...
글쿠 조건이 2개일 경우에는
case문 보다는 if문이 훨씬 낫죠...