获取流程实例所有驳回意见的示例代码

需求说明: 用户需要在单据中显示所有驳回的审批意见。
二开分析: 虽然流程节点审核后可以反写审批意见到单据字段,但是只能反写到固定字段,所以只能看到最后一次的审批意见。
次之,反写审批意见不会触发单据的值更新,所以不能用配置实现。
二开时,尽量使用系统提供的函数来实现自己的功能,尽量不要直接读写数据库。
代码说明:
1. 根据formId和单据内码获取运行中的流程。

2. 根据流程实例Id获取审批路线,并筛选符合条件的记录。

3. 完整代码
[HotUpdate]
public class AuditDispositionPlugIn : AbstractBillPlugIn
{
public override void BarItemClick(BarItemClickEventArgs e)
{
if (e.BarItemKey.EqualsIgnoreCase("btnDisposition"))
{
this.View.Model.SetValue("FNote", GetAllDisposition());
}
}
/// <summary>
/// 获取单据运行中的流程实例Id
/// </summary>
/// <param name="formId">单据FormId</param>
/// <param name="keyValue">单据内码</param>
/// <returns></returns>
private string GetProcInstId(string formId, string keyValue)
{
string sql = @"select T0.FPROCINSTID from t_wf_pibimap T0 inner join T_WF_PROCINST T1 on T0.FPROCINSTID =T1.FPROCINSTID
where (ISNULL(T1.FSTATUS,'0') not in ('1','4')) and T0.FOBJECTTYPEID=@FOBJECTTYPEID and T0.FKEYVALUE=@FKEYVALUE";
return Kingdee.BOS.ServiceHelper.DBServiceHelper.ExecuteScalar<string>(this.Context, sql, string.Empty, new[] { new SqlParam("FOBJECTTYPEID", KDDbType.AnsiString, formId), new SqlParam("FKEYVALUE", KDDbType.AnsiString, keyValue) });
}
private string GetAllDisposition()
{
StringBuilder str = new StringBuilder();
string formId = this.View.BillBusinessInfo.GetForm().Id;
string keyValue = ObjectUtils.Object2String(this.View.Model.GetPKValue());
string procInstId = GetProcInstId(formId, k获取流程实例所有驳回意见的示例代码
需求说明: 用户需要在单据中显示所有驳回的审批意见。二开分析: 虽然流程节点审核后可以反写审批意见到单据字段,但是只能反写到固定字...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



