>박성훈님 감사드립다.
주신답변을 다시수정했습니다
그런데
key violation 에라메세지가 뜨더러고요
table1과 table2 에서 없는 레코드를 추가해야하는데
> while 문이 없이는 되거든요
> 그런데 while 안에서는 안되고있어요
>
> Table1.Active := true;
> Table1.First ;
>
> while (not Table1.Eof) do
> begin
>
> j:= Table1.fieldvalues['회원코드'] ;
> label9.caption:=j;
>
>
> if (not Table2.Locate('회원코드',j,[])) then
> begin
>
> Table2.Append ;
> Table2.fieldvalues['회원코드'] := Table1.Fieldvalues['회원코드'];
> Table2.fieldvalues['성명'] := Table1.fieldvalues['회원명'];
> Table2.fieldvalues['소속'] := Table1.fieldvalues['소속'];
>
> Table2.post;
> end ;
>
> Table1.next ;
>
> end;
>
집어넣으셔야 될 것 같은데요.
아래의 소스에서 Table2.Locate 대신 Table2.FindKey([j])를 사용하시면 확실하게
Key 체크가 될 것 되걸 같군요.
with Table2 do
begin
if not FindKey([j]) then
//추가코드
else
ShowMessage('회원코드가 중복되었습니다!');
end;
본희 wrote:
>
> >박성훈님 감사드립다.
> 주신답변을 다시수정했습니다
> 그런데
> key violation 에라메세지가 뜨더러고요
>
> table1과 table2 에서 없는 레코드를 추가해야하는데
> > while 문이 없이는 되거든요
> > 그런데 while 안에서는 안되고있어요
> >
> > Table1.Active := true;
> > Table1.First ;
> >
> > while (not Table1.Eof) do
> > begin
> >
> > j:= Table1.fieldvalues['회원코드'] ;
> > label9.caption:=j;
> >
> >
> > if (not Table2.Locate('회원코드',j,[])) then
> > begin
> >
> > Table2.Append ;
> > Table2.fieldvalues['회원코드'] := Table1.Fieldvalues['회원코드'];
> > Table2.fieldvalues['성명'] := Table1.fieldvalues['회원명'];
> > Table2.fieldvalues['소속'] := Table1.fieldvalues['소속'];
> >
> > Table2.post;
>
>
> > end ;
> >
> > Table1.next ;
> >
> > end;
> >
>