RtTool/Delphi7/开发档案/马国钢开发代码/ThreeFun/SelfForm/U_PlanOrderPL.pas

779 lines
22 KiB
ObjectPascal
Raw Normal View History

2025-01-08 11:55:07 +08:00
unit U_PlanOrderPL;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ImgList, ComCtrls, ToolWin, ExtCtrls, BtnEdit, Grids,
DBGrids, DB, ADODB, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, cxDBData, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, cxPC, cxGridCustomPopupMenu, cxGridPopupMenu,
cxTextEdit, cxCalendar, cxMemo, Buttons, DBClient, cxButtonEdit,
cxSplitter;
type
TfrmPlanOrderPL = class(TForm)
ToolBar3: TToolBar;
Tclose: TToolButton;
ImageList24: TImageList;
GroupBox1: TGroupBox;
ComboBox1: TComboBox;
begDate: TDateTimePicker;
endDate: TDateTimePicker;
Label2: TLabel;
edtPlan: TEdit;
Label3: TLabel;
ADOQueryPlan: TADOQuery;
DataSourcePlan: TDataSource;
Tfind: TToolButton;
ADOQueryCmd: TADOQuery;
Label4: TLabel;
P_chnName: TEdit;
Panel1: TPanel;
Tv1: TcxGridDBTableView;
dbGrid2Level1: TcxGridLevel;
dbGrid2: TcxGrid;
Tv1PlanNo: TcxGridDBColumn;
Tv1Deliver: TcxGridDBColumn;
Tv1exigence: TcxGridDBColumn;
Tv1p_num: TcxGridDBColumn;
Tv1p_chnname: TcxGridDBColumn;
Tv1customName: TcxGridDBColumn;
Tv1BusineesName: TcxGridDBColumn;
Tv1Busntime: TcxGridDBColumn;
Tv1statusName: TcxGridDBColumn;
Tv1P_unitName: TcxGridDBColumn;
v1P_Other: TcxGridDBColumn;
Edt_cust: TEdit;
v1P_tnum: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
v1P_FQNo: TcxGridDBColumn;
v1P_YhNo: TcxGridDBColumn;
v1P_BaseChnName: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1P_Color: TcxGridDBColumn;
v1sbtr2: TcxGridDBColumn;
v1LbStr6: TcxGridDBColumn;
v1P_Csid: TcxGridDBColumn;
v1sid: TcxGridDBColumn;
ADOQueryTemp: TADOQuery;
cxGridPopupMenu1: TcxGridPopupMenu;
v1P_FactoryName: TcxGridDBColumn;
v1DhChk: TcxGridDBColumn;
v1PCSeqNo: TcxGridDBColumn;
TBPrint: TToolButton;
v1Vuserdef1: TcxGridDBColumn;
v1Crafts: TcxGridDBColumn;
TBExport: TToolButton;
v1CheckName: TcxGridDBColumn;
v1PCDate: TcxGridDBColumn;
v1BChkTime: TcxGridDBColumn;
TBView: TToolButton;
Label5: TLabel;
p_num1: TEdit;
Label6: TLabel;
p_num2: TEdit;
Label1: TLabel;
P_FQNo: TEdit;
Label7: TLabel;
P_YhNo: TEdit;
Label8: TLabel;
P_Color: TEdit;
Label9: TLabel;
P_BaseChnName: TEdit;
Label10: TLabel;
LbStr6: TEdit;
Label12: TLabel;
P_Csid: TEdit;
cxSplitter1: TcxSplitter;
ToolButton5: TToolButton;
v1PLTime: TcxGridDBColumn;
v1PLPerson: TcxGridDBColumn;
v1PCPerson: TcxGridDBColumn;
Panel2: TPanel;
ToolBar1: TToolBar;
btnAddDye: TToolButton;
btnDelDye: TToolButton;
btnSaveDye: TToolButton;
grdDye: TcxGrid;
grdDyeTV1: TcxGridDBTableView;
grdDyeTV1OrderId: TcxGridDBColumn;
grdDyeTV1chnName: TcxGridDBColumn;
grdDyeTV1DyeStyle: TcxGridDBColumn;
grdDyeTV1DyeUnitName: TcxGridDBColumn;
grdDyeTV1UnitdyeNum: TcxGridDBColumn;
grdDyeTV1stepId: TcxGridDBColumn;
grdDyeTV1beizhu: TcxGridDBColumn;
grdDyeL1: TcxGridLevel;
CDS_Sub: TClientDataSet;
AdoQuerySub: TADOQuery;
ds1: TDataSource;
grdDyeTV1Crafts: TcxGridDBColumn;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
procedure FormCreate(Sender: TObject);
procedure TcloseClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure TfindClick(Sender: TObject);
procedure rgSystypeClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure v1P_FQNoCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure TBPrintClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBViewClick(Sender: TObject);
procedure p_num1KeyPress(Sender: TObject; var Key: Char);
procedure edtPlanChange(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure btnAddDyeClick(Sender: TObject);
procedure btnDelDyeClick(Sender: TObject);
procedure grdDyeTV1chnNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure grdDyeTV1CraftsPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure btnSaveDyeClick(Sender: TObject);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
procedure grdDyeTV1UnitdyeNumPropertiesChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure grdDyeTV1beizhuPropertiesEditValueChanged(Sender: TObject);
private
procedure DoQuery();
procedure InitSubGrid();
function saveDye(): Boolean;
public
FPlanNo:string;
{ Public declarations }
end;
var
frmPlanOrderPL: TfrmPlanOrderPL;
implementation
uses
U_adodbmd,U_global, U_status,U_SelfForm,U_CxGridSet,
U_FormPas,U_plan,U_frameHelp10,U_XcCodeHelp,U_ItemManageNew,U_RhlHelp,
U_RhlHelpOne,U_GetXYHelp,U_GetPlanXYHelp;
{$R *.dfm}
procedure TfrmPlanOrderPL.FormCreate(Sender: TObject);
begin
ReadCxGrid('<27>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ',Tv1,'<27>ƻ<EFBFBD><C6BB><EFBFBD>');
dbgrid2.Align :=alClient;
begDate.DateTime :=SGetServerDate(ADOQueryTemp);
endDate.DateTime :=SGetServerDate(ADOQueryTemp);
DoQuery();
InitSubGrid();
end;
//////////////////////////////////////////////////
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1BDBB><EFBFBD><EFBFBD>
//////////////////////////////////////////////////
procedure TfrmPlanOrderPL.DoQuery();
var
mwhere:string;
begin
if comboBox1.ItemIndex=0 then
begin
mwhere:=' and BusnTime>='''+dateTostr(begdate.Date)+''' and BusnTime<'''+dateTostr(endDate.Date+1)+'''';
end
else if comboBox1.ItemIndex=1 then
begin
mwhere:=' and deliver>='''+dateTostr(begdate.Date)+''' and deliver<'''+dateTostr(endDate.Date+1)+'''';
end
else if comboBox1.ItemIndex=2 then
begin
mwhere:=' and PCSCDate>='''+dateTostr(begdate.Date)+''' and PCSCDate<'''+dateTostr(endDate.Date+1)+'''';
end;
//<2F>ƻ<EFBFBD><C6BB><EFBFBD>
if trim(edtPlan.Text)<>'' then
begin
mwhere:=mwhere+' and A.planNo like ''%'+trim(edtPlan.Text)+'%''';
end;
//<2F>ͻ<EFBFBD>
if trim(Edt_cust.Text)<>'' then
begin
mwhere:=mwhere+' and CustomNo like ''%'+trim(Edt_cust.Text)+'%''';
end;
//Ʒ<><C6B7>
if trim(P_chnName.Text)<>'' then
begin
mwhere:=mwhere+' and P_chnName like ''%'+trim(P_chnName.Text)+'%''';
end;
//<2F><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
if trim(P_FQNo.Text)<>'' then
begin
mwhere:=mwhere+' and P_FQNo like ''%'+trim(P_FQNo.Text)+'%''';
end;
//<2F><>·
if trim(P_YhNo.Text)<>'' then
begin
mwhere:=mwhere+' and P_YhNo like ''%'+trim(P_YhNo.Text)+'%''';
end;
//ɫ<><C9AB>
if trim(P_Color.Text)<>'' then
begin
mwhere:=mwhere+' and P_Color like ''%'+trim(P_Color.Text)+'%''';
end;
//<2F>ײ<EFBFBD>
if trim(P_BaseChnName.Text)<>'' then
begin
mwhere:=mwhere+' and P_BaseChnName like ''%'+trim(P_BaseChnName.Text)+'%''';
end;
//<2F><>˹
if trim(LbStr6.Text)<>'' then
begin
mwhere:=mwhere+' and LbStr6 like ''%'+trim(LbStr6.Text)+'%''';
end;
//<2F>´ﲿ<C2B4><EFB2BF>
if trim(gDef1)<>'' then
begin
mwhere:=mwhere+' and M.Dept ='''+trim(gDef1)+'''';
end;
//ҵ<><D2B5>Ա
{if trim(BusineesName.Text)<>'' then
begin
mwhere:=mwhere+' and BusineesName like ''%'+trim(BusineesName.Text)+'%''';
end;}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if trim(P_Csid.Text)<>'' then
begin
mwhere:=mwhere+' and P_Csid like ''%'+trim(P_Csid.Text)+'%''';
end;
if Trim(p_num1.Text)<>'' then
begin
mwhere:=mwhere+' and P_num >='+trim(p_num1.Text);
end;
if Trim(p_num2.Text)<>'' then
begin
mwhere:=mwhere+' and P_num <='+trim(p_num2.Text);
end;
try
panel1.Visible:=true;
panel1.Refresh;
ADOQueryPlan.DisableControls;
with ADOQueryPlan do
begin
close;
sql.Clear ;
sql.Add('EXEC P_Get_PlanListPL ');
sql.Add(' '+intTostr(cxTabControl1.TabIndex));
sql.Add(','+QuotedStr(formatDatetime('yyyy-MM-dd',begdate.Date)));
sql.Add(','+QuotedStr(formatDatetime('yyyy-MM-dd',(enddate.Date+1))));
sql.Add(','+quotedStr(mwhere));
Open;
end;
finally
panel1.Visible :=false;
ADOQueryPlan.EnableControls;
end;
end;
procedure TfrmPlanOrderPL.InitSubGrid();
begin
try
AdoQuerySub.DisableControls;
with AdoQuerySub do
begin
close;
sql.Clear ;
SQL.Add('select A.*,B.MName ChnName from MD_ProductPL A ');
SQL.Add(' JOIN Gy_Material B ON B.MNumber = A.Dyecode ');
SQL.Add('where PlanNo='''+Trim(ADOQueryPlan.fieldbyname('PlanNo').AsString)+'''');
sql.Add(' and P_SeqNo='''+Trim(ADOQueryPlan.fieldbyname('P_SeqNo').AsString)+'''');
sql.Add(' and Dept='''+Trim(ADOQueryPlan.fieldbyname('Dept').AsString)+'''');
Open;
CreateCDS20(AdoQuerySub,CDS_Sub);
InitCDSData20(AdoQuerySub,CDS_Sub);
end;
finally
AdoQuerySub.EnableControls;
end;
end;
procedure TfrmPlanOrderPL.TcloseClick(Sender: TObject);
begin
close;
WriteCxGrid('<27>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ',Tv1,'<27>ƻ<EFBFBD><C6BB><EFBFBD>');
end;
procedure TfrmPlanOrderPL.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmPlanOrderPL.FormDestroy(Sender: TObject);
begin
frmPlanOrderPL:=NIL;
end;
procedure TfrmPlanOrderPL.TfindClick(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmPlanOrderPL.rgSystypeClick(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmPlanOrderPL.cxTabControl1Change(Sender: TObject);
begin
{ if cxTabControl1.TabIndex=0 then
v1PCSeqNo.Visible:=False
else
v1PCSeqNo.Visible:=True;
if (cxTabControl1.TabIndex=1) or (cxTabControl1.TabIndex=2) then
begin
v1PCSeqNo.Options.Focusing:=True ;
Tv1exigence.Options.Focusing:=True;
end
else
begin
v1PCSeqNo.Options.Focusing:=False;
Tv1exigence.Options.Focusing:=False;
end; }
Tfind.Click ;
//ADOQueryPlan.Locate('PlanNo',FPlanNo,[]);
end;
procedure TfrmPlanOrderPL.v1P_FQNoCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
id:Integer;
begin
begin
Id:=TV1.GetColumnByFieldName('SBtr3').Index;//;-TV1.GroupedItemCount;
if Id<0 then Exit;
if AViewInfo.GridRecord.Values[Id]='Red' then
begin
ACanvas.Brush.Color:=clRed;
end else
if AViewInfo.GridRecord.Values[Id]='Purple' then
begin
ACanvas.Brush.Color:=clPurple;
end else
if AViewInfo.GridRecord.Values[Id]='Olive' then
begin
ACanvas.Brush.Color:=clOlive;
end else
if AViewInfo.GridRecord.Values[Id]='Teal' then
begin
ACanvas.Brush.Color:=clTeal;
end else
if AViewInfo.GridRecord.Values[Id]='Background' then
begin
ACanvas.Brush.Color:=clBackground;
end;
end
end;
procedure TfrmPlanOrderPL.TBPrintClick(Sender: TObject);
begin
SelPrintDataNew(Tv1,ADOQueryPlan,'<27><> <20><> ˳ <20><> <20><>','<27><><EFBFBD>ڣ<EFBFBD>'+(FormatDateTime('yyyy-MM-dd',SGetServerDate(ADOQueryTemp))),'');
end;
procedure TfrmPlanOrderPL.FormShow(Sender: TObject);
begin
ReadCxGrid('<27>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϣ',Tv1,'<27>ƻ<EFBFBD><C6BB><EFBFBD>');
v1PCSeqNo.Visible:=True;
end;
procedure TfrmPlanOrderPL.TBExportClick(Sender: TObject);
begin
if ADOQueryPlan.IsEmpty then Exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD>',dbGrid2);
end;
procedure TfrmPlanOrderPL.TBViewClick(Sender: TObject);
begin
try
frmPlan:=TfrmPlan.Create(Application);
with frmPlan do
begin
fWinStatus:=5;
FplanNo:=Trim(Self.ADOQueryPlan.fieldbyname('PlanNo').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmPlan.Free;
end;
end;
procedure TfrmPlanOrderPL.p_num1KeyPress(Sender: TObject; var Key: Char);
begin
if not(Key in['0'..'9',#8,#27]) then
begin
key:=#0;
end;
end;
procedure TfrmPlanOrderPL.edtPlanChange(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmPlanOrderPL.ToolButton5Click(Sender: TObject);
var
splanNo:string;
begin
frmPlan:=TfrmPlan.create(self);
with frmPlan do
begin
fWinStatus:=1;
FplanNo:=trim(ADOQueryPlan.fieldByName('PlanNo').asString);
planNo.Enabled:=False;
showModal;
free;
end;
splanno:=trim(ADOQueryPlan.fieldByName('PlanNo').asString);
DoQuery();
ADOQueryPlan.Locate('planno',splanno,[]);
end;
procedure TfrmPlanOrderPL.btnAddDyeClick(Sender: TObject);
var
mStepId: Integer;
begin
if ADOQueryPlan.IsEmpty then Exit;
if CDS_Sub.IsEmpty then
begin
mStepId := 1;
end
else
begin
CDS_Sub.Last ;
mStepId := CDS_Sub.FieldByName('stepId').AsInteger;
end;
frmRhlHelp := TfrmRhlHelp.Create(Application);
with frmRhlHelp do
begin
if ShowModal = 1 then
begin
with CDS_sel do
begin
try
DisableControls;
First ;
while not Eof do
begin
CDS_Sub.Append;
CDS_Sub.FieldByName('stepId').Value:=mStepId;
CDS_Sub.FieldByName('OrderId').Value:= CDS_Sub.RecordCount+1;
CDS_Sub.FieldByName('DyeCode').Value :=trim(FieldByName('DyeCode').AsString);
CDS_Sub.FieldByName('chnName').Value :=trim(FieldByName('chnName').AsString);
CDS_Sub.FieldByName('DyeStyle').Value :=FieldByName('DyepropertyName').AsString;
CDS_Sub.FieldByName('Unit').Value :=FieldByName('DyeUnitName').AsString;
CDS_Sub.Post;
Next;
end;
finally
EnableControls;
end;
end;
end;
Release;
end;
btnSaveDye.Enabled:=True;
end;
procedure TfrmPlanOrderPL.btnDelDyeClick(Sender: TObject);
begin
if CDS_Sub.IsEmpty then Exit;
if Trim(CDS_Sub.fieldbyname('PLID').AsString)<>'' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete MD_ProductPL where PLID='''+Trim(CDS_Sub.fieldbyname('PLID').AsString)+'''');
ExecSQL;
end;
end;
CDS_Sub.Delete;
end;
procedure TfrmPlanOrderPL.grdDyeTV1chnNamePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
if ADOQueryPlan.IsEmpty then Exit;
frmRhlHelpOne := TfrmRhlHelpOne.Create(Application);
with frmRhlHelpOne do
begin
if ShowModal = 1 then
begin
CDS_Sub.Edit;
CDS_Sub.FieldByName('DyeCode').Value :=trim(ADOQueryFrom.FieldByName('MNumber').AsString);
CDS_Sub.FieldByName('chnName').Value :=trim(ADOQueryFrom.FieldByName('MName').AsString);
CDS_Sub.FieldByName('DyeStyle').Value :=ADOQueryFrom.FieldByName('kfsortname').AsString;
CDS_Sub.FieldByName('Unit').Value :=ADOQueryFrom.FieldByName('PrimaryUnitName').AsString;
end;
Release;
end;
btnSaveDye.Enabled:=True;
end;
procedure TfrmPlanOrderPL.grdDyeTV1CraftsPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmItemManageNew:=TfrmItemManageNew.Create(Application);
with frmItemManageNew do
begin
flag:='JGXMTYPE';
flagname:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
CDS_Sub.Edit;
CDS_Sub.FieldByName('Crafts').Value:=Trim(ClientDataSet1.fieldbyname('name').AsString);
//CDSDye.Post;
end;
end;
finally
frmItemManageNew.Free;
end;
btnSaveDye.Enabled:=True;
end;
function TfrmPlanOrderPL.saveDye(): Boolean;
var
k:integer;
MaxNo:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Sub.First;
k := 1;
while not CDS_Sub.Eof do
begin
if Trim(CDS_Sub.fieldbyname('PLId').AsString)<>'' then
begin
MaxNo:=Trim(CDS_Sub.fieldbyname('PLId').AsString);
end else
begin
if GetMaxNo20(ADOQueryTemp,MaxNo,'MD_ProductPL','PL',1,3)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM MD_ProductPL');
SQL.Add('WHERE PlID='''+Trim(CDS_Sub.fieldbyname('PlID').AsString)+'''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(CDS_Sub.FieldByName('PlID').AsString)='' then
Append
else
Edit;
FieldByName('PLID').Value := Trim(MaxNo);
FieldByName('PlanNo').Value := Trim(ADOQueryPlan.FieldByName('PlanNo').AsString);
FieldByName('P_SeqNo').Value :=Trim(ADOQueryPlan.FieldByName('P_SeqNo').AsString);
FieldByName('Dept').Value :=Trim(ADOQueryPlan.FieldByName('Dept').AsString);
FieldByName('dyeCode').Value :=CDS_Sub.FieldByName('DyeCode').AsString;
FieldByName('DyeStyle').Value :=CDS_Sub.FieldByName('DyeStyle').AsString;
FieldByName('stepId').Value :=CDS_Sub.FieldByName('stepId').AsInteger;
FieldByName('OrderID').Value :=k;
FieldByName('Unit').Value :=CDS_Sub.FieldByName('Unit').AsString ;
FieldByName('UnitDyeNum').Value :=CDS_Sub.FieldByName('UnitDyeNum').AsFloat ;
FieldByName('Crafts').Value :=trim(CDS_Sub.FieldByName('Crafts').asString);
FieldByName('beizhu').Value :=trim(CDS_Sub.FieldByName('BeiZhu').asString);
if Trim(CDS_Sub.FieldByName('PlanNo').AsString)='' then
begin
FieldByName('Filler').Value:=Trim(gUserName);
end else
begin
FieldByName('Editer').Value:=Trim(gUserName);
FieldByName('EditTime').Value:=GetServerTime10(ADOQueryTemp);
end;
Post;
end;
Inc(k);
CDS_Sub.Next;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update MD_ProductPC Set PLFlag=1,PLPerson='''+Trim(gUserName)+'''');
sql.Add(' ,PLTime=getdate() ');
sql.Add(' where PCID='''+Trim(ADOQueryPlan.fieldbyname('PCID').AsString)+'''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', MB_ICONSTOP);
Result := False;
end;
end;
procedure TfrmPlanOrderPL.btnSaveDyeClick(Sender: TObject);
begin
if CDS_Sub.Locate('chnName',null,[]) then
begin
Application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('UnitdyeNum',null,[]) then
begin
Application.MessageBox('<27><EFBFBD><E4B7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if saveDye() then
begin
Application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
btnSaveDye.Enabled:=false;
Tfind.Click;
end;
end;
procedure TfrmPlanOrderPL.Tv1FocusedRecordChanged(
Sender: TcxCustomGridTableView; APrevFocusedRecord,
AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
begin
InitSubGrid();
end;
procedure TfrmPlanOrderPL.grdDyeTV1UnitdyeNumPropertiesChange(
Sender: TObject);
begin
btnSaveDye.Enabled:=True;
end;
procedure TfrmPlanOrderPL.ToolButton1Click(Sender: TObject);
var
mStepId: Integer;
begin
if ADOQueryPlan.IsEmpty then Exit;
if CDS_Sub.IsEmpty then
begin
mStepId := 1;
end
else
begin
CDS_Sub.Last ;
mStepId := CDS_Sub.FieldByName('stepId').AsInteger;
end;
try
frmGetXYHelp:=TfrmGetXYHelp.Create(Application);
with frmGetXYHelp do
begin
DYCode.Text:=Trim(ADOQueryPlan.fieldbyname('P_Csid').AsString);
if ShowModal=1 then
begin
with ADOQueryDY do
begin
try
DisableControls;
First ;
while not Eof do
begin
CDS_Sub.Append;
CDS_Sub.FieldByName('stepId').Value:=mStepId;
CDS_Sub.FieldByName('OrderId').Value:= CDS_Sub.RecordCount+1;
CDS_Sub.FieldByName('DyeCode').Value :=trim(FieldByName('DyeCode').AsString);
CDS_Sub.FieldByName('chnName').Value :=trim(FieldByName('chnName').AsString);
CDS_Sub.FieldByName('DyeStyle').Value :=FieldByName('DyeStyle').AsString;
CDS_Sub.FieldByName('Unit').Value :=FieldByName('DyeUnit').AsString;
CDS_Sub.FieldByName('Crafts').Value:=FieldByName('GXMC').AsString;
CDS_Sub.FieldByName('Beizhu').Value:=FieldByName('Beizhu').AsString;
CDS_Sub.FieldByName('UnitdyeNum').Value:=FieldByName('UnitdyeNum').AsString;
CDS_Sub.Post;
Next;
end;
finally
EnableControls;
end;
end;
end;
end;
finally
frmGetXYHelp.Free;
end;
end;
procedure TfrmPlanOrderPL.ToolButton2Click(Sender: TObject);
var
mStepId: Integer;
begin
if ADOQueryPlan.IsEmpty then Exit;
if CDS_Sub.IsEmpty then
begin
mStepId := 1;
end
else
begin
CDS_Sub.Last ;
mStepId := CDS_Sub.FieldByName('stepId').AsInteger;
end;
try
frmGetPlanXYHelp:=TfrmGetPlanXYHelp.Create(Application);
with frmGetPlanXYHelp do
begin
PlanNO.Text:=Trim(Self.ADOQueryPlan.fieldbyname('sid').AsString);
P_Color.Text:=Trim(Self.ADOQueryPlan.fieldbyname('P_Color').AsString);
if ShowModal=1 then
begin
with ADOQueryDY do
begin
try
DisableControls;
First ;
while not Eof do
begin
CDS_Sub.Append;
CDS_Sub.FieldByName('stepId').Value:=mStepId;
CDS_Sub.FieldByName('OrderId').Value:= CDS_Sub.RecordCount+1;
CDS_Sub.FieldByName('DyeCode').Value :=trim(FieldByName('DyeCode').AsString);
CDS_Sub.FieldByName('chnName').Value :=trim(FieldByName('chnName').AsString);
CDS_Sub.FieldByName('DyeStyle').Value :=FieldByName('DyeStyle').AsString;
CDS_Sub.FieldByName('Unit').Value :=FieldByName('Unit').AsString;
CDS_Sub.FieldByName('Crafts').Value:=FieldByName('Crafts').AsString;
CDS_Sub.FieldByName('Beizhu').Value:=FieldByName('Beizhu').AsString;
CDS_Sub.FieldByName('UnitdyeNum').Value:=FieldByName('UnitdyeNum').AsString;
CDS_Sub.Post;
Next;
end;
finally
EnableControls;
end;
end;
end;
end;
finally
frmGetPlanXYHelp.Free;
end;
btnSaveDye.Enabled:=True;
end;
procedure TfrmPlanOrderPL.grdDyeTV1beizhuPropertiesEditValueChanged(
Sender: TObject);
begin
btnSaveDye.Enabled:=True;
end;
end.