08 2012 档案

摘要:想直接通过AX 进行加密,恐怕没有那么容易处理,但是我们可以通过.net提供一些类库,实现该功能,就很容易,虽然X++和c#写法有些不同,但我们稍微的做一点变化,实现这一的功能也是一件很容易的事,下面我将给出实现代码 class MD5 { } public str IWS_MD5Encoding( 阅读全文
posted @ 2012-08-26 20:38 adingkui 阅读(528) 评论(0) 推荐(0) 编辑
摘要:void init(){ FormDataSource m_formDS; ; super(); m_formDS = element.args().record().dataSource(); //多选行记录获取 if(m_formDS.mark()) //是否多行记录 { g_InventTJL = m_formDS.getFirst(1); //第一条记录 while(g_InventTJL) { this.doSomeThing(); g_InventTJL = m_formDS.getNext(); //下一条记录 } } else { g_InventTJL = element.a 阅读全文
posted @ 2012-08-26 17:21 adingkui 阅读(552) 评论(0) 推荐(0) 编辑
摘要:View Code class FormRun extends ObjectRun{RGD_SalesorderSourse SalesorderSourse ;} 有很多客户习惯了EXCEL,在他们使用AX的时候,习惯的先在EXCEL将销售,采购订单创建好,然后直接导入到AX系统中,客户有时想区分系统中地销售,采购订单是在标准系统创建的还是通过导入生成的,这样也有利于当某些订单发生某些错误的时候,可以区分是否是导入的订单的时候出现问题。 这里我以销售订单为例,记录当时我们处理的方式和逻辑。 1,订单的编码规则是根据根据订单的来源分配,如果是导入生成,则编码规则是“... 阅读全文
posted @ 2012-08-26 16:30 adingkui 阅读(907) 评论(0) 推荐(0) 编辑
摘要:今天安装分析扩展,死活都安装不上去,提示如下错误在网上找了半天If you have SQL Server 2008 Analysis Services installed and you are installing the analysis extensions, you might receive an error that says you must install SQL Server 2005 Analysis Services with Service Pack 2. This error message indicates that there is an Analysis S 阅读全文
posted @ 2012-08-23 11:48 adingkui 阅读(244) 评论(0) 推荐(0) 编辑
摘要:之前遇到在AX2009中安装企业门户开发工具时,有时会遇到一个问题,安装完企业门户开发工具后,在VS2008的工具箱中无法看到dynamics ax tools,个人觉得跟安装企业门户和企业门户的开发工具的顺序有关系,这个我也确定。解决办法:1,找到C:\Users\自己的用户\AppData\Local\Microsoft\VisualStudio\9.0路径,删除toolbox.tbd,toolbox_reset.tbd,toolboxIndex.tbd,toolboxIndex_reset.tbd这四个文件,然后重启vs2008.如图 阅读全文
posted @ 2012-08-22 10:18 adingkui 阅读(209) 评论(0) 推荐(0) 编辑
摘要:通过点击一个FORM的新建按钮,弹出另外一个FORM,相互传值//点击FORM的新建按钮,触发CREATE方法public void create(boolean _append = false, boolean bl = false ,boolean CreateNewItemYN=false){ Args args; FormRun formCreate; RGD_PublicationTable newPublicationTable ; MenuFunction ... 阅读全文
posted @ 2012-08-18 21:24 adingkui 阅读(622) 评论(0) 推荐(0) 编辑
摘要:系统提供了用文档处理为系统中记录添加文档,这样每条记录可以附加一份说明文档,这个功能用起来比较方便,可是有时候遇到的用户比较不够勤劳,他于是希望不点那个工具栏上的图标,直接就可以看到一些东西,比如产品的图片说明。这个时候就需要添加图片。系统是通过window控件来添加图片的,我们有几种方式可以为Widow控件来指定数据来源。 1.直接指定ImageName或者ImageResource属性,其中ImageName只能指定一个物理路径上的文件,ImageResource只能指定AOT上Resource某个节点的ID,其中第一个属性缺乏灵活性,第二个还真没找到办法得到Resources节点下图片的 阅读全文
posted @ 2012-08-11 18:16 adingkui 阅读(479) 评论(0) 推荐(0) 编辑
摘要:给多个表的Dimension字段赋初值[需求]最近遇到这样一个需求,在实施的时候把系统现有的三个纬度前两个分别用于记录分公司和部门,在做财务凭证或者销售采购订单的时候,需要给这些表相应的Dimension字段的前两个纬度赋值,用户要求根据当前用户所属的分公司和部门直接赋值,而不想自己去选择。[分析]最直观的想法就是修改各个表的InitValue()方法,给相应的表赋初值,不过这样的工作量有些大,要修改多个表,并且当需要赋初值的表增加时还需要继续修改相应的表。AX中用Map实现表方法的共享,于是考虑用Map来实现这个功能。只有Map还是不行的因为InitValue()这个方法还是在各个表上的,好 阅读全文
posted @ 2012-08-11 17:05 adingkui 阅读(369) 评论(0) 推荐(0) 编辑
摘要:http://blogs.msdn.com/epblog/http://blogs.msdn.com/solutions/ 阅读全文
posted @ 2012-08-11 16:06 adingkui 阅读(387) 评论(0) 推荐(0) 编辑
摘要:经常要用代码创建采购和销售订单,需要弄清楚哪些字段是必输的,这段代码经常需要拷贝,放在这里做个备份。staticvoidCreatePurchDirectly(Args_args){PurchTablepurchTable;PurchLinepurchLine;InventDiminventDim;;ttsbegin;//PurchTable//PurchIdpurchTable.PurchId=NumberSeq::newGetNum(PurchParameters::numRefPurchId()).num(); purchTble.PurchaseType = PurchaseType: 阅读全文
posted @ 2012-08-09 22:06 adingkui 阅读(806) 评论(1) 推荐(0) 编辑
摘要:本文描述库存模块中最重要的两个类InventMovement和InventUpdate,当然这两个类还有相应的子类.毋庸置疑,AX中库存模块至关重要,我的理解是与财务模块并列两大基础模块,其他模块都依赖于这两个模块,当然从独立性的角度来看,库存模块也依赖于财务模块,因为库存的变动要在财务上有所体现,其他模块只要涉及到库存的变动都由库存模块去实现,具体的实现就是由InventMovement和InventUpdate去做的.一.类设计首先按照我的理解分析一下AX为什么要用InventMovement和InventUpdate两个类来做处理库存的变动.先来看一下InventMovement和Inv 阅读全文
posted @ 2012-08-09 17:01 adingkui 阅读(2070) 评论(0) 推荐(1) 编辑
摘要:上一篇说了资金流,这一篇就扯一下信息流,在软件设计的时候信息流可能有很多想法,每个人对信息流的理解也不一样,所以也没有统一的标准。我这里所分成的信息流,现金流和物流仅仅是为了分析销售开票这个过程,人为地按照我自己的理解把代码分割了一下,便于整理,如此而已。我这里提到的信息流是指在销售开票的过程中用哪些表和代码记录了与客户相关的信息。企业折腾的过程最终是为了赚钱,所以最后总会落脚到Money,也就是上文提到的那些财务凭证。在从物料转化成Money的过程中,需要记录一系列的信息,要不然将来客户说凭啥给你钱?当然这只是一方面了,还有很多情况,比如一个销售订单可能要多次发货和开票,需要记录每次开票的信 阅读全文
posted @ 2012-08-09 16:51 adingkui 阅读(652) 评论(0) 推荐(0) 编辑
摘要:一直在想怎么才能更清晰地描述一个过程的代码,如果采用类似时序图的方式描述,看到的只是这个方法调用了另一个方法,然后一次调用下去,这样写了感觉用处不大,下次要做客制化还是要重新去跟踪一遍,没有起到梳理代码的目的。细细想想,不管代码怎么编排,它的目的都是要实现业务的需求,而代码用各种模式去设计,无非也就是为了便于修改,更加有效地从数据库里读取和写入数据。于是可以把整个过程分解为三个阶段,就像把大象关到冰箱里拢共分几步一样。前段是业务,后端是表结构,中间是代码。变化最大的是中间的代码,如果一头钻进代码里,后果很有可能是云深不知处。于是我想可能更好的分析代码方式是抓住两头,梳理中间。首先要搞清楚这段代 阅读全文
posted @ 2012-08-09 16:49 adingkui 阅读(1268) 评论(0) 推荐(2) 编辑
摘要:Reporting Services for Microsoft Dynamics 2009 Enterprise Portal – Part 3 Designing a Basic ReportIn this post I’ll discuss, creation of a simple Customer Report, as and when it is time to introduce new concepts I will add more to this report.Creating a Reporting Project1) Open Visual Studio2) Click 阅读全文
posted @ 2012-08-09 14:07 adingkui 阅读(1265) 评论(1) 推荐(0) 编辑
摘要:响应键盘事件为了响应键盘事件,AX增加了一个系统方法task,在用户点击某些键时会调用Form的task方法,如果想对这些键实现自己的响应,可以重载task方法,在其中判断当前的_taskId为哪个值,再写自己的响应code.比如用户选中ALT时,如下代码所示:publicinttask(int_taskId){intret;#Taskif(_taskId==#taskAlt)info("Iam'Alt'");returntrue;}由于Task方法的调用是由平台实现的,没找到它实现的代码,并不是所有的按键都会调用task方法,只有在宏Macro->T 阅读全文
posted @ 2012-08-09 11:25 adingkui 阅读(346) 评论(0) 推荐(0) 编辑
摘要:AX通过菜单可以多次打开同一个窗体,有些客户想同一个窗体只打开一次,如果第二次点击就把原来已经窗体显示在最上面。AX提供了一些API用来做这事,并且有合适的入口用来增加一些处理代码。1.修改类工厂ClassFactory的FormRunClass方法FormRunformRunClass(Argsargs){#FormCacheMarkHwndhwnd;;if(infolog.globalCache().isSet(#FormCacheMark,args.name())){hwnd=infolog.globalCache().get(#FormCacheMark,args.name());Wi 阅读全文
posted @ 2012-08-09 11:19 adingkui 阅读(303) 评论(0) 推荐(0) 编辑
摘要:今天遇到一个奇怪的问题,当我用一个用户装完企业门户开发工具后,可以通过vs2008看到在创建网站时,能够看到Dynamics AX中的Web项目模板,但奇怪的是当我用另外的一个用户登录时,打开vs2008创建网站时,却看不到Dynamics AX中的Web项目模板,经过摸索,找出了解决的办法,具体的做法如下:当我们装完企业门户开发工具后,会在C:\Documents and Settings\[user id ]\My Documents\Visual Studio 2008\ProjectTemplates\Visual Web Developer这个文件夹下多出一个AxWebProject 阅读全文
posted @ 2012-08-03 11:44 adingkui 阅读(229) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示