Time of Update: 2018-12-06
今天偶然發現了一個AX的bug,蠻好玩。問題描述:在AX中支援多中過濾方式,其中在右鍵菜單中有兩種,篩選方式欄位,篩選方式選擇(BTW:一直對這兩種說法摸不著頭腦,英文是Filter by Field和Filter by selection,翻譯成按欄位篩選和按當前值篩選會不會好些?其實吐著吐著就習慣了,這些習慣的問題倒也無傷大雅),問題出在篩選方式選擇上,如果當前值中包含"這個字元,這個篩選就出問題了在點擊篩選方式選擇後,正常情況下應該篩選出物料名稱為
Time of Update: 2018-12-06
表變數和類最大的區別是表變數中的欄位是public類型的,而類的成員變數是protected,並且兩者的存取層級都是不可更改的,只能用預設的存取層級。剛剛在寫代碼的時候遇到了一個問題,如下代碼所示:static void ReturnValueTest(Args _args){ ; CustTable::find('4001').AccountNum = '4002';}編譯該代碼得到報錯資訊:*** 錯誤:
Time of Update: 2018-12-06
[譯序]AIF是一個很好玩的東東,最近在工作之餘在看AIF的一些文檔,<<Inside Mircrosoft Dynamics AX 4.0>>這本書的第九章有關於XML文檔整合的,試著將其翻譯一下。本章只是講解AIF如何通過XML文檔架構為AX提供XML文檔介面,並不是AIF的全部內容。本文僅供AX從業者和愛好者學習交流之用,請勿轉載,由於筆者水平有限,錯誤在所難免,還望不吝賜教。本章內容簡介AIF架構概覽XML結構AxBase APIAxInternalBase
Time of Update: 2018-12-06
問題描述按單生產的企業,銷售訂單是一切的源頭,在後續的生產和採購過程中都需要看到是為哪張銷售訂單,哪個客戶生產或者採購的。客戶採購的是A產品,A產品又由B和C組成,而B,C又需要生產,在生產B和C的時候工廠也需要知道為哪張銷售訂單生產的以及其關聯的銷售訂單上對B和C的具體要求。AX目前的資料結構只能看到最頂級的BOM上看到關聯的銷售訂單,如果B,C想看到就要一級級往上查這很不方便。解決方案給計劃生產訂單和計劃採購訂單添加一個SalesLineRecId欄位,讓其記錄SalesLine的RecId
Time of Update: 2018-12-06
有時候使用者需要在原有的右鍵菜單上添加幾個選項,有時候需要刪掉一些不需要的項,也就是要建立自己的右鍵菜單。由於右鍵菜單的實現是由AX核心管理的,我們看不到它的具體實現(至少我沒找到實現的代碼),我們能做的就是通過控制項的showContextMenu來實現自己的想法。本文以CustTable為例,建立一個Form,資料來源為CustTable,關注的欄位為CustAccount.需求一:去掉右鍵菜單重載CustAccount的showContextMenu方法即可:public int show
Time of Update: 2018-12-06
本文僅供AX從業者和愛好者交流之用,由於原文著作權問題,請勿轉載。Axd嚮導的目的是簡化,自動化開發和維護Axd和Ax<Table>類,降低由於Ax<Table>與Ax底層的表不同步而導致錯誤的風險。嚮導通過去除開發的機械部分來確定人工分析和編碼的任務,可以將精力集中在商務邏輯上。嚮導的互動過程9-7所示圖9-7.Axd嚮導必須提供一個已存在的Query做為輸入,為Axd類指定名稱和標籤,選擇要產生的操作(read, readList, create,
Time of Update: 2018-12-06
項目實施的過程中,在完成企業流程的梳理後,需要針對不同的角色賦許可權類比運行。AX賦許可權著實是一件費神勞力的事,在賦完權後需要進行測試,可以用運行方式來指定程式的運行賬戶,由於許可權的設定要反覆測試,如果每次都需要輸入使用者名稱和密碼實在累人。可以用Runas程式來啟動AX並設定記住其密碼,這樣就不用每次都輸入使用者名稱和密碼了。語句如下:runas /savecred /user:user@domain.com AXClient程式這樣第一次運行時需要輸入user的密碼,第二次運行時就不需要
Time of Update: 2018-12-06
鬱悶了一天,終於解決了一個問題,再次強烈鄙視Dynamics
Time of Update: 2018-12-06
以前看過幾本微軟的Inside系列的書,Inside C#之類,不過看英文原版還是第一次,呵呵。感覺這本Inside AX基本上順承了Inside系列的風格,不止封面類似。這本書一共分為三個部分:Part I A Tour of the Development Environment(1-5章)Part II Developing with Microsoft Dynamics AX(6-9章)Part III Under the
Time of Update: 2018-12-06
以前做EP的時候用的是WSS2.0,安裝和配置都蠻順利,剛剛嘗試著安裝了一把WSS3.0,被扔進大觀園,做了把劉姥姥。。。。。。WSS2.0安裝的時候有兩個選擇項,典型安裝和伺服器陣列,從字面意思上也比較好理解,典型安裝適用於沒有安裝SQL Server的情境,安裝程式會幫忙裝一個MSDE,儲存Sharepoint的資料庫。到了WSS3.0安裝程式就有點讓人費解了,首先讓你選擇基本還是進階,如果選擇了基本,啥提示都沒有,然後就是一頓狂裝,讓人丈二和尚摸不著頭腦,選擇進階,就會有兩個選項供你選擇,
Time of Update: 2018-12-06
本文僅供AX從業者和愛好者討論學習之用,由於原文著作權問題請勿轉載並期待您的指正.接上文這種方式比下面代碼顯示的一條條記錄插入有很大的效率提升,它們達到的效果是一樣的static void CopySizes(Args _args){ InventSize inventSizeTo; InventSize inventSizeFrom; InventTable inventTable; ; ttsbegin; while select itemId from
Time of Update: 2018-12-06
有兩個會計恒等式靜態恒等式:資產=負債+所有者權益動態恒等式:利潤=收入-費用兩者可以湊成一個資產=負債+所有者權益+收入-費用國外的軟體多採用表結法,也就是說在出報表的時候根據收入和費用動態計算出本年利潤,並不產生憑證,而國內的軟體採用賬結法,即要產生如下兩張憑證: 1.結轉收入Dr:各種銷售收入 Cr:本年利潤 銷售退回2. 結轉費用 Dr:本年利潤
Time of Update: 2018-12-06
本文僅供AX從業者和愛好者學習討論之用,由於原文著作權問題,請勿轉載。RecordInsertList和RecordSortedList類當向一個表中插入多條記錄時,除了採用批操作符,DynamicsAX還允許使用RecordInsertList和RecordSortedList類。當準備插入記錄時,DynamicsAX應用運行時將多條記錄打包到一個包中並將其發送到資料庫。資料庫為包中的每一條記錄執行單獨的插入語句。下面的例子顯示了這一點,在這個例子中,執行個體化了一個RecordInsertL
Time of Update: 2018-12-06
由於原著作著作權問題,看到本文的哥們請勿轉載,本文僅供與各位AX從業者和愛好者學習討論之用,期待您的賜教.事務效能(譯註:正如前面提到的,Transaction Performance在這裡翻譯成事務效能並不能很好地表達這一節所記述的內容,不過我沒想到更好的翻譯方式)前一節我們把注意力放在了限制用戶端和伺服器之間的通訊量上,但是這兩層只涉及到了DyanmicsAX應用運行三層中的兩層。最後一層是資料庫層,最佳化伺服器層和資料庫層的資料包交換也很重要.本節將注意力放在最佳化應用邏輯執行的事務部分(
Time of Update: 2018-12-06
中國人使用報表很喜歡每一行都要加個底線,說是怕看錯了行,財務就更好玩了,每個欄位都要用框框框起來,不知道是不是看到被框起來有種安全感,哈哈。也許老外不太容易看錯了行,AX的報表都是沒有底線的,更不用說框起來了。防止使用者看錯了行而加個底線這個要求還算合理,雖然俺看到很多線就有些發暈。在AX加底線是比較容易實現的,加框框就有些痛苦。這裡只說一下加底線的做法,我的做法如下:1.建立一個ProgrammableSection,在其中添加一個Shape控制項,其屬性設定如下:
Time of Update: 2018-12-06
今天看到設定規則這個地方,在設定本地規則時,驗證類型選擇 公式,在公式設定選項卡的類型處選擇
Time of Update: 2018-12-06
本文僅供AX從業者和愛好者學習交流之用,由於原文著作權問題,請勿轉載預設情況下,行級許可權和列級許可權應用於所有的資料擷取。但是,在某些情況下,忽略行級許可權和列級許可權是至關重要的,當轉送發票時。在這種情況下,忽略產生文檔的人的許可權設定使客戶看到與實際過賬相同的資料是最基本的。下面的例子展現了如何重寫預設的行為。protected void unpackPropertyBag(AifPropertyBag _aifPropertyBag){ AxdSendContext axdSend
Time of Update: 2018-12-06
MBSCN網友Jedison提了一個關於設定Excel列格式的問題,俺寫了個例子貼到了MBSCN上,在這裡再貼一下,便於以後尋找。static void StyleTest(Args _args){ #Excel #define.AlignModeText('Align_Text') #define.AlignModeNumber('Align_Number') #define.FileName('d:\\StyleTest.xls') #define.Text('
Time of Update: 2018-12-06
本文僅供AX從業者和愛好者學習交流之用,由於原文著作權問題,請勿轉載AX允許對應用模組,多使用者類型,語言,伺服器技術 ,Web架構,資料庫日誌,記錄集安全,開發工具,運行時執行和整合架構進行許可。系統元素和應用模組被許可碼鎖定,必須有許可鍵接觸鎖定。解鎖許可碼是配置AX系統的起始步驟,因為許可碼引用了與物理功能關聯的配置鍵。通過許可資訊表單解鎖許可碼,11-3所示,該表單可以通過管理->設定->系統->許可證資訊
Time of Update: 2018-12-06
對於已收到發票但貨還未到的採購單,需要先在 應收賬款->日誌->發票->發票登記薄