摘要:AX2012与之前AX版本最大的改变是财务维度,AX2012之前的版本,财务维度通过数组实现,默认只支持3个财务维度,可以花钱增加,但总数量受限且就一个主表维护,来源固定,很不灵活。AX2012以后的财务维度不受限制,几乎所有的数据都可以拿来用做财务维度。为了实现这个需求AX2012设计了复杂的表结
阅读全文
摘要:D365 FO从10.0.0.9版本以后在Grid控件上加入了一些特别棒的特性,目前(10.0.0.10)还处在预览阶段,用户可以自行在功能管理里启用Grid的新特性,不过也要能容忍比较多的bug,毕竟还在预览阶段。这些新加的特性是D365之前版本千呼万唤始出来不出来的功能,还是非常让人觉得眼前一亮
阅读全文
摘要:AX在D365 FO之前的版本创建总账日记账每个人都有自己的做法,最终的目的都是写入表LedgerJournalTable和LedgerJournalTrans,AX2012之前相对简单,AX2012的财务维度变得很复杂,处理起来相对麻烦一些,AX也尝试用Ax*类来处理与第三方系统的交互。到了D36
阅读全文
摘要:D365 FO Update9以后增加了Chain of Command(CoC),用来扩展系统类的方法,具体的使用方法参见下文。https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/extensibility/met
阅读全文
摘要:从AX2012开始,AX建议用SysOperation Framework取代用了很久的RunbaseBatch框架,SysOperation Framework的详细介绍,参见下文。https://docs.microsoft.com/en-us/dynamicsax-2012/developer
阅读全文
摘要:关于X++最新版本异常处理都在下面这篇文章里讲得很清楚了https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/dev-ref/xpp-exceptions我觉得比AX2012最大的改进1.增加了finally支持这让X
阅读全文
摘要:从AX2012以来引入了Unitofwork,实现的具体步骤,参见下面的链接地址。https://docs.microsoft.com/en-us/dynamicsax-2012/developer/how-to-use-the-unitofwork-class-to-manage-database
阅读全文
摘要:这部分内容没找到相关文档参考,只是结合在VS里debug结果猜想一下。首先解决一个问题,扩展类是什么时候实例化的,这个很容易求证,用VS debug跟踪一下就知道了。 1 static public void Main(Args _args) 2 { 3 Person person = new Pe
阅读全文
摘要:C#里的扩展类相对简单,可以看做是简单的语法糖。X++里的扩展类就相对复杂很多,先从最简单的开始,在X++中实现上文在C#中实现的类和方法,代码如下所示: public class Main { static public void Main(Args _args) { info (new Pers
阅读全文
摘要:AX在D365之前的版本,通过不同的层进行代码的管理和发布,不同层级的人在不同的Level上开发。不知道其他人怎么处理的,如果做过了大量的客制化开发之后,如果有了新的RU,我是不敢打的,最多把Kernal的版本升一下,至于Application,真心不敢升级,处理冲突和合并代码是一场梦魇。D365在
阅读全文
摘要:D365用Devops做代码管理,编译和 发布,D365的Visual Studio项目跟Devops跟普通项目一样,只是映射目录要注意一下。另外微软发布的VHD的计算机名字都是一样的,Devops是以计算机名为标识进行标识的, 所以同一个项目里的开发人员要改一下计算机名,如果存在重名目录映射会报错
阅读全文
摘要:D365支持多种开发方式 1.可以直接用Azure 托管的Dev环境,微软提供了不同的硬件配置供选择,不同的配置不同的价格,测试下来如果用Azure的托管开发环境,一定要用DS系列的服务器,这个系列的可以用固态硬盘,推荐DS13V2版本。2.用PC用微软提供的VHD搭建环境D365开发环境对CPU,
阅读全文
摘要:在SSRS的表达式里使用了一个.NET的DLL,用来生成条码图片,发布以后用不了。 需要修改一个SSRS的权限配置项,确保Report_Expressions_Default_Permissions的PermissionSetName的节点值是FullTrust.
阅读全文
摘要:经常在AX2009里引用.NET的DLL,因为序列化和反序列化,用.NET的定义的实体方便一些,平时数据量不大,也没觉得有什么问题,今天要把几万条数据从数据库中取出来序列化以后,调用第三方系统的接口,发现很慢,开始以为是从数据库里取数慢,于是优化索引,发现没有任何改善。后来把.NET实体调用部分去掉
阅读全文
摘要:有些场景下,供应商开发票时会有折扣,开票金额会小于收货金额,过账发票时,系统根据收货金额过账,自动产生折扣金额对应的日记账,与过账发票产生的供应商交易记录自动核销。 AX2009 放在这里做个备份
阅读全文
摘要:大多数场景下,开票前一般都会跟供应商进行收货单的对账,准确无误后,根据协商的金额将所对账的采购订单开一个发票。在PurchFormLetter中增加一个方法用于根据对账单明细生成对应的Parm表记录(AX2009)。 放在这里做备份。
阅读全文
摘要:刚遇到一个奇怪的问题,用户点击创建销售订单的时候,弹出个 无法在正在进行内容生成时调用 StartAt,查看详细报错。 ystem.InvalidOperationException: 无法在正在进行内容生成时调用 StartAt。 在 System.Windows.Controls.ItemCon
阅读全文
摘要:SSRS可以通过表达式动态设置文本框所有的属性,比如字体,字号,是否加粗,如下图所示: 汉字和数字英文字母占用的空间不一样,一个汉字占用两个数字和英文字母的空间,VB里有LENB取得字节数,这SSRS没有LENB这个函数,LEN说是可以返回字符数和字节数,但是怎么返回字节数查了半天资料都没找到。尝试
阅读全文
摘要:调用使用http post调用WCF Restful服务时,WCF会自动反序列化body里的实体,如果实体反序列化不成功时,会返回一个请求错误,让去看服务器日志。需要启用日志追踪功能,才能看到具体的情况。如何启用日志追踪功能,MSDN上有详细的描述,这里保存一下链接地址,备查。 https://ms
阅读全文
摘要:上面的代码生成CIL的时候会有如下错误: Finished pass 1 at 2016/5/28 20:07:22 Finished pass 2 at 2016/5/28 20:07:23 Error 1. Class: Class1, Method: testILMethod, Excepti
阅读全文