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

📄 labelprn.pas

📁 某大型医院护士站
💻 PAS
字号:
unit LabelPrn;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, quickrpt, Qrctrls, Db, DBTables, Wwquery;

type
  TfrmLabelPrn = class(TForm)
    QuickRep1: TQuickRep;
    PageHeaderBand1: TQRBand;
    QRGroup1: TQRGroup;
    ChildBand1: TQRChildBand;
    DetailBand1: TQRBand;
    QRLabel1: TQRLabel;
    CurWard: TQRLabel;
    QRDBText1: TQRDBText;
    QRDBText2: TQRDBText;
    QRDBText3: TQRDBText;
    QRDBText4: TQRDBText;
    QRLabel2: TQRLabel;
    QRSysData1: TQRSysData;
    QRLabel3: TQRLabel;
    QRLabel4: TQRLabel;
    QRLabel5: TQRLabel;
    QRLabel6: TQRLabel;
    QRLabel7: TQRLabel;
    QRLabel8: TQRLabel;
    QRLabel9: TQRLabel;
    QRLabel10: TQRLabel;
    QRLabel11: TQRLabel;
    QRShape1: TQRShape;
    QRShape2: TQRShape;
    QRShape3: TQRShape;
    QRShape4: TQRShape;
    QRShape5: TQRShape;
    QRShape6: TQRShape;
    QRDBText5: TQRDBText;
    QRDBText7: TQRDBText;
    QRDBText8: TQRDBText;
    QRBand1: TQRBand;
    PageFooterBand1: TQRBand;
    QRLabel12: TQRLabel;
    QRSysData3: TQRSysData;
    QRSysData2: TQRSysData;
    lblTypeName: TQRLabel;
    qryInjLabel: TwwQuery;
    qryInjLabelBED: TStringField;
    qryInjLabelPNM: TStringField;
    qryInjLabelUSAGEID: TStringField;
    qryInjLabelUSAGENAME: TStringField;
    qryInjLabelORDERKIND: TSmallintField;
    qryInjLabelKINDID: TSmallintField;
    qryInjLabelITEMNAME: TStringField;
    qryInjLabelDOSAGE: TFloatField;
    qryInjLabelDOSUNIT: TStringField;
    qryInjLabelTMNAME: TStringField;
    qryInjLabelREPNB: TIntegerField;
    qryInjLabelCOUNTS: TIntegerField;
    dosage: TQRDBText;
    labelb: TQRLabel;
    procedure QRDBText4Print(sender: TObject; var Value: String);
    procedure QRGroup1BeforePrint(Sender: TQRCustomBand;
      var PrintBand: Boolean);
    procedure ChildBand1BeforePrint(Sender: TQRCustomBand;
      var PrintBand: Boolean);
    procedure DetailBand1BeforePrint(Sender: TQRCustomBand;
      var PrintBand: Boolean);
    procedure QRBand1BeforePrint(Sender: TQRCustomBand;
      var PrintBand: Boolean);
    procedure QRGroup1AfterPrint(Sender: TQRCustomBand;
      BandPrinted: Boolean);
    procedure ChildBand1AfterPrint(Sender: TQRCustomBand;
      BandPrinted: Boolean);
    procedure DetailBand1AfterPrint(Sender: TQRCustomBand;
      BandPrinted: Boolean);
    procedure QRBand1AfterPrint(Sender: TQRCustomBand;
      BandPrinted: Boolean);
    procedure QRYINJLABELDOSAGEGetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    procedure QuickRep1StartPage(Sender: TCustomQuickRep);
  private
    { Private declarations }
  public
    { Public declarations }
    RowCount: Integer;
    PageRows: Integer;
  end;

var
  frmLabelPrn: TfrmLabelPrn;

implementation

{$R *.DFM}
uses Datamodule, PRNDataModule;

procedure TfrmLabelPrn.QRDBText4Print(sender: TObject; var Value: String);
begin
if qryInjLabelorderkind.AsInteger = 1 then
   value := 'T'+value;
end;

procedure TfrmLabelPrn.QRGroup1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  if (qryInjLabelcounts.AsInteger > PageRows - RowCount-3) then begin
     QuickRep1.NewColumn;
     RowCount:=0;
  end;
end;

procedure TfrmLabelPrn.ChildBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
   RowCount := RowCount + 1;
end;

procedure TfrmLabelPrn.DetailBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
   RowCount := RowCount + 1;
end;

procedure TfrmLabelPrn.QRBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
  if PageRows - RowCount < 2 then begin
     frmLabelPrn.QRBand1.Enabled := False;
     QuickRep1.NewColumn;
     RowCount := 0;
     
  end;

end;

procedure TfrmLabelPrn.QRGroup1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
   RowCount := RowCount + 1;
end;

procedure TfrmLabelPrn.ChildBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
   RowCount := RowCount + 1;
   if not frmLabelPrn.QRBand1.Enabled then
     frmLabelPrn.QRBand1.Enabled := True;
end;

procedure TfrmLabelPrn.DetailBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
   RowCount := RowCount + 1;
end;

procedure TfrmLabelPrn.QRBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
   RowCount := RowCount + 2;
end;

procedure TfrmLabelPrn.QRYINJLABELDOSAGEGetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  if qryinjlabelDosage.Value <> qryinjlabelDosage.AsInteger then
     qryinjlabelDosage.DisplayFormat := '#0.000';
end;

procedure TfrmLabelPrn.QuickRep1StartPage(Sender: TCustomQuickRep);
begin
  RowCount := 0;
end;

end.

⌨️ 快捷键说明

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