金蝶云K3 Cloud业务预警业务开发总结_金蝶k3cloud业务流程

其他工作总结 时间:2020-02-29 07:22:37 收藏本文下载本文
【www.daodoc.com - 其他工作总结】

金蝶云K3 Cloud业务预警业务开发总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“金蝶k3cloud业务流程”。

业务预警业务开发总结

最近研究了下业务预警的业务开发,我们有两点需求目前平台还支持不了,1、能本月预警下个月到期的数据;

2、预警结果可以显示明细、也可以显示汇总,甚至希望能显示时间段内的数据

本文档只是个人总结,还有很多不完善的地方希望和大家沟通,相互学习。这里以应收单的业务预警为例 1.BOSIDE中新建预警对象

平台没有提供模板,不过供应链做过,我们直接复制供应链的预警对象就好 预警对象中有5个参数

1、数据源:需要预警的数据来源,可以是单据、基础资料、报表,我这里选择的是应收单

2、预警方案解析插件:

预警方案建立并启动后,后台服务根据预警周期条件,自动执行预警方案,在此过程中,通过预警服务插件进行灵活干预和控制;可以重写类Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnServicePlugIn来实现干预;

2.1 解析消息变量之前事件

在此事件中,可以自定义需要保存到预警消息的关键数据。一般用于报表预警。以下是示例:

///

/// 解析预警消息之前

/// 用途:主要用于报表预警,唯一确定一条报表数据所需要的关键数据是不一定,所有允许自定义

///

///

void BeforeParseWarnMeage(BeforeParseWarnMeageEventArgs e)

{

//添加预警数据关键字段,如以下示例(添加字段名称为FName的关键数据,将保存到预警消息中,以便后续处理使用)

e.KeyValueFieldNames.Add(“FName”);

base.BeforeParseWarnMeage(e);

}

2.2.解析预警条件之后事件

主要用于附加一些额外的过滤条件,适合一些硬编码的条件。以下是示例:

///

/// 触发预警条件解析之后的事件

/// 用途:主要用于添加额外的一些过滤条件

///

///

void AfterWarnConditionParse(AfterWarnConditionParseArgs e)

{

//将客户=‘海格科技’的过滤掉

string filter = “ FCUSTOMERNAME ='海格科技' ”;

if(string.IsNullOrWhiteSpace(e.Filter))

{

e.Filter = filter;

}

else

{

e.Filter = “ AND ” + filter;

}

base.AfterWarnConditionParse(e);

} 2.3.预警执行事件

主要用于修改预警执行结果集合,不建议重写此事件,以下是示例:

///

/// 执行预警解析

/// 用途:主要用于修改执行后的数据集合,不建议重写

///

void ExcuteWarnParse(ExcuteWarnParseEventArgs e)

{

base.ExcuteWarnParse(e);

//将第一个数据中,客户名称改为 海格科技

//数据源是否为报表

if(this.WarnHelper.IsDataSourceReport)

{

e.WarnMeage.WarnObjectSysReportData.Rows[0][“FName”]=“海格科技”;

}

else

{

e.WarnMeage.WarnObjectDynamicObjects[0][“FName”] = “海格科技”;

}

}

2.4.消息解析之后事件

主要用于修改格式化后的预警消息,或者进一步使用自定义变量格式化预警消息

///

/// 解析预警消息之后

/// 用途:主要用于修改格式化后的预警消息,或者进一步使用自定义变量格式化预警消息

///

///

void AfterParseWarnMeage(AfterParseWarnMeageEventArgs e)

{

base.AfterParseWarnMeage(e);

//将自定义变量{FCUSTOMERNAME.Custom} 格式化为 海格科技

for(int i = 0;i

{

MeageEntity item = e.WarnMeage.MeageEntityList[i].MeageEntity as MeageEntity;

if(item!= null)

{

item.Content = item.Content.Replace(“{FCUSTOMERNAME.Custom}”, “海格科技”);

}

}

}

2.5.消息发送之前事件

对发送消息进一步精确控制,以下是示例:

///

/// 发送预警消息之前

/// 针对消息发送的精确控制

///

///

void BeforeSendWarnMeage(BeforeSendWarnMeageEventArgs e)

{

base.BeforeSendWarnMeage(e);

//当消息发送条数大于100时,取消发送

if(e.WarnMeage.MeageEntityList.Count > 100)

{

e.Cancel = true;

}

}

3、客户端插件重写指导说明

在消息中心,或者首页的预警消息功能下面,可以看到预警消息列表。此列表支持预警消息的查看和处理工作,通过预警方案的消息客户端插件重写,可以自定义处理预警消息和查看消息。

同样可以把自己的插件注册进来

重写类:Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnMeagePlugIn 3.1.查看消息

弹出指定的查看界面,如果不重写,则弹出统一的消息查看界面,以下是示例:

///

/// 显示消息

///

public override void ShowWarnMeage(ShowWarnMeageEventArgs e)

{

//根据传过来的关键数据,进行查看

if(e.MsgDataKeyValueList!= null && e.MsgDataKeyValueList.Count()> 0)

{

// DoShow 查看逻辑

}

//标识从插件中查看,这样就不会显示公用的查看界面了

e.IsShowByPlugIn = true;

base.ShowWarnMeage(e);

} 3.2.处理消息

插件根据传递过来的关键数据,进行处理,以下是示例:

///

/// 处理消息

///

public override void ProceWarnMeage(ProceWarnMeageEventArgs e)

{

if(e.MsgDataKeyValueList!= null && e.MsgDataKeyValueList.Count()> 0)

{

string meage = string.Empty;

meage = DoProce(e.MsgDataKeyValueList);//自定义处理逻辑

//插件中显示了提示消息,公共的提示消息就不显示了

e.Result.IsShowMeage = false;

//标识已被插件处理

e.IsProceByPlugin = true;

this.ParentView.ShowMeage(meage);

}

base.ProceWarnMeage(e);

}

4、预警条件窗体:

第一个是平台的模板,我们也可以继承这个模板自定义我们自己需要的预警条件,预警条件是一个单据;

5、预警方案插件重写指导说明

预警方案维护界面中,对消息的配置支持变量,而变量是根据对应预警对象数据源的元数据构成的。如果开发者需要精简一些无用的变量,则可以通过重写预警方案插件来实现。

重写类:Kingdee.BOS.Core.Warn.PlugIn.AbstractWarnSolutionEditPlugIn 5.1

设置预警条件之前事件

更改预警消息变量来源,适用于精简一些无用的字段变量;

注意,需与下面的设置预警变量之前事件配套使用,否则会出错; 以下是示例:

///

/// 预警条件界面,在设置预警条件字段之前

///

public override void BeforeSetFilterFields(BeforeSetFilterFieldsEventArgs e)

{

//将字段名为FName的字段移除预警条件字段集合 for(int i = e.FilterFields.Count1;i >= 0;i--)

{

WarnMeageVeriable veriable = e.Veriablelist[i];

if(veriable.FiledName.ToUpperInvariant()== “FName”)

{

e.Veriablelist.RemoveAt(i);

}

}

base.BeforeSetVeriableList(e);

} 预警对象建立好后,我们需要用administrator进入我们的系统,然后设置预警方案

预警方案的新增界面,填好编号和名称,选择预警级别,然后选择自己刚刚在BOS里设置的预警对象,选择预警对象好会默认把BOS里配置的预警条件窗体携带到这里的预警条件下,同时会加载消息设置的东西

然后设置预警周期

设置好保存就可以了,最后设置你的消息提示;

明细表体和明细正文就是我们要设置的明细消息提示、用{}框起来需要提示的字段,这里的字段都是你预警对象数据源里的字段,保存这个预警方案,预警方案就算设置好了,然后启动这个预警方案,就会自动执行,当然你也可以手动执行验证; 执行后到预警执行情况列表里查看就行,同时也会发消息到对应的接收人

下载金蝶云K3 Cloud业务预警业务开发总结word格式文档
下载金蝶云K3 Cloud业务预警业务开发总结.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文