질문의 내용은 해결되었습니다.
(하지만 아직 표현해야할 많은 조건들이 있슴다...조건에 맞는 목록을 Loop 시켜 원하는 순서에 맞게 모두 끌어와야 합니다.....흥국의 으~아~)
스트링그리드의 목록 필드에 STXT 란
변수를 중간에 개입시켜
x.cells[y,y]:=STXT;
형식으로 대입해보면 절대 나오질 않습니다..(100% 불가능하다고 말할 순 없어요.)
하지만 STXT에 문자는 분명 살아있는걸
ShowMessage(STXT); 로 확인 여러차례 했슴다.
표현하는 코딩의 위치도 그위치에서 말입니다...
그래서 직접쓴는 방법을 사용했습니다.
만약 같은 문제로 고민중이시라면 일단 이와같은 방법으로 해결하시고
더 좋은 방법을 차차 찾으시길 바랍니다.
물론 좋은 방법이 있으면 리플 달아 주세요...
<!--CodeS-->
with Jutable_Jumun_qua do begin
Close;
try
SQL.Clear;
SQL.Add('select * from Jumun ');
SQL.Add(' where Jumun_date=:DATE ');
ParamByName('DATE').AsString:=
Form1.Se_edit_a6.Text + Form1.Se_com_b6.Text + Form1.Se_com_c6.Text;
Open;
//===>>기존내용을 clear
With Jutable_sgrid do begin
for i:=1 to Jutable_sgrid.RowCount-1 do //줄방향삭제
Jutable_sgrid.Rows[i].Clear;
Jutable_sgrid.RowCount:=2;//행수를 조절
end;
//===<<
//==>>title
Jutable_sgrid.Cells[0,0]:='번호';
Jutable_sgrid.Cells[1,0]:='상호';
Jutable_sgrid.Cells[2,0]:='목록';
Jutable_sgrid.Cells[3,0]:='비고';
//==<<title
Except
end;
end;
with Jutable_Addr_qua do begin
Close;
try
SQL.Clear;
SQL.Add('select C_Num, C_Name from C_Addr_01');
open;
Except
end;
if RecordCount>0 then begin
Jutable_sgrid.RowCount:=RecordCount+1;//필드명 표시하기위한 한줄의 여유//0 부터 나타나므로
first;
i:=1;//필드명 표시하기위해 0이 아인 1로 초기화
while NOT EOF do begin
if i=1 then begin
ShowMessage('1____'+STXT);
end;
//for i:=1 to j do begin //for 문에서 while 문으로 수정
Jutable_sgrid.Cells[0,i]:=inttostr(i);
Jutable_sgrid.Cells[1,i]:=FieldByName('C_Name').AsString;
//====>>
with Jutable_byname_qua do begin
close;
try
SQL.Clear;
SQL.Add('select * from Jumun ');
{SQL.Add('where Jumun_date=:DATE ');
SQL.Add('and Jumun_custcode=:CODE');
ParamByName('DATE').AsString:=
Form1.Se_edit_a6.Text + Form1.Se_com_b6.Text + Form1.Se_com_c6.Text;
ParamByName('CODE').AsString:=
Form1.Se_la_f6.Caption; }//두번실행하면 오류가 나서
open;
Except
end;
Jutable_sgrid.Cells[2,i]:=
FieldByName('Jumun_goodsname').AsString +' '+
FieldByName('Jumun_numbox').AsString +'_B'+' '+
FieldByName('Jumun_numeach').AsString +'_개';
end;
//=====<<
Jutable_sgrid.Cells[3,i]:='비고';
Jutable_sgrid.Row:=i;
INC(i);
Next;
end;
end
//====>>>>스트링그리드 내용지우기 쿼리의 결과물이 없을때만
else if RecordCount<=0 then begin
for i:=1 to Jutable_sgrid.RowCount-1 do //줄방향삭제
Jutable_sgrid.Rows[i].Clear;
Jutable_sgrid.RowCount:=2;//행수를 조절
end;
end;
'sgridtxt;는 입력 되고 sgridtxt는 입력이 안된다면... 의심스러운 부분은 딱 한군데네요...
with문 때문에 다른곳의 sgridtxt를 참조하는것 같습니다.
Jutable_Addr_qua란곳에 sgridtxt가 있나 확인해보시구요. string형인가도 확인해보세요...
^^ 항상 즐코하세요...