1121 lines
34 KiB
ObjectPascal
1121 lines
34 KiB
ObjectPascal
![]() |
unit U_TJCKOutOK;
|
|||
|
|
|||
|
interface
|
|||
|
|
|||
|
uses
|
|||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|||
|
cxDataStorage, cxEdit, DB, cxDBData, cxButtonEdit, cxCalendar,
|
|||
|
cxDropDownEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView,
|
|||
|
cxGridBandedTableView, cxGridDBBandedTableView, cxClasses, cxControls,
|
|||
|
cxGridCustomView, cxGrid, StdCtrls, ExtCtrls, ComCtrls, ToolWin, DBClient,
|
|||
|
ADODB, cxCheckBox, cxPC, BtnEdit, cxGridDBTableView,
|
|||
|
cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit;
|
|||
|
|
|||
|
type
|
|||
|
TfrmTJCKOutOK = class(TForm)
|
|||
|
Panel1: TPanel;
|
|||
|
Label3: TLabel;
|
|||
|
OrderNo: TEdit;
|
|||
|
cxGrid2: TcxGrid;
|
|||
|
Tv2: TcxGridDBBandedTableView;
|
|||
|
cxGridDBBandedColumn1: TcxGridDBBandedColumn;
|
|||
|
cxGridDBBandedColumn2: TcxGridDBBandedColumn;
|
|||
|
Tv2Column1: TcxGridDBBandedColumn;
|
|||
|
v6DutyPerson: TcxGridDBBandedColumn;
|
|||
|
v6DutyFactoryName: TcxGridDBBandedColumn;
|
|||
|
v6DutyReason: TcxGridDBBandedColumn;
|
|||
|
v6Column4: TcxGridDBBandedColumn;
|
|||
|
v6Column5: TcxGridDBBandedColumn;
|
|||
|
v6Column6: TcxGridDBBandedColumn;
|
|||
|
v6ToFactoryName: TcxGridDBBandedColumn;
|
|||
|
v6Column7: TcxGridDBBandedColumn;
|
|||
|
cxGridLevel3: TcxGridLevel;
|
|||
|
v6Column15: TcxGridDBBandedColumn;
|
|||
|
v6Column16: TcxGridDBBandedColumn;
|
|||
|
v6Column17: TcxGridDBBandedColumn;
|
|||
|
v6Column18: TcxGridDBBandedColumn;
|
|||
|
ClientDataSet1: TClientDataSet;
|
|||
|
DataSource1: TDataSource;
|
|||
|
ADOQuery1: TADOQuery;
|
|||
|
ADOQueryTemp: TADOQuery;
|
|||
|
ADOQueryCmd: TADOQuery;
|
|||
|
Label1: TLabel;
|
|||
|
BegDate: TDateTimePicker;
|
|||
|
EndDate: TDateTimePicker;
|
|||
|
v6Column20: TcxGridDBBandedColumn;
|
|||
|
v6Column21: TcxGridDBBandedColumn;
|
|||
|
cxTabControl1: TcxTabControl;
|
|||
|
ScrollBox3: TScrollBox;
|
|||
|
Button8: TButton;
|
|||
|
Button9: TButton;
|
|||
|
Button10: TButton;
|
|||
|
v6Column1: TcxGridDBBandedColumn;
|
|||
|
v6Column2: TcxGridDBBandedColumn;
|
|||
|
cxGrid3: TcxGrid;
|
|||
|
Tv3: TcxGridDBTableView;
|
|||
|
cxGridDBColumn9: TcxGridDBColumn;
|
|||
|
v5Column2: TcxGridDBColumn;
|
|||
|
v5Column7: TcxGridDBColumn;
|
|||
|
cxGridDBColumn8: TcxGridDBColumn;
|
|||
|
v5Column3: TcxGridDBColumn;
|
|||
|
v5Column4: TcxGridDBColumn;
|
|||
|
v5Column5: TcxGridDBColumn;
|
|||
|
v5Column1: TcxGridDBColumn;
|
|||
|
v5Column9: TcxGridDBColumn;
|
|||
|
cxGridLevel1: TcxGridLevel;
|
|||
|
Panel3: TPanel;
|
|||
|
Label16: TLabel;
|
|||
|
v5Column6: TcxGridDBColumn;
|
|||
|
Label18: TLabel;
|
|||
|
C_Code: TEdit;
|
|||
|
Label19: TLabel;
|
|||
|
C_CodeName: TEdit;
|
|||
|
v5Column8: TcxGridDBColumn;
|
|||
|
v6Column3: TcxGridDBBandedColumn;
|
|||
|
DataSource2: TDataSource;
|
|||
|
ClientDataSet2: TClientDataSet;
|
|||
|
DataSource3: TDataSource;
|
|||
|
ClientDataSet3: TClientDataSet;
|
|||
|
v6Column14: TcxGridDBBandedColumn;
|
|||
|
v6Column19: TcxGridDBBandedColumn;
|
|||
|
ADOQueryMain: TADOQuery;
|
|||
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|||
|
cxGridPopupMenu3: TcxGridPopupMenu;
|
|||
|
cxGridPopupMenu2: TcxGridPopupMenu;
|
|||
|
Panel5: TPanel;
|
|||
|
cxGrid1: TcxGrid;
|
|||
|
Tv1: TcxGridDBTableView;
|
|||
|
cxGridDBColumn1: TcxGridDBColumn;
|
|||
|
cxGridDBColumn2: TcxGridDBColumn;
|
|||
|
cxGridDBColumn7: TcxGridDBColumn;
|
|||
|
cxGridDBColumn3: TcxGridDBColumn;
|
|||
|
cxGridDBColumn4: TcxGridDBColumn;
|
|||
|
cxGridDBColumn10: TcxGridDBColumn;
|
|||
|
cxGridDBColumn11: TcxGridDBColumn;
|
|||
|
cxGridLevel5: TcxGridLevel;
|
|||
|
Tv1Column1: TcxGridDBColumn;
|
|||
|
Tv1Column2: TcxGridDBColumn;
|
|||
|
Tv1Column3: TcxGridDBColumn;
|
|||
|
v1Column1: TcxGridDBColumn;
|
|||
|
v1Column2: TcxGridDBColumn;
|
|||
|
v1Column3: TcxGridDBColumn;
|
|||
|
Label5: TLabel;
|
|||
|
FromPrice: TEdit;
|
|||
|
Label4: TLabel;
|
|||
|
FromConTypeOther: TBtnEditA;
|
|||
|
Label6: TLabel;
|
|||
|
ToFactoryName: TBtnEditA;
|
|||
|
Label7: TLabel;
|
|||
|
Label8: TLabel;
|
|||
|
ToPrice: TEdit;
|
|||
|
Label9: TLabel;
|
|||
|
ToConTypeOther: TBtnEditA;
|
|||
|
Label10: TLabel;
|
|||
|
Button1: TButton;
|
|||
|
v1Column4: TcxGridDBColumn;
|
|||
|
FromFactoryName: TBtnEditA;
|
|||
|
Label2: TLabel;
|
|||
|
Label11: TLabel;
|
|||
|
FromPSName: TComboBox;
|
|||
|
Label12: TLabel;
|
|||
|
ToPSName: TComboBox;
|
|||
|
MDType: TComboBox;
|
|||
|
Label13: TLabel;
|
|||
|
v3Column1: TcxGridDBColumn;
|
|||
|
Button2: TButton;
|
|||
|
Button3: TButton;
|
|||
|
procedure FormDestroy(Sender: TObject);
|
|||
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|||
|
procedure TBRafreshClick(Sender: TObject);
|
|||
|
procedure FormShow(Sender: TObject);
|
|||
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
procedure ToolButton1Click(Sender: TObject);
|
|||
|
procedure cxTabControl1Change(Sender: TObject);
|
|||
|
procedure OrderNoKeyPress(Sender: TObject; var Key: Char);
|
|||
|
procedure Button10Click(Sender: TObject);
|
|||
|
procedure Button8Click(Sender: TObject);
|
|||
|
procedure TBFindClick(Sender: TObject);
|
|||
|
procedure Button9Click(Sender: TObject);
|
|||
|
procedure FromFactoryNameBtnClick(Sender: TObject);
|
|||
|
procedure ToFactoryNameBtnClick(Sender: TObject);
|
|||
|
procedure FromConTypeOtherBtnClick(Sender: TObject);
|
|||
|
procedure ToConTypeOtherBtnClick(Sender: TObject);
|
|||
|
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView;
|
|||
|
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
|
|||
|
ANewItemRecordFocusingChanged: Boolean);
|
|||
|
procedure Tv2CellClick(Sender: TcxCustomGridTableView;
|
|||
|
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
|||
|
AShift: TShiftState; var AHandled: Boolean);
|
|||
|
procedure Button1Click(Sender: TObject);
|
|||
|
procedure Button2Click(Sender: TObject);
|
|||
|
procedure Button3Click(Sender: TObject);
|
|||
|
procedure OrderNoChange(Sender: TObject);
|
|||
|
private
|
|||
|
{ Private declarations }
|
|||
|
procedure InitGrid();
|
|||
|
function SaveData():Boolean;
|
|||
|
function SaveConData(FONID:string):Boolean;
|
|||
|
function SaveMDData(FONID,FOrdMainId,FOrdSubId,FPSID,FPFID,FConMainid,FConSubId:string):Boolean;
|
|||
|
public
|
|||
|
{ Public declarations }
|
|||
|
end;
|
|||
|
|
|||
|
var
|
|||
|
frmTJCKOutOK: TfrmTJCKOutOK;
|
|||
|
|
|||
|
implementation
|
|||
|
uses
|
|||
|
U_DataLink,U_RTFun, U_GYSList,U_ZDYHelp, U_ModuleNote;
|
|||
|
{$R *.dfm}
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.FormDestroy(Sender: TObject);
|
|||
|
begin
|
|||
|
frmTJCKOutOK:=nil;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.FormClose(Sender: TObject;
|
|||
|
var Action: TCloseAction);
|
|||
|
begin
|
|||
|
Action:=caFree;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.TBRafreshClick(Sender: TObject);
|
|||
|
begin
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
procedure TfrmTJCKOutOK.InitGrid();
|
|||
|
begin
|
|||
|
with ADOQueryMain do
|
|||
|
begin
|
|||
|
Filtered:=False;
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select B.OrderNo,B.MPRTCode,B.MPRTCodeName,C.PRTHX,C.PRTColorNo,D.PSName,A.* ');
|
|||
|
sql.Add(' from JYOrder_PCS_Sub A');
|
|||
|
sql.Add(' inner join JYOrder_Main B on A.Mainid=B.MainId');
|
|||
|
sql.Add(' left join JYOrder_Sub C on A.SubId=C.SubId');
|
|||
|
SQL.Add(' inner join JYOrder_Process D on A.PSID=D.PSID');
|
|||
|
sql.Add(' where isnull(A.CKName,'''')=''<27><><EFBFBD>ڲֿ<DAB2>'' ');
|
|||
|
if cxTabControl1.TabIndex=0 then
|
|||
|
begin
|
|||
|
sql.Add(' and A.TJOutFlag=0');
|
|||
|
end else
|
|||
|
if cxTabControl1.TabIndex=1 then
|
|||
|
begin
|
|||
|
sql.Add(' and A.TJOutFlag=1');
|
|||
|
end;
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQueryMain,ClientDataSet1);
|
|||
|
SInitCDSData20(ADOQueryMain,ClientDataSet1);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.FormShow(Sender: TObject);
|
|||
|
begin
|
|||
|
{ReadCxBandedGrid('Tv6',Tv6,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
ReadCxBandedGrid('Tv2',Tv2,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
ReadCxBandedGrid('Tv3',Tv3,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
ReadCxGrid('Tv5',Tv5,'<27><><EFBFBD>ڲֿ<DAB2>'); }
|
|||
|
EndDate.Date:=SGetServerDate(ADOQuery1);
|
|||
|
BegDate.Date:=EndDate.Date-30;
|
|||
|
cxTabControl1.TabIndex:=0;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.TBCloseClick(Sender: TObject);
|
|||
|
begin
|
|||
|
close;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.ToolButton1Click(Sender: TObject);
|
|||
|
begin
|
|||
|
{if ClientDataSet6.IsEmpty then Exit;
|
|||
|
if cxTabControl1.TabIndex=2 then Exit;
|
|||
|
if Application.MessageBox('ȷ<><C8B7>Ҫִ<D2AA><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
|||
|
try
|
|||
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD where MDID='''+Trim(ClientDataSet6.fieldbyname('MDID').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
RTSetSaveDataCDSBand(ADOQueryCmd,tv6,ClientDataSet6,'JYOrder_Main_MD',3);
|
|||
|
if ClientDataSet6.FieldByName('CostFlag').AsBoolean=True then
|
|||
|
begin
|
|||
|
FieldByName('CostFlag').Value:=1
|
|||
|
end else
|
|||
|
begin
|
|||
|
FieldByName('CostFlag').Value:=0;
|
|||
|
end;
|
|||
|
FieldByName('CRDate').Value:=SGetServerDateTime(ADOQueryTemp);
|
|||
|
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
|
|||
|
FieldByName('CRType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
FieldByName('CRPerson').Value:=Trim(DName);
|
|||
|
FieldByName('QtyFlag').Value:=1;
|
|||
|
FieldByName('RKMDID').Value:=ClientDataSet6.fieldbyname('MDID').Value;
|
|||
|
FieldByName('DutyFactoryNo').Value:=ClientDataSet6.fieldbyname('DutyFactoryNo').Value;
|
|||
|
FieldByName('ToFactoryNo').Value:=ClientDataSet6.fieldbyname('ToFactoryNo').Value;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_Main_MD Set KCPS=(select Sum(PS*QtyFlag) from JYOrder_Main_MD A where A.RKMDID=JYOrder_Main_MD.MDID)');
|
|||
|
sql.Add(',KCQty=(select Sum(Qty*QtyFlag) from JYOrder_Main_MD A where A.RKMDID=JYOrder_Main_MD.MDID)');
|
|||
|
sql.Add(' where MDID='''+Trim(ClientDataSet6.fieldbyname('MDID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
if cxTabControl1.TabIndex=0 then
|
|||
|
ClientDataSet6.Delete;
|
|||
|
except
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
|
|||
|
end; }
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.cxTabControl1Change(Sender: TObject);
|
|||
|
begin
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.OrderNoKeyPress(Sender: TObject; var Key: Char);
|
|||
|
begin
|
|||
|
if Key=#13 then
|
|||
|
begin
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button10Click(Sender: TObject);
|
|||
|
begin
|
|||
|
{WriteCxBandedGrid('Tv6',Tv6,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
WriteCxBandedGrid('Tv2',Tv2,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
WriteCxBandedGrid('Tv3',Tv3,'<27><><EFBFBD>ڲֿ<DAB2>');
|
|||
|
WriteCxGrid('Tv5',Tv5,'<27><><EFBFBD>ڲֿ<DAB2>'); }
|
|||
|
close;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button8Click(Sender: TObject);
|
|||
|
begin
|
|||
|
InitGrid();
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.TBFindClick(Sender: TObject);
|
|||
|
begin
|
|||
|
if ADOQueryMain.Active=False then Exit;
|
|||
|
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
|||
|
SCreateCDS20(ADOQueryMain,ClientDataSet1);
|
|||
|
SInitCDSData20(ADOQueryMain,ClientDataSet1);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button9Click(Sender: TObject);
|
|||
|
begin
|
|||
|
if ADOQueryMain.Active=False then Exit;
|
|||
|
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
|
|||
|
SCreateCDS20(ADOQueryMain,ClientDataSet1);
|
|||
|
SInitCDSData20(ADOQueryMain,ClientDataSet1);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.FromFactoryNameBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmGYSList:=TfrmGYSList.Create(Application);
|
|||
|
with frmGYSList do
|
|||
|
begin
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
FromFactoryName.TxtCode:=Trim(frmGYSList.Order_Main.fieldbyname('ZKID').AsString);
|
|||
|
FromFactoryName.Text:=Trim(frmGYSList.Order_Main.fieldbyname('KHNameJC').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmGYSList.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.ToFactoryNameBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmGYSList:=TfrmGYSList.Create(Application);
|
|||
|
with frmGYSList do
|
|||
|
begin
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
ToFactoryName.TxtCode:=Trim(frmGYSList.Order_Main.fieldbyname('ZKID').AsString);
|
|||
|
ToFactoryName.Text:=Trim(frmGYSList.Order_Main.fieldbyname('KHNameJC').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmGYSList.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.FromConTypeOtherBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='ConTypeOther';
|
|||
|
flagname:='<27>ɹ<EFBFBD><C9B9>ӹ<EFBFBD><D3B9><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
FromConTypeOther.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.ToConTypeOtherBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='ConTypeOther';
|
|||
|
flagname:='<27>ɹ<EFBFBD><C9B9>ӹ<EFBFBD><D3B9><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
ToConTypeOther.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Tv1FocusedRecordChanged(
|
|||
|
Sender: TcxCustomGridTableView; APrevFocusedRecord,
|
|||
|
AFocusedRecord: TcxCustomGridRecord;
|
|||
|
ANewItemRecordFocusingChanged: Boolean);
|
|||
|
begin
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select AM.CKID,AM.CKPS,AM.CKQty,AM.SJCKPS,AM.SJCKQty,JM.OrderNo, A.*,B.PSName OrdPSName, ');
|
|||
|
sql.Add(' JS.PRTHX,JS.PRTColor,JS.PRTColorNo,D.C_Code,D.C_CodeName,ClotheType10=A.ClotheType,');
|
|||
|
sql.Add(' JSKCPS=A.RKPS-A.CKPS,');
|
|||
|
sql.Add(' JSKCQty=A.RKQty-A.CKQty');
|
|||
|
sql.Add(' from JYOrder_Main_MD_Out AM');
|
|||
|
sql.Add(' inner join JYOrder_Main_MD A on AM.MDID=A.MDID');
|
|||
|
sql.Add(' inner join JYOrder_Main JM on A.OrdMainId=JM.MainId');
|
|||
|
sql.Add(' left join JYOrder_Sub JS on A.OrdSubId=JS.SubId');
|
|||
|
sql.Add(' inner join JYOrder_Process B on A.PSID=B.PSID');
|
|||
|
sql.Add(' inner join Contract_Main C on A.ConMainid=C.MainID');
|
|||
|
sql.Add(' inner join Contract_Sub D on A.ConSubid=D.SubID');
|
|||
|
if ClientDataSet1.IsEmpty=False then
|
|||
|
SQL.Add(' where AM.PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''')
|
|||
|
else
|
|||
|
sql.Add(' where 1<>1');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQuery1,ClientDataSet2);
|
|||
|
SInitCDSData20(ADOQuery1,ClientDataSet2);
|
|||
|
if cxTabControl1.TabIndex=0 then
|
|||
|
begin
|
|||
|
FromFactoryName.Text:=Trim(ClientDataSet1.fieldbyname('FactoryName').AsString);
|
|||
|
FromFactoryName.TxtCode:=Trim(ClientDataSet1.fieldbyname('FactoryNo').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD_OutNote where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCSHDataNew(ADOQuery1,Panel5,99);
|
|||
|
end;
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId ');
|
|||
|
if ClientDataSet2.IsEmpty=False then
|
|||
|
sql.Add(' where A.ConNo like '''+'%'+Trim(ClientDataSet2.fieldbyname('OrderNo').AsString)+'%'+'''')
|
|||
|
else
|
|||
|
sql.Add(' where 1<>1');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQuery1,ClientDataSet3);
|
|||
|
SInitCDSData20(ADOQuery1,ClientDataSet3);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Tv2CellClick(Sender: TcxCustomGridTableView;
|
|||
|
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
|||
|
AShift: TShiftState; var AHandled: Boolean);
|
|||
|
begin
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main A inner join Contract_Sub B on A.MainId=B.MainId ');
|
|||
|
if ClientDataSet2.IsEmpty=False then
|
|||
|
sql.Add(' where A.ConNo like '''+'%'+Trim(ClientDataSet2.fieldbyname('OrderNo').AsString)+'%'+'''')
|
|||
|
else
|
|||
|
sql.Add(' where 1<>1');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQuery1,ClientDataSet3);
|
|||
|
SInitCDSData20(ADOQuery1,ClientDataSet3);
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button1Click(Sender: TObject);
|
|||
|
Var
|
|||
|
FReal:Double;
|
|||
|
FInt:Integer;
|
|||
|
begin
|
|||
|
if Trim(FromFactoryName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>̲<EFBFBD><CCB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
{if Trim(ToFactoryName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>µ<EFBFBD><C2B5><EFBFBD>Ӧ<EFBFBD>̲<EFBFBD><CCB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end; }
|
|||
|
if Trim(FromPrice.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD><DBB8><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(MDType.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>뵥<EFBFBD><EBB5A5><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if TryStrToFloat(FromPrice.Text,FReal)=False then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>۸<EFBFBD><DBB8>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(FromConTypeOther.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if (Trim(ToFactoryName.Text)+Trim(ToConTypeOther.Text))<>'' then
|
|||
|
begin
|
|||
|
if Trim(ToFactoryName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>µ<EFBFBD><C2B5><EFBFBD>Ӧ<EFBFBD>̲<EFBFBD><CCB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(ToConTypeOther.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>µ<EFBFBD><C2B5><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end;
|
|||
|
if Trim(ToPrice.Text)<>'' then
|
|||
|
begin
|
|||
|
if TryStrToFloat(ToPrice.Text,FReal)=False then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>µ<EFBFBD><C2B5>۸<EFBFBD><DBB8>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end;
|
|||
|
if Tv2.DataController.Summary.FooterSummaryValues[0]>Tv2.DataController.Summary.FooterSummaryValues[2] then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Tv2.DataController.Summary.FooterSummaryValues[0]<>Tv2.DataController.Summary.FooterSummaryValues[1] then
|
|||
|
begin
|
|||
|
if Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>ȷ<EFBFBD><C8B7>Ҫִ<D2AA>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
|||
|
FInt:=99;
|
|||
|
end;
|
|||
|
if FInt<>99 then
|
|||
|
if Application.MessageBox('ȷ<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
|||
|
if SaveData() then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
|
|||
|
end;
|
|||
|
function TfrmTJCKOutOK.SaveData():Boolean;
|
|||
|
var
|
|||
|
maxno,ONID:string;
|
|||
|
begin
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD_OutNote where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty=False then
|
|||
|
begin
|
|||
|
ONID:=Trim(ADOQueryTemp.fieldbyname('ONID').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
ONID:='';
|
|||
|
end;
|
|||
|
try
|
|||
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
if Trim(ONID)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxno,'ON','JYOrder_Main_MD_OutNote',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<><C8A1><EFBFBD>ڲֿ<DAB2><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxno:=Trim(ONID);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD_OutNote where ONID='''+Trim(ONID)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(ONID)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
FieldByName('Filler').Value:=Trim(DName);
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('Editer').Value:=Trim(DName);
|
|||
|
FieldByName('EditTIme').Value:=SGetServerDateTime(ADOQuery1);
|
|||
|
end;
|
|||
|
FieldByName('PFID').Value:=Trim(ClientDataSet1.fieldbyname('PFID').AsString);
|
|||
|
FieldByName('ONID').Value:=Trim(maxno);
|
|||
|
FieldByName('FromFactoryName').Value:=Trim(FromFactoryName.Text);
|
|||
|
FieldByName('FromFactoryNo').Value:=Trim(FromFactoryName.TxtCode);
|
|||
|
FieldByName('ToFactoryName').Value:=Trim(ToFactoryName.Text);
|
|||
|
FieldByName('ToFactoryNo').Value:=Trim(FromFactoryName.TxtCode);
|
|||
|
FieldByName('FromConTypeOther').Value:=Trim(FromConTypeOther.Text);
|
|||
|
FieldByName('ToConTypeOther').Value:=Trim(ToConTypeOther.Text);
|
|||
|
if Trim(FromPrice.Text)<>'' then
|
|||
|
begin
|
|||
|
FieldByName('FromPrice').Value:=Trim(FromPrice.Text);
|
|||
|
end else
|
|||
|
begin
|
|||
|
FieldByName('FromPrice').Value:='0';
|
|||
|
end;
|
|||
|
if Trim(ToPrice.Text)<>'' then
|
|||
|
begin
|
|||
|
FieldByName('ToPrice').Value:=Trim(ToPrice.Text);
|
|||
|
end else
|
|||
|
begin
|
|||
|
FieldByName('ToPrice').Value:='0';
|
|||
|
end;
|
|||
|
FieldByName('MDTYpe').Value:=Trim(MDType.Text);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
SaveConData(maxno);
|
|||
|
with ClientDataSet2 do
|
|||
|
begin
|
|||
|
First;
|
|||
|
while not Eof do
|
|||
|
begin
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_Main_MD_Out Set ');
|
|||
|
if Trim(ClientDataSet2.fieldbyname('SJCKPS').AsString)<>'' then
|
|||
|
begin
|
|||
|
sql.Add(' SJCKPS='+ClientDataSet2.fieldbyname('SJCKPS').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
sql.Add(' SJCKPS=0');
|
|||
|
end;
|
|||
|
if Trim(ClientDataSet2.fieldbyname('SJCKQty').AsString)<>'' then
|
|||
|
begin
|
|||
|
sql.Add(' ,SJCKQty='+ClientDataSet2.fieldbyname('SJCKQty').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
sql.Add(' ,SJCKQty=0');
|
|||
|
end;
|
|||
|
SQL.Add(' where CKID='''+Trim(ClientDataSet2.fieldbyname('CKID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
Next;
|
|||
|
end;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_Main_MD Set CKPS=');
|
|||
|
sql.Add('(select isnull(sum(SJCKPS),0) from JYOrder_Main_MD_Out A where A.MDID=JYOrder_Main_MD.MDID) ');
|
|||
|
sql.Add(',CKQty=(select isnull(sum(SJCKQty),0) from JYOrder_Main_MD_Out A where A.MDID=JYOrder_Main_MD.MDID) ');
|
|||
|
sql.Add(' where MDID='''+Trim(ClientDataSet2.fieldbyname('MDID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_PCS_Sub Set TJOutFlag=1');
|
|||
|
sql.Add(' where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
if Trim(ClientDataSet1.fieldbyname('PFTPUnit').AsString)<>'M' then
|
|||
|
begin
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_PCS_Sub Set WCMQty=');
|
|||
|
sql.Add('(select isnull(sum(Qty),0) from JYOrder_Main_MD A where A.PFID=JYOrder_PCS_Sub.PFID and isnull(CKName,'''')='''')*');
|
|||
|
sql.Add('(select KgZM from JYOrder_Process A where A.PSID=JYOrder_PCS_Sub.PSID)');
|
|||
|
sql.Add(' where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('Update JYOrder_PCS_Sub Set WCMQty=');
|
|||
|
sql.Add('(select isnull(sum(Qty),0) from JYOrder_Main_MD A where A.PFID=JYOrder_PCS_Sub.PFID and isnull(CKName,'''')='''')');
|
|||
|
sql.Add(' where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
end;
|
|||
|
if cxTabControl1.TabIndex=0 then
|
|||
|
ClientDataSet1.Delete;
|
|||
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
//Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
|
|||
|
Result:=True;
|
|||
|
Exit;
|
|||
|
except
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
|
|||
|
end;
|
|||
|
end;
|
|||
|
function TfrmTJCKOutOK.SaveConData(FONID:string):Boolean;
|
|||
|
var
|
|||
|
maxno,maxsubno,MainID,SubId,PSName:string;
|
|||
|
begin
|
|||
|
Result:=False;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main where ONID='''+Trim(FONID)+'''');
|
|||
|
sql.Add(' and ConType='''+Trim(ClientDataSet1.fieldbyname('PSName').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty=False then
|
|||
|
begin
|
|||
|
MainID:=Trim(ADOQueryTemp.fieldbyname('MainID').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
MainID:='';
|
|||
|
end;
|
|||
|
if Trim(MainID)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxno,'NM','Contract_Main',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<>ӹ<EFBFBD><D3B9>ɹ<EFBFBD><C9B9><EFBFBD>ͬ<EFBFBD><CDAC>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxno:=Trim(MainID);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main where MainId='''+Trim(MainID)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(MainID)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
FieldByName('Filler').Value:=Trim(DName);
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('Editer').Value:=Trim(DName);
|
|||
|
FieldByName('EditTIme').Value:=SGetServerDateTime(ADOQuery1);
|
|||
|
end;
|
|||
|
FieldByName('ONID').Value:=Trim(FONID);
|
|||
|
FieldByName('MainID').Value:=Trim(maxno);
|
|||
|
FieldByName('ConNo').Value:=Trim(ClientDataSet1.fieldbyname('OrderNo').AsString);
|
|||
|
FieldByName('FactoryNoName').Value:=Trim(FromFactoryName.Text);
|
|||
|
FieldByName('FactoryNo').Value:=Trim(FromFactoryName.TxtCode);
|
|||
|
FieldByName('ConTypeOther').Value:=Trim(FromConTypeOther.Text);
|
|||
|
FieldByName('ConType').Value:=Trim(ClientDataSet1.fieldbyname('PSName').AsString);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Sub where MainId='''+Trim(maxno)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty then
|
|||
|
begin
|
|||
|
SubId:='';
|
|||
|
end else
|
|||
|
begin
|
|||
|
SubId:=Trim(ADOQueryTemp.fieldbyname('SubId').AsString);
|
|||
|
end;
|
|||
|
if Trim(SubId)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxsubno,'NS','Contract_Sub',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<>ӹ<EFBFBD><D3B9>ɹ<EFBFBD><C9B9><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxsubno:=Trim(SubId);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Sub where SubId='''+Trim(SubId)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(SubId)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
end;
|
|||
|
FieldByName('MainId').Value:=Trim(maxno);
|
|||
|
FieldByName('SubId').Value:=Trim(maxsubno);
|
|||
|
FieldByName('C_Code').Value:=ClientDataSet1.fieldbyname('MPRTCode').Value;
|
|||
|
FieldByName('C_CodeName').Value:=ClientDataSet1.fieldbyname('MPRTCodeName').Value;
|
|||
|
FieldByName('C_Qty').Value:=Tv2.DataController.Summary.FooterSummaryValues[0];
|
|||
|
FieldByName('C_Unit').Value:=ClientDataSet2.fieldbyname('RKQtyUnit').Value;
|
|||
|
if Trim(FromPrice.Text)='' then
|
|||
|
FieldByName('Price').Value:=0
|
|||
|
else
|
|||
|
FieldByName('Price').Value:=Trim(FromPrice.Text);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
SaveMDData(FONID,Trim(ClientDataSet1.fieldbyname('MainId').AsString),
|
|||
|
Trim(ClientDataSet1.fieldbyname('SubId').AsString),
|
|||
|
Trim(ClientDataSet1.fieldbyname('PSID').AsString),
|
|||
|
Trim(ClientDataSet1.fieldbyname('PFID').AsString),
|
|||
|
Trim(maxno),Trim(maxsubno));
|
|||
|
if Trim(ToFactoryName.Text)<>'' then
|
|||
|
begin
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Process where ');
|
|||
|
sql.Add(' Mainid='''+Trim(ClientDataSet1.fieldbyname('MainId').AsString)+'''');
|
|||
|
sql.Add(' and PSXH=(select PSXH+1 from JYOrder_Process where PSID='''+Trim(ClientDataSet1.fieldbyname('PSID').AsString)+''')');
|
|||
|
// sql.Add(' and PSName='''+Trim(ClientDataSet1.fieldbyname('PSName').AsString)+''')');
|
|||
|
|
|||
|
Open;
|
|||
|
end;
|
|||
|
PSName:=Trim(ADOQueryTemp.fieldbyname('PSName').AsString);
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main where ONID='''+Trim(FONID)+'''');
|
|||
|
sql.Add(' and ConType='''+Trim(PSName)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty=False then
|
|||
|
begin
|
|||
|
MainID:=Trim(ADOQueryTemp.fieldbyname('MainID').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
MainID:='';
|
|||
|
end;
|
|||
|
if Trim(MainID)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxno,'JM','Contract_Main',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<>ӹ<EFBFBD><D3B9>ɹ<EFBFBD><C9B9><EFBFBD>ͬ<EFBFBD><CDAC>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxno:=Trim(MainID);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Main where MainId='''+Trim(MainID)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(MainID)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
FieldByName('Filler').Value:=Trim(DName);
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('Editer').Value:=Trim(DName);
|
|||
|
FieldByName('EditTIme').Value:=SGetServerDateTime(ADOQuery1);
|
|||
|
end;
|
|||
|
FieldByName('ONID').Value:=Trim(FONID);
|
|||
|
FieldByName('ConNo').Value:=Trim(ClientDataSet1.fieldbyname('OrderNo').AsString);
|
|||
|
FieldByName('MainID').Value:=Trim(maxno);
|
|||
|
FieldByName('FactoryNoName').Value:=Trim(ToFactoryName.Text);
|
|||
|
FieldByName('FactoryNo').Value:=Trim(ToFactoryName.TxtCode);
|
|||
|
FieldByName('ConTypeOther').Value:=Trim(ToConTypeOther.Text);
|
|||
|
FieldByName('ConType').Value:=Trim(PSName);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Sub where MainId='''+Trim(maxno)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty then
|
|||
|
begin
|
|||
|
SubId:='';
|
|||
|
end else
|
|||
|
begin
|
|||
|
SubId:=Trim(ADOQueryTemp.fieldbyname('SubId').AsString);
|
|||
|
end;
|
|||
|
if Trim(SubId)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxsubno,'JS','Contract_Sub',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<>ӹ<EFBFBD><D3B9>ɹ<EFBFBD><C9B9><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxsubno:=Trim(SubId);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from Contract_Sub where SubId='''+Trim(SubId)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(SubId)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
end;
|
|||
|
FieldByName('MainId').Value:=Trim(maxno);
|
|||
|
FieldByName('SubId').Value:=Trim(maxsubno);
|
|||
|
FieldByName('C_Code').Value:=ClientDataSet1.fieldbyname('MPRTCode').Value;
|
|||
|
FieldByName('C_CodeName').Value:=ClientDataSet1.fieldbyname('MPRTCodeName').Value;
|
|||
|
FieldByName('C_Qty').Value:=Tv2.DataController.Summary.FooterSummaryValues[0];
|
|||
|
FieldByName('C_Unit').Value:=ClientDataSet2.fieldbyname('RKQtyUnit').Value;
|
|||
|
if Trim(ToPrice.Text)='' then
|
|||
|
FieldByName('Price').Value:=0
|
|||
|
else
|
|||
|
FieldByName('Price').Value:=Trim(ToPrice.Text);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
end;
|
|||
|
Result:=True;
|
|||
|
|
|||
|
end;
|
|||
|
function TfrmTJCKOutOK.SaveMDData(FONID,FOrdMainId,FOrdSubId,FPSID,FPFID,FConMainid,FConSubId:string):Boolean;
|
|||
|
var
|
|||
|
maxno,MDID:string;
|
|||
|
begin
|
|||
|
Result:=False;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD where ONID='''+Trim(FONID)+'''');
|
|||
|
sql.Add(' and FactoryName='''+Trim(ClientDataSet1.fieldbyname('FactoryName').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty=False then
|
|||
|
begin
|
|||
|
MDID:=Trim(ADOQueryTemp.fieldbyname('MDID').AsString);
|
|||
|
end else
|
|||
|
begin
|
|||
|
MDID:='';
|
|||
|
end;
|
|||
|
if Trim(MDID)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOQueryCmd,maxno,'NM','JYOrder_Main_MD',3,1)=False then
|
|||
|
begin
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Result:=False;
|
|||
|
Application.MessageBox('ȡ<>뵥<EFBFBD><EBB5A5>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxno:=Trim(MDID);
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from JYOrder_Main_MD where MDID='''+Trim(MDID)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
if Trim(MDID)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
FieldByName('Filler').Value:=Trim(DName);
|
|||
|
end else
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('Editer').Value:=Trim(DName);
|
|||
|
FieldByName('EditTIme').Value:=SGetServerDateTime(ADOQuery1);
|
|||
|
end;
|
|||
|
FieldByName('ONID').Value:=Trim(FONID);
|
|||
|
FieldByName('MDID').Value:=Trim(maxno);
|
|||
|
FieldByName('OrdMainID').Value:=Trim(FOrdMainId);
|
|||
|
FieldByName('ConMainID').Value:=Trim(FConMainId);
|
|||
|
FieldByName('ConSubID').Value:=Trim(FConSubId);
|
|||
|
FieldByName('OrdSubId').Value:=Trim(FOrdSubId);
|
|||
|
FieldByName('PSID').Value:=Trim(FPSID);
|
|||
|
FieldByName('PFID').Value:=Trim(FPFID);
|
|||
|
FieldByName('MDType').Value:=Trim(MDType.Text);
|
|||
|
FieldByName('MDNO').Value:=Trim(maxno);
|
|||
|
FieldByName('FactoryName').Value:=Trim(FromFactoryName.Text);
|
|||
|
FieldByName('FactoryNo').Value:=Trim(FromFactoryName.TxtCode);
|
|||
|
FieldByName('PS').Value:=Tv2.DataController.Summary.FooterSummaryValues[3];
|
|||
|
FieldByName('Qty').Value:=Tv2.DataController.Summary.FooterSummaryValues[0];
|
|||
|
FieldByName('QtyUnit').Value:=ClientDataSet2.fieldbyname('RKQtyUnit').Value;
|
|||
|
FieldByName('PSName').Value:=ClientDataSet1.fieldbyname('PSName').Value;
|
|||
|
FieldByName('FromFactoryName').Value:=Trim(ToFactoryName.Text);
|
|||
|
FieldByName('FromFactoryNo').Value:=Trim(ToFactoryName.TxtCode);
|
|||
|
FieldByName('MDDate').Value:=SGetServerDate(ADOQueryTemp);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
Result:=True;
|
|||
|
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button2Click(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmModuleNote:=TfrmModuleNote.Create(Application);
|
|||
|
with frmModuleNote do
|
|||
|
begin
|
|||
|
flag:='<27><><EFBFBD>ڲֿ<DAB2><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmModuleNote.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.Button3Click(Sender: TObject);
|
|||
|
begin
|
|||
|
if cxTabControl1.TabIndex<>1 then Exit;
|
|||
|
if ClientDataSet1.IsEmpty then Exit;
|
|||
|
with ADOQueryTemp do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from WFB_MJJY A');
|
|||
|
sql.Add(' inner join JYOrder_Main_MD B on A.APID=B.MDID');
|
|||
|
sql.Add(' inner join JYOrder_Main_MD_OutNote C on B.ONID=C.ONID');
|
|||
|
SQL.Add(' where C.PFID='''+Trim(ClientDataSet1.fieldbyName('PFID').AsString)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
if ADOQueryTemp.IsEmpty=False then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Application.MessageBox('ȷ<><C8B7>Ҫִ<D2AA>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then exit;
|
|||
|
try
|
|||
|
ADOQueryCmd.Connection.BeginTrans;
|
|||
|
with ADOQueryCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>뵥ʵ<EBB5A5>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
sql.Add('Update JYOrder_Main_MD_Out Set SJCKPS=0,SJCKQty=0 where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
//<2F><><EFBFBD>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
sql.Add('Update JYOrder_Main_MD Set CKPS=(select Sum(SJCKPS) from JYOrder_Main_MD_Out A where A.MDID=JYOrder_Main_MD.MDID)');
|
|||
|
sql.Add(',CKQty=(select Sum(SJCKQty) from JYOrder_Main_MD_Out A where A.MDID=JYOrder_Main_MD.MDID)');
|
|||
|
sql.Add(' where MDID in(select MDID from JYOrder_Main_MD_Out B where B.PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+''')');
|
|||
|
//ɾ<><C9BE><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵĺ<C9B5>ͬ
|
|||
|
sql.Add('delete Contract_Main where ONID in(');
|
|||
|
sql.Add(' select ONID from JYOrder_Main_MD_OutNote where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+''')');
|
|||
|
sql.Add(' and isnull(ONID,'''')<>'''' ');
|
|||
|
SQL.Add(' delete Contract_Sub where not exists(select * from Contract_Main A where A.Mainid=Contract_Sub.MainId)');
|
|||
|
//ɾ<><C9BE><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5>뵥
|
|||
|
sql.Add(' delete JYOrder_Main_MD where ONID in(');
|
|||
|
sql.Add(' select ONID from JYOrder_Main_MD_OutNote where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+''')');
|
|||
|
sql.Add(' and isnull(ONID,'''')<>'''' ');
|
|||
|
//<2F><><EFBFBD>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
sql.Add(' Update JYOrder_PCS_Sub Set WCMQty=0,TJOutFlag=0 where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
//ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD>ڲֿ<DAB2><D6BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע
|
|||
|
sql.Add(' Delete JYOrder_Main_MD_OutNote where PFID='''+Trim(ClientDataSet1.fieldbyname('PFID').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
|
|||
|
|
|||
|
ADOQueryCmd.Connection.CommitTrans;
|
|||
|
ClientDataSet1.Delete;
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
except
|
|||
|
ADOQueryCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmTJCKOutOK.OrderNoChange(Sender: TObject);
|
|||
|
begin
|
|||
|
Button9.Click;
|
|||
|
end;
|
|||
|
|
|||
|
end.
|