Agrs Class

这个类在很多代码中出现,在启动报表的时候也需要用到它.
简单来说这个类用于共享构造参数.Axapta中之所以可以用Args的方式,是因为:
1.通常参数的数目比较少.
2.用的参数类型很类似.
3.有时候构造一个主要的对象,需要构造与之相关的对象,在构造这些对象时需要用到相
同的构造参数.
在传统的OO世界里,一个对象往往有多个重载的构造函数,通常情况下这没什么问题,
当一个主要的对象需要通过特定构造器去构造相关的对象时,事情变得糟糕起来.有时候需要
通过逻辑判定到底该构造哪个构造函数,并且要在很多层之间传递这些信息.事实证明在
Axapta,很多报表,窗体,Action类的构造参数都是很类似的,于是Axapta采用了单一的Args
对象来传递参数,它封装了最常用的几个参数.
 
属性
类型
描述
caller
object
创建Args的对象的引用
dataset
tableid
待查找字段或者记录指向的表,通常情况下为null,大多数情况下dataset是隐式的.
designName
str
将采用报表的哪个设计,如为null则用默认设置.
lookupField
Fieldid
当显示窗体时,用于过滤记录的字段
loopupValue
Str
当显示窗体时,过滤字段对应的值.
menuitemName
Str
引起对象创建的菜单名称
menuitemType
Str
引起对象创建的菜单类型
Name
Str
对于Form和Report指触发Form和Report的菜单名称
parentWnd
Int
不常用,可以不予理会.
Parm
Str
一般的字符串参数
parmenumType
int
基本枚举类型的ID,通常会使用enumnum(some-type)函数
parmenum
int
通过paramnumType指定的一个基础枚举类型的值.通常结合parmenumType选择不同的行为.
paramObject
Object
一般的object类型
Record
common
dataset的一条空记录,可以用DictTable.makeRecord来创建.
原文地址:https://www.cnblogs.com/Farseer1215/p/419330.html