출력폼>
================================
품명 A값 B값 C값(A-B)
=================================
xxx 35 30 5
zzz 12 12 0 <--- 값이 0인것은 출력 안하기 (질의 요점)
.
.
=================================
세부내역>
값A, B는 Sql DB에서 불려 왔읍니다.
값C 는 Query1CalcFields 에서 계산 하면서 프린트중입니다.
이때 0의값의 자료는 출력 하지 않고 싶읍니다...
procedure TAccr210_frm.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
if Query2Sang_Cr.Value = 0 then
Query2.Next;
end;
위와 같이 DetailBand1BeforePrint 이벤트 발생시키니 하나의 레코드는 넘어가고..
다음레코드는 Zero인데 출력되고.. 또 다음 레코드 Zero는 넘어가고...
이렇게 반복이 되네요..
어떻게 하면 될까요??? 좋은방법 없나요?
좀 도와주세요...
처음부터 C(A-B)인자료는 안읽어오도록 할수는 없었는지 궁금하구여..
어떤 이유에든 읽어오고. 출력만 제외시키려고 한다면요..
procedure TAccr210_frm.DetailBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
PrintBand := (Query2Sang_Cr.Value != 0 );
end;
이렇게 기술해 주면 되겠네요..
PrintBand라는 인수는 Default는 True이거든요..
이게 False가 되면 해당하는 밴드는 출력이 안되게 되거든요..
다시 다음 레코드를 읽어서 출력하기전에 해당이벤트가 타게 되니까..
모든게 처리될거라 생각합니다.
초보 wrote:
> 출력폼>
>
> ================================
> 품명 A값 B값 C값(A-B)
> =================================
> xxx 35 30 5
> zzz 12 12 0 <--- 값이 0인것은 출력 안하기 (질의 요점)
> .
> .
> =================================
>
> 세부내역>
> 값A, B는 Sql DB에서 불려 왔읍니다.
> 값C 는 Query1CalcFields 에서 계산 하면서 프린트중입니다.
>
> 이때 0의값의 자료는 출력 하지 않고 싶읍니다...
>
> procedure TAccr210_frm.DetailBand1BeforePrint(Sender: TQRCustomBand;
> var PrintBand: Boolean);
> begin
> if Query2Sang_Cr.Value = 0 then
> Query2.Next;
> end;
>
> 위와 같이 DetailBand1BeforePrint 이벤트 발생시키니 하나의 레코드는 넘어가고..
> 다음레코드는 Zero인데 출력되고.. 또 다음 레코드 Zero는 넘어가고...
> 이렇게 반복이 되네요..
>
> 어떻게 하면 될까요??? 좋은방법 없나요?
> 좀 도와주세요...
>
>