using Kingdee.BOS.Core.DynamicForm; using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Core.Metadata.EntityElement; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.ServiceHelper; using Kingdee.BOS.Util; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Demo.BillView { [Description("齐套分析物料明细")] [HotUpdate] public class ProCompleteAnalysisMateriel : AbstractDynamicFormPlugIn { bool did = false; string FMatrailId = ""; public override void OnLoad(EventArgs e) { base.OnLoad(e); if (this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr") == null) { SearchList(); } else { if (did) return; string FHMainICMOInterIDr = this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr").ToString();//主生产订单主内码 FMatrailId = this.View.OpenParameter.GetCustomParameter("FMatrailId").ToString();//物料 string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID where FCompleteCount1>0 and FHMATERID ='{0}'", FMatrailId); DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0]; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { this.Model.CreateNewEntryRow("FEntity"); this.Model.SetValue("FSEQ", i + 1, i);//序号 this.Model.SetValue("FMateralDetailId", dt.Rows[i]["FHMATERID"], i); this.Model.SetValue("FScOrderNoDetail", dt.Rows[i]["FBILLNOs"], i);//生产订单号 this.Model.SetValue("FOccupyCount", dt.Rows[i]["FCompleteCount1"], i);// this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//当前库存情况 this.Model.SetValue("FOrgId", dt.Rows[i]["FHStockOrgID"], i);//库存组织 this.Model.SetValue("FOwnerTypeId", dt.Rows[i]["FOwnerTypeId"], i);//货主类型 this.Model.SetValue("FOwnerId", dt.Rows[i]["FOwnerId"], i);//货主 this.Model.SetValue("FPlanDate", dt.Rows[i]["FPlanDate"].ToString(), i);//日计划日期 } } did = true; } } /// /// 查询事件 /// public void SearchList() { string sqlwhere = " where FCompleteCount1>0 and 1=1"; string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID "); //生产订单号 string PRDBillNo = Convert.ToString(this.Model.GetValue("FScOrderNo")); if (!string.IsNullOrEmpty(PRDBillNo)) sqlwhere += $" and FPRDBillNo='{PRDBillNo}'"; if (FMatrailId != "") sqlwhere += $" and FHMATERID='{FMatrailId}'"; sql += sqlwhere; DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0]; this.Model.DeleteEntryData("FEntity"); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { this.Model.CreateNewEntryRow("FEntity"); this.Model.SetValue("FSEQ", i + 1, i);//序号 this.Model.SetValue("FMateralDetailId", dt.Rows[i]["FHMATERID"], i); this.Model.SetValue("FScOrderNoDetail", dt.Rows[i]["FBILLNOs"], i);//生产订单号 this.Model.SetValue("FOccupyCount", dt.Rows[i]["FCompleteCount1"], i);// this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//当前库存情况 this.Model.SetValue("FOrgId", dt.Rows[i]["FHStockOrgID"], i);//库存组织 this.Model.SetValue("FOwnerTypeId", dt.Rows[i]["FOwnerTypeId"], i);//货主类型 this.Model.SetValue("FOwnerId", dt.Rows[i]["FOwnerId"], i);//货主 this.Model.SetValue("FPlanDate", dt.Rows[i]["FPlanDate"].ToString(), i);//日计划日期 } } this.View.UpdateView(); did = true; } public override void BarItemClick(BarItemClickEventArgs e) { base.BarItemClick(e); if (e.BarItemKey.ToUpper() == "TBFILTER") { SearchList(); } } } }