Q&A

  • 다른 table에서 값을 참조하여 입력할때(PK-FK)
안녕하십니까? 저번에 힘들게 다른 table에서 값을 참조하여 입력할때

Query1을 더블클릭하여 하나의 조그만 창이 뜨는데 거기대서 오른쪽 마우스를 누르면

Add Field, New Field, Add all fields가 나타나고, 거기서 Add all fields를 누르면 쿼리의 테이블 모든 값이 나타납니다. 그리고 Add New Filed를 눌러서 lookup을 선택해서

KeyField, Lookupdataset, LookupKeyField, LookupResultField에 적당한 값을 정해주면 다른 테이블(Query2)의 특정 field값을 콤보창형식으로 보여줘 현 테이블(Query1)에 입력 가능 하게 하는 방법을 알아냈습니다.



그런데 문제는 아래와 같이 두개의 컬럼을 이용해 한 컬럼의 종류별로 lookup을 보여주려 합니다. 그런데 그렇게 하면 lookup창에서 입력한 것이 보이지가 않습니다. 아예 lookup field의 내용은 보이지가 않습니다. 이런식으로 하지 않고 그냥 왼쪽의 Object Inspector창의 SQL칸에 쓴 걸 이용하면 잘 보이거든요. 이런 팁은 자주 쓰는 것 일것 같은데..



어떻게 하면 좋을 까요?

고수님들 꼭 좀 도와 주십시오.



procedure TForm1.DBEdit1Change(Sender: TObject);

begin //종류별로 Library table에서 참조해서 Item창에 보여주는 것.

with Query2 do

begin

Close;

SQL.Clear;

SQL.Add('select ItemName from Library where ItemType = :s1');

ParamByName('s1').AsString := DBEdit1.text;

Open ;

end;

end;

0  COMMENTS