Pilot_KD_Parino_yuyubo/NoPackageMachine/NoPackageMaterialForm.cs

59 lines
3.0 KiB
C#
Raw Normal View History

2025-08-27 19:26:53 +08:00
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.List;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Text;
using Kingdee.BOS.ServiceHelper;
using System.Threading.Tasks;
namespace NoPackageMachine
{
[Description("动态窗口插件:获取产品的裸机编码和库存"), HotUpdate]
public class NoPackageMaterialForm: AbstractDynamicFormPlugIn
{
string ListFidS = null;
public override void OnLoad(EventArgs e)
{
base.OnLoad(e);
//接受传输的值
ListFidS = Convert.ToString(this.View.OpenParameter.GetCustomParameter("EntryPrimaryKeys"));
string sql = string.Format("/*dialect*/select m0.FNUMBER PMaterialCode,m.FNUMBER MaterialCode,t.FSPECIFICATION FModel,sum(isnull(i.FBASEQTY,0)) AS Qty from T_ENG_BOM a left jOIN T_ORG_ORGANIZATIONS O ON O.FORGID = a.FUSEORGID " +
"left join T_ENG_BOMCHILD b on a.FID=b.FID " +
"left join T_BD_MATERIAL m0 on m0.FMATERIALID=a.FMATERIALID " +
"left join T_BD_MATERIAL m on m.FMATERIALID=b.FMATERIALID " +
"left join T_BD_MATERIAL_L t on t.FMATERIALID=m.FMATERIALID " +
"left join T_BD_MATERIALBASE s on s.FMATERIALID=m.FMATERIALID " +
"left join t_BD_MaterialStock ms on ms.fmaterialid=m.fmaterialid " +
"left join T_STK_INVENTORY i on i.FMATERIALID=m.FMASTERID and i.fstockorgid=m0.fuseorgid " +
"left JOIN T_BD_Stock invSIC ON invSIC.FSTOCKID = i.FSTOCKID " +
"left JOIN T_BD_Stock SIC ON SIC.FSTOCKID = ms.FSTOCKID " +
"where a.FDOCUMENTSTATUS='C' and a.FFORBIDSTATUS='A' and O.fnumber='PL' and m0.FMATERIALID='{0}' and (m.fnumber like 'N.%' or m.fnumber like 'M.%') group by m0.FNUMBER,m.FNUMBER,t.FSPECIFICATION", ListFidS);
List<SonMachine> sonMachines = new List<SonMachine>();
//var result = DBServiceHelper.ExecuteScalar<List<SonMachine>>(this.Context, sql, sonMachines);
var data = DBServiceHelper.ExecuteDynamicObject(this.Context, sql);
int num = 0;
foreach (var one in data)
{
this.View.Model.SetValue("F_MaterialCode", one["MaterialCode"], num);
this.View.Model.SetValue("F_FModel", one["FModel"], num);
this.View.Model.SetValue("F_Qty", one["Qty"], num);
num++;
}
//foreach(SonMachine sonMachine in result)
//{
// //this.View.Model.SetValue("PMaterialCode", sonMachine.PMaterialCode, num);
// this.View.Model.SetValue("F_MaterialCode", sonMachine.MaterialCode, num);
// this.View.Model.SetValue("F_FModel", sonMachine.FModel, num);
// this.View.Model.SetValue("F_Qty", sonMachine.Qty, num);
// num++;
//}
}
}
}