D7myYunxiang/生产计划单(DyeingFinishingPlan.dll)/U_CPDBAO.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

615 lines
19 KiB
ObjectPascal
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_CPDBAO;
interface
uses
Windows, Messages, strutils, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, StdCtrls, cxContainer, cxTextEdit, cxCurrencyEdit, BtnEdit, ExtCtrls, ComCtrls, ToolWin, DBClient, ADODB, MovePanel, Buttons, Menus, cxLookAndFeelPainters, cxButtons, RM_Common, RM_Class, RM_GridReport,
RM_System, RM_Dataset, cxCheckBox, MMSystem, cxLookAndFeels, cxNavigator;
type
TfrmCPDBao = class(TForm)
Panel1: TPanel;
PHYG: TBtnEditA;
defstr2: TComboBox;
Label16: TLabel;
Label15: TLabel;
Label14: TLabel;
Label1: TLabel;
ADOQueryMain: TADOQuery;
ADOQueryCmd: TADOQuery;
CDSMJID: TClientDataSet;
DataSource2: TDataSource;
SmNO: TEdit;
ADOQueryTmp: TADOQuery;
kcKw: TBtnEditA;
Label5: TLabel;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle_gridRow: TcxStyle;
cxStyle_gridFoot: TcxStyle;
cxStyle_gridHead: TcxStyle;
cxStyle_gridGroupBox: TcxStyle;
cxStyle_yellow: TcxStyle;
cxStyle_Red: TcxStyle;
cxStyle_fontBlack: TcxStyle;
cxStyle_fontclFuchsia: TcxStyle;
cxStyle_fontclPurple: TcxStyle;
cxStyle_fontclGreen: TcxStyle;
cxStyle_fontclBlue: TcxStyle;
cxStyle_fontclTeal: TcxStyle;
cxStyle_fontclOlive: TcxStyle;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOQueryTm: TADOQuery;
DSTm: TDataSource;
BaoID: TEdit;
Label4: TLabel;
FileName: TcxButton;
RMDB_Main: TRMDBDataSet;
RM2: TRMGridReport;
cxButton1: TcxButton;
ADOQueryPrint: TADOQuery;
CDSTM: TClientDataSet;
cxButton2: TcxButton;
CDSSEL: TClientDataSet;
DSSEL: TDataSource;
check_Fbz: TCheckBox;
Fbq: TBtnEditA;
ComboBox2: TComboBox;
BaoBq: TBtnEditA;
DBCS: TEdit;
Panel2: TPanel;
cxGrid2: TcxGrid;
TV2: TcxGridDBTableView;
cxGridDBMLCodeName: TcxGridDBColumn;
cxGridDBJYColor: TcxGridDBColumn;
VJYColHX: TcxGridDBColumn;
V2CGangNo: TcxGridDBColumn;
V2BaoNo: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBJYLen: TcxGridDBColumn;
V2CJYKG: TcxGridDBColumn;
V2ColJYJZ: TcxGridDBColumn;
V2SOMLColorNo: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
cxJYID: TcxGridDBColumn;
cxJYNo: TcxGridDBColumn;
cxMLCodeName: TcxGridDBColumn;
cJYColor: TcxGridDBColumn;
cxJYColHX: TcxGridDBColumn;
cxGangNo: TcxGridDBColumn;
cxJYLen: TcxGridDBColumn;
cxJYKG: TcxGridDBColumn;
cJYJZ: TcxGridDBColumn;
cxGridDBMLColorNo: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
edtFenShu: TEdit;
Label2: TLabel;
cxButton3: TcxButton;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure SmNOKeyPress(Sender: TObject; var Key: Char);
procedure kcKwBtnClick(Sender: TObject);
procedure baoNoKeyPress(Sender: TObject; var Key: Char);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton12Click(Sender: TObject);
procedure FileNameClick(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure BaoBqBtnClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure TV2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure FormShow(Sender: TObject);
procedure cxButton3Click(Sender: TObject);
private
Rolls: integer;
FCXDB: string;
procedure InitGrid();
procedure InitMJID();
function SaveRK(): Boolean;
procedure QueryRk();
procedure QueryTM();
{ Private declarations }
public
{ Public declarations }
end;
var
frmCPDBao: TfrmCPDBao;
newh: hwnd;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmCPDBao.QueryTm();
begin
end;
procedure TfrmCPDBao.QueryRk();
begin
end;
function TfrmCPDBao.SaveRK(): Boolean;
begin
end;
procedure TfrmCPDBao.InitGrid();
begin
end;
procedure TfrmCPDBao.InitMJID();
begin
with ADOQueryMain do
begin
Close;
sql.Clear;
SQL.Add('select A.*,B.*,C.MLCodeName,C.MLOrderNo from JTJY_New A ');
sql.add('inner join ML_OrderSubidNew B on B.NewSubid=A.NewSubid ');
sql.add('inner join ML_OrderMainNew C on C.NewMLID=A.NewMLID ');
sql.Add('where A.JYID=' + quotedstr(trim(SmNO.Text)));
Open;
if not IsEmpty then
begin
with CDSMJID do
begin
CDSMJID.Append;
CDSMJID.FieldByName('JYID').Value := trim(ADOQueryMain.Fieldbyname('JYID').AsString);
CDSMJID.FieldByName('JYNo').Value := trim(ADOQueryMain.Fieldbyname('JYNo').AsString);
CDSMJID.FieldByName('MLCodeName').Value := trim(ADOQueryMain.Fieldbyname('MLCodeName').AsString);
CDSMJID.FieldByName('JYColor').Value := trim(ADOQueryMain.Fieldbyname('JYColor').AsString);
CDSMJID.FieldByName('JYColHX').Value := trim(ADOQueryMain.Fieldbyname('JYColHX').AsString);
CDSMJID.FieldByName('MLColorNo').Value := trim(ADOQueryMain.Fieldbyname('MLColorNo').AsString);
CDSMJID.FieldByName('GangNo').Value := trim(ADOQueryMain.Fieldbyname('GangNo').AsString);
CDSMJID.FieldByName('JYLen').Value := ADOQueryMain.Fieldbyname('JYLen').AsFloat;
CDSMJID.FieldByName('JYKG').Value := ADOQueryMain.Fieldbyname('JYKG').AsFloat;
CDSMJID.FieldByName('JYJZ').Value := ADOQueryMain.Fieldbyname('JYJZ').AsFloat;
CDSMJID.FieldByName('NewMLID').Value := trim(ADOQueryMain.Fieldbyname('NewMLID').AsString);
CDSMJID.FieldByName('NewSubid').Value := trim(ADOQueryMain.Fieldbyname('NewSubid').AsString);
CDSMJID.Post;
end;
end
else
begin
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_ASYNC);
end;
end;
end;
procedure TfrmCPDBao.FormDestroy(Sender: TObject);
begin
frmCPDBao := nil;
end;
procedure TfrmCPDBao.FormClose(Sender: TObject; var Action: TCloseAction);
begin
writeCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
writeCxGrid(self.Caption + Tv2.Name, Tv2, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Action := cafree;
end;
procedure TfrmCPDBao.FormCreate(Sender: TObject);
begin
readCxGrid(self.Caption + tv1.Name, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
readCxGrid(self.Caption + Tv2.Name, Tv2, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Rolls := 0;
end;
procedure TfrmCPDBao.SmNOKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
begin
if trim(smno.Text) = '' then
exit;
if CDSMJID.Locate('JYID', trim(smno.Text), []) then
begin
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C>ظ<EFBFBD>ɨ<EFBFBD><C9A8>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C>ظ<EFBFBD>ɨ<EFBFBD><C9A8>.wav'), 0, SND_ASYNC);
smno.Text := '';
smno.SetFocus;
exit;
end;
if not CDSMJID.Locate('JYID', trim(smno.Text), []) then
begin
with ADOQuery1 do
begin
Close;
sql.Clear;
SQL.Add('select A.*,B.*,C.MLCodeName,C.MLOrderNo from JTJY_New A ');
sql.add('inner join ML_OrderSubidNew B on B.NewSubid=A.NewSubid ');
sql.add('inner join ML_OrderMainNew C on C.NewMLID=A.NewMLID ');
sql.Add('where A.JYID=' + quotedstr(trim(SmNO.Text)));
Open;
if isempty then
begin
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_ASYNC);
smno.Text := '';
smno.SetFocus;
exit;
end
else
begin
if Fieldbyname('RKType').AsString = '<27>ѳ<EFBFBD><D1B3><EFBFBD>' then
begin
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_ASYNC);
smno.Text := '';
smno.SetFocus;
exit;
end
else
begin
if CDSMJID.isempty = false then
begin
if not CDSMJID.Locate('NewSubid', trim(fieldbyname('NewSubid').AsString), []) then
begin
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\ɨ<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_ASYNC);
smno.Text := '';
smno.SetFocus;
exit;
end;
end;
end;
end;
end;
end;
initMJID();
smno.Text := '';
smno.SetFocus;
end;
end;
procedure TfrmCPDBao.kcKwBtnClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'CPKWFlag';
flagname := '<27><>λ<EFBFBD><CEBB>Ϣ';
V1Name.Caption := '<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>';
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
// MainType:=Trim(DName);
fnote := FALSE;
if ShowModal = 1 then
begin
kcKw.Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCPDBao.baoNoKeyPress(Sender: TObject; var Key: Char);
var
FBaoID: string;
begin
end;
procedure TfrmCPDBao.SpeedButton1Click(Sender: TObject);
var
fsj: string;
begin
fsj := Trim(TSpeedButton(Sender).Hint);
if Trim(fsj) = '' then
Exit;
fsj := Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text := fsj + Trim(TSpeedButton(Sender).Caption);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll;
end;
procedure TfrmCPDBao.SpeedButton12Click(Sender: TObject);
var
fsj: string;
begin
fsj := Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text);
if Trim(fsj) = '' then
Exit;
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text := Copy(fsj, 1, Length(fsj) - 1);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll;
end;
procedure TfrmCPDBao.FileNameClick(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
FBaoID, FBaoNo: string;
i: Integer;
begin
if CDSMJID.IsEmpty then
exit;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select Max(cast(ISNULL(BaoNo,0) as Int))+1 BaoNo from JTJY_New ');
sql.Add('where NewSubID=''' + Trim(CDSMJID.fieldbyname('NewSubID').AsString) + '''');
sql.Add(' and GangNo=''' + Trim(CDSMJID.fieldbyname('GangNo').AsString) + '''');
// ShowMessage(SQL.Text);
open;
end;
FBaoNo := Trim(ADOQueryCmd.fieldbyname('BaoNo').AsString);
if GetLSNo(ADOQueryCmd, FBaoID, 'DB', 'JTJY_New', 4, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
exit;
end;
try
with CDSMJID do
begin
DisableControls;
first;
while not eof do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JTJY_New Set BaoNo=''' + trim(FBaoNo) + ''',BaoID=''' + trim(FBaoID) + ''' ');
sql.Add('where JYID=''' + Trim(CDSMJID.fieldbyname('JYID').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_MLCP_CR Set BaoNo=''' + trim(FBaoNo) + ''',BaoID=''' + trim(FBaoID) + ''' ');
sql.Add('where MJID=''' + Trim(CDSMJID.fieldbyname('JYID').AsString) + '''');
ExecSQL;
end;
Delete;
end;
EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><>ȷ.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><>ȷ.wav'), 0, SND_ASYNC);
except
;
ADOQueryCmd.Connection.RollbackTrans;
if FileExists(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav')) then
PlaySound(PChar(ExtractFilePath(Application.ExeName) + 'wav\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.wav'), 0, SND_ASYNC);
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
exit;
end;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('exec JYOrder_DB ');
sql.Add(' @BaoID=''' + trim(FBaoID) + '''');
Open;
end;
if ADOQueryPrint.RecordCount > 1 then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>,<2C><><EFBFBD>ܴ<EFBFBD>ӡ', '<27><>ʾ');
exit;
end;
SInitCDSData20(ADOQueryPrint, CDSSEL);
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := trim(FBaoID);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + ADOQueryPrint.FieldByName('CPBaoBQName').AsString + '.rmf';
if not FileExists(fPrintFile) then
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
Exit;
end;
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM2.LoadFromFile(fPrintFile);
RM2.DefaultCopies := StrToIntDef(edtFenShu.Text, 1);
//RM2.ShowReport;
RM2.printReport;
end;
SmNO.SetFocus;
end;
procedure TfrmCPDBao.cxButton1Click(Sender: TObject);
begin
close;
end;
procedure TfrmCPDBao.BaoBqBtnClick(Sender: TObject);
type
TMyFunc = function(App: Tapplication; FormH: hwnd; FormID: integer; Language: integer; WinStyle: integer; GCode: Pchar; GName: Pchar; DataBase: Pchar; Title: PChar; Parameters1: PChar; Parameters2: PChar; Parameters3: PChar; Parameters4: PChar; Parameters5: PChar; Parameters6: PChar; Parameters7: PChar; Parameters8: PChar; Parameters9: PChar; Parameters10: PChar; DataBaseStr: PChar): hwnd; stdcall;
var
Tf: TMyFunc;
Tp: TFarProc;
Th: Thandle;
LabInt, labname: string;
begin
//if PPInt=2 then Exit;
Ddatabase := StringOfChar(' ', 32);
Th := LoadLibrary('LabelSet.dll');
if Th > 0 then
begin
try
Tp := GetProcAddress(Th, 'GetDllForm');
if Tp <> nil then
begin
Tf := TMyFunc(Tp);
newh := Tf(Application, 0, 2, 0, 0, PChar(DCode), PChar(DName), PChar(Ddatabase), PChar('<27><>ǩģ<C7A9><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'), PChar(''), PChar(''), '', '', '', '', '', '', '', '', PChar(DConString));
if Trim(PChar(Ddatabase)) <> '' then
begin
Ddatabase := Trim(PChar(Ddatabase));
// LabInt:=Trim( LeftBStr(Ddatabase,Pos('|',Ddatabase)-1) ) ;
BaoBq.Text := Trim(RightBStr(Ddatabase, Length(Ddatabase) - Pos('|', Ddatabase)));
end;
end
else
begin
ShowMessage('<27><>ӡִ<D3A1>д<EFBFBD><D0B4><EFBFBD>');
end;
finally
// FreeLibrary();
end;
end
else
begin
ShowMessage('<27>Ҳ<EFBFBD><D2B2><EFBFBD>' + Trim('LabelSet.dll'));
end;
end;
procedure TfrmCPDBao.TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>', '<27><>ʾ', 1) = 2 then
Exit;
CDSMJID.Delete;
end;
procedure TfrmCPDBao.TV2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if CDSSEL.IsEmpty then
Exit;
if application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 1) = 2 then
exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JTJY_New Set baoID='''',baoNo='''' ');
sql.Add('where baoID=''' + Trim(CDSSEL.fieldbyname('baoID').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_MLCP_CR Set BaoNo='''',BaoID='''' ');
sql.Add('where BaoID=''' + Trim(CDSSEL.fieldbyname('BaoID').AsString) + '''');
ExecSQL;
end;
CDSSEL.delete;
ADOQueryCmd.Connection.CommitTrans;
application.MessageBox('<27><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
exit;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmCPDBao.FormShow(Sender: TObject);
begin
with ADOQuery1 do
begin
Close;
sql.Clear;
SQL.Add('select A.*,B.*,C.MLCodeName,C.MLOrderNo ');
sql.Add(',cast(0 as decimal(18,2)) PS ');
sql.Add('from JTJY_New A ');
sql.add('inner join ML_OrderSubidNew B on B.NewSubid=A.NewSubid ');
sql.add('inner join ML_OrderMainNew C on C.NewMLID=A.NewMLID ');
sql.Add('where 1=2');
Open;
end;
SCreateCDS20(ADOQuery1, CDSMJID);
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('exec JYOrder_DB ');
sql.Add(' @BaoID='<><C3BB>''');
Open;
end;
SCreateCDS20(ADOQueryPrint, CDSSEL);
end;
procedure TfrmCPDBao.cxButton3Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
FBaoID, FBaoNo: string;
i: Integer;
begin
if CDSSEL.IsEmpty then
Exit;
FBaoID := CDSSEL.fieldbyname('BaoID').AsString;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('exec JYOrder_DB ');
sql.Add(' @BaoID=''' + trim(FBaoID) + '''');
Open;
end;
if ADOQueryPrint.RecordCount > 1 then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>,<2C><><EFBFBD>ܴ<EFBFBD>ӡ', '<27><>ʾ');
exit;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := trim(FBaoID);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + ADOQueryPrint.FieldByName('CPBaoBQName').AsString + '.rmf';
if not FileExists(fPrintFile) then
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
Exit;
end;
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM2.LoadFromFile(fPrintFile);
RM2.DefaultCopies := StrToIntDef(edtFenShu.Text, 1);
//RM2.ShowReport;
RM2.printReport;
end;
SmNO.SetFocus;
end;
end.