更新打印

This commit is contained in:
DESKTOP-E401PHE\Administrator 2025-08-07 12:49:00 +08:00
parent 91f32f0b8c
commit bb338744d7
5 changed files with 124 additions and 105 deletions

View File

@ -1,8 +1,8 @@
object frmClientPrintRmf: TfrmClientPrintRmf object frmClientPrintRmf: TfrmClientPrintRmf
Left = 372 Left = 874
Top = 106 Top = 483
Width = 924 Width = 403
Height = 745 Height = 240
Caption = #25253#34920#25171#21360 Caption = #25253#34920#25171#21360
Color = clBtnFace Color = clBtnFace
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -22,20 +22,20 @@ object frmClientPrintRmf: TfrmClientPrintRmf
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 526 Left = 265
Top = 219 Top = 65503
end end
object ADOConnection1: TADOConnection object ADOConnection1: TADOConnection
LoginPrompt = False LoginPrompt = False
Left = 280 Left = 19
Top = 219 Top = 65503
end end
object ImageList1: TImageList object ImageList1: TImageList
DrawingStyle = dsTransparent DrawingStyle = dsTransparent
Height = 32 Height = 32
Width = 32 Width = 32
Left = 362 Left = 101
Top = 343 Top = 91
Bitmap = { Bitmap = {
494C010119002400040020002000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 494C010119002400040020002000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
000000000000360000002800000080000000E0000000010020000000000000C0 000000000000360000002800000080000000E0000000010020000000000000C0
@ -3743,8 +3743,8 @@ object frmClientPrintRmf: TfrmClientPrintRmf
object RMDB_1: TRMDBDataSet object RMDB_1: TRMDBDataSet
Visible = True Visible = True
DataSet = ADO_1 DataSet = ADO_1
Left = 526 Left = 265
Top = 343 Top = 91
end end
object RM1: TRMGridReport object RM1: TRMGridReport
ThreadPrepareReport = True ThreadPrepareReport = True
@ -3763,48 +3763,48 @@ object frmClientPrintRmf: TfrmClientPrintRmf
CompressThread = False CompressThread = False
LaterBuildEvents = True LaterBuildEvents = True
OnlyOwnerDataSet = False OnlyOwnerDataSet = False
Left = 526 Left = 265
Top = 405 Top = 153
ReportData = {} ReportData = {}
end end
object RMDB_2: TRMDBDataSet object RMDB_2: TRMDBDataSet
Visible = True Visible = True
DataSet = ADO_2 DataSet = ADO_2
Left = 608 Left = 347
Top = 343 Top = 91
end end
object CDS_Label: TClientDataSet object CDS_Label: TClientDataSet
Aggregates = <> Aggregates = <>
Params = <> Params = <>
Left = 280 Left = 19
Top = 343 Top = 91
end end
object ADO_1: TADOQuery object ADO_1: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 608 Left = 347
Top = 219 Top = 65503
end end
object ADO_2: TADOQuery object ADO_2: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 280 Left = 19
Top = 281 Top = 29
end end
object RMDB_3: TRMDBDataSet object RMDB_3: TRMDBDataSet
Visible = True Visible = True
DataSet = ADO_3 DataSet = ADO_3
Left = 280 Left = 19
Top = 405 Top = 153
end end
object ADO_3: TADOQuery object ADO_3: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 362 Left = 101
Top = 281 Top = 29
end end
object RMXLSExport1: TRMXLSExport object RMXLSExport1: TRMXLSExport
ShowAfterExport = True ShowAfterExport = True
@ -3817,61 +3817,62 @@ object frmClientPrintRmf: TfrmClientPrintRmf
ScaleX = 1.000000000000000000 ScaleX = 1.000000000000000000
ScaleY = 1.000000000000000000 ScaleY = 1.000000000000000000
CompressFile = False CompressFile = False
Left = 362 Left = 19
Top = 467 Top = 215
end end
object RMJPEGExport1: TRMJPEGExport object RMJPEGExport1: TRMJPEGExport
ScaleX = 1.000000000000000000 ScaleX = 1.000000000000000000
ScaleY = 1.000000000000000000 ScaleY = 1.000000000000000000
Left = 608 Left = 347
Top = 405 Top = 153
end end
object RMBarCodeObject1: TRMBarCodeObject object RMBarCodeObject1: TRMBarCodeObject
Left = 444 Left = 183
Top = 343 Top = 91
end end
object ADOQueryCmd: TADOQuery object ADOQueryCmd: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
Parameters = <> Parameters = <>
Left = 362 Left = 101
Top = 219 Top = 65503
end end
object ADO_While: TADOQuery object ADO_While: TADOQuery
Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 608 Left = 347
Top = 281 Top = 29
end end
object ADO_4: TADOQuery object ADO_4: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 444 Left = 183
Top = 281 Top = 29
end end
object RMDB_4: TRMDBDataSet object RMDB_4: TRMDBDataSet
Visible = True Visible = True
DataSet = ADO_4 DataSet = ADO_4
Left = 362 Left = 101
Top = 405 Top = 153
end end
object ADO_5: TADOQuery object ADO_5: TADOQuery
Connection = ADOConnection1 Connection = ADOConnection1
LockType = ltReadOnly LockType = ltReadOnly
Parameters = <> Parameters = <>
Left = 526 Left = 265
Top = 281 Top = 29
end end
object RMDB_5: TRMDBDataSet object RMDB_5: TRMDBDataSet
Visible = True Visible = True
DataSet = ADO_5 DataSet = ADO_5
Left = 444 Left = 183
Top = 405 Top = 153
end end
object ADOQueryReport: TADOQuery object ADOQueryReport: TADOQuery
Connection = DataLink_YXYMT.ADOLink Connection = DataLink_YXYMT.ADOLink
Parameters = <> Parameters = <>
Left = 444 Left = 183
Top = 219 Top = 65503
end end
end end

View File

@ -57,6 +57,7 @@ type
public public
FPrintJson: PChar; FPrintJson: PChar;
FJsonOut: PChar; FJsonOut: PChar;
DConString, DCode, DName: string;
constructor Create(AOwner: TComponent; JsonArgs: PChar); constructor Create(AOwner: TComponent; JsonArgs: PChar);
{ Public declarations } { Public declarations }
end; end;
@ -67,7 +68,7 @@ var
implementation implementation
uses uses
U_DataLink, U_RTFun, superobject; U_RTFun, superobject;
{$R *.dfm} {$R *.dfm}
constructor TfrmClientPrintRmf.Create(AOwner: TComponent; JsonArgs: PChar); constructor TfrmClientPrintRmf.Create(AOwner: TComponent; JsonArgs: PChar);
@ -100,6 +101,10 @@ begin
FExportFileType := JSONObject.S['ExportFileType']; FExportFileType := JSONObject.S['ExportFileType'];
FExportFileName := JSONObject.S['ExportFileName']; FExportFileName := JSONObject.S['ExportFileName'];
DConString := JSONObject.S['DConString'];
DCode := JSONObject.S['DCode'];
DName := JSONObject.S['DName'];
// 设置默认导出文件名 // 设置默认导出文件名
if Trim(FExportFileName) = '' then if Trim(FExportFileName) = '' then
FExportFileName := FLBName; FExportFileName := FLBName;
@ -216,30 +221,16 @@ end;
procedure TfrmClientPrintRmf.FormCreate(Sender: TObject); procedure TfrmClientPrintRmf.FormCreate(Sender: TObject);
begin begin
FPreviewPrint := True; FPreviewPrint := True;
try InitArgs();
with ADOConnection1 do with ADOConnection1 do
begin begin
Connected := false; Connected := false;
ConnectionString := DConString; ConnectionString := DConString;
Connected := true; Connected := true;
end; end;
except
{if Application.MessageBox('网络连接失败,是否要再次连接?','提示',32+4)=IDYES then
begin
try
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='23242';
Connected:=true;
end;
except
end;
end; }
end;
end; end;
procedure TfrmClientPrintRmf.FormClose(Sender: TObject; var Action: TCloseAction); procedure TfrmClientPrintRmf.FormClose(Sender: TObject; var Action: TCloseAction);
@ -251,8 +242,6 @@ end;
procedure TfrmClientPrintRmf.FormShow(Sender: TObject); procedure TfrmClientPrintRmf.FormShow(Sender: TObject);
begin begin
InitArgs();
if flbName = '' then if flbName = '' then
begin begin
FJsonOut := '{"success":false,"message":"未传入打印标签!"}'; FJsonOut := '{"success":false,"message":"未传入打印标签!"}';

View File

@ -1,8 +1,8 @@
object frmLabelPrint: TfrmLabelPrint object frmLabelPrint: TfrmLabelPrint
Left = 1104 Left = 1104
Top = 424 Top = 424
Width = 291 Width = 277
Height = 194 Height = 181
Caption = #25253#34920#25171#21360 Caption = #25253#34920#25171#21360
Color = clBtnFace Color = clBtnFace
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -21,8 +21,8 @@ object frmLabelPrint: TfrmLabelPrint
object Panel1: TPanel object Panel1: TPanel
Left = 0 Left = 0
Top = 0 Top = 0
Width = 283 Width = 269
Height = 163 Height = 150
Align = alClient Align = alClient
BevelInner = bvRaised BevelInner = bvRaised
BevelOuter = bvLowered BevelOuter = bvLowered

View File

@ -79,6 +79,7 @@ type
public public
FPrintJson: PChar; FPrintJson: PChar;
FJsonOut: PChar; FJsonOut: PChar;
DConString, DCode, DName: string;
constructor Create(AOwner: TComponent; JsonArgs: PChar); constructor Create(AOwner: TComponent; JsonArgs: PChar);
{ Public declarations } { Public declarations }
end; end;
@ -89,7 +90,7 @@ var
implementation implementation
uses uses
U_DataLink, U_RTFun, U_LabelMapSet, superobject; U_RTFun, U_LabelMapSet, superobject;
{$R *.dfm} {$R *.dfm}
constructor TfrmLabelPrint.Create(AOwner: TComponent; JsonArgs: PChar); constructor TfrmLabelPrint.Create(AOwner: TComponent; JsonArgs: PChar);
@ -107,8 +108,6 @@ begin
// fexportFileType := exportFileType; // fexportFileType := exportFileType;
end; end;
procedure TfrmLabelPrint.InitArgs; procedure TfrmLabelPrint.InitArgs;
var var
JSONObject, item: ISuperObject; // SuperObject 接口类型 JSONObject, item: ISuperObject; // SuperObject 接口类型
@ -129,6 +128,12 @@ begin
FLMType := JSONObject.S['LMType']; FLMType := JSONObject.S['LMType'];
FPreviewPrint := JSONObject.B['PreviewPrint']; FPreviewPrint := JSONObject.B['PreviewPrint'];
DConString := JSONObject.S['DConString'];
DCode := JSONObject.S['DCode'];
DName := JSONObject.S['DName'];
// 获取数组 // 获取数组
jsonArray := JSONObject.A['PrtArgs']; jsonArray := JSONObject.A['PrtArgs'];
if jsonArray = nil then // 处理数组不存在的情况 if jsonArray = nil then // 处理数组不存在的情况
@ -280,34 +285,20 @@ procedure TfrmLabelPrint.FormCreate(Sender: TObject);
begin begin
FPreviewPrint := True; FPreviewPrint := True;
try InitArgs();
with ADOConnection1 do with ADOConnection1 do
begin begin
Connected := false; Connected := false;
ConnectionString := DConString; ConnectionString := DConString;
Connected := true; Connected := true;
end; end;
except
{if Application.MessageBox('网络连接失败,是否要再次连接?','提示',32+4)=IDYES then
begin
try
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='23242';
Connected:=true;
end;
except
end;
end; }
end;
end; end;
procedure TfrmLabelPrint.btnPrintClick(Sender: TObject); procedure TfrmLabelPrint.btnPrintClick(Sender: TObject);
begin begin
PrintLabel(False); PrintLabel(False);
FJsonOut := '{"succsee":true,"success":true}'; FJsonOut := '{"success":true}';
ModalResult := 1; ModalResult := 1;
end; end;
@ -315,7 +306,7 @@ procedure TfrmLabelPrint.btnShowClick(Sender: TObject);
begin begin
PrintLabel(true); PrintLabel(true);
FJsonOut := '{"ShowFlag":true}'; FJsonOut := '{"success":true,"ShowFlag":true}';
end; end;
procedure TfrmLabelPrint.cbbLabPropertiesButtonClick(Sender: TObject); procedure TfrmLabelPrint.cbbLabPropertiesButtonClick(Sender: TObject);
@ -397,12 +388,11 @@ end;
procedure TfrmLabelPrint.FormShow(Sender: TObject); procedure TfrmLabelPrint.FormShow(Sender: TObject);
begin begin
InitArgs();
// if FPreviewPrint then // if FPreviewPrint then
// RM1.PreviewButtons := [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbSaveToXLS, rmpbExport, rmpbNavigator] // RM1.PreviewButtons := [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbSaveToXLS, rmpbExport, rmpbNavigator]
// else // else
// RM1.PreviewButtons := [rmpbZoom, rmpbLoad, rmpbSave, rmpbFind, rmpbPageSetup, rmpbExit, rmpbSaveToXLS, rmpbExport, rmpbNavigator]; // RM1.PreviewButtons := [rmpbZoom, rmpbLoad, rmpbSave, rmpbFind, rmpbPageSetup, rmpbExit, rmpbSaveToXLS, rmpbExport, rmpbNavigator];
// ComboBox_Print.Properties.Items.Assign(printer.Printers); // ComboBox_Print.Properties.Items.Assign(printer.Printers);
InitGrid(); InitGrid();
end; end;
@ -414,7 +404,6 @@ end;
procedure TfrmLabelPrint.FormDestroy(Sender: TObject); procedure TfrmLabelPrint.FormDestroy(Sender: TObject);
begin begin
frmLabelPrint := nil; frmLabelPrint := nil;
end; end;

View File

@ -0,0 +1,40 @@
unit U_LabelPrintFun;
interface
uses
Forms, U_LabelPrint, U_ClientPrintRmf;
function FormPrint(App: Tapplication; JsonArgs: PChar): PChar;
function FunPrint(App: Tapplication; JsonArgs: PChar): PChar;
implementation
//'{ "LMType": "LMType","PreviewPrint": true,"DConString": "'+DConString+'","DCode": "'+DCode+'","DName": "'+DName+'", "PrtArgs": [ { "IsSql": true, "Filtration": "Filtration1" }] }';
function FormPrint(App: Tapplication; JsonArgs: PChar): PChar;
begin
with TfrmLabelPrint.Create(App, PChar(JsonArgs)) do
begin
Show;
if ShowModal = 1 then
Result := FJsonOut
else
Result := FJsonOut;
end;
end;
// '{ "LBName": "²âÊÔ","DConString": "'+DConString+'","DCode": "'+DCode+'","DName": "'+DName+'","IsPreview": true,"printerIndex": 0,"ExportFileType": "", "PrtArgs": [ {"SqlStr": "EXEC p_test ''22'' " }] }';
function FunPrint(App: Tapplication; JsonArgs: PChar): PChar;
begin
with TfrmClientPrintRmf.Create(App, JsonArgs) do
begin
Show;
Result := FJsonOut;
end;
end;
end.