AX2012 R3安装升级包CU8后进入系统,系统会提示打开软件升级清单“Software update checklist”,清单列出了升级要做的一系列动作。
- 在进行到编译应用时“Compile application”出现很多错误:
Severity | Path | Line | Col | Error message |
Error | ClassesPayrollCalculatePayStatementBenefitsclassDeclaration | 12 | 5 | Syntax error. |
Error | ClassesPayrollCalculatePayStatementTaxesclassDeclaration | 42 | 5 | Syntax error. |
Error | ClassesPayrollTaxCalculationclassDeclaration | 7 | 5 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilcheckInTaxEngine | 7 | 37 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilcheckOutTaxEngine | 7 | 15 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilgetPoliticalSubDivision | 31 | 5 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilgetPoliticalSubDivisionByTaxCode | 20 | 5 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilgetTaxEngineVersion | 10 | 39 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilgetTaxTableVersion | 10 | 38 | Syntax error. |
Error | ClassesPayrollTaxEngineUtilmoney2Real | 11 | 40 | Syntax error. |
Error | ClassesPayrollTaxEngineUtil eal2Hours | 11 | 22 | Syntax error. |
Error | ClassesPayrollTaxEngineUtil eal2Money | 11 | 22 | Syntax error. |
Error | ClassesPayrollTaxEngineUtil eal2Rate | 11 | 22 | Syntax error. |
Error | ClassesPayrollTaxEngineUtil axCalculation2TaxCode | 11 | 62 | Syntax error. |
Error | ClassesPayrollTaxTypeInitializationclassDeclaration | 8 | 5 | Syntax error. |
Error | ClassesWHSWorkTableFormsourceButton_clicked | 36 | 93 | The table WHSWorkLineCycleCount does not contain the method WHSWorkTable. |
Error | ClassesPayrollSetup efreshWorkerTaxRegionTaxes | 25 | 5 | Variable Symmetry has not been declared. |
Error | ClassesPayrollTaxEngineUtilgetGNISLocations | 40 | 5 | Variable Symmetry has not been declared. |
Error | ClassesPayrollTaxEngineUtilgetMunicipalities | 39 | 5 | Variable Symmetry has not been declared. |
Error | ClassesPayrollTaxEngineUtilgetSchoolDistricts | 41 | 5 | Variable Symmetry has not been declared. |
Error | ClassesPayrollTaxEngineUtilgetTaxEngineLocationCodeList | 38 | 5 | Variable Symmetry has not been declared. |
Error | Data DictionaryTablesPayrollEmployerTaxRegionMethods etrieveGNIS | 12 | 5 | Variable Symmetry has not been declared. |
Error | Data DictionaryTablesPrlTmpGNISMethodspopulatePrlTmpGNIS | 13 | 5 | Variable Symmetry has not been declared. |
查看第一个错误ClassesPayrollCalculatePayStatementBenefitsclassDeclaration,进到代码发现“Symmetry.TaxEngine.BenefitInfo benefitInfo401_403;”一行Symmetry.TaxEngine.BenefitInfo没有定义,应该是某个.NET应用没有正确注册。在AX社区https://community.dynamics.com/ax/f/33/t/126055.aspx查到是因为ste-net.dll没有成功引用,在目录C:Program Files (x86)Microsoft Dynamics AX60ClientBin找到ste-net.dll,重新添加到AOT/References下。
重新编译,错误只剩下“The table WHSWorkLineCycleCount does not contain the method WHSWorkTable”。也是在AX社区找到答案,https://community.dynamics.com/ax/f/33/t/137853.aspx,表WHSWorkLineCycleCount 和表WHSWorkTable的关系CreateNavigationPropertyMethods 没有设置为YES,实际上系统中这个relation根本就没有CreateNavigationPropertyMethods属性,解决办法是需要应用hotfix KB3001197(https://mbs2.microsoft.com/Knowledgebase/kbdisplay.aspx?WTNTZSMNWUKNTMMYNLOWUUPRYQYWXNMQVMLWYXRMMRSVYSUZ)。
再次重新编译,又出现错误“Stack trace: An empty SQL statement descriptor list has been encountered.”,按照微软TechNet(http://technet.microsoft.com/en-us/library/jj161010.aspx)的说法是一些Configuration key被关闭导致的,在Configuration key配置中启用所有的Key,同步数据库表,重新编译application成功。
- 按照升级清单执行到Compile into .NET Framework CIL时出现错误“The CIL generator found errors and could not save the new assembly”,停止AOS服务,删除目录C:Program FilesMicrosoft Dynamics AX60ServerMicrosoftDynamicsAXinXppIL下的所有文件,重新启动AOS,再做一次full CIL编译成功。
- 进行到“Synchronize database”时出现错误“Failed to create a session; confirm that the user has the proper privileges to log on to Microsoft Dynamics”,我的系统中数据是从R3的demo data导入的,当前的admin用户在demo分区的ps和ext分区中部存在记录,参照“http://domhk.blogspot.com/2014/10/ax2012-r3-demo-data-failed-to-create.html”解决,具体是新建2个临时用户,然后直接在数据库中更新这2个用户记录为admin用户在ps和ext中的记录。
成功安装CU8后AX 2012 R3的kernel version为6.3.164.3198,application version为6.3.1000.473。