using System; using System.Collections.Generic; using System.Linq; using System.Text; using Kingdee.K3.Core.MFG.EntityHelper; using System.ComponentModel; using Kingdee.BOS; using Kingdee.BOS.Util; using Kingdee.BOS.Core; using Kingdee.BOS.Core.Const; using Kingdee.BOS.Core.DynamicForm; using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Core.DynamicForm.Operation; using Kingdee.BOS.Core.List; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.Metadata.ConvertElement; using Kingdee.BOS.Core.Metadata.ConvertElement.ServiceArgs; using Kingdee.BOS.Core.Interaction; using Kingdee.BOS.Core.Validation; using Kingdee.BOS.Contracts; using Kingdee.BOS.App; using Kingdee.BOS.App.Data; using Kingdee.BOS.Orm; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.ServiceHelper; namespace aoyuPlugIn { [Description("销售订单--审核验证差异数")] public class jb_xsdd_sh : AbstractOperationServicePlugIn { public override void EndOperationTransaction(EndOperationTransactionArgs e) { base.EndOperationTransaction(e); string tsxx = ""; foreach (DynamicObject item in e.DataEntitys) { long fid = Convert.ToInt64(item["ID"]); //String sSql = String.Format(@" insert into pcdn_t_sd_kucunst(id ,beginnum,endnum,ydid,ftype,fbegin) select b.F_PCDN_STORE*100,F_PCDN_BEGINNUM,F_PCDN_ENDNUM,a.FID,'SDIN',F_PCDN_BEGINZF from pcdn_t_sd_sdinentry a, pcdn_t_sd_sdin b where a.FID=b.FID and b.fid={0} ", fid); //DBUtils.Execute(this.Context, sSql); var sSql = String.Format("EXEC jb_get_kchz " + fid); var dr = DBServiceHelper.ExecuteDynamicObject(this.Context, sSql); foreach (var r in dr) { tsxx = "出货单号:" + r[0].ToString() + "|物料编号:" + r[1].ToString() + "|出货数:" + r[2].ToString() + "|差异数:" + r[3].ToString(); OperationResult.OperateResult.Insert(0, new OperateResult() { MessageType = MessageType.Normal, Message = Convert.ToString(tsxx), Name = "验证结果", SuccessStatus = true, } ); } } } //public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e) //{ // base.BeforeExecuteOperationTransaction(e); // return; // string tsxx = ""; // foreach (ExtendedDataEntity extendedDataEntity in e.SelectedRows) // { // int DJID = 0; // DynamicObject dynamicObjects = extendedDataEntity.DataEntity; // DJID = Convert.ToInt32(dynamicObjects["Id"]); // var sSql = String.Format("EXEC jb_get_kchz " + DJID); // var dr = DBServiceHelper.ExecuteDynamicObject(this.Context, sSql); // foreach (var r in dr) // { // tsxx ="销售订单号:"+r[0].ToString() + "|物料编号:" + r[1].ToString() + "|订单数:"+r[2].ToString()+"|差异数:"+r[3].ToString(); // OperationResult.OperateResult.Insert(0, new OperateResult() // { // MessageType = MessageType.Normal, // Message = Convert.ToString(tsxx), // Name = "验证结果", // SuccessStatus = true, // } // ); // } // //if (tsxx != "") // //{ // // tsxx = "提交失败!\r\n" + tsxx; // // //throw new KDBusinessException("", tsxx); // // //e.Cancel = false; // // //e.CancelMessage = Convert.ToString(tsxx); // // OperationResult.OperateResult.Insert(0, new OperateResult() // // { // // MessageType = MessageType.Normal, // // Message = Convert.ToString(tsxx), // // Name = "验证结果", // // SuccessStatus = true, // // } // // ); // // OperationResult.OperateResult.Insert(0, new OperateResult() // // { // // MessageType = MessageType.Normal, // // Message = Convert.ToString(tsxx), // // Name = "验证结果", // // SuccessStatus = true, // // } // // ); // //} // //throw new KDBusinessException("", "物料ID为:" + MaterialID.ToString()); // //e.CancelMessage = "物料ID为:"+MaterialID.ToString(); // //string sql = string.Format(@"/*dialect*/select // // (SELECT case when count(1) > 0 then '在BOM单已使用此物料,' else ''end // // FROM T_ENG_BOM t0 LEFT OUTER JOIN T_ENG_BOMCHILD t1 ON t0.FID = t1.FID // // where t0.FMATERIALID={0} or t1.FMATERIALID={1})+ // // (SELECT case when count(1) > 0 then '采购订单已使用此物料,' else ''end // // FROM T_PUR_POORDERENTRY where FMATERIALID = {2}) as result // // where (select top 1 FAntiCheckControl from PAEZ_t_AntiCheckControl order by fid)=1", MaterialID, MaterialID, MaterialID); // // string sql = string.Format(@"/*dialect*/select // // (SELECT case when count(1) > 0 then '在BOM单已使用此物料,' else ''end // // FROM T_ENG_BOM t0 LEFT OUTER JOIN T_ENG_BOMCHILD t1 ON t0.FID = t1.FID // // where t0.FMATERIALID={0} or t1.FMATERIALID={1})+ // // (SELECT case when count(1) > 0 then '采购订单已使用此物料,' else ''end // // FROM T_PUR_POORDERENTRY where FMATERIALID = {2}) as result // // where (select top 1 FAntiCheckControl from PAEZ_t_AntiCheckControl order by fid)=1", MaterialID, MaterialID, MaterialID); // // DynamicObjectCollection rows = DBUtils.ExecuteDynamicObject(this.Context, sql); // // string result = ""; // // foreach (DynamicObject row in rows) // // { // // result = row["result"].ToString(); // // } // // if (!"".Equals(result)) // // { // //e.Cancel = true; // //e.CancelMessage = Convert.ToString(dynamicObjects["Number"]) + result + "不能反审核的!本次反审核操作失败。"; // //e.CancelMessage = "审核测试不能反审核的!本次反审核操作失败。"; // // break; // // } // } //} string getjg(BeforeExecuteOperationTransaction e) { string tsxx = ""; int k = 0; foreach (ExtendedDataEntity extendedDataEntity in e.SelectedRows) { int DJID = 0; DynamicObject dynamicObjects = extendedDataEntity.DataEntity; DJID = Convert.ToInt32(dynamicObjects["Id"]); var sSql = String.Format("EXEC jb_get_kchz " + DJID); var dr = DBServiceHelper.ExecuteDynamicObject(this.Context, sSql); foreach (var r in dr) { tsxx = tsxx + "销售订单号:" + r[0].ToString() + "|物料编号:" + r[1].ToString() + "|订单数:" + r[2].ToString() + "|差异数:" + r[3].ToString() + "\r\n"; } if (tsxx != "") { tsxx = "提交失败!\r\n" + tsxx; //throw new KDBusinessException("", tsxx); //e.Cancel = false; //e.CancelMessage = Convert.ToString(tsxx); OperationResult.OperateResult.Insert(0, new OperateResult() { MessageType = MessageType.Normal, Message = Convert.ToString(tsxx), Name = "验证结果", SuccessStatus = true, } ); OperationResult.OperateResult.Insert(0, new OperateResult() { MessageType = MessageType.Normal, Message = Convert.ToString(tsxx), Name = "验证结果1", SuccessStatus = true, } ); } k++; } return ""; } string getjg2(BeforeExecuteOperationTransaction e) { string tsxx = ""; foreach (ExtendedDataEntity extendedDataEntity in e.SelectedRows) { int DJID = 0; DynamicObject dynamicObjects = extendedDataEntity.DataEntity; DJID = Convert.ToInt32(dynamicObjects["Id"]); var sSql = String.Format("EXEC jb_get_kchz " + DJID); var dr = DBServiceHelper.ExecuteDynamicObject(this.Context, sSql); foreach (var r in dr) { tsxx = tsxx + "销售订单号:" + r[0].ToString() + "|物料编号:" + r[1].ToString() + "|订单数:" + r[2].ToString() + "|差异数:" + r[3].ToString() + "\r\n"; } if (tsxx != "") { tsxx = "提交失败!\r\n" + tsxx; //throw new KDBusinessException("", tsxx); //e.Cancel = false; //e.CancelMessage = Convert.ToString(tsxx); OperationResult.OperateResult.Insert(0, new OperateResult() { MessageType = MessageType.Normal, Message = Convert.ToString(tsxx), Name = "验证结果", SuccessStatus = true, } ); } //throw new KDBusinessException("", "物料ID为:" + MaterialID.ToString()); //e.CancelMessage = "物料ID为:"+MaterialID.ToString(); //string sql = string.Format(@"/*dialect*/select // (SELECT case when count(1) > 0 then '在BOM单已使用此物料,' else ''end // FROM T_ENG_BOM t0 LEFT OUTER JOIN T_ENG_BOMCHILD t1 ON t0.FID = t1.FID // where t0.FMATERIALID={0} or t1.FMATERIALID={1})+ // (SELECT case when count(1) > 0 then '采购订单已使用此物料,' else ''end // FROM T_PUR_POORDERENTRY where FMATERIALID = {2}) as result // where (select top 1 FAntiCheckControl from PAEZ_t_AntiCheckControl order by fid)=1", MaterialID, MaterialID, MaterialID); // string sql = string.Format(@"/*dialect*/select // (SELECT case when count(1) > 0 then '在BOM单已使用此物料,' else ''end // FROM T_ENG_BOM t0 LEFT OUTER JOIN T_ENG_BOMCHILD t1 ON t0.FID = t1.FID // where t0.FMATERIALID={0} or t1.FMATERIALID={1})+ // (SELECT case when count(1) > 0 then '采购订单已使用此物料,' else ''end // FROM T_PUR_POORDERENTRY where FMATERIALID = {2}) as result // where (select top 1 FAntiCheckControl from PAEZ_t_AntiCheckControl order by fid)=1", MaterialID, MaterialID, MaterialID); // DynamicObjectCollection rows = DBUtils.ExecuteDynamicObject(this.Context, sql); // string result = ""; // foreach (DynamicObject row in rows) // { // result = row["result"].ToString(); // } // if (!"".Equals(result)) // { //e.Cancel = true; //e.CancelMessage = Convert.ToString(dynamicObjects["Number"]) + result + "不能反审核的!本次反审核操作失败。"; //e.CancelMessage = "审核测试不能反审核的!本次反审核操作失败。"; // break; // } } return ""; } } }