다음의 예문을 보아 주십시오.
->
procedure Tinquform.SaveBtnClick(Sender: TObject);
begin
with Query1 do
begin
Close;
Clear;
SQL.Add(' insert into inqtable ');
SQL.Add('(No, client, redate, charge, modify, compledate, hopeDate, yesno, billing, recontent, complecontent, handle)');
SQL.Add(' values (:P_No) ');
SQL.Add(':P_ClientCombo, ');
SQL.Add(':P_redate, ');
SQL.Add(':P_Charge, ');
SQL.Add(':P_modify, ');
SQL.Add(':P_Compledate, ');
SQL.Add(':P_hopedate, ');
SQL.Add(':P_yesnocombo) ');
SQL.Add(':P_billingcombo, ');
SQL.Add(':P_Memo1, ');
SQL.Add(':P_Memo2, ');
SQL.Add(':P_HandleCombo, ');
ParamByName('P_No').AsString := trim(NoEdit.text);
ParamByName('P_clientCombo').AsString := ??
ParamByName('P_redate).AsString := trim(redateedit.text);
ParamByName('P_modify').AsString := ??
ParamByName('P_hopedate').AsString := trim(HopeDate.text);
ParamByName('P_yesnocombo').AsString := ??
ParamByName('P_billingcombo').AsString := ??
ParamByName('P_Memo1').Assign(Memo1.Lines);
ParamByName('P_Memo2').Assign(Memo2.Lines);
ParamByName('P_HandleCombo').AsString :=??
Execsql;
end;
위의 예문에서
// ParamByName('P_No').AsString := trim(NoEdit.text); -> edit 문입니다.
// ParamByName('P_Memo1').Assign(Memo1.Lines); -> 메모 형식입니다.
1) 그러면 combobox는 어떻게 파라미터 값을 정의해야 할 까요?
위에서 ?? 표시가 있는 부분이 다 콤보박스 입니다.
2) 그리고 Query 문이 맞게 정의 되어 있는지 모르겠군요?
고수님 들 께서 한번 점검해 주시면 감사하겠습니다. 꼭 알려 주세요
답답한 초보가 < ㅡ.ㅡ>
ps : 죄송합니다. 한 가지 더 질문 사항이 있군요
table에 저장할 때, edit 와 dbedit, 또는 combobox와 dbcombo를 같이 쓸수는
없나요? 한 폼에 그 두가지 형식을 같이 써서 한 번에 저장하는 방법은 없을까요?
>>>>>>>>>>>>>>>>>>
잘은 모르지만..... 저도 종종 저질러요...
1) 그러면 combobox는 어떻게 파라미터 값을 정의해야 할 까요?
> 위에서 ?? 표시가 있는 부분이 다 콤보박스 입니다.
>>> 해결책은 콤보박스명.text로 써주면 간단히 해결되구요
> 2) 그리고 Query 문이 맞게 정의 되어 있는지 모르겠군요?
> 고수님 들 께서 한번 점검해 주시면 감사하겠습니다. 꼭 알려 주세요
> 답답한 초보가 < ㅡ.ㅡ>
>>> > procedure Tinquform.SaveBtnClick(Sender: TObject);
> begin
> with Query1 do
> begin
> Close;
요부분 수정> SQL.Clear;
> SQL.Add(' insert into inqtable ');
> SQL.Add('(No, client, redate, charge, modify, compledate, hopeDate, yesno, billing, recontent, complecontent, handle)');
요부분 수정> SQL.Add(' values (:P_No,');
> SQL.Add(':P_ClientCombo, ');
> SQL.Add(':P_redate, ');
> SQL.Add(':P_Charge, ');
> SQL.Add(':P_modify, ');
> SQL.Add(':P_Compledate, ');
> SQL.Add(':P_hopedate, ');
요부분 수정> SQL.Add(':P_yesnocombo,');
> SQL.Add(':P_billingcombo, ');
> SQL.Add(':P_Memo1, ');
> SQL.Add(':P_Memo2, ');
요부분 수정> SQL.Add(':P_HandleCombo)');
> ParamByName('P_No').AsString := trim(NoEdit.text);
> ParamByName('P_clientCombo').AsString := ??
> ParamByName('P_redate).AsString := trim(redateedit.text);
> ParamByName('P_modify').AsString := ??
> ParamByName('P_hopedate').AsString := trim(HopeDate.text);
> ParamByName('P_yesnocombo').AsString := ??
> ParamByName('P_billingcombo').AsString := ??
> ParamByName('P_Memo1').Assign(Memo1.Lines);
> ParamByName('P_Memo2').Assign(Memo2.Lines);
> ParamByName('P_HandleCombo').AsString :=??
> Execsql;
> end;
> ps : 죄송합니다. 한 가지 더 질문 사항이 있군요
> table에 저장할 때, edit 와 dbedit, 또는 combobox와 dbcombo를 같이 쓸수는
> 없나요? 한 폼에 그 두가지 형식을 같이 써서 한 번에 저장하는 방법은 없을까요
>>> 우선 db관련 콤포넌트를 사용하시기 전에 아셔야 할 것은 "보여주기 위한 것"뿐이라는 사실입니다. 물론 저장도 되지만, 다시말해 실제 작업하고 있는 부분은 테이블이나 쿠어리콤포에서 작업하지 db콤포자체에서 작업하는 것이 아닙니다. 일반콤포와 차이가 있다면 각필드를 지정해서 사용한다는 것뿐이죠. (db콤포관련 소스를보면 db건드리는 부분이 있어요) 그래서 하나의 데이타셋(테이블,쿠어리등)에 일반 및 db콤포 다 사용은 가능하나 조금 노가다를 해야합니다. db콤포야 입력 수정하고 저장하면 기냥이지만, 일반콤포는 입력하면 매개변수에 값을 받아 업데이트로 처리를 해야하는 등 한마디로 짜징 귀찮죠. 될 수 있으면 디비콤포 또는 일반콤포로 통일해서 사용하면 조쿠요...
일반콤포에 대한 로직은 한델에 많이 있으니까 참조하시면 될 것 같네요...
도움이 되셨는지 모르겠습니다.,
> 다음의 예문을 보아 주십시오.
> ->
>
> procedure Tinquform.SaveBtnClick(Sender: TObject);
> begin
> with Query1 do
> begin
> Close;
> Clear;
> SQL.Add(' insert into inqtable ');
> SQL.Add('(No, client, redate, charge, modify, compledate, hopeDate, yesno, billing, recontent, complecontent, handle)');
> SQL.Add(' values (:P_No) ');
> SQL.Add(':P_ClientCombo, ');
> SQL.Add(':P_redate, ');
> SQL.Add(':P_Charge, ');
> SQL.Add(':P_modify, ');
> SQL.Add(':P_Compledate, ');
> SQL.Add(':P_hopedate, ');
> SQL.Add(':P_yesnocombo) ');
> SQL.Add(':P_billingcombo, ');
> SQL.Add(':P_Memo1, ');
> SQL.Add(':P_Memo2, ');
> SQL.Add(':P_HandleCombo, ');
> ParamByName('P_No').AsString := trim(NoEdit.text);
> ParamByName('P_clientCombo').AsString := ??
> ParamByName('P_redate).AsString := trim(redateedit.text);
> ParamByName('P_modify').AsString := ??
> ParamByName('P_hopedate').AsString := trim(HopeDate.text);
> ParamByName('P_yesnocombo').AsString := ??
> ParamByName('P_billingcombo').AsString := ??
> ParamByName('P_Memo1').Assign(Memo1.Lines);
> ParamByName('P_Memo2').Assign(Memo2.Lines);
> ParamByName('P_HandleCombo').AsString :=??
> Execsql;
> end;
>
> 위의 예문에서
> // ParamByName('P_No').AsString := trim(NoEdit.text); -> edit 문입니다.
> // ParamByName('P_Memo1').Assign(Memo1.Lines); -> 메모 형식입니다.
>
> 1) 그러면 combobox는 어떻게 파라미터 값을 정의해야 할 까요?
> 위에서 ?? 표시가 있는 부분이 다 콤보박스 입니다.
> 2) 그리고 Query 문이 맞게 정의 되어 있는지 모르겠군요?
> 고수님 들 께서 한번 점검해 주시면 감사하겠습니다. 꼭 알려 주세요
> 답답한 초보가 < ㅡ.ㅡ>
> ps : 죄송합니다. 한 가지 더 질문 사항이 있군요
> table에 저장할 때, edit 와 dbedit, 또는 combobox와 dbcombo를 같이 쓸수는
> 없나요? 한 폼에 그 두가지 형식을 같이 써서 한 번에 저장하는 방법은 없을까요?
> >>>>>>>>>>>>>>>>>>
>
>
>