📄 mrp_enter_newinformalmrpinfo.pas
字号:
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
Executesql(AdoQry_tmp,'drop table #tmpInformalssInfo,#tmpInformalssInfoResult',1);
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.btn_ItemClick(Sender: TObject);
begin
inherited;
if AdoQry_Main.RecordCount=0 then
begin
activecontrol:=dbgrideh;
exit;
end;
Qry_Item(dbconnect,AdoQry_Main.fieldbyname('ItemCode').asstring);
activecontrol:=dbgrideh;
{ try
Frm_Mrp_Qry_UpRightMrp_D_Item:=TFrm_Mrp_Qry_UpRightMrp_D_Item.Create(Application);
with Frm_Mrp_Qry_UpRightMrp_D_Item do
begin
with AdoQry_tmp do
begin
Connection:=dbconnect;
Close;
sql.clear;
sql.Add('select Item.*,t1.EmployeeName as buyerName,'
+' t2.EmployeeName as PlannerName,'
+' t3.EmployeeName as whkeeperName,'
+' t4.UomName '
+' from Item,Employee t1,Employee t2,Employee t3,Uom t4'
+' where Item.EmployeeCode*=t1.EmployeeCode '
+' and Item.Pla_EmployeeCode*=t2.EmployeeCode'
+' and Item.wh_EmployeeCode*=t3.EmployeeCode'
+' and Item.UomCode*=t4.UomCode'
+' and ItemCode='+quotedstr(AdoQry_Main.fieldbyname('ItemCode').asstring));
open;
edit1.text:=fieldbyname('ItemCode').asstring;
edit2.text:=fieldbyname('ItemName').asstring;
edit3.text:=fieldbyname('UomCode').asstring;
label4.Caption:=fieldbyname('UomName').asstring;
edit4.text:=fieldbyname('designno').asstring;
edit3.text:=fieldbyname('UomCode').asstring;
combobox1.ItemIndex:=fieldbyname('ItemUsable').asinteger;
combobox2.ItemIndex:=fieldbyname('ItemType').asinteger;
edit5.text:=fieldbyname('EmployeeCode').asstring;
label9.Caption:=fieldbyname('buyerName').asstring;
edit6.text:=fieldbyname('Pla_EmployeeCode').asstring;
label11.Caption:=fieldbyname('PlannerName').asstring;
edit7.text:=fieldbyname('whCode').asstring;
edit8.text:=fieldbyname('wh_EmployeeCode').asstring;
label14.Caption:=fieldbyname('whkeeperName').asstring;
combobox3.ItemIndex:=fieldbyname('onlydefaultwh').asinteger;
edit9.text:=floattostr(fieldbyname('maxqty').asfloat);
edit10.text:=floattostr(fieldbyname('minqty').asfloat);
combobox4.ItemIndex:=fieldbyname('limitout').asinteger;
combobox5.ItemIndex:=fieldbyname('longpurchlt').asinteger;
edit11.text:=floattostr(fieldbyname('purchldtime').asfloat);
edit12.text:=floattostr(fieldbyname('mnldtime').asfloat);
combobox6.ItemIndex:=fieldbyname('PmCode').asinteger;
combobox7.ItemIndex:=fieldbyname('Batchstrat').asinteger;
edit13.text:=floattostr(fieldbyname('PmBatch').asfloat);
edit14.text:=fieldbyname('DeptCode').asstring;
edit15.text:=fieldbyname('BarCode').asstring;
combobox8.ItemIndex:=fieldbyname('BatchCtrl').asinteger;
edit16.text:=floattostr(fieldbyname('Capacityhours').asfloat);
combobox9.ItemIndex:=fieldbyname('canSale').asinteger;
edit17.text:=fieldbyname('ItemCode2').asstring;
edit18.text:=fieldbyname('ItemshortName').asstring;
edit19.text:=floattostr(fieldbyname('CurrentonhandInv').asfloat);
edit20.text:=floattostr(fieldbyname('CurrentonCheckInv').asfloat);
end;
showmodal;
end;
finally
Frm_Mrp_Qry_UpRightMrp_D_Item.Free;
activecontrol:=dbgrideh;
end; }
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.btn_ite_ItemClick(
Sender: TObject);
begin
inherited;
if AdoQry_Main.RecordCount=0 then
begin
activecontrol:=dbgrideh;
exit;
end;
try
if Frm_Mrp_Qry_InformalTotalMrp_Item=nil then
begin
Frm_Mrp_Qry_InformalTotalMrp_Item:=TFrm_Mrp_Qry_InformalTotalMrp_Item.Create(Self);
Frm_Mrp_Qry_InformalTotalMrp_Item.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
Frm_Mrp_Qry_InformalTotalMrp_Item.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
Frm_Mrp_Qry_InformalTotalMrp_Item.InitForm(dbconnect,True);
end
else Frm_Mrp_Qry_InformalTotalMrp_Item.Show;
finally
activecontrol:=dbgrideh;
end;
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.btn_OrderClick(Sender: TObject);
begin
inherited;
if AdoQry_Main.RecordCount=0 then
begin
activecontrol:=dbgrideh;
exit;
end;
try
ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
if ((AdoQry_Main.fieldbyname('PmCode').asinteger=1) or (AdoQry_Main.fieldbyname('PmCode').asinteger=2)) then
begin
// if AdoQry_Main.fieldbyname('Orderpreqty').asfloat+AdoQry_Main.fieldbyname('Orderxdqty').asfloat=0 then
// exit;
if Frm_Mrp_Qry_InformalTotalMrp_Po=nil then
begin
Frm_Mrp_Qry_InformalTotalMrp_Po:=TFrm_Mrp_Qry_InformalTotalMrp_Po.Create(Self);
Frm_Mrp_Qry_InformalTotalMrp_Po.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
Frm_Mrp_Qry_InformalTotalMrp_Po.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
Frm_Mrp_Qry_InformalTotalMrp_Po.InitForm(AdoQry_Main.Connection,True);
end
else Frm_Mrp_Qry_InformalTotalMrp_Po.Show;
exit;
end;
if AdoQry_Main.fieldbyname('PmCode').asinteger=0 then
begin
// if AdoQry_Main.fieldbyname('Orderpreqty').asfloat+AdoQry_Main.fieldbyname('Orderxdqty').asfloat=0 then
// exit;
if Frm_Mrp_Qry_InformalTotalMrp_Mo=nil then
begin
Frm_Mrp_Qry_InformalTotalMrp_Mo:=TFrm_Mrp_Qry_InformalTotalMrp_Mo.Create(Self);
Frm_Mrp_Qry_InformalTotalMrp_Mo.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
Frm_Mrp_Qry_InformalTotalMrp_Mo.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
Frm_Mrp_Qry_InformalTotalMrp_Mo.InitForm(AdoQry_Main.Connection,True);
end
else Frm_Mrp_Qry_InformalTotalMrp_Mo.Show;
exit;
end;
if AdoQry_Main.fieldbyname('PmCode').asinteger=3 then
begin
if ismorethanzero('moqty','MoLine','ItemCode')=True then
if Frm_Mrp_Qry_InformalTotalMrp_Mo=nil then
begin
Frm_Mrp_Qry_InformalTotalMrp_Mo:=TFrm_Mrp_Qry_InformalTotalMrp_Mo.Create(Self);
Frm_Mrp_Qry_InformalTotalMrp_Mo.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
Frm_Mrp_Qry_InformalTotalMrp_Mo.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
Frm_Mrp_Qry_InformalTotalMrp_Mo.InitForm(AdoQry_Main.Connection,True);
end
else Frm_Mrp_Qry_InformalTotalMrp_Mo.Show;
if ismorethanzero('poqty','poline','ItemCode')=True then
if Frm_Mrp_Qry_InformalTotalMrp_Po=nil then
begin
Frm_Mrp_Qry_InformalTotalMrp_Po:=TFrm_Mrp_Qry_InformalTotalMrp_Po.Create(Self);
Frm_Mrp_Qry_InformalTotalMrp_Po.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
Frm_Mrp_Qry_InformalTotalMrp_Po.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
Frm_Mrp_Qry_InformalTotalMrp_Po.InitForm(AdoQry_Main.Connection,True);
end
else Frm_Mrp_Qry_InformalTotalMrp_Po.Show;
end;
finally
activecontrol:=dbgrideh;
end;
end;
function TFrm_Mrp_Enter_NewInformalMrpInfo.ismorethanzero(fieldName,
tableName, conditionfield: string): boolean;
var AdoQry:TAdoQuery;
begin
Result:=False;
AdoQry:=TAdoQuery.Create(Application);
try
with AdoQry do
begin
Close;
Connection:=dbconnect;
sql.clear;
sql.Add('select sum('+fieldName+') as SumQty from '+tableName+' where '+conditionfield+'='+quotedstr(AdoQry_Main.fieldbyname('ItemCode').asstring));
open;
if fieldbyname('SumQty').asfloat>0 then
Result:=True
else Result:=False;
end;
finally
AdoQry.Free;
end;
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.FormCreate(Sender: TObject);
begin
inherited;
activecontrol:=dbgrideh;
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.DataSourceDataChange(
Sender: TObject; Field: TField);
var i:integer;
begin
inherited;
try
i:=strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1))
except
if ShowAnimate<>nil then ShowAnimate.Free;
if ShowPanel<>nil then ShowPanel.Free;
abort;
end;
case strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1)) of
1: label7.Caption:='';
2: label7.Caption:='应取消原因:父项需求发生改变,当前数量的订单没有父项需求';
3: label7.Caption:='应关闭原因:订单生产完毕';
4: begin
if ((AdoQry_Main.fieldbyname('duedate').asdatetime<date()) or (AdoQry_Main.fieldbyname('ssdate').asdatetime<date())) then
label7.Caption:='应重排原因:订单的约定开工日或约定交货日小于Mrp展开运算的日期'
else
if AdoQry_Main.fieldbyname('canuseonhand').asfloat=0 then
label7.Caption:='应重排原因:订单的约定交货日大于物料毛需求的需求日期 '
end;
5: label7.Caption:='应调整原因:物料的供应量大于需求量';
end;
end;
procedure TFrm_Mrp_Enter_NewInformalMrpInfo.DBGridEhGetCellParams(
Sender: TObject; Column: TColumnEh; AFont: TFont; var Background: TColor;
State: TGridDrawState);
var i:integer;
begin
inherited;
if AdoQry_Main.RecordCount=0 then exit;
try
i:=strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1))
except
if ShowAnimate<>nil then ShowAnimate.Free;
if ShowPanel<>nil then ShowPanel.Free;
abort;
end;
case strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1)) of
2: begin
afont.Color:=clred;
end;
4: begin
afont.Color:=clred;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -