[已解决]存货核算期末结账插件问题,急!~~
金蝶云社区-nmgzjf
nmgzjf
0人赞赏了该文章 1,060次浏览 未经作者许可,禁止转载编辑于2015年11月18日 11:04:34

老师:我看到余老师好像休假了。需要论坛里老师支持了
这是我上次的帖子:
存货核算期末结账插件,怎么扩展功能?
http://club.kisdee.com/forum.php ... 3&page=1#pid2591843

我按余峰老师的说法写的代码:
[System.ComponentModel.Description("HS期末结账计划价表单插件")]
public class HS_CheckOut_PlugIn : Kingdee.K3.FIN.HS.Business.PlugIn.CheckOutUNCheckOutEdit
{
private string oprationFlag = "";
protected override void StartCheckOutForDevelop(CheckOutParameters param, IOperationResult operationResult)
{
base.StartCheckOutForDevelop(param, operationResult);

但以上代码并没有被触发。请老师指点。
1.这个方法触发在结账成功后?还是结账前?
我怎么判断是结账还是反结?
怎么判断是否成功?

2.另外,情急之下,我在菜单按钮事件后进行了处理,但这种方法存在问题:一直报以下冲突。
“demo”使用业务单据:“存货核算期末结账”业务操作-“[ ]”冲突,请稍候再使用。

代码如下:
public override void DataChanged(DataChangedEventArgs e)
{
base.DataChanged(e);
要先检查前面的执行是否成功!
if (e.Field.ToString().Equals("结账状态"))
{
if (e.NewValue.ToString().Equals("成功"))
{
CheckOut();
}
}
}
//菜单操作后,记录点击了结账还是反结账
public override void AfterBarItemClick(AfterBarItemClickEventArgs e)
{
base.AfterBarItemClick(e);
应该检查是执行成功后才可以执行结账和反结功能。
if (e.BarItemKey.ToLowerInvariant().Equals("fstart"))
{ //计划价结账处理
oprationFlag = "结账";
//this.View.ShowWarnningMessage ("计划价结账准备执行...");
}
else if (e.BarItemKey.ToLowerInvariant().Equals("funstart"))
{ //计划价反结账处理
oprationFlag = "反结";
//((DynamicWebFormView)this.View).ShowMessage("计划价反结账准备执行...");
}
}