232 lines
6.3 KiB
ObjectPascal
232 lines
6.3 KiB
ObjectPascal
|
|
unit U_RPFun;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
|
Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData,
|
|||
|
|
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DBGrids, DB, cxDBData,
|
|||
|
|
cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB, StrUtils, Midas,
|
|||
|
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxTimeEdit,
|
|||
|
|
cxTreeView, cxGrid, cxDBLookupComboBox, cxCalendar, cxCurrencyEdit,
|
|||
|
|
cxGridExportLink, ExtCtrls, Buttons, DBClient, RTComboBox, cxDropDownEdit,
|
|||
|
|
cxGridBandedTableView, cxGridDBBandedTableView, cxRichEdit, cxButtonEdit,
|
|||
|
|
IniFiles, WinSock, IdHTTP, dxcore, cxTextEdit, FireDAC.Comp.Client, cxCheckBox,
|
|||
|
|
Vcl.Clipbrd, cxMemo, dxLayoutControl;
|
|||
|
|
|
|||
|
|
function FromPrintFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
function FromShowFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
function FunPrintFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
function FromPrintRmf(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
function FunPrintRmf(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
//<2F>д<EFBFBD><D0B4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
|
function FromPrintReport(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
//<2F><EFBFBD><DEB4><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ѡ<EFBFBD><EFBFBD>
|
|||
|
|
function FunPrintReport(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
//<2F><EFBFBD><DEB4><EFBFBD>
|
|||
|
|
function FunPrintReport(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
var
|
|||
|
|
FileName, MReport: string;
|
|||
|
|
programIni: Tinifile; //<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
FileName := ExtractFilePath(Paramstr(0)) + 'SYSTEMSET.INI';
|
|||
|
|
programIni := Tinifile.create(FileName);
|
|||
|
|
MReport := programIni.ReadString('REPORTSET', 'reportType', '0');
|
|||
|
|
programIni.Free;
|
|||
|
|
|
|||
|
|
if MReport = '0' then
|
|||
|
|
begin
|
|||
|
|
JsonResult := FunPrintFr3(App, DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := FunPrintRmf(App, DataBaseStr, JsonArgs);
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FromPrintReport(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
var
|
|||
|
|
FileName, MReport: string;
|
|||
|
|
programIni: Tinifile; //<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
FileName := ExtractFilePath(Paramstr(0)) + 'SYSTEMSET.INI';
|
|||
|
|
programIni := Tinifile.create(FileName);
|
|||
|
|
MReport := programIni.ReadString('REPORTSET', 'reportType', '0');
|
|||
|
|
programIni.Free;
|
|||
|
|
|
|||
|
|
if MReport = '0' then
|
|||
|
|
begin
|
|||
|
|
JsonResult := FromPrintFr3(App, DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := FromPrintRmf(App, DataBaseStr, JsonArgs);
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FromPrintFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
type
|
|||
|
|
TMyFunc = function(App: Tapplication; FormID: integer; Title: PChar; DataBaseStr: PChar; JsonArgs: PChar): PChar; stdcall;
|
|||
|
|
var
|
|||
|
|
Tf: TMyFunc;
|
|||
|
|
Tp: TFarProc;
|
|||
|
|
Th: Thandle;
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
Th := LoadLibrary('ReportPrint.dll');
|
|||
|
|
if Th > 0 then
|
|||
|
|
begin
|
|||
|
|
Tp := GetProcAddress(Th, 'GetDllForm');
|
|||
|
|
if Tp <> nil then
|
|||
|
|
begin
|
|||
|
|
Tf := TMyFunc(Tp);
|
|||
|
|
JsonResult := Tf(Application, 11, 'FR3<52><33><EFBFBD><EFBFBD>', DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA>쳣"}';
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22>Ҳ<EFBFBD><D2B2><EFBFBD>ReportPrint.dll"}';
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FromShowFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
type
|
|||
|
|
TMyFunc = function(App: Tapplication; FormID: integer; Title: PChar; DataBaseStr: PChar; JsonArgs: PChar): PChar; stdcall;
|
|||
|
|
var
|
|||
|
|
Tf: TMyFunc;
|
|||
|
|
Tp: TFarProc;
|
|||
|
|
Th: Thandle;
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
Th := LoadLibrary('ReportPrint.dll');
|
|||
|
|
if Th > 0 then
|
|||
|
|
begin
|
|||
|
|
Tp := GetProcAddress(Th, 'GetDllForm');
|
|||
|
|
if Tp <> nil then
|
|||
|
|
begin
|
|||
|
|
Tf := TMyFunc(Tp);
|
|||
|
|
JsonResult := Tf(Application, 13, 'FR3<52><33><EFBFBD><EFBFBD>', DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA>쳣"}';
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22>Ҳ<EFBFBD><D2B2><EFBFBD>ReportPrint.dll"}';
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FunPrintFr3(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
type
|
|||
|
|
TMyFunc = function(App: Tapplication; FormID: integer; Title: PChar; DataBaseStr: PChar; JsonArgs: PChar): PChar; stdcall;
|
|||
|
|
var
|
|||
|
|
Tf: TMyFunc;
|
|||
|
|
Tp: TFarProc;
|
|||
|
|
Th: Thandle;
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
Th := LoadLibrary('ReportPrint.dll');
|
|||
|
|
if Th > 0 then
|
|||
|
|
begin
|
|||
|
|
Tp := GetProcAddress(Th, 'GetDllForm');
|
|||
|
|
if Tp <> nil then
|
|||
|
|
begin
|
|||
|
|
Tf := TMyFunc(Tp);
|
|||
|
|
JsonResult := Tf(Application, 12, 'FR3<52><33><EFBFBD><EFBFBD>', DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA>쳣"}';
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22>Ҳ<EFBFBD><D2B2><EFBFBD>ReportPrint.dll"}';
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FromPrintRmf(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
type
|
|||
|
|
TMyFunc = function(App: Tapplication; FormID: integer; Title: PChar; DataBaseStr: PChar; JsonArgs: PChar): PChar; stdcall;
|
|||
|
|
var
|
|||
|
|
Tf: TMyFunc;
|
|||
|
|
Tp: TFarProc;
|
|||
|
|
Th: Thandle;
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
Th := LoadLibrary('ReportPrint.dll');
|
|||
|
|
if Th > 0 then
|
|||
|
|
begin
|
|||
|
|
Tp := GetProcAddress(Th, 'GetDllForm');
|
|||
|
|
if Tp <> nil then
|
|||
|
|
begin
|
|||
|
|
Tf := TMyFunc(Tp);
|
|||
|
|
JsonResult := Tf(Application, 21, 'Rmf<6D><66><EFBFBD><EFBFBD>', DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA>쳣"}';
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22>Ҳ<EFBFBD><D2B2><EFBFBD>ReportPrint.dll"}';
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
function FunPrintRmf(App: Tapplication; DataBaseStr: PChar; JsonArgs: PChar): PChar;
|
|||
|
|
type
|
|||
|
|
TMyFunc = function(App: Tapplication; FormID: integer; Title: PChar; DataBaseStr: PChar; JsonArgs: PChar): PChar; stdcall;
|
|||
|
|
var
|
|||
|
|
Tf: TMyFunc;
|
|||
|
|
Tp: TFarProc;
|
|||
|
|
Th: Thandle;
|
|||
|
|
JsonResult: PChar;
|
|||
|
|
begin
|
|||
|
|
Th := LoadLibrary('ReportPrint.dll');
|
|||
|
|
if Th > 0 then
|
|||
|
|
begin
|
|||
|
|
Tp := GetProcAddress(Th, 'GetDllForm');
|
|||
|
|
if Tp <> nil then
|
|||
|
|
begin
|
|||
|
|
Tf := TMyFunc(Tp);
|
|||
|
|
JsonResult := Tf(Application, 22, 'Rmf<6D><66><EFBFBD><EFBFBD>', DataBaseStr, JsonArgs);
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA>쳣"}';
|
|||
|
|
end;
|
|||
|
|
end
|
|||
|
|
else
|
|||
|
|
begin
|
|||
|
|
JsonResult := '{"succsee":false,"message": "<22>Ҳ<EFBFBD><D2B2><EFBFBD>ReportPrint.dll"}';
|
|||
|
|
end;
|
|||
|
|
Result := JsonResult;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|
|||
|
|
|