📄 mrp_enter_informalmrpinfo.pas
字号:
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_InformalMrpInfo.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_InformalMrpInfo.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_InformalMrpInfo.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_InformalMrpInfo.FormCreate(Sender: TObject);
begin
inherited;
activecontrol:=dbgrideh;
end;
procedure TFrm_Mrp_Enter_InformalMrpInfo.DataSourceDataChange(
Sender: TObject; Field: TField);
var i:integer;
begin
inherited;
try
i:=strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1))
except
abort;
end;
case strtoint(copy(AdoQry_Main.fieldbyname('ssflag').asstring,1,1)) of
1: label7.Caption:='';
2: label7.Caption:='应取消原因:父项需求发生改变,当前数量的订单没有父项需求';
3: label7.Caption:='应关闭原因:订单生产完毕';
4: label7.Caption:='应重排原因:订单的约定交货日小于Mrp展开运算的日期';
end;
end;
procedure TFrm_Mrp_Enter_InformalMrpInfo.DBGridEhGetCellParams(
Sender: TObject; Column: TColumnEh; AFont: TFont; var Background: TColor;
State: TGridDrawState);
begin
inherited;
if AdoQry_Main.RecordCount=0 then exit;
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 + -