我現在做一張報表,
第一列是‘組別’,第二列是‘訂單號’,第三列是‘是產量’
其中‘組別’只有‘A組’和‘B組’,而A,B組中有若干張‘訂單號’
請問,我如何打印出:在多張‘訂單號’下,只打印一次‘組別’
具體描述為:
 組別 訂單號 日產量
-------------
    0812A    800
        0809C  750
   A線 0811  660
        0814a  680
        0810a  700        0811b  300
   B線 0812  500
        0813a  400這三項可合成在一個表中,也可的‘組別’作主表,‘訂單號,日產量’作明細
。我的要求是如下A線生產的5張單,在打印時只印出一次‘A線’。
請高手指教,在下感激不盡。

解决方案 »

  1.   

    band beforeprint 判別
    if 條件 then  qrlabel.caption:='A線’
    else qrlabel.caption=''
      

  2.   

    设定一个全局变量;在第一个qrlabel的caption为‘A组’后给它赋一个你指定的值,下面再想给qrlabel的caption赋值‘A组’是判断改变量的值是否已经被改别,ok。
      

  3.   

    全部放在一个表里,然后在一个DetailBand上放3个TQRDBEdit,分别对应‘組別’、’訂單號‘和’日產量’。定义一个私有变量:
    private
        PriorText: String;最后在‘組別’TQRDBEdit的OnPrint事件中写:
    procedure TForm1.QRDBText1Print(sender: TObject; var Value: String);
    begin
      if PriorText <> Value then
        PriorText := Value
      else Value := '';
    end;————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  4.   

    使用上述方法前,DataSet应该按照‘组别’排序,这个想来不用多说了。————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  5.   

    使用上述方法前,DataSet应该按照‘组别’排序,这个想来不用多说了。————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————