关于操作插件的一个问题,求大神解惑
金蝶云社区-钱宇梁
钱宇梁
0人赞赏了该文章 1,154次浏览 未经作者许可,禁止转载编辑于2016年09月05日 16:07:02

public override void EndOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.EndOperationTransactionArgs e)
{
base.EndOperationTransaction(e);
DynamicObject dynamicObject = (e.DataEntitys)[0];
//DynamicObject dyna = e.get_DataEntitys()[0]; 这句是过不了预编译的
string text = "update CMK_VIP_ExchangeGift set Fvalidpoints = (select FVIPPOINTS from CMK_VIP_ExchangeGiftEntry WHERE FID=@FID and FSeq=1),FTHISPOINT=(select SUM(FTOTALEXPENDPOINTS)*-1 from CMK_VIP_ExchangeGiftEntry WHERE FID=@FID) WHERE FID=@FID";
string text2 = "UPDATE CMK_VIP_ExchangeGift SET FTOTALPOINT =(Fvalidpoints+FTHISPOINT) WHERE FID=@FID";
List list = new List();
list = new List();
list.Add(new SqlParam("@FID", DbType.Object, dynamicObject["Id"]));
//list.Add(new SqlParam("@FID", 16, dynamicObject.get_Item("Id")));这句也过不了预编译
DBUtils.ExecuteDynamicObject(base.get_Context(), text, null, null, CommandType.Text, list.ToArray());
DBUtils.ExecuteDynamicObject(base.get_Context(), text2, null, null, CommandType.Text, list.ToArray());
}

上面两处注释的代码在以前是生效的,不知为什么现在过不了预编译,是因为内部方法被重命名了吗,求大神解答下