779 lines
22 KiB
ObjectPascal
779 lines
22 KiB
ObjectPascal
![]() |
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.
|