Time of Update: 2018-12-06
這本書的確不錯,嗯.最近好像懶了些,看了<<ASP.NET SERVER CONTROLS AND COMPONENTS>>和<<Design Pattern Explained>>居然一個字的讀書筆記都沒寫,罪過,這本書不能再那樣了,不過也懶得翻譯了,這些大師級人物寫得書,一個字,淺顯易懂.看到哪裡把精彩的文字摘錄下來,算是做個記號,敦促自己快馬加鞭,早日看完,哈哈.Part I: Houston, We Have a
Time of Update: 2018-12-06
在QueryBuildRange中很容易可以實現這樣的功能:查詢不同客戶編碼的客戶,比如查詢編號為A00001或者A00002的客戶。如下代碼所示:static void GeneralQueryBuild(){ Query q; QueryRun qr; CustTable cust; str queryCriterion; ; q = new Query(); queryCriterion = 'A000001,A000002'; q.addD
Time of Update: 2018-12-06
在Axapta中有兩個類UtilElements和UtilIdElements,從Inside Microsoft Axapta4.0中的範例程式碼中,可以看到兩者的應用.協助文檔一點記載都沒有......我們知道Axapta把AOT的資訊以*.aod尾碼檔案方式存放在物理磁碟中.這兩個類的功能就是可以讓使用者用SQL的方式查詢AOT中的元素,UtilElementType這個枚舉類型有很多AOT中結點的類型值,比如Form,Report等,下面的範例程式碼顯示了查詢Inventory相關的類.
Time of Update: 2018-12-06
在Axapta中有一些類封裝了對AOT的查詢操作,比如Dictionary,DictRelation,DictClass,DictType等.如果想知道某個擴充資料類型的有幾個元素組成的,可以用如下代碼:static void getArrarySize(Args _args){ Dictionary d; DictType dt; ; d = new Dictionary(); dt = new DictType(d.typeName2Id("Dimensio
Time of Update: 2018-12-06
一個客戶的銷售訂單和採購訂單要求工作流程審核才能發貨或收貨,要求跟OA系統的工作流程整合,在Axapta中啟動流程,在工作流程中籤核,簽核完畢後再回寫Axapta相應單據的資訊.今天弄了一下,由於OA是用VB+ASP寫的,所以在啟動流程的時候需要調用COM,Axapta提供了COM這個類來調用COM,實現起來倒挺容易的,不過在傳遞數組參數的時候遇到了些麻煩.工作流程的COM提供的啟動流程的方法是用字串數組的形式接收流程相關資訊的,開始的時候用如下代碼調用: COM workFLow; st
Time of Update: 2018-12-06
第十三章:Advanced MorphX Forms講了自訂Form的樣本,包括ActiveX控制項和Html代碼的產生,一時理不出頭緒......第十四章:Reflection 本章的範例程式碼主要介紹了一些操作AOT的類的用法,包括TableAPI,Dictionary和TreeNode等,用代碼操作AOT裡的元素,比較好玩,呵呵.第十五章:System Classes本章的範例程式碼主要介紹了一些系統類別的用法,比如集合類.第十六章:Unit
Time of Update: 2018-12-06
FormDataSource是串連Form和Table的對象,前端Form上要顯示的內容關聯到FormDataSource上的欄位,而FormDataSource欄位又指向Table的欄位.有時候一個FormDataSource中的一個欄位在Form上顯示多次,如果要控制在某些條件下全部顯示或者全部不顯示,通過設定control的visible有些麻煩,這時可以通過設定FormDataSource中的欄位對象FormDataObject的visible屬性來統一設定.如下代碼所示:custTab
Time of Update: 2018-12-06
Effective C# Item 10: Understand the Pitfalls of GetHashCode() 讀後感下面的內容中有很多一部分是筆者自己的想法,所以有些說法可能會有失偏頗,還望指正。Wanger說GetHashCode()是他在Effective
Time of Update: 2018-12-06
驛動的心曾經以為我的家是一張張的票根撕開後展開旅程投入另外一個陌生這樣飄蕩多少天這樣孤獨多少年終於又回到起點到現在我才發覺哦~路過的人我早已忘記經過的事已隨風而去驛動的心已漸漸平息疲憊的我是否有緣和你相依再回首再回首雲遮斷歸途再回首荊棘密布今夜不會再有難捨的舊夢曾經與你共有的夢今後要向誰訴說再回首背影已遠走再回首淚眼朦朧留下你的祝福寒夜溫暖我不管明天要面對多少傷痛和迷惑曾經在幽幽暗暗反反覆複中追問才知道平平淡淡從從容容是最真再回首恍然如夢再回首我心依舊只有那無盡的長路伴著我安靜的深夜,空曠的辦公
Time of Update: 2018-12-06
安裝和配置Dynamics Axapta整合了SQL Server2005的Reporting Services,這樣除了通過原有的報表平台製作報表外,還可以通過Reporting Services製作報表.Dynamics Axapta的安裝和配置分為如下幾個步驟:1.SQL Server2005 Reporting Services的安裝和配置2.Dynamics Axapta報表伺服器的安裝3.透視圖的製作4.報表模型的發布具體的步驟,參照附件
Time of Update: 2018-12-06
系統的Query可能沒辦法做到這樣的需求:根據不同的情況用不同的表進行關聯,形成DataSource比如要做一張雜項收費的報表,需要查看銷售訂單的雜項收費情況以及對應的訂單號.雜項收費可能關聯到客戶發票的主表CustInvoiceJour,也可能關聯到明細表CustInvoceTrans.這種情況下就必須分別構造兩個不同的Query1.如果雜項收費是關聯到主表的,則只需要將MarkUpTrans和CustInvoiceJournal關聯,2.如果雜項收費是關聯到從表的,則需要將MarkUpTra
Time of Update: 2018-12-06
C.NumberSequence作用:如何給特定模組的某個類型增加編碼規則,該工程樣本了給銷售模組的服務訂單增加編碼規則.步驟:1.建立BikeServiceOrderId擴充資料類型,當然如果要給已經存在的擴充資料類型增加序號分配的話,就不必增加了.2.修改NumberSeqReference_SalesOrder類,當然如果要給其他模組的類型增加編碼規則的話,就選名為_**的類.修改LoadModule方法,增加如下代碼:numRef.DataTypeId = ty
Time of Update: 2018-12-06
價格和折扣也許是沒見過世面的緣故,感覺Axapta的價格和折扣有些太複雜了,一頭紮進去好懸沒淹死俺.怎麼理清這個思路還真是個問題.採購和銷售對稱,只看一個方面就差不多了.概述折扣和價格有兩個考察的方向,從產品的角度和從客戶的角度.從產品的角度:某個或者某些或者全部產品在滿足一定的數量和時間的條件下給某個或者某些或者全部客戶一定的折扣.從客戶的角度:某個或者某些或者全部客戶在滿足一定的數量和時間的條件下有某個或者某些或者全部產品一定的折扣.上述的設定的操作路徑如下:應收賬款->設定->
Time of Update: 2018-12-06
第十二章 The Database layer1.更改RecVersionAX4.0使用了開放式並行存取控制,RecVersion是用來標識記錄版本的。static void RecVersionChange(Args _args){ CustTable custTableSelected; CustTable custTableSelectedForUpdate; CustTable custTableUpdated; ; ttsbegin; select
Time of Update: 2018-12-06
在X++中數群組類型做入口參數如下兩點需要注意:1.字串數組中字串必須是定長的.2.如果方法不是內聯的,必須定義為anytype.舉例如下:1.int類型數組,內聯方法static void InputParameterTest(Args args){ int intTest[2]; //inline method void intArrayInputParameterTest(int inputParameter[]) { print inputParam
Time of Update: 2018-12-06
點擊表單上的OK後,就會調用salesFormLetter(其子類SalesFormLetter_invoice沒有重載Run())Run()方法了.Run()方法做了如下幾件事情:1.構造QueryRun(),該QueryRun對象執行的SQL如下所示:select * from salesParmUpdate ainner join salesParmTable b on a.parmid = b.parmIdwhere a.parmid='當前的ParmId' and
Time of Update: 2018-12-06
本文試圖詳細介紹Axapta中的財務過賬,從戰略,戰術和代碼實現等三個不同的層面看財務過賬的實現.戰略層面:毫無疑問財務是ERP的核心,所有的業務資料最終會在財務管理的某個科目中體現,公司從財務資料分析的情況可以瞭解到公司的運營狀況,做出相應的業務分析和決策.Axapta的財務過賬操作是聯絡業務和財務的紐帶.對於銷售,採購,生產,庫存管理以及專案管理等模組都有具體的過賬動作.銷售和採購模組通過銷售訂單和採購訂單的開發票動作來實現,工單通過工單的cost來實現.在銷售,採購做發(收)貨單以及工單完
Time of Update: 2018-12-06
我們經常需要根據表之間的關係用代碼建立query,SysQuery這個類提供了一個方法queryFromTableRelation,當然這個方法的代碼跟我們平常根據表之間的關係構造query的過程是完全一樣的,不過它做成了通用的方法,直接調用它就不用自己每次都重複勞動了,另外SysQuery裡還有幾個不錯的方法,值得看一下source.public static Query queryFromTableRelation(Common _parentTable, TableId
Time of Update: 2018-12-06
看不到書,就讀代碼解解饞吧,呵呵.感謝Ivan Gao提供原始碼.4.:MorphX Development Tools
Time of Update: 2018-12-06
多態在語言的表現上就是用父類類型調用子類方法的實現,C++和C#是通過虛函數表來實現的,在具體執行個體化的時候把重載的函數地址寫到虛函數表的地址清單中,我想X++應該也是這樣實現的.問題在於如果想訪問子類特有的函數,該怎麼玩,C#中必須用強制轉化,將父類類型強制轉化成子類類型,才能調用,強行轉化的文法跟C語言一樣,(子類型)父類型.在X++中沒看到這種文法,不過可以直接賦值子類型=父類型,還可以直接賦值給object類型, object = 父類型,然後調用子類的方法.看代碼吧父類:class