D7yrshuangjian/染整计划(DyeingFinishingPlan.dll)/U_OrderInPut.pas
DESKTOP-E401PHE\Administrator 28bc8fedc3 ~
2025-09-06 16:32:36 +08:00

1039 lines
29 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_OrderInPut;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo,
cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit,
StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils,
cxCurrencyEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxDropDownEdit,
RM_Common, RM_Preview, RM_System, RM_Class, RM_GridReport, cxPC, Menus,
cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu, 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
TfrmOrderInPut = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ScrollBox1: TScrollBox;
Label1: TLabel;
OrderNo: TEdit;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
Label10: TLabel;
ConNo: TEdit;
Label3: TLabel;
Label14: TLabel;
Label12: TLabel;
Label13: TLabel;
OrdDate: TDateTimePicker;
CustomerNoName: TBtnEditC;
Label2: TLabel;
Label6: TLabel;
Label19: TLabel;
Label25: TLabel;
DLYDate: TDateTimePicker;
Label26: TLabel;
MPRTCode: TBtnEditC;
MPRTBZNote: TMemo;
Note: TMemo;
Label23: TLabel;
MPRTMF: TEdit;
MPRTSpec: TEdit;
MPRTKZ: TEdit;
ADOQueryLabel: TADOQuery;
RMGridReport1: TRMGridReport;
Label8: TLabel;
YWY: TBtnEditC;
Label11: TLabel;
orderType: TComboBox;
PRTColor: TEdit;
MPRTCodeName: TBtnEditC;
Label5: TLabel;
PRTPs: TEdit;
Label9: TLabel;
PRTOrderQty: TEdit;
Label15: TLabel;
OrderUnit: TEdit;
Label16: TLabel;
cxPageControl1: TcxPageControl;
cxTabSheet3: TcxTabSheet;
cxTabSheet4: TcxTabSheet;
ToolBar2: TToolBar;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
V3Column1: TcxGridDBColumn;
V3Column2: TcxGridDBColumn;
V3Column3: TcxGridDBColumn;
V3Column4: TcxGridDBColumn;
V3Column5: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
ToolBar3: TToolBar;
ToolButton1: TToolButton;
ToolButton6: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
cxGrid2: TcxGrid;
TV2: TcxGridDBTableView;
TV2Column1: TcxGridDBColumn;
TV2Column2: TcxGridDBColumn;
TV2Column3: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
PopupMenu1: TPopupMenu;
N2: TMenuItem;
N1: TMenuItem;
CDS_PBCK: TClientDataSet;
DS_PBKC: TDataSource;
ADO_PBCK: TADOQuery;
CDS_Glide: TClientDataSet;
DS_Glide: TDataSource;
Label4: TLabel;
Label7: TLabel;
PiZhong: TEdit;
KongJia: TEdit;
Label17: TLabel;
PCZQty: TEdit;
V1Column1: TcxGridDBColumn;
V1Column2: TcxGridDBColumn;
Label18: TLabel;
RCBatchNo: TEdit;
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure CustomerNoNameBtnUpClick(Sender: TObject);
procedure CustomerNoNameBtnDnClick(Sender: TObject);
procedure MPRTCodeNameBtnUpClick(Sender: TObject);
procedure OrdDefStr2BtnUpClick(Sender: TObject);
procedure YCLFactoryBtnUpClick(Sender: TObject);
procedure MPRTSCTeBieNoteBtnUpClick(Sender: TObject);
procedure MPRTBZNoteDblClick(Sender: TObject);
procedure MPRTCodeBtnUpClick(Sender: TObject);
procedure PRTColorChange(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
procedure InitData();
procedure ZDYHelp(FButn: TcxButtonEdit; LType: string);
function SaveData(): Boolean;
function getOrderNo(fconNo: string): string;
function CheckData(): Boolean;
procedure InitPBCK();
{ Private declarations }
public
PState, CopyInt, PriceFlag: Integer;
FMainId, FSubId, FKCID, FCRNO, FFMainId, FOrderNo, FPCZQty: string;
FXS: Integer;
canshu1: string;
fFlileFlag: string;
{ Public declarations }
end;
var
frmOrderInPut: TfrmOrderInPut;
newh: hwnd;
implementation
uses
U_DataLink, U_ZDYHelp, U_Fun, U_ZDYHelpSel, U_ZdyAttachment, U_ZdyAttachGYS,
U_CPManageSel, getpic, U_LabelList, U_ProductFileSel, U_PBCKCMSel, U_PBKcList,
U_GXGL_List_DXCX;
{$R *.dfm}
procedure TfrmOrderInPut.InitPBCK();
begin
try
with ADO_PBCK do
begin
close;
sql.Clear;
sql.Add('select A.*');
sql.Add(',KCPS=(select X.KCPS from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CRID=A.KCID)');
sql.Add('from JYOrder_PBKC A ');
sql.Add(' where A.MainID=' + QUOTEDSTR(Trim(FMainID)));
sql.Add(' AND A.SUBID=' + QUOTEDSTR(Trim(FSUBID)));
// ShowMessage(SQL.Text);
open;
end;
SCreateCDS20(ADO_PBCK, CDS_PBCK);
SInitCDSData20(ADO_PBCK, CDS_PBCK);
finally
end;
end;
function TfrmOrderInPut.CheckData(): Boolean;
var
mvalue, FReal: double;
begin
OrdDate.SetFocus;
try
// if Trim(conNo.Text) = '' then
// raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>');
if Trim(MPRTCodeName.Text) = '' then
raise Exception.Create('<27><>Ʒ<EFBFBD><C6B7><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>');
// if Order_Sub.IsEmpty then
// raise Exception.Create('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>');
//
// if Order_Sub.Locate('PRTOrderQty', null, []) then
// raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>');
Result := True;
except
Result := false;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
function TfrmOrderInPut.getOrderNo(fconNo: string): string;
var
str1: string;
i: integer;
begin
str1 := trim(fconNo) + '01';
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select MainID from JYOrder_Main where orderNo=' + quotedstr(trim(str1)));
open;
end;
if not ADOTemp.IsEmpty then
begin
for i := 1 to 99 do
begin
str1 := trim(fconNo) + rightstr(inttostr(100 + i), 2);
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('select MainID from JYOrder_Main where orderNo=' + quotedstr(trim(str1)));
open;
end;
if ADOCmd.IsEmpty then
break;
end;
end;
result := str1;
end;
procedure TfrmOrderInPut.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(Self.Caption, Tv1, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmOrderInPut.InitData();
begin
if PState = 0 then
begin
OrdDate.DateTime := SGetServerDateTime(ADOTemp);
DlyDate.DateTime := OrdDate.DateTime;
ConNo.Text := FCRNO;
PCZQty.Text := FPCZQty;
end;
//**********************ˢ<>¼ƻ<C2BC><C6BB><EFBFBD><EFBFBD><EFBFBD>Ϣ*****************************
with ADOTemp do
begin
Close;
sql.Clear;
if PState = 0 then
begin
sql.Add('select X.* ');
sql.Add('from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.KCID= ' + QUOTEDSTR(Trim(FKCID)));
end
else
begin
sql.Add('select A.*,B.* from JYOrder_Main A inner join JYOrder_Sub B on A.Mainid=B.Mainid ');
sql.Add(' where B.SubId=' + Quotedstr(Trim(FSubId)));
end;
Open;
end;
if PState = 0 then
begin
CustomerNoName.Text := Trim(ADOTemp.FieldByName('fromFactoryName').AsString);
MPRTCode.Text := Trim(ADOTemp.FieldByName('Code').AsString);
MPRTCodeName.Text := Trim(ADOTemp.FieldByName('CodeName').AsString);
// MPRTMF.Text := Trim(ADOTemp.FieldByName('MF').AsString);
// MPRTKZ.Text := Trim(ADOTemp.FieldByName('KZ').AsString);
MPRTSpec.Text := Trim(ADOTemp.FieldByName('BatchNo').AsString);
RCBatchNo.Text := Trim(ADOTemp.FieldByName('RCBatchNo').AsString);
PRTColor.Text := Trim(ADOTemp.FieldByName('CPColor').AsString);
PRTPs.Text := Trim(ADOTemp.FieldByName('PS').AsString);
PRTOrderQty.Text := Trim(ADOTemp.FieldByName('Qty').AsString);
OrderUnit.Text := Trim(ADOTemp.FieldByName('QtyUnit').AsString);
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add(' select top 1 A.* from JYOrder_Main A ');
sql.Add(' where A.ConNo=' + Quotedstr(Trim(ConNo.Text)));
sql.Add(' and A.Status=''1'' order by A.OrdDate desc');
Open;
end;
if Trim(MPRTKZ.Text) = '' then
MPRTMF.Text := Trim(ADOTemp.FieldByName('MPRTMF').AsString);
if Trim(MPRTKZ.Text) = '' then
MPRTKZ.Text := Trim(ADOTemp.FieldByName('MPRTKZ').AsString);
if Trim(PiZhong.Text) = '' then
PiZhong.Text := Trim(ADOTemp.FieldByName('PiZhong').AsString);
if Trim(KongJia.Text) = '' then
KongJia.Text := Trim(ADOTemp.FieldByName('KongJia').AsString);
if Trim(Note.Text) = '' then
Note.Text := Trim(ADOTemp.FieldByName('Note').AsString);
end
else
begin
SCSHDataNew(ADOTemp, ScrollBox1, 1);
SCSHDataNew(ADOTemp, ScrollBox1, 2);
end;
//**********************ˢ<>¼ƻ<C2BC><C6BB><EFBFBD><EFBFBD><EFBFBD>Ϣ*****************************
//**********************ˢ<>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
with ADOTemp do
begin
Close;
SQL.Clear;
if PState = 0 then
begin
sql.Add('select CodeName,X.KCPS,X.MF,X.KZ,X.KCId,PBKCID='''',MainId='''',SubId='''', FPPS=KCPS,YYPS=0 ');
sql.Add('from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.KCID= ' + QUOTEDSTR(Trim(FKCID)));
end
else
begin
sql.Add('select A.*');
sql.Add(',CodeName=(select X.CodeName from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CRID=A.KCID)');
sql.Add(',KCPS=(select X.KCPS from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CRID=A.KCID)');
sql.Add(',MF=(select X.MF from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CRID=A.KCID)');
sql.Add(',KZ=(select X.KZ from CK_PB_CR X where X.Valid=''Y'' and X.CRFlag=''<27><><EFBFBD><EFBFBD>'' and X.CRID=A.KCID)');
sql.Add('from JYOrder_PBKC A ');
sql.Add('where A.MainID=' + QUOTEDSTR(Trim(FMainID)));
sql.Add('AND A.SUBID=' + QUOTEDSTR(Trim(FSUBID)));
end;
Open;
end;
SCreateCDS20(ADOTemp, CDS_PBCK);
SInitCDSData20(ADOTemp, CDS_PBCK);
//**********************ˢ<>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
//**********************ˢ<>¹<EFBFBD><C2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
if PState = 0 then
begin
with ADOTemp do
begin
Close;
SQL.Clear;
sql.Add('select GlideNo='''',GlideIdx,CarNo='''',MainId='''',SubId='''',GlideName,RollNum,Qty,QtyUnit,Filler,Filltime,Editer,Edittime,Chker,ChkTime,Status,Valid,Note');
sql.Add('from JYOrder_Glide A ');
sql.Add(' where A.CarNo=(select top 1 OrderNo from JYOrder_Main X where X.MPRTCodeName=' + quotedstr(trim(MPRTCodeName.Text)));
sql.Add(' and Status=''1'' order by OrdDate desc)');
sql.Add(' order by Glideidx ');
Open;
end;
end
else
begin
with ADOTemp do
begin
Close;
SQL.Clear;
sql.Add('select A.*');
sql.Add('from JYOrder_Glide A ');
sql.Add('where A.CarNo=' + quotedstr(trim(FOrderNo)));
sql.Add(' order by Glideidx ');
Open;
end;
end;
SCreateCDS20(ADOTemp, CDS_Glide);
SInitCDSData20(ADOTemp, CDS_Glide);
//**********************ˢ<>¹<EFBFBD><C2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
//**********************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
if CopyInt = 99 then
begin
PState := 0;
FMainId := '';
FSubId := '';
OrderNo.Text := '';
end;
//**********************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*****************************
end;
procedure TfrmOrderInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string);
var
FType, ZDYName, FText: string;
begin
end;
procedure TfrmOrderInPut.FormShow(Sender: TObject);
begin
readCxGrid(Self.Caption, Tv1, '<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
OrderNo.Text := '';
fFlileFlag := UserDataFlag + 'HX';
InitData();
end;
function TfrmOrderInPut.SaveData(): Boolean;
var
maxno, Smaxno, maxorderno, MaxPBKCID, MaxGlideNo: string;
begin
try
ADOCmd.Connection.BeginTrans;
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*************************
if Trim(FMainId) = '' then
begin
if GetLSNo(ADOCmd, maxno, 'JM', 'JYOrder_Main', 3, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
if GetLSNo(ADOCmd, maxorderno, 'FH', 'JYOrder_Main', 3, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
FOrderNo := TRIM(maxorderno);
OrderNo.Text := TRIM(maxorderno);
end
else
begin
maxno := Trim(FMainId);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from JYOrder_Main where MainId=''' + Trim(FMainId) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(FMainId) = '' then
begin
Append;
FieldByName('status').Value := '1';
end
else
begin
Edit;
end;
FieldByName('MainId').Value := Trim(maxno);
SSetsaveSqlNew(ADOCmd, 'JYOrder_Main', ScrollBox1, 1);
if Trim(FMainId) = '' then
begin
FieldByName('Filler').Value := Trim(DName);
end
else
begin
FieldByName('Editer').Value := Trim(DName);
FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp);
end;
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main where orderno=''' + Trim(OrderNo.Text) + '''');
Open;
end;
if ADOCmd.RecordCount > 1 then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*************************
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>*************************
if Trim(FSubId) = '' then
begin
if GetLSNo(ADOCmd, Smaxno, 'JS', 'JYOrder_Sub', 4, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
Smaxno := Trim(FSubId);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from JYOrder_Sub where SubId=' + quotedstr(Trim(Trim(FSubId))));
Open;
end;
with ADOCmd do
begin
if Trim(FSubId) = '' then
begin
Append;
end
else
begin
Edit;
end;
FieldByName('MainId').Value := Trim(maxno);
FieldByName('SubId').Value := Trim(Smaxno);
SSetsaveSqlNew(ADOCmd, 'JYOrder_Sub', ScrollBox1, 2);
Post;
end;
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>*************************
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*************************
with CDS_PBCK do
begin
First;
while not Eof do
begin
if Trim(CDS_PBCK.fieldbyname('PBKCID').AsString) = '' then
begin
if GetLSNo(ADOCmd, MaxPBKCID, 'YK', 'JYOrder_PBKC', 4, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
MaxPBKCID := Trim(CDS_PBCK.fieldbyname('PBKCID').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from JYOrder_PBKC');
sql.Add('where PBKCID=' + QuotedStr(trim(MaxPBKCID)));
Open;
end;
with ADOCmd do
begin
if Trim(CDS_PBCK.fieldbyname('PBKCID').AsString) = '' then
Append
else
Edit;
FieldByName('MainId').Value := Trim(maxno);
FieldByName('SubId').Value := Trim(Smaxno);
FieldByName('KCId').Value := FieldByName('KCId').Value;
RTSetSaveDataCDS(ADOCmd, Tv1, CDS_PBCK, 'JYOrder_PBKC', 0);
FieldByName('PBKCID').Value := Trim(MaxPBKCID);
Post;
end;
CDS_PBCK.Edit;
CDS_PBCK.FieldByName('PBKCID').Value := Trim(MaxPBKCID);
Next;
end;
end;
//*************************<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*************************
//*************************<2A><><EFBFBD><EFBFBD><E6B9A4>*************************
with CDS_Glide do
begin
First;
while not Eof do
begin
if Trim(CDS_Glide.fieldbyname('GlideNo').AsString) = '' then
begin
if GetLSNo(ADOCmd, MaxGlideNo, 'CG', 'JYOrder_Glide', 4, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
MaxGlideNo := Trim(CDS_Glide.fieldbyname('GlideNo').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from JYOrder_Glide');
sql.Add('where GlideNo=' + QuotedStr(trim(MaxGlideNo)));
Open;
end;
with ADOCmd do
begin
if Trim(CDS_Glide.fieldbyname('GlideNo').AsString) = '' then
Append
else
Edit;
FieldByName('MainId').Value := Trim(maxno);
FieldByName('SubId').Value := Trim(Smaxno);
FieldByName('GlideNo').Value := Trim(MaxGlideNo);
FieldByName('CarNo').Value := Trim(FOrderNo);
RTSetSaveDataCDS(ADOCmd, Tv2, CDS_Glide, 'JYOrder_Glide', 0);
Post;
end;
CDS_Glide.Edit;
CDS_Glide.FieldByName('GlideNo').Value := Trim(MaxGlideNo);
Next;
end;
end;
//*************************<2A><><EFBFBD><EFBFBD><E6B9A4>*************************
ADOCmd.Connection.CommitTrans;
Result := True;
except
Result := False;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
end;
end;
procedure TfrmOrderInPut.TBSaveClick(Sender: TObject);
begin
if CheckData() = false then
exit;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ', 0);
ModalResult := 1;
end;
end;
procedure TfrmOrderInPut.CustomerNoNameBtnUpClick(Sender: TObject);
begin
try
frmZdyAttachment := TfrmZdyAttachment.Create(Application);
with frmZdyAttachment do
begin
// IF self.canshu1<>'<27><>Ȩ<EFBFBD><C8A8>' then canshu1:='ҵ<><D2B5>Ա';
if ShowModal = 1 then
begin
CustomerNoName.Text := Trim(CDS_HZ.fieldbyname('CoHRName').AsString);
CustomerNoName.TxtCode := Trim(CDS_HZ.fieldbyname('CoCode').AsString);
YWY.Text := Trim(CDS_HZ.fieldbyname('Salesman').AsString);
end;
end;
finally
frmZdyAttachment.Free;
end;
end;
procedure TfrmOrderInPut.CustomerNoNameBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmOrderInPut.MPRTCodeNameBtnUpClick(Sender: TObject);
begin
frmPBCKCMSel := TfrmPBCKCMSel.Create(self);
with frmPBCKCMSel do
begin
if showmodal = 1 then
begin
// MPRTCode.Text := CDS_HZ.fieldbyname('CYNo').asstring;
MPRTCodeName.Text := CDS_HZ.fieldbyname('CodeName').asstring;
// MPRTSpec.Text := CDS_HZ.fieldbyname('Spec').asstring;
MPRTMF.Text := CDS_HZ.fieldbyname('MF').asstring;
MPRTKZ.Text := CDS_HZ.fieldbyname('kz').asstring;
end;
free;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmOrderInPut.OrdDefStr2BtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut.YCLFactoryBtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrderInPut.MPRTSCTeBieNoteBtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TEdit(Sender).Text := ReturnStr;
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmOrderInPut.MPRTBZNoteDblClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
i: integer;
begin
fsj := Trim(TMemo(Sender).Hint);
FWZ := Pos('/', fsj);
i := 0;
try
frmZDYHelpSel := TfrmZDYHelpSel.Create(Application);
with frmZDYHelpSel do
begin
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TMemo(Sender).Lines.Clear;
with ClientDataSet1 do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean = True then
begin
i := i + 1;
TMemo(Sender).Lines.Add(inttostr(i) + '.' + FieldByName('ZDYName').AsString)
end;
Next;
end;
end;
end;
end;
finally
frmZDYHelpSel.Free;
end;
end;
procedure TfrmOrderInPut.MPRTCodeBtnUpClick(Sender: TObject);
begin
frmProductFileSel := TfrmProductFileSel.Create(self);
with frmProductFileSel do
begin
if showmodal = 1 then
begin
MPRTCode.Text := CDS_HZ.fieldbyname('SPCode').asstring;
MPRTCodeName.Text := CDS_HZ.fieldbyname('SPName').asstring;
MPRTSpec.Text := CDS_HZ.fieldbyname('SPSpec').asstring;
MPRTMF.Text := CDS_HZ.fieldbyname('SPMF').asstring;
MPRTKZ.Text := CDS_HZ.fieldbyname('SPKZ').asstring;
end;
free;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmOrderInPut.PRTColorChange(Sender: TObject);
begin
// if pos('#', mvalue) = 0 then
// begin
// with Order_Sub do
// begin
// Edit;
// FieldByName(FFieldName).Value := Trim(mvalue) + '#';
// Post;
// end;
// end;
end;
procedure TfrmOrderInPut.ToolButton7Click(Sender: TObject);
var
maxno: string;
begin
frmPBKcList := TfrmPBKcList.create(self);
with frmPBKcList do
begin
FType := 10;
if showmodal = 1 then
begin
with CDS_Main do
begin
while CDS_Main.Locate('SSel', True, []) do
begin
with ADOQueryCmd do
begin
sql.Add('select * from JYOrder_PBKC');
sql.Add('where MainID=' + QuotedStr(trim(Self.fMainID)));
sql.Add('and subID=' + QuotedStr(trim(Self.fsubID)));
sql.Add('and KCID' + QuotedStr(Trim(CDS_Main.FieldByName('KCID').AsString)));
end;
if ADOQueryCmd.IsEmpty then
begin
if GetLSNo(ADOQueryCmd, maxno, 'YK', 'JYOrder_PBKC', 4, 1) = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('insert into JYOrder_PBKC(PBKCID,MainID,subID,KCID,FPPS ) ');
sql.Add('values(' + QuotedStr(maxno));
sql.Add(',' + QuotedStr(trim(Self.fMainID)));
sql.Add(',' + QuotedStr(trim(Self.fsubID)));
sql.Add(',' + QuotedStr(Trim(CDS_Main.FieldByName('KCID').AsString)));
sql.Add(',' + QuotedStr(Trim(CDS_Main.FieldByName('KCPS').AsString)));
sql.Add(' )');
ExecSQL;
end;
end;
CDS_Main.Delete;
end;
end;
end;
free;
end;
InitPBCK();
end;
procedure TfrmOrderInPut.ToolButton8Click(Sender: TObject);
begin
if CDS_PBCK.IsEmpty then
exit;
if CDS_PBCK.fieldbyname('YYPS').AsInteger > 0 then
begin
Application.MessageBox('<27>ѿ<EFBFBD><D1BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add(' delete JYOrder_PBKC where PBKCID=''' + Trim(CDS_PBCK.fieldbyname('PBKCID').AsString) + '''');
sql.Add(' and YYPS=0');
execsql;
end;
CDS_PBCK.Delete;
except
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
procedure TfrmOrderInPut.ToolButton6Click(Sender: TObject);
begin
frmGXGL_List_DXCX := TfrmGXGL_List_DXCX.create(self);
with frmGXGL_List_DXCX do
begin
if showmodal = 1 then
begin
Order_FZ.First;
while not Order_FZ.eof do
begin
CDS_Glide.Append;
CDS_Glide.FieldByName('Glideidx').Value := CDS_Glide.RecordCount + 1;
CDS_Glide.FieldByName('GlideName').Value := Order_FZ.fieldbyname('PSName').AsString;
CDS_Glide.Post;
Order_FZ.next;
end;
end;
free;
end;
end;
procedure TfrmOrderInPut.ToolButton2Click(Sender: TObject);
begin
with CDS_Glide do
begin
if IsEmpty then
Exit;
if RecNo >= 1 then
begin
Edit;
fieldByName('GlideIdx').Value := fieldByName('GlideIdx').Value - 1;
Post;
Prior;
Edit;
fieldByName('GlideIdx').Value := fieldByName('GlideIdx').Value + 1;
Post;
end;
Prior;
end;
end;
procedure TfrmOrderInPut.ToolButton3Click(Sender: TObject);
begin
CDS_Glide.IndexFieldNames := 'GlideIdx';
with CDS_Glide do
begin
if IsEmpty then
Exit;
Next;
if not Eof then
Prior
else
begin
exit;
end;
if not Eof then
begin
Edit;
fieldByName('GlideIdx').Value := fieldByName('GlideIdx').Value + 1;
Post;
Prior;
Edit;
fieldByName('GlideIdx').Value := fieldByName('GlideIdx').Value - 1;
Post;
end;
Next;
end;
end;
procedure TfrmOrderInPut.ToolButton4Click(Sender: TObject);
var
k: integer;
begin
if cds_Glide.IsEmpty then
exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add(' delete JYOrder_Glide where GlideNo=''' + Trim(cds_Glide.fieldbyname('GlideNo').AsString) + '''');
execsql;
end;
cds_Glide.Delete;
except
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
cds_Glide.Delete;
cds_Glide.IndexFieldNames := 'GlideIdx';
cds_Glide.DisableControls;
cds_Glide.First;
k := 1;
while not cds_Glide.Eof do
begin
cds_Glide.Edit;
cds_Glide.FieldByName('GlideIdx').Value := k;
cds_Glide.Post;
inc(k);
cds_Glide.Next;
end;
cds_Glide.First;
cds_Glide.EnableControls;
end;
procedure TfrmOrderInPut.ToolButton1Click(Sender: TObject);
var
maxId: string;
begin
// if Trim(FOrderNo) = '' then
// begin
// Application.MessageBox('<27><><EFBFBD>ȱ<EFBFBD><C8B1><EFBFBD><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
// exit;
// end;
try
frmGXGL_List_DXCX := TfrmGXGL_List_DXCX.create(self);
with frmGXGL_List_DXCX do
begin
if showmodal = 1 then
begin
Order_FZ.First;
while not Order_FZ.eof do
begin
CDS_Glide.Append;
CDS_Glide.FieldByName('Glideidx').Value := Order_FZ.RecNo;
CDS_Glide.FieldByName('GlideName').Value := trim(Order_FZ.fieldbyname('PSName').AsString);
CDS_Glide.Post;
Order_FZ.Next;
end;
end;
end;
finally
frmGXGL_List_DXCX.Free;
end;
end;
end.