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

📄 mrp_enter_closemo_mnitemlist.pas

📁 一个MRPII系统源代码版本
💻 PAS
字号:
unit Mrp_Enter_CloseMo_MnItemList;

Interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Base_Qry, Menus, ExtPrintReport, Db, ActnList, AdODB, Grids, DBGridEh,
  StdCtrls, ExtCtrls, ComCtrls, ToolWin, jpeg;

Type
  TFrm_Mrp_Enter_CloseMo_MnItemList = Class(TFrm_Base_Qry)
    AdoQry_MainItemflag: TStringField;
    AdoQry_MainDeptflag: TStringField;
    AdoQry_MainmoCtrlqty: TFloatField;
    AdoQry_MainMoRealqty: TFloatField;
    AdoQry_MainOverPlanQty: TFloatField;
    procedure FormDestroy(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    mono:string;
    MoLineno:integer;
    Flag : Integer;   //调用标识 0:生产领料清单对应表 1:委外领料清单对应表 由外部传入
    procedure InitForm(AdOConnection:TAdOConnection;ReadOnly:Boolean);Override;               
    { Public declarations }
  end;

var
  Frm_Mrp_Enter_CloseMo_MnItemList: TFrm_Mrp_Enter_CloseMo_MnItemList;

implementation
uses Sys_Global;
{$R *.DFM}

procedure TFrm_Mrp_Enter_CloseMo_MnItemList.FormDestroy(Sender: TObject);
begin
  inherited;
  Frm_Mrp_Enter_CloseMo_MnItemList:=nil;
end;

procedure TFrm_Mrp_Enter_CloseMo_MnItemList.InitForm(
  AdOConnection: TAdOConnection; ReadOnly: Boolean);
var sqltext:string;
begin
  inherited;
  self.Caption := IIFString(Flag=0,self.Caption,'委外领料清单对应表');
  Pnl_Title.Caption := Self.Caption;
  Pnl_Title.Refresh;
  Case Flag of
    0:   sqltext:='select mnItemList.ItemCode+'' ''+Item.ItemName as Itemflag,'
                 +'        mnItemList.DeptCode+'' ''+Dept.DeptName as Deptflag, '
                  +'       moCtrlqty,  '
                  +'       MoRealqty,  '
                  +'          case     '
                 +'            when  MOCtrlQty>MoRealQty Then 0  '
                  +'           Else    MoRealQty-(MOCtrlQty)  '
                  +'       end As OverPlanQty  '
                  +' into #tmPmnItemList '
                 +' from mnItemList    '
                 +' join Item on mnItemList.ItemCode=Item.ItemCode   '
                 +'  left  outer join Dept on mnItemList.DeptCode=Dept.DeptCode'
                 +' where mono='+quotedstr(mono)
                 +'   and MoLineno='+inttostr(MoLineno)
                 +' union '
                 +' select ''合计'' as Itemflag,'' '' as Deptflag,sum(isnull(moCtrlqty,0)) as moCtrlqty,sum(isnull(MoRealqty,0)) as MoRealqty,'
                 +' sum(case when moCtrlqty>MoRealqty then 0 else MoRealqty-moCtrlqty end) as OverPlanqty '
                 +' from mnItemList    '
                 +' join Item on mnItemList.ItemCode=Item.ItemCode   '
                 +'  left  outer join Dept on mnItemList.DeptCode=Dept.DeptCode'
                 +' where mono='+quotedstr(mono)
                 +'   and MoLineno='+inttostr(MoLineno);
    1:   sqltext:='select  OpItemList.ItemCode+'' ''+Item.ItemName as Itemflag,'
                 +'        OpItemList.DeptCode+'' ''+Dept.DeptName as Deptflag, '
                  +'       PoCtrlqty as MoCtrlQty,  '
                  +'       Porealqty as MoRealQty,  '
                  +'          case     '
                 +'            when  PoCtrlQty>PoRealQty Then 0  '
                  +'           Else    PoRealQty-(PoCtrlQty)  '
                  +'       end As OverPlanQty  '
                  +' into #tmPmnItemList '
                 +' from OpItemList    '
                 +' join Item on OpItemList.ItemCode=Item.ItemCode   '
                 +'  left  outer join Dept on OpItemList.DeptCode=Dept.DeptCode'
                 +' where PoNo='+quotedstr(mono)
                 +'   and PoLineNo='+inttostr(MoLineno)
                 +' union '
                 +' select ''合计'' as Itemflag,'' '' as Deptflag,sum(isnull(PoCtrlqty,0)) as poCtrlqty,sum(isnull(Porealqty,0)) as Porealqty,'
                 +' sum(case when PoCtrlqty>Porealqty then 0 else Porealqty-PoCtrlqty end) as OverPlanqty '
                 +' from OpItemList    '
                 +' join Item on OpItemList.ItemCode=Item.ItemCode   '
                 +'  left  outer join Dept on OpItemList.DeptCode=Dept.DeptCode'
                 +' where PoNO='+quotedstr(mono)
                 +'   and PoLineNo='+inttostr(MoLineno);
  end;
  Executesql(AdoQry_Main,sqltext,1);
  Executesql(AdoQry_Main,'select * from #tmPmnItemList Order by Itemflag',0);
end;

procedure TFrm_Mrp_Enter_CloseMo_MnItemList.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  inherited;
try
 Executesql(AdoQry_tmp,'drop table #tmPmnItemList',1);
except
end;
end;

end.

⌨️ 快捷键说明

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