📄 mrp_enter_closemo_mnitemlist.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 + -