D7XHshengfang/盛纺贸易管理/U_ProductOrderLBNameSet.pas
DESKTOP-E401PHE\Administrator 0cb161cfb3 ~
2025-04-30 23:58:03 +08:00

928 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, cxButtonEdit, 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;
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;
OrderNo: TEdit;
v1OrdDate: TcxGridDBColumn;
v1DeliveryDate: TcxGridDBColumn;
v1ConNo: TcxGridDBColumn;
v1MPRTSpec: TcxGridDBColumn;
Order_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
v1CustomerNoName: TcxGridDBColumn;
Label4: TLabel;
CustomerNoName: TEdit;
v1MPRTCodeName: TcxGridDBColumn;
v1MPRTMF: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
ToolButton1: TToolButton;
Label8: TLabel;
MPRTCodeName: TEdit;
Label9: TLabel;
ConNoHZ: 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;
v1Column2: TcxGridDBColumn;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
PiZhong: TEdit;
ToolButton4: TToolButton;
v1Column5: TcxGridDBColumn;
ToolButton5: TToolButton;
v1Column6: TcxGridDBColumn;
v1khconNoHZ: TcxGridDBColumn;
v1ComTaiTou: TcxGridDBColumn;
Label2: TLabel;
Label5: TLabel;
KHconNoHZ: TEdit;
YWY: TEdit;
v1LengUnit: TcxGridDBColumn;
v1OrderNo: TcxGridDBColumn;
v1LBName: TcxGridDBColumn;
v1NLBName: TcxGridDBColumn;
TJBQ: TToolButton;
TBYL: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
v1FBQName: 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 TBRafreshClick(Sender: TObject);
procedure OrderNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure OrderNoKeyPress(Sender: TObject; var Key: Char);
procedure ConNoHZKeyPress(Sender: TObject; var Key: Char);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure v1Column6PropertiesEditValueChanged(Sender: TObject);
procedure v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v1LengUnitPropertiesEditValueChanged(Sender: TObject);
procedure TJBQClick(Sender: TObject);
procedure TBYLClick(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
private
DQdate: TDateTime;
procedure InitGrid();
procedure InitForm();
{ Private declarations }
public
FFInt, FCloth: Integer;
canshu1: string;
{ Public declarations }
end;
var
frmProductOrderLBNameSet: TfrmProductOrderLBNameSet;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_CustModelLabel, U_OrderInPutPrice;
{$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;
DQdate := SGetServerDate(ADOQueryTemp);
end;
procedure TfrmProductOrderLBNameSet.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>2', 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_OrderLabelSet :begdate,:enddate,:WSql');
if trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
Parameters.ParamByName('WSql').Value := ' and (Filler=''' + Trim(DName) + ''' or LiDanPerson=''' + Trim(DName) + ''' or YWY=''' + Trim(DName) + ''')'
else
Parameters.ParamByName('WSql').Value := '';
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>2', Tv1, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 7;
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
canshu1 := trim(DParameters1);
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.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmProductOrderLBNameSet.OrderNoChange(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();
end;
procedure TfrmProductOrderLBNameSet.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if ToolButton1.Visible = False then
Exit;
ToolButton1.Click;
end;
procedure TfrmProductOrderLBNameSet.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmProductOrderLBNameSet.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmProductOrderLBNameSet.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmOrderInPutPrice := TfrmOrderInPutPrice.Create(Application);
with frmOrderInPutPrice do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
ToolBar2.Visible := False;
ToolBar3.Visible := False;
ToolBar4.Visible := False;
TBSave.Visible := False;
if ShowModal = 1 then
begin
end;
end;
finally
frmOrderInPutPrice.Free;
end;
end;
procedure TfrmProductOrderLBNameSet.OrderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
if Length(OrderNo.Text) < 3 then
Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.add('exec P_View_OrderLabelSet :begdate,:enddate,:WSql');
begin
Parameters.ParamByName('WSql').Value := ' and orderno like ''' + '%' + Trim(OrderNo.Text) + '%' + '''';
end;
Parameters.ParamByName('begdate').Value := '';
ExecSQL;
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmProductOrderLBNameSet.ConNoHZKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
if Length(connoHZ.Text) < 3 then
Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.add('exec P_View_OrderLabelSet :begdate,:enddate,:WSql');
begin
Parameters.ParamByName('WSql').Value := ' and connoHZ like ''' + '%' + Trim(connoHZ.Text) + '%' + '''';
end;
Parameters.ParamByName('begdate').Value := '';
ExecSQL;
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton2Click(Sender: TObject);
var
labname: string;
begin
if Order_Main.IsEmpty then
Exit;
{if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;}
try
frmCustModelLabel := TfrmCustModelLabel.Create(Application);
with frmCustModelLabel do
begin
if ShowModal = 1 then
begin
labname := Trim(frmCustModelLabel.ClientDataSet1.fieldbyname('labelCaption').AsString);
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;
finally
frmCustModelLabel.Free;
end;
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);
var
labname: string;
begin
if Order_Main.IsEmpty then
Exit;
{if Trim(Order_Main.fieldbyname('Filler').AsString)<>Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;}
try
frmCustModelLabel := TfrmCustModelLabel.Create(Application);
with frmCustModelLabel do
begin
if ShowModal = 1 then
begin
labname := Trim(frmCustModelLabel.ClientDataSet1.fieldbyname('labelCaption').AsString);
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;
finally
frmCustModelLabel.Free;
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=''' + trim(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.v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'xsType';
flagname := '<27><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
with Order_Main do
begin
edit;
fieldbyname('xsType').AsString := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main set xsType=''' + trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + ''' ');
sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmProductOrderLBNameSet.v1LengUnitPropertiesEditValueChanged(Sender: TObject);
var
mvalues: string;
begin
mvalues := TCXTextEdit(Sender).Text;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set LengUnit=''' + trim(mvalues) + ''' ');
sql.Add('where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
ExecSQL;
end;
with Order_Main do
begin
edit;
fieldbyname('LengUnit').Value := mvalues;
post;
end;
end;
procedure TfrmProductOrderLBNameSet.TJBQClick(Sender: TObject);
var
fPrintFile, fPrintFile1, fPrintFile2: string;
Txt, Txt1, Txt2, Txt3, fImagePath, fImagePath1, fImagePath2, fImagePath3, FKHZ, FDETM, FKHY, FTM, Txt4, fImagePath4: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if Order_Main.IsEmpty then
Exit;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 ConNoHZ=(select Top 1 Q.ConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',KHConNo=(select Top 1 Q.KHConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',QtyUnit=C.OrderUnit,B.orderNo,GangNo=cast(''0001'' as varchar(6)),mjxh=cast(''0001'' as varchar(6)),MZ=cast(''0001'' as varchar(6))');
sql.Add(',B.MaiTouNote,B.MPRTCode,B.LBName,B.NLBName,B.FBQName,MJQty4=cast(20 as decimal(18,2)),MJLen=cast(50.00 as decimal(18,2)) ');
sql.Add(',TLen=cast(50.00 as varchar(10))');
sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)');
sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.PRTColorEng OrdPRTColorEng,SOrddefstr4=cast('''' as varchar(50))');
sql.Add(',B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,B.LengUnit,PiQty=Cast(0 as decimal(18,2)) ');
sql.Add(',MQty=cast(1.58 as decimal(18,2)),HS=cast(''1803'' as varchar(6)),C.XHInt XHNo');
sql.Add(',mjstr4=''1'' ');
SQL.ADD(',B.MPRTMF PRTMF,B.MPRTKZ PRTKZ,B.MPRTCodeName PRTCodeName,PRTCode=cast('''' as varchar(50)),B.CustomerNoName,C.*');
sql.Add(',MJXH1=cast('''' as varchar(100)),TM=cast('''' as varchar(30)),DETM=cast('''' as varchar(40)),MJMaoZ=cast(20 as decimal(18,2))');
sql.Add(' from JYOrder_Main B ');
sql.Add(' inner join JYOrder_Sub C on B.Mainid=C.Mainid');
sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' ');
SQL.Add(' where B.Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
Open;
end;
SCreateCDS20(ADOQueryPrint, CDS_Print);
SInitCDSData20(ADOQueryPrint, CDS_Print);
FKHZ := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 1, 3);
FKHY := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 5, 7);
if CDS_Print.FieldByName('CustomerNoName').AsString = 'MARLAN' then
begin
FDETM := FormatDateTime('yy', SGetServerDate(ADOQueryCmd)) + Trim(CDS_Print.fieldbyname('KHConNo').AsString) + '@' + Trim(CDS_Print.fieldbyname('styleNo').AsString) + Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString) + '@' + '1200';
with CDS_Print do
begin
Edit;
FieldByName('DETM').AsString := Trim(FDETM);
end;
end
else
begin
FTM := trim(FKHZ) + trim(FKHY) + copy(Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString), 1, 3) + '0500000010001';
with CDS_Print do
begin
Edit;
FieldByName('TM').AsString := Trim(FTM);
end;
end;
with CDS_Print do
begin
Edit;
FieldByName('MJXH1').AsString := '32' + copy(Trim(CDS_Print.fieldbyname('OrderNo').AsString), 3, 4) + '20200101' + RightStr('10000' + Trim(ADOQueryPrint.fieldbyname('MJXH').AsString), 4);
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(CDS_Print.fieldbyname('TM').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;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt1 := '32' + copy(Trim(CDS_Print.fieldbyname('OrderNo').AsString), 3, 4) + '20100101' + RightStr('10000' + Trim(ADOQueryPrint.fieldbyname('MJXH').AsString), 4);
fImagePath1 := ExtractFilePath(Application.ExeName) + 'image\temp1.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath1) then
DeleteFile(fImagePath1);
Makebar(pchar(Txt1), Length(Txt1), 3, 3, 0, PChar(fImagePath1), 4);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt2 := 'NWJ01.100;' + Trim(ADOQueryPrint.fieldbyname('styleNo').AsString) + ';801;' + Trim(ADOQueryPrint.fieldbyname('PRTHX').AsString) + ';' + Trim(ADOQueryPrint.fieldbyname('MJQty4').AsString) + ';' + Trim(ADOQueryPrint.fieldbyname('MJlen').AsString) + ';' + RightStr('10000' + Trim(ADOQueryPrint.fieldbyname('MJXH').AsString), 4);
fImagePath2 := ExtractFilePath(Application.ExeName) + 'image\temp2.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath2) then
DeleteFile(fImagePath2);
Makebar(pchar(Txt2), Length(Txt2), 3, 3, 0, PChar(fImagePath2), 4);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt3 := Trim(CDS_Print.fieldbyname('MJXH1').AsString);
fImagePath3 := ExtractFilePath(Application.ExeName) + 'image\temp3.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath3) then
DeleteFile(fImagePath3);
Makebar(pchar(Txt3), Length(Txt3), 3, 3, 0, PChar(fImagePath3), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt4 := '{"A":"' + Trim(ADOQueryPrint.fieldbyname('KHConNO').AsString) + '","B":"' + Trim(ADOQueryPrint.fieldbyname('StyleNo').AsString) + '","C":"' + Trim(ADOQueryPrint.fieldbyname('mjqty4').AsString) + '","D":"' + Trim(ADOQueryPrint.fieldbyname('MJlen').AsString) + '","E":"' + Trim(ADOQueryPrint.fieldbyname('mjstr4').AsString) + '","F":"' + RightStr(('10000' + trim(ADOQueryPrint.fieldbyName('MJXH').AsString)), 4) + '"}';
fImagePath4 := ExtractFilePath(Application.ExeName) + 'image\temp4.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath4) then
DeleteFile(fImagePath4);
Makebar(pchar(Txt4), Length(Txt4), 3, 3, 0, PChar(fImagePath4), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
if Trim(CDS_Print.fieldbyname('LBName').AsString) <> '' then
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(CDS_Print.fieldbyname('LBName').AsString) + '.rmf'
else
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͨ<><CDA8>Ӣ<EFBFBD>ı<EFBFBD>ǩ.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RMVariables['QRBARCODE1'] := fImagePath1;
RMVariables['QRBARCODE2'] := fImagePath2;
RMVariables['QRBARCODE3'] := fImagePath3; //'32' + copy(Trim(CDS_Print.fieldbyname('OrderNo').AsString), 3, 4) + '20200101' + RightStr('10000' + Trim(ADOQueryPrint.fieldbyname('MJXH').AsString), 4);
RMVariables['QRBARCODE4'] := fImagePath4;
RMVariables['MJXH1'] := trim(Txt3);
RMVariables['ID'] := trim(CDS_Print.fieldbyname('HS').AsString) + Trim(CDS_Print.fieldbyname('XHNo').AsString);
RMVariables['FMPRTMF'] := StrToFloatDef(CDS_Print.fieldbyname('MPRTMF').AsString, 0) / 100;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Order_Main.EnableControls;
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ǩ.rmf'), '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmProductOrderLBNameSet.TBYLClick(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath, FKHZ, FDETM, FKHY, FTM: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if Order_Main.IsEmpty then
Exit;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 ConNoHZ=(select Top 1 Q.ConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',KHConNo=(select Top 1 Q.KHConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',QtyUnit=C.OrderUnit,B.orderNo,GangNo=cast(''0001'' as varchar(6)),mjxh=cast(''0001'' as varchar(6)),MZ=cast(''0001'' as varchar(6))');
sql.Add(',B.MaiTouNote,B.MPRTCode,B.LBName,B.NLBName,MJQty4=cast(12 as decimal(18,2)),MJLen=cast(12 as decimal(18,2)) ');
sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)');
sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.PRTColorEng OrdPRTColorEng,SOrddefstr4=cast('''' as varchar(50))');
sql.Add(',B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,B.LengUnit,PiQty=Cast(0 as decimal(18,2)) ');
sql.Add(',MQty=cast(1.58 as decimal(18,2)),HS=cast(''1803'' as varchar(6)),C.XHInt XHNo');
SQL.ADD(',B.MPRTMF PRTMF,B.MPRTKZ PRTKZ,B.MPRTCodeName PRTCodeName,PRTCode=cast('''' as varchar(50)),B.CustomerNoName,C.*');
sql.Add(',TM=cast('''' as varchar(30)),DETM=cast('''' as varchar(40)),MJMaoZ=cast(12 as decimal(18,2)),BaoNo=cast(''1'' as varchar(50)),BaoID=cast(''123'' as varchar(50))');
sql.Add(' from JYOrder_Main B ');
sql.Add(' inner join JYOrder_Sub C on B.Mainid=C.Mainid');
sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' ');
SQL.Add(' where B.Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
Open;
end;
SCreateCDS20(ADOQueryPrint, CDS_Print);
SInitCDSData20(ADOQueryPrint, CDS_Print);
FKHZ := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 1, 3);
FKHY := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 5, 7);
if CDS_Print.FieldByName('CustomerNoName').AsString = 'MARLAN' then
begin
FDETM := FormatDateTime('yy', SGetServerDate(ADOQueryCmd)) + Trim(CDS_Print.fieldbyname('KHConNo').AsString) + '@' + Trim(CDS_Print.fieldbyname('styleNo').AsString) + Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString) + '@' + '1200';
with CDS_Print do
begin
Edit;
FieldByName('DETM').AsString := Trim(FDETM);
end;
end
else
begin
FTM := trim(FKHZ) + trim(FKHY) + copy(Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString), 1, 3) + '0120000010001';
with CDS_Print do
begin
Edit;
FieldByName('TM').AsString := Trim(FTM);
end;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(CDS_Print.fieldbyname('TM').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;
if Trim(CDS_Print.fieldbyname('NLBName').AsString) <> '' then
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(CDS_Print.fieldbyname('NLBName').AsString) + '.rmf'
else
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͨ<><CDA8>Ӣ<EFBFBD>ı<EFBFBD>ǩ.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RMVariables['ID'] := trim(CDS_Print.fieldbyname('HS').AsString) + Trim(CDS_Print.fieldbyname('XHNo').AsString);
RMVariables['FMPRTMF'] := StrToFloatDef(CDS_Print.fieldbyname('MPRTMF').AsString, 0) / 100;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Order_Main.EnableControls;
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ǩ.rmf'), '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton6Click(Sender: TObject);
var
labname: string;
begin
if Order_Main.IsEmpty then
Exit;
try
frmCustModelLabel := TfrmCustModelLabel.Create(Application);
with frmCustModelLabel do
begin
if ShowModal = 1 then
begin
labname := Trim(frmCustModelLabel.ClientDataSet1.fieldbyname('labelCaption').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Main Set FBQName=''' + Trim(labname) + '''');
sql.Add(' where Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
ExecSQL;
end;
with Order_Main do
begin
Edit;
FieldByName('FBQName').Value := labname;
Post;
end;
end;
end;
finally
frmCustModelLabel.Free;
end;
end;
procedure TfrmProductOrderLBNameSet.ToolButton7Click(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath, FKHZ, FDETM, FKHY, FTM: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if Order_Main.IsEmpty then
Exit;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 ConNoHZ=(select Top 1 Q.ConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',KHConNo=(select Top 1 Q.KHConNo from JYOrderCon_Main Q ');
sql.Add(' inner join JYOrder_ConORD W on Q.MainId=W.ConMainId where W.MainId=B.MainId)');
sql.Add(',QtyUnit=C.OrderUnit,B.orderNo,GangNo=cast(''0001'' as varchar(6)),mjxh=cast(''0001'' as varchar(6)),MZ=cast(''0001'' as varchar(6))');
sql.Add(',B.MaiTouNote,B.MPRTCode,B.LBName,B.NLBName,B.FBQName,MJQty4=cast(12 as decimal(18,2)),MJLen=cast(12 as decimal(18,2)) ');
sql.Add(',MPRTCodeNameEng=ISNULL((select Top 1 F.note from KH_Zdy F where F.zdyname=B.MPRTCodeName and F.Type=''PRTCodeName''),B.MPRTCodeName)');
sql.Add(',B.MPRTCF,B.MPRTMF,B.MPRTKZ,C.PRTColorEng OrdPRTColorEng,SOrddefstr4=cast('''' as varchar(50))');
sql.Add(',B.MPRTCodeName,B.MPRTSpec,B.MPRTKuanNO,B.LengUnit,PiQty=Cast(0 as decimal(18,2)) ');
sql.Add(',MQty=cast(1.58 as decimal(18,2)),HS=cast(''1803'' as varchar(6)),C.XHInt XHNo');
SQL.ADD(',B.MPRTMF PRTMF,B.MPRTKZ PRTKZ,B.MPRTCodeName PRTCodeName,PRTCode=cast('''' as varchar(50)),B.CustomerNoName,C.*');
sql.Add(',TM=cast('''' as varchar(30)),DETM=cast('''' as varchar(40)),MJMaoZ=cast(12 as decimal(18,2))');
sql.Add(' from JYOrder_Main B ');
sql.Add(' inner join JYOrder_Sub C on B.Mainid=C.Mainid');
sql.Add(' left join KH_Zdy E on C.PRTColor=E.ZdyName and E.Type=''OrdColor'' ');
SQL.Add(' where B.Mainid=''' + Trim(Order_Main.fieldbyname('Mainid').AsString) + '''');
Open;
end;
SCreateCDS20(ADOQueryPrint, CDS_Print);
SInitCDSData20(ADOQueryPrint, CDS_Print);
FKHZ := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 1, 3);
FKHY := Copy(Trim(CDS_Print.fieldbyname('styleNo').AsString), 5, 7);
if CDS_Print.FieldByName('CustomerNoName').AsString = 'MARLAN' then
begin
FDETM := FormatDateTime('yy', SGetServerDate(ADOQueryCmd)) + Trim(CDS_Print.fieldbyname('KHConNo').AsString) + '@' + Trim(CDS_Print.fieldbyname('styleNo').AsString) + Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString) + '@' + '1200';
with CDS_Print do
begin
Edit;
FieldByName('DETM').AsString := Trim(FDETM);
end;
end
else
begin
FTM := trim(FKHZ) + trim(FKHY) + copy(Trim(CDS_Print.fieldbyname('PRTHX').AsString) + Trim(CDS_Print.fieldbyname('PRTColorEng').AsString), 1, 3) + '0120000010001';
with CDS_Print do
begin
Edit;
FieldByName('TM').AsString := Trim(FTM);
end;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(CDS_Print.fieldbyname('TM').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;
if Trim(CDS_Print.fieldbyname('FBQName').AsString) <> '' then
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(CDS_Print.fieldbyname('FBQName').AsString) + '.rmf'
else
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͨ<><CDA8>Ӣ<EFBFBD>ı<EFBFBD>ǩ.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RMVariables['ID'] := trim(CDS_Print.fieldbyname('HS').AsString) + Trim(CDS_Print.fieldbyname('XHNo').AsString);
RMVariables['FMPRTMF'] := StrToFloatDef(CDS_Print.fieldbyname('MPRTMF').AsString, 0) / 100;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Order_Main.EnableControls;
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>ǩ.rmf'), '<27><>ʾ', 0);
Exit;
end;
end;
end.