⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mrp_qry_uprightmrp_d.pas

📁 一个MRPII系统源代码版本
💻 PAS
📖 第 1 页 / 共 3 页
字号:
                 if AdoQry_Main.fieldbyname('netqty').asinteger>0 then
                     with AdoQry_tmp do
                  begin
                   sqltext5:='insert into #tmpResult '
                             +#13+' Values('+quotedstr(AdoQry_Main.fieldbyname('ItemCode').asstring)+','+quotedstr(inttostr(AdoQry_Main.fieldbyname('PmCode').asinteger))+','
                             +#13+'''建议下达'''+','+quotedstr(AdoQry_Main.fieldbyname('releasedate').asstring)+','
                             +#13+'null,'
                             +#13+'null,null,'+floattostr(AdoQry_Main.fieldbyname('onhand').asfloat)+','
                             +#13+floattostr(AdoQry_Main.fieldbyname('netqty').asfloat)+','
                             +#13+'null,'
                             +#13+inttostr(AdoQry_Main.fieldbyname('ordinal').asinteger)+','
                             +#13+quotedstr(AdoQry_Main.fieldbyname('trace').asstring)+','+floattostr(tmponhand+AdoQry_Main.fieldbyname('netqty').asfloat)+',0)';

                    Close;
                    sql.clear;
                    sql.Add(sqltext5);
                    try
                    execsql;
                    except
                    end;
                    tmponhand:=tmponhand+AdoQry_Main.fieldbyname('netqty').asfloat;
                  end;
                                         if tmponhand-tmpgrossqty=0 then
                       tMpstr:='null'
                      else tMpstr:=floattostr(tmponhand-tmpgrossqty);
                                 sqltext4:='insert into #tmpResult '
                             +#13+' Values('+quotedstr(AdoQry_Main.fieldbyname('ItemCode').asstring)+','+quotedstr(inttostr(AdoQry_Main.fieldbyname('PmCode').asinteger))+','
                             +#13+'null,null,'
                             +#13+'null,'+floattostr(tmpgrossqty)+','
                             +#13+'null,'
                             +#13+floattostr(AdoQry_Main.fieldbyname('onhand').asfloat)+','
                             +#13+'null,'+quotedstr(tmpreleasedate)+','
                            +#13+inttostr(ordinal1)+','
                             +#13+quotedstr(trace)+','+tMpstr+',0)';

                    AdoQry_tmp.Close;
                    AdoQry_tmp.sql.clear;
                    AdoQry_tmp.sql.Add(sqltext4);
                    try
                    AdoQry_tmp.execsql;
                    tmponhand:=tmponhand-AdoQry_Main.fieldbyname('grossqty').asfloat;

                    except
                    end;

                 tmpQry.Next;
                 tmponhand:=tmpQry.fieldbyname('onhand').asfloat;
                end;
         end;
         AdoQry_Main.next;
     end;
    try
    tmpQry.Free;
    except
    end;

      Close;
      sql.clear;
      sql.Add('select * from #tmpResult');
      Prepared;
      open;

      if recordCount=0 then
         begin
          DispInfo('无相关数据!',3);
          self.Close;
         end;
    end;




end;

procedure TFrm_Mrp_Qry_UpRightMrp_D.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
 with AdoQry_tmp do
   begin
     Close;
     sql.clear;
     sql.Add('drop table #tmPMrpResultup,#tmpResult');
     Prepared;
     try
      execsql;
      except
     end;
   end;

  inherited;

end;

procedure TFrm_Mrp_Qry_UpRightMrp_D.FormDestroy(Sender: TObject);
begin
  inherited;
Frm_Mrp_Qry_UpRightMrp_D:=nil;
end;

procedure TFrm_Mrp_Qry_UpRightMrp_D.Act_LookExecute(Sender: TObject);
var Mpsandmo:integer;
begin
  inherited;
ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
traceType:=255;
    if AdoQry_Main.fieldbyname('trace').asstring='主生产计划' then
       traceType:=1;
    if AdoQry_Main.fieldbyname('trace').asstring='主生产计划分解' then
       traceType:=2;
    if AdoQry_Main.fieldbyname('trace').asstring='计划需求' then
       traceType:=3;
requiredate:=AdoQry_Main.fieldbyname('requiredate').asstring;
if uppercase(copy(AdoQry_Main.fieldbyname('Ordernoandlineno').asstring,1,1))='P' then
   begin
     Orderno:=AdoQry_Main.fieldbyname('Ordernoandlineno').asstring;
     Orderlineno:=copy(Orderno,pos('-',Orderno)+1,length(Orderno)-pos('-',Orderno));
     Orderno:=copy(Orderno,1,pos('-',Orderno)-1);
        if Frm_Mrp_Qry_UpRightMrp_D_Po=nil then
          begin
           Frm_Mrp_Qry_UpRightMrp_D_Po:=TFrm_Mrp_Qry_UpRightMrp_D_Po.Create(Self);
           Frm_Mrp_Qry_UpRightMrp_D_Po.Orderno:=Orderno;
           Frm_Mrp_Qry_UpRightMrp_D_Po.Orderlineno:=Orderlineno;
           Frm_Mrp_Qry_UpRightMrp_D_Po.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
           Frm_Mrp_Qry_UpRightMrp_D_Po.InitForm(AdoQry_Main.Connection,True);
          end
        else Frm_Mrp_Qry_UpRightMrp_D_Po.Show;
   end
else
if uppercase(copy(AdoQry_Main.fieldbyname('Ordernoandlineno').asstring,1,1))='M' then
   begin
     Orderno:=AdoQry_Main.fieldbyname('Ordernoandlineno').asstring;
     Orderlineno:=copy(Orderno,pos('-',Orderno)+1,length(Orderno)-pos('-',Orderno));
     Orderno:=copy(Orderno,1,pos('-',Orderno)-1);
        if Frm_Mrp_Qry_UpRightMrp_D_Mo=nil then
          begin
           Frm_Mrp_Qry_UpRightMrp_D_Mo:=TFrm_Mrp_Qry_UpRightMrp_D_Mo.Create(Self);
           Frm_Mrp_Qry_UpRightMrp_D_Mo.Orderno:=Orderno;
           Frm_Mrp_Qry_UpRightMrp_D_Mo.Orderlineno:=Orderlineno;
           Frm_Mrp_Qry_UpRightMrp_D_Mo.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
           Frm_Mrp_Qry_UpRightMrp_D_Mo.InitForm(AdoQry_Main.Connection,True);
          end
        else Frm_Mrp_Qry_UpRightMrp_D_Mo.Show;
   end
else
   begin
    if (traceType=1)  then
    if Frm_Mrp_Qry_UpRightMrp_D_Mps=nil then
          begin
           Frm_Mrp_Qry_UpRightMrp_D_Mps:=TFrm_Mrp_Qry_UpRightMrp_D_Mps.Create(Self);
           Frm_Mrp_Qry_UpRightMrp_D_Mps.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
           Frm_Mrp_Qry_UpRightMrp_D_Mps.ItemCode:=ItemCode;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.lowItemPmCode:=ItemPmCode;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.requiredate:=requiredate;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.Qclt:=Qclt;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.traceType:=traceType;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.InitForm(AdoQry_Main.Connection,True);
          end
        else Frm_Mrp_Qry_UpRightMrp_D_Mps.Show;
    if ((traceType=2) )  then
      begin
       Mpsandmo:=existsMpsandmo(AdoQry_Main.fieldbyname('ItemCode').asstring,requiredate);
       //showmessage(inttostr(Mpsandmo));
       case Mpsandmo of
        1: if  Frm_Mrp_Enter_MoSsParent=nil then
             begin
                Frm_Mrp_Enter_MoSsParent:=TFrm_Mrp_Enter_MoSsParent.Create(Self);
                Frm_Mrp_Enter_MoSsParent.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
                Frm_Mrp_Enter_MoSsParent.Qclt:=Qclt;
                tmplowPmCode:=AdoQry_Main.fieldbyname('PmCode').asinteger;
                Frm_Mrp_Enter_MoSsParent.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
                Frm_Mrp_Enter_MoSsParent.duedate:=datetimetostr(AdoQry_Main.fieldbyname('requiredate').asdatetime);
                Frm_Mrp_Enter_MoSsParent.strpath:=AdoQry_Main.fieldbyname('ItemCode').asstring+',';
                Frm_Mrp_Enter_MoSsParent.InitForm(dbconnect,True);
             end
              else  Frm_Mrp_Enter_MoSsParent.Show;
         2:     if Frm_Mrp_Qry_UpRightMrp_D_Mps=nil then
          begin
           Frm_Mrp_Qry_UpRightMrp_D_Mps:=TFrm_Mrp_Qry_UpRightMrp_D_Mps.Create(Self);
           Frm_Mrp_Qry_UpRightMrp_D_Mps.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
          Frm_Mrp_Qry_UpRightMrp_D_Mps.ItemCode:=ItemCode;
          Frm_Mrp_Qry_UpRightMrp_D_Mps.lowItemPmCode:=ItemPmCode;
          Frm_Mrp_Qry_UpRightMrp_D_Mps.requiredate:=requiredate;
          Frm_Mrp_Qry_UpRightMrp_D_Mps.Qclt:=Qclt;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.traceType:=traceType;
           Frm_Mrp_Qry_UpRightMrp_D_Mps.InitForm(AdoQry_Main.Connection,True);
          end
        else Frm_Mrp_Qry_UpRightMrp_D_Mps.Show;
         3:  if Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo=nil then
          begin
           Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo:=TFrm_Mrp_Qry_UpRightMrp_D_MpsAndMo.Create(Self);
           Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
        //  Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.ItemCode:=ItemCode;
        //  Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.lowItemPmCode:=ItemPmCode;
        //  Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.requiredate:=requiredate;
        //  Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.Qclt:=Qclt;
        //   Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.traceType:=traceType;
           Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.InitForm(AdoQry_Main.Connection,True);
          end
        else Frm_Mrp_Qry_UpRightMrp_D_MpsAndMo.Show;

       end;
      end;
 if traceType=3 then
 if  Frm_Mrp_Enter_MoSsParent=nil then
 begin
  Frm_Mrp_Enter_MoSsParent:=TFrm_Mrp_Enter_MoSsParent.Create(Self);
  Frm_Mrp_Enter_MoSsParent.SetSysParam(userCode,ModuleCode,menuid,formatdatetime('yyyy.mm.dd',now));
  Frm_Mrp_Enter_MoSsParent.Qclt:=Qclt;
  tmplowPmCode:=AdoQry_Main.fieldbyname('PmCode').asinteger;
  Frm_Mrp_Enter_MoSsParent.ItemCode:=AdoQry_Main.fieldbyname('ItemCode').asstring;
  Frm_Mrp_Enter_MoSsParent.duedate:=datetimetostr(AdoQry_Main.fieldbyname('requiredate').asdatetime);
  Frm_Mrp_Enter_MoSsParent.strpath:=AdoQry_Main.fieldbyname('ItemCode').asstring+',';
  Frm_Mrp_Enter_MoSsParent.InitForm(dbconnect,True);
 end
 else  Frm_Mrp_Enter_MoSsParent.Show;


   end


end;

procedure TFrm_Mrp_Qry_UpRightMrp_D.FormCreate(Sender: TObject);
begin
  inherited;
  tlbtn_Sum.Action:=Act_Showgrid;
end;

procedure TFrm_Mrp_Qry_UpRightMrp_D.Act_ShowGridExecute(Sender: TObject);
var sqltext,tmpvar:string;
begin
  inherited;
if uppercase(copy(AdoQry_Main.fieldbyname('Ordernoandlineno').asstring,1,1))<>'P' then
    exit;
 sqltext:='select po.VendorCode  from po where po.pono='''+copy(AdoQry_Main.fieldbyname('Ordernoandlineno').asstring,1,pos('-',AdoQry_Main.fieldbyname('Ordernoandlineno').asstring)-1)+'''';

 with AdoQry_tmp do
  begin
     Close;
     sql.clear;
     sql.Add(sqltext);
     open;
     tmpvar:=fieldbyname('VendorCode').asstring;
     Close;
     sql.clear;
     sql.Add('select * from Vendor where VendorCode='+quotedstr(tmpvar));
     open;
    try
     with TFrm_Mrp_Qry_UpRightMrp_D_vd.Create(self) do
       begin
       edit1.Text:=fieldbyname('VendorName').asstring;
       edit5.Text:=fieldbyname('VendorAddress').asstring;
       edit3.Text:=fieldbyname('VendorshortName').asstring;
       edit4.Text:=fieldbyname('Vendoremail').asstring;
       edit2.Text:=fieldbyname('Vendorfax').asstring;
       edit21.Text:=fieldbyname('Vendortel').asstring;
       maskedit1.Text:=fieldbyname('Vendorcreatetime').asstring;
       maskedit2.Text:=fieldbyname('Vendormodifytime').asstring;
       edit6.Text:=fieldbyname('Vendorbank').asstring;
       edit7.Text:=fieldbyname('Vendorbankaccno').asstring;
       edit18.Text:=floattostr(fieldbyname('Vendortaxrate_Percent').asfloat);
       edit19.Text:=fieldbyname('Vendortaxno').asstring;
       edit20.Text:=fieldbyname('Vendorcontact').asstring;
       edit11.Text:=fieldbyname('Vendorowner').asstring;
       edit12.Text:=fieldbyname('Vendorceo').asstring;
       edit8.Text:=fieldbyname('VendorremArk').asstring;
       showmodal;
     end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -