using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Kingdee.BOS;
using Kingdee.BOS.App;
using Kingdee.BOS.App.Data;
using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Core.SqlBuilder;
using Kingdee.BOS.Core.Metadata;
using System.ComponentModel;
using System.Data;
namespace xxxx.BusinessPlugIn
{
///
/// 单据插件
///
[Kingdee.BOS.Util.HotUpdate]
[Description("计算")]
public class XXXXXclass: AbstractBillPlugIn
{
public override void BarItemClick(BarItemClickEventArgs e)
{
base.BarItemClick(e);
if (e.BarItemKey.Equals("UNW_tbButton_11")) //界面按钮id
{
DynamicObject DataInfo = this.Model.DataObject as DynamicObject;
//获取单据的ID
string Fid = DataInfo["Id"].ToString();
//获取单据体行数量,key为单据体标识,FPOOrderEntry:采购订单单据体-----this.Model.GetEntryRowCount(string key)
int FRow = this.View.Model.GetEntryRowCount("FPOOrderEntry");
int iii = 0;
for (int index = 0; index < FRow; index++)
{
decimal FPrice = 0;
int EntryID = index + 1;
this.View.Model.SetEntryCurrentRowIndex("FEntity", index);
string strSql = string.Format("/*dialect*/存储过程 {0},{1}", Fid, EntryID);
DynamicObjectCollection objc = DBUtils.ExecuteDynamicObject(this.Context, strSql);
if (objc != null && objc.Count > 0)
{
string strPrice = objc[0]["price"].ToString();
FPrice = Convert.ToDecimal(strPrice);
if (FPrice > 0)
{
this.View.Model.SetItemValueByID("FTaxPrice", FPrice, index); //赋值
this.View.InvokeFieldUpdateService("FTaxPrice", index); //单据体刷新
iii = iii+ 1;
}
}
}
if (iii > 0)
{
this.View.ShowMessage("操作成功");
}
else { this.View.ShowErrMessage("操作失败"); }
}
}
}
}