Args Class

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来创建.

 

 

posted @ 2012-04-10 10:09  K小子  阅读(171)  评论(0编辑  收藏  举报