⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 u_fyfr.pas

📁 报纸接运程序,对报纸分捆,打印,查询等,适用于各种报社
💻 PAS
字号:
unit U_fyFR;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, QuickRpt, QRCtrls;

type
  TF_fyFR = class(TForm)
    GroupBox1: TGroupBox;
    CheckB1: TCheckBox;
    CB_jm: TComboBox;
    DTP1: TDateTimePicker;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    LV1: TListView;
    CheckB2: TCheckBox;
    QuickRep1: TQuickRep;
    QRBand1: TQRBand;
    QRBand2: TQRBand;
    QRShape13: TQRShape;
    QRShape14: TQRShape;
    QRLabel5: TQRLabel;
    jm1: TQRLabel;
    QRLabel8: TQRLabel;
    QRShape15: TQRShape;
    QRLabel9: TQRLabel;
    QRShape16: TQRShape;
    rq1: TQRLabel;
    QRShape17: TQRShape;
    QRLabel13: TQRLabel;
    bm1: TQRLabel;
    QRShape18: TQRShape;
    QRLabel15: TQRLabel;
    zfs1: TQRLabel;
    QRShape19: TQRShape;
    zks1: TQRLabel;
    QRShape20: TQRShape;
    QRLabel18: TQRLabel;
    ws1: TQRLabel;
    QRShape21: TQRShape;
    QRLabel20: TQRLabel;
    zhks1: TQRLabel;
    QRShape22: TQRShape;
    QRShape78: TQRShape;
    QRShape79: TQRShape;
    QRShape80: TQRShape;
    QRLabel24: TQRLabel;
    QRLabel26: TQRLabel;
    jm2: TQRLabel;
    QRShape81: TQRShape;
    QRLabel30: TQRLabel;
    rq2: TQRLabel;
    QRShape82: TQRShape;
    QRShape83: TQRShape;
    QRLabel33: TQRLabel;
    bm2: TQRLabel;
    QRShape84: TQRShape;
    QRLabel38: TQRLabel;
    zfs2: TQRLabel;
    QRShape85: TQRShape;
    zks2: TQRLabel;
    QRShape86: TQRShape;
    QRLabel44: TQRLabel;
    ws2: TQRLabel;
    QRShape87: TQRShape;
    QRLabel49: TQRLabel;
    zhks2: TQRLabel;
    QRShape88: TQRShape;
    QRShape89: TQRShape;
    QRLabel43: TQRLabel;
    procedure BitBtn2Click(Sender: TObject);
    procedure CheckB1Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure QuickRep1NeedData(Sender: TObject; var MoreData: Boolean);
    procedure QuickRep1BeforePrint(Sender: TCustomQuickRep;
      var PrintReport: Boolean);
  private
    { Private declarations }
    currentitem:integer;
  public
    { Public declarations }
  end;

var
  F_fyFR: TF_fyFR;

implementation
uses dbobj;
{$R *.dfm}

procedure TF_fyFR.BitBtn2Click(Sender: TObject);
begin
close;
end;

procedure TF_fyFR.CheckB1Click(Sender: TObject);
begin
        CB_jm.Clear;
        if checkB1.Checked then
        begin
        with DataModule1.ADODataSet1 do
        begin
                try
                        Active:=false;
                        CommandText:='select jm,jh from xqzlb order by jh';
                        open;
                        while not eof do
                        begin
                                CB_jm.Items.Add(fieldbyname('jm').AsString+'                   |'+fieldbyname('jh').AsString);
                                next;
                        end;
                        close;
                        Active:=false;
                except
                        Close;
                        application.MessageBox('初始化支局所号错','数据库错误',mb_ok);
                        exit;
                end;
        end;
         ActiveControl:=CB_jm;
        end
         else
         begin
                CB_jm.Clear;
                CheckB1.Checked:=false;
         end;
end;

procedure TF_fyFR.BitBtn1Click(Sender: TObject);
var QueryStr:string;
    WhereString:String;
    Item:TListItem;
begin
        QueryStr:='select a.jh,a.jm,a.bm,a.zfs,b.zks,b.ws,b.zhks,a.jfrq from jfzl a,fybq b  where a.jh=b.jh and a.jfrq=b.bqrq  and a.bm=b.bm ';// and a.jfrq='''+Datetostr(DTP1.Date)+''' order by a.bm,a.jh';
        wherestring:='';
        if ( CheckB1.Checked )and(CB_jm.Text <>'' )then
        begin
                wherestring:=wherestring+' and a.jm='''+copy(CB_jm.Text,1,6)+''''; //b.spbh='''+trimright(trimleft(getsubstr(ComboBox2.Text, '|',2)))+'''';
                CheckB1.Checked:=false;
        end;
        if (checkB2.Checked) then
        begin
                wherestring:=wherestring+' and a.jfrq='''+Datetostr(DTP1.Date)+'''';
                checkB2.Checked:=false;
               //DTP1.Date:=now;
                DTP1.Date:=now+1;
        end;
        if (wherestring='') then
        begin
                ShowMessage ('你没有选定条件!');
        end
        else
        begin
                //wherestring:=wherestring+' and a.jfrq='''+Datetostr(DTP1.Date)+'''';
                QueryStr:=QueryStr+wherestring+' order by a.jh ' ;// 按局号顺序打印
                //QueryStr:=QueryStr+wherestring+' order by a.bm ,a.jh' ;  //按版名,再按局号顺序打印
                with DataModule1.ADODataSet1 do
                begin
                CommandText:=QueryStr;
                try
                        Active:=false;
                        open;
                        LV1.Items.Clear;
                        if  RecordCount>0 then
                        begin
                        while not eof do
                        begin
                                Item:=LV1.Items.Add;
                                Item.Caption:=FieldByName('jh').AsString;
                                Item.SubItems.Add(FieldByName('jm').AsString);
                                Item.SubItems.Add(FieldByName('bm').AsString);
                                //Item.SubItems.Add(FieldByName('bs').AsString);
                                Item.SubItems.Add(FieldByName('zfs').AsString);
                                Item.SubItems.Add(FieldByName('zks').AsString);
                                Item.SubItems.Add(FieldByName('ws').AsString);
                                Item.SubItems.Add(FieldByName('zhks').AsString);
                                Item.SubItems.Add(FieldByName('jfrq').AsString);
                                next;
                        end;
                        close;
                        end
                        else
                        begin
                                ShowMessage ('查无记录!');
                                close;
                        end;

                except
                        close;
                end;
                end;
        end;

end;

procedure TF_fyFR.FormCreate(Sender: TObject);
begin
        CB_jm.Clear;
        //DTP1.Date:=now;
        DTP1.Date:=now+1;
end;

procedure TF_fyFR.BitBtn3Click(Sender: TObject);  //打印按扭

begin
       { if LV1.items.count=0 then
        begin
                showmessage('没有可打印的资料');
                exit;
        end;}
        QuickRep1.Preview;
        //QuickRep1.Print;
end;

procedure TF_fyFR.QuickRep1NeedData(Sender: TObject;
  var MoreData: Boolean);

begin

         MoreData:=true ;
        
         if (currentitem>(LV1.Items.Count)) then
                 MoreData:=false
         else
         begin
                if ((currentitem mod 2)<>0) then

               begin
                jm1.Caption:=LV1.Items.Item[currentitem-1].SubItems[0];
                rq1.Caption:=LV1.Items.Item[currentitem-1].SubItems[6];
                bm1.Caption:=LV1.Items.Item[currentitem-1].SubItems[1];
                zfs1.Caption:=LV1.Items.Item[currentitem-1].SubItems[2];
                zks1.Caption:=LV1.Items.Item[currentitem-1].SubItems[3];
                ws1.Caption:=LV1.Items.Item[currentitem-1].SubItems[4];
                zhks1.Caption:=LV1.Items.Item[currentitem-1].SubItems[5];
                 if ((currentitem+1)<=(LV1.Items.Count)) then
                 begin

                        QRShape79.Enabled:=true;
                        QRShape80.Enabled:=true;
                        QRShape81.Enabled:=true;
                        QRShape82.Enabled:=true;
                        QRShape83.Enabled:=true;
                        QRShape84.Enabled:=true;
                        QRShape85.Enabled:=true;
                        QRShape86.Enabled:=true;
                        QRShape87.Enabled:=true;
                        QRShape88.Enabled:=true;
                        QRShape89.Enabled:=true;
                        QRLabel24.Enabled:=true;
                        QRLabel26.Enabled:=true;
                        QRLabel30.Enabled:=true;
                        QRLabel33.Enabled:=true;
                        QRLabel38.Enabled:=true;
                        QRLabel43.Enabled:=true;
                        QRLabel44.Enabled:=true;
                        QRLabel49.Enabled:=true;
                        jm2.Caption:=LV1.Items.Item[currentitem].SubItems[0];
                        rq2.Caption:=LV1.Items.Item[currentitem].SubItems[6];
                        bm2.Caption:=LV1.Items.Item[currentitem].SubItems[1];
                        zfs2.Caption:=LV1.Items.Item[currentitem].SubItems[2];
                        zks2.Caption:=LV1.Items.Item[currentitem].SubItems[3];
                        ws2.Caption:=LV1.Items.Item[currentitem].SubItems[4];
                        zhks2.Caption:=LV1.Items.Item[currentitem].SubItems[5];
                 end
                 else
                        begin

                        jm2.Caption:='';
                        rq2.Caption:='';
                        bm2.Caption:='';
                        zfs2.Caption:='';
                        zks2.Caption:='';
                        ws2.Caption:='';
                        zhks2.Caption:='';
                        QRShape79.Enabled:=false;
                        QRShape80.Enabled:=false;
                        QRShape81.Enabled:=false;
                        QRShape82.Enabled:=false;
                        QRShape83.Enabled:=false;
                        QRShape84.Enabled:=false;
                        QRShape85.Enabled:=false;
                        QRShape86.Enabled:=false;
                        QRShape87.Enabled:=false;
                        QRShape88.Enabled:=false;
                        QRShape89.Enabled:=false;
                        QRLabel24.Enabled:=false;
                        QRLabel26.Enabled:=false;
                        QRLabel30.Enabled:=false;
                        QRLabel33.Enabled:=false;
                        QRLabel38.Enabled:=false;
                        QRLabel43.Enabled:=false;
                        QRLabel44.Enabled:=false;
                        QRLabel49.Enabled:=false;
                        end;
                //currentitem:=currentitem+2;
               end;
               currentitem:=currentitem+2;
             end;


end;

procedure TF_fyFR.QuickRep1BeforePrint(Sender: TCustomQuickRep;
  var PrintReport: Boolean);
begin
        currentitem:=1;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -