📄 prndatamodule.pas
字号:
unit PRNDataModule;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, Wwdatsrc, DBTables, Wwquery, wwstorep, Wwtable;
type
TPRN_DM = class(TDataModule)
qryCurrBeds: TwwQuery;
qryCurrBedsBED: TStringField;
qryCurrBedsNAME: TStringField;
qryCurrBedsINID: TIntegerField;
qryCurrBedsTIMES: TSmallintField;
qryCurrBedsBIRTHDAY: TDateField;
qryCurrBedsAGE: TSmallintField;
SrcCurrBeds: TwwDataSource;
qryCurrBedsSQID: TSmallintField;
qryCurrBedsSEX: TStringField;
qrydelfee: TwwQuery;
clr_OrderRep: TwwQuery;
spProcBill: TwwStoredProc;
tblOrderRep: TTable;
MoveRep: TBatchMove;
LCLDATA: TDatabase;
clr_InjLabel: TQuery;
tblInjLabel: TTable;
tblInjLabelBed: TStringField;
tblInjLabelPnm: TStringField;
tblInjLabelUsageid: TStringField;
tblInjLabelUsagename: TStringField;
tblInjLabelOrderkind: TSmallintField;
tblInjLabelKindid: TSmallintField;
tblInjLabelItemname: TStringField;
tblInjLabelDosage: TFloatField;
tblInjLabelDosunit: TStringField;
tblInjLabelTmname: TStringField;
tblInjLabelRepnb: TIntegerField;
tblInjLabelCounts: TIntegerField;
tblInjLabelTmnum: TSmallintField;
InjMove: TBatchMove;
spInjLabel: TwwStoredProc;
qryPrnSumData: TwwQuery;
qryPrnSumBill: TwwQuery;
bmPrnSumMed: TBatchMove;
tblMsgSum: TTable;
qryPrnSumBillWARDID: TStringField;
qryPrnSumBillDEPTNUM: TStringField;
qryPrnSumBillITEMID: TStringField;
qryPrnSumBillSENDQTY: TFloatField;
qryPrnSumBillATONCEQTY: TFloatField;
qryPrnSumBillTOTALQTY: TFloatField;
qryPrnSumBillSPEC: TStringField;
qryPrnSumBillITEMNAME: TStringField;
qryPrnSumBillUSEUNIT: TStringField;
qryPrnSumBillPRICE: TFloatField;
qryPrnSumBillTOTALSUM: TFloatField;
qryPrnSumBillMADEIN: TStringField;
qryPrnSumBillWARDNAME: TStringField;
qryPrnSumBillDEPTNAME: TStringField;
qryWardMedin: TwwQuery;
srcWardMedin: TwwDataSource;
qryWardMedinMEDDATE: TDateField;
qryWardMedinWARDID: TStringField;
qryWardMedinBILLID: TStringField;
qryWardMedinITEMID: TStringField;
qryWardMedinPRICE: TFloatField;
qryWardMedinQTY: TFloatField;
qryWardMedinCONFIRM: TSmallintField;
qryWardMedinPOST: TSmallintField;
qryWardMedinSERIALID: TStringField;
qryWardMedinITEMNAME: TStringField;
qryWardMedinSPEC: TStringField;
qryWardMedinUSEUNIT: TStringField;
qryWardMedinSUBSUM: TFloatField;
qryWardMedinRPRICE: TFloatField;
qryUpdateConfirm: TwwQuery;
qryWardMedinEXCUPLACE: TSmallintField;
qryWardMedinEXCUNAME: TStringField;
qryDayfeeDtl: TwwQuery;
bmDayfeeDtl: TBatchMove;
qryDayfeeDtlINID: TIntegerField;
qryDayfeeDtlTIMES: TSmallintField;
qryDayfeeDtlSQID: TSmallintField;
qryDayfeeDtlICLASS: TStringField;
qryDayfeeDtlITEMID: TStringField;
qryDayfeeDtlTOTALQTY: TFloatField;
qryDayfeeDtlTOTALFEE: TFloatField;
bmInvitem: TBatchMove;
bmPatientSub: TBatchMove;
tblDayfeeDtl: TwwTable;
RtblInvitem: TwwTable;
tblInvitem: TwwTable;
qryDayfeeDtlPATNAME: TStringField;
qryPRN_Patientsub: TwwQuery;
tblPrn_PatientSub: TwwTable;
clr_DayfeeDtl: TwwQuery;
qryWardMedinINOROUT: TSmallintField;
clr_PatDayfees: TwwQuery;
clr_PatSumfee: TwwQuery;
qryDayfeePrn: TwwQuery;
bmDayfeePrn: TBatchMove;
tblPatDayfees: TwwTable;
InsPatSumFee: TwwQuery;
qryPrnDtlBill: TwwQuery;
qryPrnDtlBillINID: TIntegerField;
qryPrnDtlBillTIMES: TSmallintField;
qryPrnDtlBillSQID: TSmallintField;
qryPrnDtlBillITEMID: TStringField;
qryPrnDtlBillTOTALQTY: TFloatField;
qryPrnDtlBillPATNAME: TStringField;
qryPrnDtlBillBEDID: TStringField;
qryPrnDtlBillSEXNAME: TStringField;
qryPrnDtlBillCNAME: TStringField;
qryPrnDtlBillSPEC: TStringField;
qryPrnDtlBillUSEUNIT: TStringField;
procedure qryCurrBedsCalcFields(DataSet: TDataSet);
procedure qryPrnSumBillCalcFields(DataSet: TDataSet);
procedure qryWardMedinNewRecord(DataSet: TDataSet);
procedure qryWardMedinCalcFields(DataSet: TDataSet);
procedure qryWardMedinBeforeEdit(DataSet: TDataSet);
procedure qryWardMedinITEMIDChange(Sender: TField);
private
{ Private declarations }
public
FWardMedDate :TDate;
FWardMedType :Smallint ; // 输入的类型 1:领药,2:退药
end;
var
PRN_DM: TPRN_DM;
implementation
uses DataModule, HisUtilitis;
{$R *.DFM}
procedure TPRN_DM.qryCurrBedsCalcFields(DataSet: TDataSet);
var
CurrYear, BirthYear, tmp1, tmp2 : Word;
begin
//计算年龄
DecodeDate( now, CurrYear, tmp1, tmp2 );
DecodeDate( qryCurrBedsBirthDay.AsDateTime, BirthYear, tmp1, tmp2 );
qryCurrBedsage.AsInteger := CurrYear - BirthYear + 1 ;
end;
procedure TPRN_DM.qryPrnSumBillCalcFields(DataSet: TDataSet);
begin
qryPrnSumBillTotalSum.Value :=
qryPrnSumBillTotalQty.Value * qryPrnSumBillPrice.Value;
end;
procedure TPRN_DM.qryWardMedinNewRecord(DataSet: TDataSet);
begin
qryWardMedInWardID.Value := DM.currWardid;
qryWardMedInSerialID.Value := DM.GetSerialID;
qryWardMedInConfirm.Value := 0;
qryWardMedInPost.Value := 0;
qryWardMedInExcuplace.Value := 1;
qryWardMedInMedDate.Value := PRN_DM.FWardMedDate;
qryWardMedInBillID.Value := '0';
qryWardMedInInorOut.Value := PRN_DM.FWardMedType;
end;
procedure TPRN_DM.qryWardMedinCalcFields(DataSet: TDataSet);
begin
qryWardMedInSubSUM.Value := qryWardMedInPrice.Value * qryWardMedInQty.Value;
end;
procedure TPRN_DM.qryWardMedinBeforeEdit(DataSet: TDataSet);
begin
if ( qryWardMedinPost.Value = 1 ) then
begin
HisErrorPrompt('药房已经确认,不能修改!');
SysUtils.Abort;
end;
end;
procedure TPRN_DM.qryWardMedinITEMIDChange(Sender: TField);
begin
qryWardMedinPrice.Value := qryWardMedinRPrice.Value;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -