쿼리를 퀵리포트에서,
쿼리의 SELECT 문은 :
QUERY1.SQL.ADD(' SELECT NAME1, NAME2 FROM ADDR '); 로 해서 이름을 끌어오게 함.
그리고,
QUICKREP에서
QRDBTEXT 하나만을 배치해서
NAME1이 <>''이면 NAME1을
NAME1이 =''이면 NAME2를 선택하게 하려고, 아래와 같이 코딩을 하였는데,
안되는 군요...
그럼, 어떻게 해야지요? 답변 부탁드립니다.
VAR
I:INTEGER;
begin
FOR I:=0 TO FORM1.QUERY1.RECORDCOUNT-1 DO BEGIN
FORM1.QUERY1.FIRST;
IF FORM1.QUERY1.FIELDBYNAME('NAME1').ASSTRING<>'' THEN
FORM2.QRDBTEXT1.DATAFIELD:='NAME1'
ELSE IF FORM1.QUERY1.FIELDBYNAME('NAME1').ASSTRING='' THEN
FORM2.QRDBTEXT1.DATAFIELD:='NAME2';
NEXT;
END; //FOR ..
end;
query1.First 문을 루프 바깥(위)으로 끌어내세요.
헬프미 wrote:
> 쿼리를 퀵리포트에서,
> 쿼리의 SELECT 문은 :
>
> QUERY1.SQL.ADD(' SELECT NAME1, NAME2 FROM ADDR '); 로 해서 이름을 끌어오게 함.
>
> 그리고,
> QUICKREP에서
> QRDBTEXT 하나만을 배치해서
> NAME1이 <>''이면 NAME1을
> NAME1이 =''이면 NAME2를 선택하게 하려고, 아래와 같이 코딩을 하였는데,
> 안되는 군요...
> 그럼, 어떻게 해야지요? 답변 부탁드립니다.
>
>
> VAR
> I:INTEGER;
> begin
> FOR I:=0 TO FORM1.QUERY1.RECORDCOUNT-1 DO BEGIN
> FORM1.QUERY1.FIRST;
> IF FORM1.QUERY1.FIELDBYNAME('NAME1').ASSTRING<>'' THEN
> FORM2.QRDBTEXT1.DATAFIELD:='NAME1'
> ELSE IF FORM1.QUERY1.FIELDBYNAME('NAME1').ASSTRING='' THEN
> FORM2.QRDBTEXT1.DATAFIELD:='NAME2';
> NEXT;
>
> END; //FOR ..
> end;
>
>