D7wmoukai/贸易管理(TradeManage.dll)/U_ProductOrderLBNameSet.pas
DESKTOP-E401PHE\Administrator 451d1bbba9 ~
2025-07-19 17:24:07 +08:00

1202 lines
34 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_ProductOrderLBNameSet;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter,
RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls,StrUtils,
Menus, cxTextEdit, cxDropDownEdit, cxLookAndFeels, cxLookAndFeelPainters,
cxNavigator, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint,
dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide,
dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,
dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,
dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin,
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter;
type
TfrmProductOrderLBNameSet = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
OrderNoM: TEdit;
v1OrderNo: TcxGridDBColumn;
v1OrdDate: TcxGridDBColumn;
v1DeliveryDate: TcxGridDBColumn;
v1ConNo: TcxGridDBColumn;
v1MPRTSpec: TcxGridDBColumn;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
Label4: TLabel;
CustomerNoName: TEdit;
v1MPRTCodeName: TcxGridDBColumn;
v1MPRTMF: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
ToolButton1: TToolButton;
Label8: TLabel;
MPRTCodeName: TEdit;
Label9: TLabel;
ConNo: TEdit;
v1MPRTKZ: TcxGridDBColumn;
v1OrdDefStr1: TcxGridDBColumn;
Label10: TLabel;
MPRTSpec: TEdit;
Label11: TLabel;
MPRTCode: TEdit;
Label12: TLabel;
MPRTKZ: TEdit;
Label13: TLabel;
MPRTMF: TEdit;
ADOQueryPrint: TADOQuery;
CDS_Print: TClientDataSet;
v1Column4: TcxGridDBColumn;
Panel4: TPanel;
Label14: TLabel;
Panel10: TPanel;
Image2: TImage;
Button1: TButton;
RadioGroup1: TRadioGroup;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
PiZhong: TEdit;
ToolButton4: TToolButton;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
ToolButton5: TToolButton;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
v1Column8: TcxGridDBColumn;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ADOQueryCmdSC: TADOQuery;
ADOQueryCmdFileContent: TBlobField;
ADOQueryCmdFtFileName: TStringField;
ADOQueryCmdFileEditDate: TDateTimeField;
ADOQueryCmdFileSize: TFloatField;
ADOQueryCmdFiller: TStringField;
ADOQueryCmdLastEditTime: TDateTimeField;
ADOQueryCmdLastEditer: TStringField;
ADOQueryCmdFileCreateDate: TDateTimeField;
ADOQueryCmdchildPath: TStringField;
ADOQueryCmdFileType: TStringField;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure OrderNoMChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure Tv1StylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);
procedure ToolButton1Click(Sender: TObject);
procedure ConNoKeyPress(Sender: TObject; var Key: Char);
procedure Panel10MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Button1Click(Sender: TObject);
procedure Image2Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure v1Column3PropertiesEditValueChanged(Sender: TObject);
procedure v1Column1PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure v1Column6PropertiesEditValueChanged(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure v1Column8PropertiesChange(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton10Click(Sender: TObject);
procedure ToolButton11Click(Sender: TObject);
private
DQdate:TDateTime;
procedure InitGrid();
procedure InitForm();
function PostFileToData(FBQ: string; fFilePath: string): boolean;
{ Private declarations }
public
FFInt,FCloth:Integer;
canshu1:string;
{ Public declarations }
end;
var
frmProductOrderLBNameSet: TfrmProductOrderLBNameSet;
newh:hwnd;
implementation
uses
U_DataLink,U_OrderInPut,U_Fun, U_LabelList;
{$R *.dfm}
procedure TfrmProductOrderLBNameSet.FormDestroy(Sender: TObject);
begin
frmProductOrderLBNameSet:=nil;
end;
procedure TfrmProductOrderLBNameSet.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmProductOrderLBNameSet.FormCreate(Sender: TObject);
begin
cxgrid1.Align:=alClient;
//BegDate.DateTime:=SGetServerDateTime(ADOQueryTemp)-7;
//EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp);
DQdate:=SGetServerDate(ADOQueryTemp);
end;
procedure TfrmProductOrderLBNameSet.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmProductOrderLBNameSet.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.add('exec P_View_Order :begdate,:enddate,:WSql') ;
if Trim(DParameters1)<>'<27><>Ȩ<EFBFBD><C8A8>' then
begin
Parameters.ParamByName('WSql').Value:=' and Filler='''+Trim(DName)+'''';
end else
begin
Parameters.ParamByName('WSql').Value:='';
end;
Parameters.ParamByName('begdate').Value:=FormatDateTime('yyyy-MM-dd',BegDate.DateTime);
Parameters.ParamByName('enddate').Value:=FormatDateTime('yyyy-MM-dd',enddate.DateTime+1);
ExecSQL;
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmProductOrderLBNameSet.InitForm();
begin
ReadCxGrid('<27><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>',Tv1,'<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-7;
EndDate.DateTime:=SGetServerDate10(ADOQueryTemp);
end;
procedure TfrmProductOrderLBNameSet.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmProductOrderLBNameSet.TBPrintClick(Sender: TObject);
begin
Panel4.Visible:=True;
end;
procedure TfrmProductOrderLBNameSet.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmProductOrderLBNameSet.OrderNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmProductOrderLBNameSet.FormShow(Sender: TObject);
begin
InitForm();
canshu1:=trim(DParameters1);
end;
procedure TfrmProductOrderLBNameSet.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmProductOrderLBNameSet.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmProductOrderLBNameSet.Tv1StylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
id,id10:Integer;
begin
{try
if Tv1.GroupedItemCount=0 then
begin
Id:=Tv1.GetColumnByFieldName('DeliveryDate').Index-tv1.GroupedItemCount;
Id10:=Tv1.GetColumnByFieldName('SubStatus').Index-tv1.GroupedItemCount;
if Trim(VarToStr(ARecord.Values[id]))='' then Exit;
if Id<0 then Exit;
if ARecord.Values[id10]='<27><><EFBFBD><EFBFBD>' then exit;
if (ARecord.Values[id]-DQdate)>=4 then Exit;
if ((ARecord.Values[id]-DQdate)>=0) and ((ARecord.Values[id]-DQdate)<4) then
AStyle:=DataLink_.QHuangSe
else
if ARecord.Values[id]-DQdate<0 then
begin
AStyle:=DataLink_OrderManage.FenHongS;
end;
end else
begin
end;
except
end; }
end;
procedure TfrmProductOrderLBNameSet.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
try
frmOrderInPut:=TfrmOrderInPut.Create(Application);
with frmOrderInPut do
begin
PState:=1;
FMainId:=Trim(Self.Order_Main.fieldbyname('MainId').AsString);
ToolBar2.Visible:=False;
TBSave.Visible:=False;
ScrollBox1.Enabled:=False;
Tv1.OptionsSelection.CellSelect:=False;
if ShowModal=1 then
begin
end;
end;
finally
frmOrderInPut.Free;
end;
end;
procedure TfrmProductOrderLBNameSet.ConNoKeyPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if Length(conno.Text)<3 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.add('exec P_View_Order :begdate,:enddate,:WSql') ;
begin
Parameters.ParamByName('WSql').Value:=' and conno like '''+'%'+Trim(conno.Text)+'%'+'''';
end;
Parameters.ParamByName('begdate').Value:='1899-01-01';
Parameters.ParamByName('enddate').Value:='2050-01-01';
ExecSQL;
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmProductOrderLBNameSet.Panel10MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
TWinControl(Panel4).Perform(WM_SYSCOMMAND,$F012,0);
end;
procedure TfrmProductOrderLBNameSet.Button1Click(Sender: TObject);
var
fPrintFile:string;
Porderno,LBName:string;
i,j:Integer;
OrderKg:Double;
begin
if Order_Main.IsEmpty then Exit;
LBName:=RadioGroup1.Items.Strings[RadioGroup1.ItemIndex];
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\'+Trim(LBName)+'.rmf' ;
if RadioGroup1.ItemIndex=0 then
begin
with ADOQueryPrint do
begin
Close;
sql.Clear;
sql.Add('select A.*,B.*,ColorCount=(select isnull(Count(*),0) from JYOrder_Sub where MainId=A.MainId), ');
sql.add('ZQty=(select sum(PRTOrderQty) from JYOrder_Sub where MainId=A.MainId)');
SQL.Add(', Case when B.OrderUnit=''M'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'') ');
sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' ');
SQL.Add(' when B.OrderUnit=''Y'' then Cast (dbo.F_Get_Order_MFKZ(A.MainId,''MF'')');
sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as varchar(20))+''Kg'' ');
sql.Add(' else '''' end as PRTOrderKgQtyStr ');
sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId ');
sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
Open;
end;
end else
begin
with ADOQueryPrint do
begin
Close;
sql.Clear;
sql.Add('exec P_View_OrderSub :begdate,:enddate,:wsql ');
Parameters.ParamByName('WSql').Value:=' and A.MainId='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''';
Parameters.ParamByName('begdate').Value:='1899-01-01';
Parameters.ParamByName('enddate').Value:='2050-01-01';
Open;
end;
if Trim(ADOQueryPrint.FieldByName('PRTHX').AsString)<>'' then
begin
if Trim(LBName)='<27><>ɫ<EFBFBD><C9AB>' then
begin
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\<5C><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.rmf' ;
end;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(sum(PRTOrderKgQty),0) PRTOrderKgHZQty from(');
sql.Add('select ');
SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') ');
sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,2))');
SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')');
sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,2)) ');
sql.Add(' else 0 end as PRTOrderKgQty');
sql.Add(' from JYOrder_Main A inner join JYOrder_Sub B on A.MainId=B.MainId ');
sql.Add(' and A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+''')AA');
Open;
end;
OrderKg:=ADOQueryTemp.fieldbyname('PRTOrderKgHZQty').Value;
SCreateCDS20(ADOQueryPrint,CDS_Print);
SInitCDSData20(ADOQueryPrint,CDS_Print);
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
if OrderKg>0 then
RMVariables['OrderKg']:='/'+Trim(FloatToStr(OrderKg))+'Kg'
else
RMVariables['OrderKg']:='';
RM1.ShowReport;
end else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\'+Trim(LBName)+'.rmf'),'<27><>ʾ',0);
end;
end;
procedure TfrmProductOrderLBNameSet.Image2Click(Sender: TObject);
begin
Panel4.Visible:=False;
end;
procedure TfrmProductOrderLBNameSet.ToolButton2Click(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) ) ;
labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) );
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set LBName='''+Trim(labname)+'''');
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('LbName').Value:=labname;
Post;
end;
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;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmProductOrderLBNameSet.ToolButton3Click(Sender: TObject);
var
FPiZhong:string;
FReal:Double;
begin
if Trim(PiZhong.Text)='' then
begin
Application.MessageBox(<>ز<EFBFBD><D8B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if TryStrToFloat(PiZhong.Text,FReal)=False then
begin
Application.MessageBox(<>طǷ<D8B7><C7B7><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set PiZhong='+(PiZhong.Text));
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('PiZhong').Value:=PiZhong.Text;
Post;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmProductOrderLBNameSet.ToolButton4Click(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) ) ;
labname:=Trim(RightBStr(Ddatabase,Length(Ddatabase)-Pos('|',Ddatabase) ) );
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set NLBName='''+Trim(labname)+'''');
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('NLbName').Value:=labname;
Post;
end;
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;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmProductOrderLBNameSet.v1Column3PropertiesEditValueChanged(
Sender: TObject);
var
mvalues:string;
begin
mvalues:=TCXTextEdit(Sender).Text;
with Order_Main do
begin
edit;
fieldbyname('NLBName').Value:=mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
IF trim(mvalues)='' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set NLBName='''' ');
sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
end
end;
procedure TfrmProductOrderLBNameSet.v1Column1PropertiesEditValueChanged(
Sender: TObject);
var
mvalues,FFieldName:string;
begin
mvalues:=TCXTextEdit(Sender).Text;
FFieldName:=Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with Order_Main do
begin
edit;
fieldbyname(FFieldName).Value:=mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
IF trim(mvalues)='' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set'+Trim(FFieldName)+'='''' ');
sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
end
end;
procedure TfrmProductOrderLBNameSet.ToolButton5Click(Sender: TObject);
var
FReal:Double;
begin
if Trim(PiZhong.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if TryStrToFloat(PiZhong.Text,FReal)=False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set XS='+(PiZhong.Text));
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('XS').Value:=PiZhong.Text;
Post;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmProductOrderLBNameSet.v1Column6PropertiesEditValueChanged(
Sender: TObject);
var
mvalues:string;
begin
mvalues:=TCXTextEdit(Sender).Text;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set XSType='''+trim(mvalues)+''' ');
sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with Order_Main do
begin
edit;
fieldbyname('XSType').Value:=mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmProductOrderLBNameSet.Tv1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
IF Order_Main.IsEmpty then exit;
ToolButton1.Click;
end;
procedure TfrmProductOrderLBNameSet.ToolButton6Click(Sender: TObject);
var
fPrintFile:String;
Txt,fImagePath:string;
Moudle: THandle;
Makebar:TMakebar;
Mixtext:TMixtext;
begin
IF Order_Main.IsEmpty then exit;
IF trim(Order_Main.fieldbyname('LBName').AsString)='' then exit;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('exec P_Print_Cs_Roll ');
sql.Add('@mainID='''+trim(Order_Main.fieldbyname('mainID').AsString)+''' ');
Open;
end;
try
Moudle:=LoadLibrary('MakeQRBarcode.dll');
@Makebar:=GetProcAddress(Moudle,'Make');
@Mixtext:=GetProcAddress(Moudle,'MixText');
Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').AsString);
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\'+Trim(Order_Main.fieldbyname('LBName').AsString);//+'.rmf'
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE']:=fImagePath;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD>ҵ<EFBFBD>'+trim(fPrintFile)),'<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton7Click(Sender: TObject);
var
fPrintFile:String;
Txt,fImagePath:string;
Moudle: THandle;
Makebar:TMakebar;
Mixtext:TMixtext;
begin
IF Order_Main.IsEmpty then exit;
IF trim(Order_Main.fieldbyname('NLBName').AsString)='' then exit;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('exec P_Print_Cs_Bao ');
sql.Add('@mainID='''+trim(Order_Main.fieldbyname('mainID').AsString)+''' ');
Open;
end;
try
Moudle:=LoadLibrary('MakeQRBarcode.dll');
@Makebar:=GetProcAddress(Moudle,'Make');
@Mixtext:=GetProcAddress(Moudle,'MixText');
Txt:=Trim(ADOQueryPrint.fieldbyname('MJID').AsString);
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\'+Trim(Order_Main.fieldbyname('NLBName').AsString)+'.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE']:=fImagePath;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD>ҵ<EFBFBD>'+trim(fPrintFile)),'<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmProductOrderLBNameSet.v1Column8PropertiesChange(
Sender: TObject);
var
mvalues:string;
begin
mvalues:=TCXTextEdit(Sender).Text;
with Order_Main do
begin
edit;
fieldbyname('Orddefstr15').Value:=mvalues;
post;
end;
tv1.Controller.EditingController.ShowEdit();
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set Orddefstr15='''+trim(mvalues)+''' ');
sql.Add('where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton8Click(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;
OpenDiaLog: TOpenDialog;
fFileName: string;
fFilePath: string;
begin
if Order_Main.IsEmpty then
exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
fFileName := '';
try
OpenDiaLog := TOpenDialog.Create(Self);
if OpenDiaLog.Execute then
begin
fFilePath := OpenDiaLog.FileName;
fFileName := ExtractFileName(OpenDiaLog.FileName);
end;
finally
end;
if trim(fFileName) = '' then
exit;
with order_Main do
begin
first;
while not Eof do
begin
if FieldByName('Ssel').AsBoolean = true then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set LBName=''' + Trim(fFileName) + '''');
sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
// sql.Add('Update JYOrder_Main Set LBName='''+Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString)+'''');
// sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
Edit;
FieldByName('SLbName').Value := trim(fFileName);
PostFileToData(fFileName, fFilePath);
end;
next;
end;
end;
with Order_Main do
begin
DisableControls;
first;
while not Eof do
begin
edit;
fieldbyname('Ssel').AsBoolean := False;
post;
next;
end;
first;
EnableControls;
end;
TBRafresh.Click;
end;
//var
// maxno:string;
//begin
// if Order_Main.IsEmpty then Exit;
// try
// frmLabelList:=TfrmLabelList.Create(Application);
// with frmLabelList do
// begin
// if ShowModal=1 then
// begin
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('Update JYOrder_Main Set LBName='''+Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString)+'''');
// sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
// ExecSQL;
// end;
// TBRafresh.Click;
// end;
// end;
// finally
// frmLabelList.Free;
// end;
//end;
procedure TfrmProductOrderLBNameSet.ToolButton9Click(Sender: TObject);
var
maxno:string;
begin
if Order_Main.IsEmpty then Exit;
try
frmLabelList:=TfrmLabelList.Create(Application);
with frmLabelList do
begin
if ShowModal=1 then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set NLBName='''+Trim(ADOQueryLabel.fieldbyname('labelCaption').AsString)+'''');
sql.Add(' where Mainid='''+Trim(Order_Main.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
TBRafresh.Click;
end;
end;
finally
frmLabelList.Free;
end;
end;
function TfrmProductOrderLBNameSet.PostFileToData(FBQ: string; fFilePath: string): boolean;
var
mFileName, fFileName, fpathFileName: string;
Stream: TMemoryStream;
mfileSize: integer;
mCreationTime: TdateTime;
mWriteTime: TdateTime;
begin
result := false;
fFileName := Trim(FBQ);
fpathFileName := Trim(fFilePath);
try
ADOQueryCmdSC.Connection.BeginTrans;
try
with ADOQueryCmdSC do
begin
close;
sql.Clear;
sql.Add('delete from RT_FileUpdate');
sql.Add('where FileName=' + quotedStr(trim(fFileName)));
execsql;
end;
with ADOQueryCmdSC do
begin
close;
sql.Clear;
sql.Add('select * from RT_FileUpdate');
sql.Add('where FileName=' + quotedStr(trim(fFileName)));
Open;
//////////////////////////
//<2F><>ȡ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ϣ
GetFileInfo(Trim(fpathFileName), mfileSize, mCreationTime, mWriteTime);
if RecordCount <= 0 then
begin
Append;
fieldByName('FileName').AsString := trim(fFileName);
end
else
begin
edit;
end;
fieldByName('FileEditDate').Value := mWriteTime;
fieldByName('FileCreateDate').Value := mCreationTime;
fieldByName('FileSize').Value := mfileSize;
fieldByName('Filler').Value := Dname;
fieldByName('LastEditer').Value := Dname;
fieldByName('LastEditTime').Value := SGetServerDateTime(ADOQueryTemp);
// if pos('.rmf',fFileName)>0 then
begin
fieldByName('FilePath').Value := 'report';
fieldByName('FileType').Value := '<27><><EFBFBD><EFBFBD>';
end;
// else if pos('.dll',fFileName)>0 then
// begin
// fieldByName('FilePath').Value :='';
// fieldByName('FileType').Value :='һ<><D2BB>';
// end
// else
// begin
// fieldByName('FilePath').Value :='';
// fieldByName('FileType').Value :='<27><><EFBFBD><EFBFBD>';
// end;
//<2F><>OLE<4C><45><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
ADOQueryCmdFileContent.LoadFromFile(fpathFileName);
//ADOQueryCmdFileContent.LoadFromStream(Stream);
post;
end;
finally
end;
result := true;
ADOQueryCmdSC.Connection.CommitTrans;
except
ADOQueryCmdSC.Connection.RollbackTrans;
Result := False;
application.MessageBox(pchar('<27><EFBFBD>ļ<EFBFBD>[' + trim(fFileName) + ']ʧ<><CAA7>!'), '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton10Click(Sender: TObject);
var
FPiZhong: string;
FReal: Double;
begin
if Order_Main.IsEmpty then
exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Trim(PiZhong.Text) = '' then
begin
Application.MessageBox('С<><D0A1>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if TryStrToFloat(PiZhong.Text, FReal) = False then
begin
Application.MessageBox('С<><D0A1>λ<EFBFBD><CEBB><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with order_Main do
begin
first;
while not Eof do
begin
if order_Main.FieldByName('Ssel').AsBoolean = true then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_main Set XSWS=' + Trim(PiZhong.Text));
sql.Add(' where mainID=''' + Trim(Order_Main.fieldbyname('mainID').AsString) + '''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('XSWS').Value := PiZhong.Text;
Post;
end;
end;
next;
end;
end;
// CheckBox1.Checked := False;
with Order_Main do
begin
DisableControls;
first;
while not Eof do
begin
edit;
fieldbyname('Ssel').AsBoolean := False;
post;
next;
end;
first;
EnableControls;
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton11Click(Sender: TObject);
var
FPiZhong: string;
FReal: Double;
begin
if Order_Main.IsEmpty then
exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Trim(PiZhong.Text) = '' then
begin
Application.MessageBox('С<><D0A1>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
if TryStrToFloat(PiZhong.Text, FReal) = False then
begin
Application.MessageBox('С<><D0A1>λ<EFBFBD><CEBB><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with order_Main do
begin
first;
while not Eof do
begin
if order_Main.FieldByName('Ssel').AsBoolean = true then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_main Set XSWS1=' + Trim(PiZhong.Text));
sql.Add(' where mainID=''' + Trim(Order_Main.fieldbyname('mainID').AsString) + '''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('XSWS1').Value := PiZhong.Text;
Post;
end;
end;
next;
end;
end;
// CheckBox1.Checked := False;
with Order_Main do
begin
DisableControls;
first;
while not Eof do
begin
edit;
fieldbyname('Ssel').AsBoolean := False;
post;
next;
end;
first;
EnableControls;
end;
end;
end.