摘要:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools 找到gacutil.exe和gacutil.exe.config然后1033子文件夹里的gacutlrc.dll文件,三个文件放一个目录,拷贝到其他地方就
阅读全文
摘要:读取文本 using (PdfReader reader = new PdfReader(fileName)) { using (PdfDocument pdfDocument = new PdfDocument(reader)) { for (int i = 1; i <= pdfDocument
阅读全文
摘要:从LCS上下载升级包,尝试用命令AXUpdateInstaller.exe devInstall报错The devInstall option is not applicable to the current deployable package.从网上搜索找到了答案,在这里记录一下。把升级包里的如
阅读全文
摘要:可以直接用.net里的类库中的方法生成随机数。System.Web.Security.Membership::GeneratePassword(_length, 0)。这个是用来生成随机密码的一个方法,第二个参数是至少要包含非数字字母的字符的个数。如果是想生成的随机字符串只包含字符和数字,这个方法就
阅读全文
摘要:X++的集合类,Array,List,Set里没有可以提供排序的功能,如果要对元素排序不是很方便。 D365 FO支持扩展,所以可以很方便地给这些集合类增加排序功能,这里以Array为例,只实现了数值和字符串的排序,至于class和record类型的,目前还没遇到需要排序的场景,就暂时不实现了,用到
阅读全文
摘要:在代码中添加断点,在Debug中把IIS进程附加以后,一直不能命中断点,这是VS中D365 FO的配置导致的。 这个勾默认是勾选的,只会加载当前解决方案的代码,所以断点无法命中,建议第一次配置环境的时候就去掉,全部加载这个用不了多少时间。
阅读全文
摘要:从UAT或者Live环境还原回来的数据库,由于版本跟本地开发环境可能不一样,同步数据库的时候会报错。 在事件查看器里能看到具体的信息。 Object Server Database Synchronizer: The internal time zone version number stored
阅读全文
摘要:在InventTable里增了单位,用了表UnitOfMeasure的RecId,并创建了Relation.通过DataEntity导入,于是修改EcoResReleasedProductV2Entity这个实体,增加表UnitOfMeasure的Relation. 同步数据库的时候,报错。DbSy
阅读全文
摘要:最近遇到一个问题,通过Azure的Java类库上传文件到Azure blob,但是客户环境通过Proxy上网的,这就需要通过代理连接blob。官方文档里都没有提及如何通过代理上传,解决这个问题浪费了一些时间,在这里记录一下。Maven引用最新版本的Azure类库 <dependencies> <de
阅读全文
摘要:遇到一个需求,给PDF增加一个印章,使用iText7可以很方便地实现这个需求,通过Nuget添加iText7的引用。 1 string sourceFileName = txtFileName.Text; 2 string destFileName = Path.GetDirectoryName(s
阅读全文
摘要:在.NET里Json的序列化和反序列化通常使用NewtonSoft这个类库,但是这个类库只能序列化反序列化.NET的实体。在AX2012的时候,我的做法是在用.NET定义一系列实体,在AX2012里添加.NET的DLL,然后进行序列化和反序列化。在D365里也可以继续这样做,并且都在VS里,引用.N
阅读全文
摘要:在AZure里,一般用Azure Blob做数据传输的中间媒介,D365 FO的数据生成到Blob里,其他系统从Blob里获取,或者相反,这样就不用单独设置FTP服务器了,当然这个是要钱的。要想使用Blob,需要在AZure上创建存储账号,创建好存储账户以后,就可以设置访问密钥了。 .NET提供了读
阅读全文
摘要:https://www.cnblogs.com/Farseer1215/p/12845342.html这一篇文章中介绍了,通过属性扩展的框架。最近遇到一个问题,不小心笔误了,比如如下所示,把Female的属性不小心写成male了,然后编译是不会报错的。 1 [Gender(Gender::Male)
阅读全文
摘要:Global类里提供了两个方法strRFix和strLRfix,方法的实现如下: 1 static str strRFix(str _str, int _length, char _char = ' ') 2 { 3 return strRep(_char, _length - strLen(_st
阅读全文
摘要:D365FO采用https,第三方通过API调用的时候,客户端不见得信任D365FO的证书,调用时候会报基础连接已关闭,发送时发生错误,调用堆栈如下: 1 at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, In
阅读全文
摘要:D365FO引用.NET DLL比AX2012更方便,自己用C#写一个功能,在X++中引用也非常简单,具体实现方式可以参照D365FO的开发文档。https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/dev-tools
阅读全文
摘要:客户端调用json-based服务非常简单,就是标准的http调用。http调用首先要解决URL的组成,D365 FO json-based调用的url组成如下:https://usnconeboxax1aos.cloud.onebox.dynamics.cn/api/services/{服务组名}
阅读全文
摘要:D365 FO的Custom Service的实现比AX2012简单了很多。AX2012服务方法要用属性SysEntryPointAttribute标记,添加到Services以后,还要发布服务并在系统管理入站端口添加操作,服务运行在CIL下,所以每次改动服务方法的代码都要增量生成CIL。AX201
阅读全文
摘要:D365 FO 在github上发布了第三方访问D365 FO的示例代码,里面包含了各种调用示例,代码很清晰。https://github.com/microsoft/Dynamics-AX-Integration这篇blog简单分析一下代码中获取访问令牌的部分代码。与获取访问令牌相关的代码有两个类
阅读全文
摘要:从Axapta3.0的COM Business Connector,到AX4.0和AX2009的 .NET Business Connector,到AX2012的WCF Services,最后到D365FO的接口方式。AX的接口演化,几乎见证了微软整个技术栈的变迁。D365 FO的Web Servi
阅读全文