AX4.0 SP2本地化的问题--不能做供应商财务日志
问题描述
依次打SYS和GLS的SP2后,在 总帐->日志->普通记账日志,创建日志,然后创建日志行,科目类型选 供应商,然后选择一个供应商帐务,对方科目类型选择 分类帐,然后选择 对方 科目时会报如下错误:
问题原因
AX4.0本地化的SP2增加了一个会计科目类型 共同,但在类LedgerAccountTypeClass类的constructor方法中并没有为该类型添加相应的实例化方法,这样在窗体LedgerAccoutLookup的数据源LedgerTableAccountType的init方法用共同 对应的枚举值调用该Constructor时就报错了。
解决方法
增加一个 共同 这个会计科目类型对应的子类LedgerAccountType_AccountCommon,我不是很清楚AX4.0SP2本地化增加这个科目类型的用意以及该科目的属性,如果您想用它来做交易的话,该类重载一下其父类LedgerAccountTypeClass的canHaveTransactions方法,返回true。其他属性,如果理解这个会计科目类型的含义,可酌情添加。
然后在LedgerAccountTypeClass的constructor方法的switch语句中添加如下代码:
依次打SYS和GLS的SP2后,在 总帐->日志->普通记账日志,创建日志,然后创建日志行,科目类型选 供应商,然后选择一个供应商帐务,对方科目类型选择 分类帐,然后选择 对方 科目时会报如下错误:
问题原因
AX4.0本地化的SP2增加了一个会计科目类型 共同,但在类LedgerAccountTypeClass类的constructor方法中并没有为该类型添加相应的实例化方法,这样在窗体LedgerAccoutLookup的数据源LedgerTableAccountType的init方法用共同 对应的枚举值调用该Constructor时就报错了。
解决方法
增加一个 共同 这个会计科目类型对应的子类LedgerAccountType_AccountCommon,我不是很清楚AX4.0SP2本地化增加这个科目类型的用意以及该科目的属性,如果您想用它来做交易的话,该类重载一下其父类LedgerAccountTypeClass的canHaveTransactions方法,返回true。其他属性,如果理解这个会计科目类型的含义,可酌情添加。
然后在LedgerAccountTypeClass的constructor方法的switch语句中添加如下代码:
case LedgerAccountType::Common:
typeClass = new LedgerAccountType_AccountCommon();
break;
这样就OK了。typeClass = new LedgerAccountType_AccountCommon();
break;