885 lines
26 KiB
ObjectPascal
885 lines
26 KiB
ObjectPascal
unit U_SFProduceCaseInputNew;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||
cxDataStorage, cxEdit, DB, cxDBData, DBClient, ADODB, cxGridLevel,
|
||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
|
||
cxControls, cxGridCustomView, cxGrid, StdCtrls, ComCtrls, ToolWin,
|
||
ExtCtrls, cxDropDownEdit, cxButtonEdit, cxTimeEdit, cxCalendar,
|
||
cxGridCustomPopupMenu, cxGridPopupMenu, BtnEdit;
|
||
|
||
type
|
||
TfrmSFProduceCaseInputNew = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBSave: TToolButton;
|
||
TBClose: TToolButton;
|
||
Label8: TLabel;
|
||
TBAdd: TToolButton;
|
||
TBDel: TToolButton;
|
||
ADOQueryTemp: TADOQuery;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADOQueryMain: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
CDS_Sub: TClientDataSet;
|
||
cxGridPopupMenu1: TcxGridPopupMenu;
|
||
ToolButton1: TToolButton;
|
||
ToolButton2: TToolButton;
|
||
ADOQueryTemp10: TADOQuery;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
v1P_SeqNo: TcxGridDBColumn;
|
||
v1ProduceBegTime: TcxGridDBColumn;
|
||
v1ProduceEndTime: TcxGridDBColumn;
|
||
v1Column2: TcxGridDBColumn;
|
||
v1Note: TcxGridDBColumn;
|
||
cxGrid1Level1: TcxGridLevel;
|
||
Panel1: TPanel;
|
||
Label1: TLabel;
|
||
Label2: TLabel;
|
||
Label3: TLabel;
|
||
Label4: TLabel;
|
||
Label5: TLabel;
|
||
Label6: TLabel;
|
||
DeviceNo: TBtnEditA;
|
||
GroupNo: TBtnEditA;
|
||
P_BCode: TBtnEditA;
|
||
P_JCode: TBtnEditA;
|
||
PlanNO: TEdit;
|
||
P_Color: TComboBox;
|
||
Model: TEdit;
|
||
Label9: TLabel;
|
||
Label7: TLabel;
|
||
P_JColor: TComboBox;
|
||
cxGrid2: TcxGrid;
|
||
Tv2: TcxGridDBTableView;
|
||
cxGridDBColumn2: TcxGridDBColumn;
|
||
cxGridDBColumn5: TcxGridDBColumn;
|
||
cxGridDBColumn6: TcxGridDBColumn;
|
||
cxGridLevel1: TcxGridLevel;
|
||
Tv2Column1: TcxGridDBColumn;
|
||
CDS_JB: TClientDataSet;
|
||
DataSource2: TDataSource;
|
||
ADOQueryJB: TADOQuery;
|
||
Panel2: TPanel;
|
||
Button1: TButton;
|
||
Button2: TButton;
|
||
Button3: TButton;
|
||
cxGridPopupMenu2: TcxGridPopupMenu;
|
||
procedure TBAddClick(Sender: TObject);
|
||
procedure TBDelClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure TBSaveClick(Sender: TObject);
|
||
procedure v1DeviceNoPropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure v1GroupNoPropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure v1SupplierNamePropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure v1P_BaseChnNamePropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure v1LbStr6PropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure ToolButton2Click(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure DeviceNoBtnClick(Sender: TObject);
|
||
procedure GroupNoBtnClick(Sender: TObject);
|
||
procedure P_BCodeBtnClick(Sender: TObject);
|
||
procedure P_JCodeBtnClick(Sender: TObject);
|
||
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView;
|
||
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
|
||
ANewItemRecordFocusingChanged: Boolean);
|
||
procedure Button1Click(Sender: TObject);
|
||
procedure Button2Click(Sender: TObject);
|
||
procedure Button3Click(Sender: TObject);
|
||
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
private
|
||
procedure InitGrid();
|
||
function SaveData():Boolean;
|
||
function SaveDataSF():Boolean;
|
||
procedure InitJBGrid();
|
||
{ Private declarations }
|
||
public
|
||
PState:Integer;
|
||
FPlanNo,FP_SeqNo,FADID,FADType:String;
|
||
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmSFProduceCaseInputNew: TfrmSFProduceCaseInputNew;
|
||
|
||
implementation
|
||
uses
|
||
U_adodbmd,U_SelfForm,U_global,U_FormPas
|
||
,U_CxGridSet,U_ItemManageNew,U_SupplyHelp,U_PbProductHelp10;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmSFProduceCaseInputNew.TBAddClick(Sender: TObject);
|
||
begin
|
||
with CDS_Sub do
|
||
begin
|
||
Append;
|
||
CDS_Sub.FieldByName('SFlag').Value:='2';
|
||
Post;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.TBDelClick(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
if Trim(CDS_Sub.FieldByName('SFlag').AsString)='2' then
|
||
CDS_Sub.Delete
|
||
else begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD>ڴ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.InitGrid();
|
||
begin
|
||
try
|
||
ADOQueryMain.DisableControls;
|
||
with ADOQueryMain do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('exec P_Qry_SFCase :begdate,:enddate,:Pstate,:ADID');
|
||
Parameters.ParamByName('Pstate').Value:=2;
|
||
Parameters.ParamByName('ADID').Value:=Trim(FADID);
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryMain,CDS_Sub);
|
||
SInitCDSData20(ADOQueryMain,CDS_Sub);
|
||
finally
|
||
ADOQueryMain.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.FormShow(Sender: TObject);
|
||
var
|
||
fsj:String;
|
||
begin
|
||
ReadCxGrid('ʪ<><CAAA>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>1',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
ReadCxGrid('ʪ<><CAAA>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>1',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
fsj:='select distinct(defStr3) name, '''' Code from WC_ClothInout_Info where DepotNo like ''B%''';
|
||
//SInitCxGridComboBoxBySql(ADOQueryTemp,v1P_Clolor,fsj,0,True,'δ<>ҵ<EFBFBD><D2B5><EFBFBD>ɫ<EFBFBD><C9AB>');
|
||
InitComBoxBySql(ADOQueryTemp,P_Color,fsj,0,'δ<>ҵ<EFBFBD><D2B5><EFBFBD>ɫ<EFBFBD><C9AB>',True);
|
||
fsj:='select distinct(P_Color) name, '''' Code from WC_ClothInout_Info where DepotNo like ''P%''';
|
||
//SInitCxGridComboBoxBySql(ADOQueryTemp,v1P_Clolor,fsj,0,True,'δ<>ҵ<EFBFBD><D2B5><EFBFBD>ɫ<EFBFBD><C9AB>');
|
||
InitComBoxBySql(ADOQueryTemp,P_JColor,fsj,0,'δ<>ҵ<EFBFBD><D2B5><EFBFBD>ɫ<EFBFBD><C9AB>',True);
|
||
InitGrid();
|
||
SSetWinData30(ADOQueryMain,Panel1,1);
|
||
InitJBGrid();
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.TBCloseClick(Sender: TObject);
|
||
begin
|
||
Close;
|
||
WriteCxGrid('ʪ<><CAAA>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>1',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
WriteCxGrid('ʪ<><CAAA>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>1',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
||
end;
|
||
|
||
function TfrmSFProduceCaseInputNew.SaveData():Boolean;
|
||
Var
|
||
MaxNo:string;
|
||
begin
|
||
try
|
||
Result:=False;
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with CDS_Sub do
|
||
begin
|
||
CDS_Sub.First;
|
||
while not CDS_Sub.Eof do
|
||
begin
|
||
if Trim(CDS_Sub.fieldbyname('PlanNo').AsString)='' then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('GroupNo').AsString)='' then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('Quantity1').AsString)='' then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('JBNo').AsString)='' then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)='2' then
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('Select * from AD_SFProduce_Sub where PlanNo='''+Trim(CDS_Sub.fieldbyname('PlanNo').AsString)+'''');
|
||
sql.Add('and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryCmd.RecordCount>0 then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8>Ǽǣ<C7BC>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then
|
||
begin
|
||
MaxNo:=Trim(FADID);
|
||
end else
|
||
begin
|
||
if GetMaxNo20(ADOQueryCmd,MaxNo,'AD_PlanProduce_Case','SF',1,3)=False then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_PlanProduce_Case where ADID='''+Trim(FADID)+'''');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then
|
||
Edit
|
||
else
|
||
Append;
|
||
FieldByName('ADID').Value:=Trim(MaxNo);
|
||
SSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'AD_PlanProduce_Case',1);
|
||
FieldByName('P_SeqNo').Value:=Trim(CDS_Sub.fieldbyname('P_SeqNo').AsString);
|
||
FieldByName('P_JCode').Value:=Trim(CDS_Sub.fieldbyname('P_JCode').AsString);
|
||
FieldByName('P_Factory').Value:=Trim(CDS_Sub.fieldbyname('P_Factory').AsString);
|
||
FieldByName('AdType').Value:='ʪ<><CAAA>';
|
||
if Trim(CDS_Sub.fieldbyname('ProduceEndTime').AsString)='' then
|
||
begin
|
||
FieldByName('ProduceEndTime').Value:=GetServerTime10(ADOQueryTemp);
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)='2' then
|
||
begin
|
||
FieldByName('Filler').Value:=Trim(gUserName);
|
||
FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
end else
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then
|
||
begin
|
||
FieldByName('Editer').Value:=Trim(gUserName);
|
||
FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
end;
|
||
Post;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_EndProduct_Case where ADID='''+Trim(FADID)+'''');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then
|
||
Edit
|
||
else
|
||
Append;
|
||
FieldByName('ADID').Value:=Trim(MaxNo);
|
||
SSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'AD_EndProduct_Case',2);
|
||
FieldByName('PlanNo').Value:=Trim(CDS_Sub.fieldbyname('PlanNo').AsString);
|
||
FieldByName('P_SeqNo').Value:=Trim(CDS_Sub.fieldbyname('P_SeqNo').AsString);
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)='2' then
|
||
begin
|
||
FieldByName('Filler').Value:=Trim(gUserName);
|
||
FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
end else
|
||
if Trim(CDS_Sub.fieldbyname('SFlag').AsString)<>'2' then
|
||
begin
|
||
FieldByName('Editer').Value:=Trim(gUserName);
|
||
FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp);
|
||
end;
|
||
Post;
|
||
end;
|
||
CDS_Sub.Next;
|
||
end;
|
||
end;
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
Result:=True;
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Result:=False;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
function TfrmSFProduceCaseInputNew.SaveDataSF():Boolean;
|
||
Var
|
||
MaxNo:string;
|
||
begin
|
||
try
|
||
Result:=False;
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
if PState=0 then
|
||
begin
|
||
with ADOQueryTemp10 do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add(' select * from AD_SFProduce_Main where PlanNo='''+Trim(PlanNO.Text)+'''');
|
||
sql.Add(' and GroupNo='''+Trim(GroupNo.Text)+'''');
|
||
Open;
|
||
if not IsEmpty then
|
||
begin
|
||
//MaxNo:=Trim(fieldbyname('ADID').AsString);
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27>˰<EFBFBD><CBB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵļ<C5B5>¼<EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӽ<EFBFBD>¼<EFBFBD><C2BC>','<27><>ʾ',0);
|
||
Exit;
|
||
end else
|
||
begin
|
||
if GetMaxNo20(ADOQueryTemp,MaxNo,'AD_SFProduce_Main','SF',1,4)=False then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add('select * from AD_SFProduce_Main where 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('ADID').Value:=Trim(MaxNo);
|
||
SSetsavedataNew(ADOQueryCmd,'AD_SFProduce_Main',Panel1,1);
|
||
//SSetSaveDataCDSNew(ADOQueryCmd,Tv1,CDS_Sub,'AD_SFProduce_Main',1);
|
||
FieldByName('ProduceDate').Value:=FormatDateTime('yyyy-MM-dd',CDS_Sub.fieldbyname('BegTime').AsDateTime);
|
||
FieldByName('Filler').Value:=Trim(gUserName);
|
||
Post;
|
||
end;
|
||
|
||
end;
|
||
end;
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD>Ϣ
|
||
with CDS_Sub do
|
||
begin
|
||
First;
|
||
while not Eof do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from AD_SFProduce_Sub where ADID='''+Trim(MaxNo)+'''');
|
||
sql.Add(' and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
Open;
|
||
if not IsEmpty then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8>Ǽǣ<C7BC>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_Sub where 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('ADID').Value:=Trim(MaxNo);
|
||
SSetSaveDataCDSNew(ADOQueryCmd,Tv1,CDS_Sub,'AD_SFProduce_Sub',2);
|
||
FieldByName('Filler').Value:=Trim(gUserName);
|
||
Post;
|
||
end;
|
||
CDS_Sub.Next;
|
||
end;
|
||
end;
|
||
FADID:=Trim(MaxNo);
|
||
end;
|
||
if PState=1 then
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete AD_SFProduce_Sub where ADID='''+Trim(FADID)+'''');
|
||
ExecSQL;
|
||
end;
|
||
with CDS_Sub do
|
||
begin
|
||
First;
|
||
while not eof do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from AD_SFProduce_Sub where ADID='''+Trim(FADID)+'''');
|
||
sql.Add(' and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
Open;
|
||
if not IsEmpty then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_Sub where 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('ADID').Value:=Trim(FADID);
|
||
SSetSaveDataCDSNew(ADOQueryCmd,Tv1,CDS_Sub,'AD_SFProduce_Sub',2);
|
||
FieldByName('Filler').Value:=Trim(gUserName);
|
||
Post;
|
||
end;
|
||
CDS_Sub.Next;
|
||
end;
|
||
end;
|
||
CDS_Sub.First;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_Main where ADID='''+Trim(FADID)+'''');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Edit;
|
||
SSetsavedataNew(ADOQueryCmd,'AD_SFProduce_Main',Panel1,1);
|
||
Post;
|
||
end;
|
||
end;
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add(' Update AD_SFProduce_Sub Set RunHours=datediff(mi,BegTime,EndTime)*1.00/60');
|
||
sql.Add(' where ADID='''+Trim(FADID)+'''');
|
||
SQL.Add(' and Quantity1>0');
|
||
SQL.Add(' Update AD_SFProduce_Sub Set WaitHours=datediff(mi,BegTime,EndTime)*1.00/60');
|
||
sql.Add(' where ADID='''+Trim(FADID)+'''');
|
||
SQL.Add(' and Quantity1=0');
|
||
ExecSQL;
|
||
end;
|
||
Result:=True;
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Result:=False;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.TBSaveClick(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
if Trim(PlanNO.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(GroupNo.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if CDS_Sub.Locate('Quantity1',Null,[])=True then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if CDS_Sub.Locate('SubId',Null,[])=True then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if SaveDataSF() then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
|
||
Close;
|
||
ModalResult:=1;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.v1DeviceNoPropertiesButtonClick(
|
||
Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmItemManageNew:=TfrmItemManageNew.Create(Application);
|
||
with frmItemManageNew do
|
||
begin
|
||
flag:='DeviceNo';
|
||
flagname:='<27><>̨';
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.CDS_Sub.Edit;
|
||
Self.CDS_Sub.FieldByName('DeviceNo').Value:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
end;
|
||
end;
|
||
finally
|
||
frmItemManageNew.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.v1GroupNoPropertiesButtonClick(
|
||
Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmItemManageNew:=TfrmItemManageNew.Create(Application);
|
||
with frmItemManageNew do
|
||
begin
|
||
flag:='GroupNo';
|
||
flagname:='<27><><EFBFBD><EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.CDS_Sub.Edit;
|
||
Self.CDS_Sub.FieldByName('GroupNo').Value:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
end;
|
||
end;
|
||
finally
|
||
frmItemManageNew.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.v1SupplierNamePropertiesButtonClick(
|
||
Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmSupplyHelp:=TfrmSupplyHelp.Create(Application);
|
||
with frmSupplyHelp do
|
||
begin
|
||
FLType:='<27><><EFBFBD><EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
CDS_Sub.Edit;
|
||
CDS_Sub.FieldByName('P_Factory').Value:=Trim(ADOQueryHelp.fieldbyname('CustomNo').AsString);
|
||
CDS_Sub.FieldByName('ShortName').Value:=Trim(ADOQueryHelp.fieldbyname('ShortName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmSupplyHelp.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.v1P_BaseChnNamePropertiesButtonClick(
|
||
Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmPbProductHelp10:=TfrmPbProductHelp10.Create(Application);
|
||
with frmPbProductHelp10 do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
CDS_Sub.Edit;
|
||
CDS_Sub.FieldByName('P_JCode').Value:=Trim(ADOQueryHelp.fieldbyname('P_Code').AsString);
|
||
CDS_Sub.FieldByName('P_JName').Value:=Trim(ADOQueryHelp.fieldbyname('P_ChnName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmPbProductHelp10.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.v1LbStr6PropertiesButtonClick(
|
||
Sender: TObject; AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmPbProductHelp10:=TfrmPbProductHelp10.Create(Application);
|
||
with frmPbProductHelp10 do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
CDS_Sub.Edit;
|
||
CDS_Sub.FieldByName('P_BCode').Value:=Trim(ADOQueryHelp.fieldbyname('P_Code').AsString);
|
||
CDS_Sub.FieldByName('P_BName').Value:=Trim(ADOQueryHelp.fieldbyname('P_ChnName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmPbProductHelp10.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.ToolButton2Click(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
OneKeyPost(Tv1,CDS_Sub);
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.ToolButton1Click(Sender: TObject);
|
||
begin
|
||
CopyAddRowCDS(CDS_Sub);
|
||
CDS_Sub.Edit;
|
||
CDS_Sub.FieldByName('SFlag').Value:='2';
|
||
CDS_Sub.Post;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.DeviceNoBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmItemManageNew:=TfrmItemManageNew.Create(Application);
|
||
with frmItemManageNew do
|
||
begin
|
||
flag:='DeviceNo';
|
||
flagname:='<27><>̨';
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.DeviceNo.Text:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
Self.DeviceNo.TxtCode:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
end;
|
||
end;
|
||
finally
|
||
frmItemManageNew.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.GroupNoBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmItemManageNew:=TfrmItemManageNew.Create(Application);
|
||
with frmItemManageNew do
|
||
begin
|
||
flag:='GroupNo';
|
||
flagname:='<27><><EFBFBD><EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.GroupNo.Text:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
Self.GroupNo.TxtCode:=ClientDataSet1.fieldbyname('Name').AsString;
|
||
end;
|
||
end;
|
||
finally
|
||
frmItemManageNew.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.P_BCodeBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmPbProductHelp10:=TfrmPbProductHelp10.Create(Application);
|
||
with frmPbProductHelp10 do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.P_BCode.TxtCode:=Trim(ADOQueryHelp.fieldbyname('P_Code').AsString);
|
||
Self.P_BCode.Text:=Trim(ADOQueryHelp.fieldbyname('P_ChnName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmPbProductHelp10.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.P_JCodeBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmPbProductHelp10:=TfrmPbProductHelp10.Create(Application);
|
||
with frmPbProductHelp10 do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.P_JCode.TxtCode:=Trim(ADOQueryHelp.fieldbyname('P_Code').AsString);
|
||
Self.P_JCode.Text:=Trim(ADOQueryHelp.fieldbyname('P_ChnName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmPbProductHelp10.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.Tv1FocusedRecordChanged(
|
||
Sender: TcxCustomGridTableView; APrevFocusedRecord,
|
||
AFocusedRecord: TcxCustomGridRecord;
|
||
ANewItemRecordFocusingChanged: Boolean);
|
||
begin
|
||
try
|
||
ADOQueryJB.DisableControls;
|
||
with ADOQueryJB do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_JBNO where PlanNO='''+Trim(PlanNO.Text)+'''');
|
||
SQL.Add(' and subId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
Open;
|
||
end;
|
||
CreateCDS20(ADOQueryJB,CDS_JB);
|
||
InitCDSData20(ADOQueryJB,CDS_JB);
|
||
finally
|
||
ADOQueryJB.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.Button1Click(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
with CDS_JB do
|
||
begin
|
||
Append;
|
||
Post;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.Button2Click(Sender: TObject);
|
||
begin
|
||
if CDS_Sub.IsEmpty then Exit;
|
||
if CDS_JB.IsEmpty then Exit;
|
||
if Trim(CDS_JB.fieldbyname('PlanNo').AsString)<>'' then
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete AD_SFProduce_JBNO where PlanNo='''+Trim(PlanNO.Text)+'''');
|
||
sql.Add(' and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
sql.Add(' and JBNO='''+Trim(CDS_JB.fieldbyname('JBNO').AsString)+'''');
|
||
ExecSQL;
|
||
end;
|
||
end;
|
||
CDS_JB.Delete;
|
||
|
||
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.Button3Click(Sender: TObject);
|
||
var
|
||
MaxNo:String;
|
||
begin
|
||
if CDS_JB.IsEmpty then Exit;
|
||
if Trim(PlanNO.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(CDS_Sub.fieldbyname('SubId').AsString)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if CDS_JB.Locate('JBNO',null,[])=True then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if CDS_JB.Locate('JBQuantity',null,[])=True then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete AD_SFProduce_JBNO where PlanNo='''+Trim(PlanNO.Text)+'''');
|
||
sql.Add(' and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
ExecSQL;
|
||
end;
|
||
with CDS_JB do
|
||
begin
|
||
First;
|
||
while not Eof do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_JBNO where PlanNo='''+Trim(PlanNO.Text)+'''');
|
||
sql.Add(' and SubId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
sql.Add(' and JBNO='''+Trim(CDS_JB.fieldbyname('JBNO').AsString)+'''');
|
||
Open;
|
||
if not IsEmpty then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_JBNO where 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('PlanNo').Value:=Trim(PlanNO.Text);
|
||
FieldByName('SubId').Value:=Trim(CDS_Sub.fieldbyname('SubId').AsString);
|
||
SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_JB,'AD_SFProduce_JBNO',2);
|
||
Post;
|
||
end;
|
||
CDS_JB.Next;
|
||
end;
|
||
end;
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
except
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.Tv1CellClick(
|
||
Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
InitJBGrid();
|
||
end;
|
||
|
||
procedure TfrmSFProduceCaseInputNew.InitJBGrid();
|
||
begin
|
||
try
|
||
ADOQueryJB.DisableControls;
|
||
with ADOQueryJB do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from AD_SFProduce_JBNO where PlanNO='''+Trim(PlanNO.Text)+'''');
|
||
SQL.Add(' and subId='''+Trim(CDS_Sub.fieldbyname('SubId').AsString)+'''');
|
||
Open;
|
||
end;
|
||
CreateCDS20(ADOQueryJB,CDS_JB);
|
||
InitCDSData20(ADOQueryJB,CDS_JB);
|
||
finally
|
||
ADOQueryJB.EnableControls;
|
||
end;
|
||
end;
|
||
|
||
end.
|