博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[K/3Cloud]关于"选单"操作
阅读量:6818 次
发布时间:2019-06-26

本文共 2051 字,大约阅读时间需要 6 分钟。

之前有些人对这块有些疑问,比如:

1.选单操作是否和下推基本一样,都是公用同一套单据转换规则,只不过下推是源单推目标单,选单是目标单去选择源单,最终操作结果一样?

2,我想实现选单的时候,选单列表先通过插件过滤..是否支持这做法?..插件应该挂在哪个地方...重写哪个事件?

其实是一样的,选单会拿单据界面已经录入的部分字段对源单数据进行过滤,至于哪些字段参与过滤可以在单据转换规则上设置。配置在单据转换路线的插件策略上,派生AbstractConvertPlugIn类,可以看到有一些可重载的方法。

1、下推和选单走的是同一个规则。

2、不同的是选单先根据过滤条件弹出符合条件源单列表。
3、整个过程主要几个大步骤
    1)构造过滤条件
    2)取源单数据
    3)分组
    4)构目标单
    5)字段映射
    6)创建关联关系,及单位换算
    7)执行表单服务
    8)输出结果

单据转换插件事件执行顺序:

1、下推事件及顺序
//初始化变量 
OnInitVariable(InitVariableEventArgs e)
//解析字段映射关系,并构建查询参数。这里可以加入你想要的额外的字段
OnQueryBuilderParemeter(QueryBuilderParemeterEventArgs e)
//构建列表中选择数据行的In语句
OnInSelectedRow(InSelectedRowEventArgs e)
//解析选单条件策略
OnParseFilter(ParseFilterEventArgs e)
//获取源单数据
OnGetSourceData(GetSourceDataEventArgs e) (下推执行)
//执行分组前
OnBeforeGroupBy(BeforeGroupByEventArgs e)
//创建目标单
OnCreateTarget(CreateTargetEventArgs e) (下推执行)
//字段映射开始
OnBeforeFieldMapping(BeforeFieldMappingEventArgs e)
//单个字段映射
OnFieldMapping(FieldMappingEventArgs e)
//计算公式映射
OnFieldCalculate(FieldCalculateEventArgs e)
//所有字段映射完成
OnAfterFieldMapping(AfterFieldMappingEventArgs e)
//关联关系(Link表)创建前
OnCreateLink(CreateLinkEventArgs e)
//关联关系(Link表)创建完成
OnAfterCreateLink(CreateLinkEventArgs e)
//单据转换后事件
AfterConvert(AfterConvertEventArgs e)
2、选单前事件及顺序(弹出选单列表前)
OnInitVariable(InitVariableEventArgs e)
//解析映射关系中的过滤选项
OnParseFilterOptions(ParseFilterOptionsEventArgs e)(选单执行)
OnParseFilter(ParseFilterEventArgs e)
3、选单事件及顺序
OnInitVariable(InitVariableEventArgs e)
OnQueryBuilderParemeter(QueryBuilderParemeterEventArgs e)
OnInSelectedRow(InSelectedRowEventArgs e)
//获取源单数据
OnGetDrawSourceData(GetDrawSourceDataEventArgs e)(选单执行)
OnBeforeGroupBy(BeforeGroupByEventArgs e)
//目标单创建后
OnCreateDrawTarget(CreateDrawTargetEventArgs e)(选单执行)
OnBeforeFieldMapping(BeforeFieldMappingEventArgs e)
OnFieldMapping(FieldMappingEventArgs e)
OnFieldCalculate(FieldCalculateEventArgs e)
OnAfterFieldMapping(AfterFieldMappingEventArgs e)
OnCreateLink(CreateLinkEventArgs e)
OnAfterCreateLink(CreateLinkEventArgs e)
//单据转换后事件
AfterConvert(AfterConvertEventArgs e)

转载于:https://www.cnblogs.com/fyq891014/p/3308540.html

你可能感兴趣的文章
Storm系列(六)storm和kafka集成
查看>>
东南亚的招聘骗局,程序员请注意!
查看>>
将一个数的二进制位模式从左到右翻转并输出
查看>>
关于JEPLUS软件介绍——JEPLUS软件快速开发平台
查看>>
如何使用羊驼自动生成缩略图的功能。
查看>>
git 问题
查看>>
Fedora18设置终端快捷键 和 桌面快捷方式
查看>>
取消NavigationBar左右两边的空隙
查看>>
得到颜色的整形值
查看>>
.net winForm 实现类似qq 弹出新闻
查看>>
SSL加速和证书卸载的配置方式
查看>>
Intersect交集
查看>>
Sencha touch 中的一段源码匿名中定义Function并调用
查看>>
android开发学习 ------- 枚举类型在Android中的用法
查看>>
day14 装饰器模拟验证附加功能
查看>>
c#简单自定义异常处理日志辅助类
查看>>
make: *** No targets specified and no makefile found. Stop.错误
查看>>
闭包的常见用处
查看>>
中联通4月份3G用户净增181.7万总数突破2000万
查看>>
cJSON填坑记
查看>>