Dynamics NAV 客戶資料卡新增銷售員名稱,讓使用者選擇銷售員代碼後在畫面中顯示銷售員名稱

在 Dynamics NAV 中,客戶資料卡預設可指定銷售員代碼,但不會再畫面中顯示銷售員名稱,本文說明如何在客戶資料卡新增銷售員名稱欄位,當選擇銷售人員代碼時在畫面中顯示對應的銷售員名稱。

 

簡介

在 Dynamics NAV 中,客戶資料卡預設可指定銷售員代碼,但不會再畫面中顯示銷售員名稱,本文說明如何在客戶資料卡新增銷售員名稱欄位,當選擇銷售人員代碼時在畫面中顯示對應的銷售員名稱。

image

步驟

開啟 Microsoft Dynamics NAV Development Environment 並選擇資料庫,開啟 Object Designer,切換至 Table,選擇 18 Customer 資料表按 Design,新增欄位

  • Field Name: Salesperson Name
  • Data Type: Text
  • Length: 50

image

選擇上方 Properties 屬性按鈕,在 CaptonML 輸入英文和中文對應的顯示值。

image

接著撰寫 Salesperson Code Trigger 時的相關代碼,選擇 Salesperson Code 欄位後,按 C/AL Code。

image

在 Salesperson Code - OnValidate() 新增 C/AL Locals 區域變數。

image

新增區域變數

Name: SpRec

DataType: Record

SubType: Salesperson\Purchaser

image

在 Salesperson Code - OnValidate() 撰寫代碼,先將 Salesperson Name 欄位設定為空白,當 Salesperson Code 不等於空白時,從 Salesperson/Purchaser 資料表,透過 Key 值與 Salesperson Code 比對取得 Name,並且指定給 Salesperson Name。

 


"Salesperson Name" := '';
IF "Salesperson Code" <> '' THEN BEGIN
  SpRec.GET("Salesperson Code");
  "Salesperson Name" := SpRec.Name;
END;

 

image

在 Salesperson Code - OnLookup() 中,新增 C/AL Locals 區域變數

Name: SpRec

DataType: Record

SubType: Salesperson\Purchaser

image

在 Salesperson Code - OnLookup() 中撰寫代碼,當 PAGE.RUNMODAL 為 LookupOK 時做 VALIDATE。

 


IF PAGE.RUNMODAL(0,SpRec) = ACTION::LookupOK THEN
  VALIDATE("Salesperson Code",SpRec.Code);

image

Customer 資料表修改後,接著將 Salesperson Name 加入 Page 中,切換至 Page,選擇 21 Customer Card,移至 Salesperson Code 下一列,選擇 Field Menu。

image

選擇 Salesperson Name 按 OK 將欄位加入。

image

將欄位加入表單後,進行 Compile。

image

執行 Microsoft Dynamics NAV,開啟客戶資料卡,此時選擇銷售員代碼後,於畫面中顯示銷售員名稱。

image

 

相關參考與連結

PAGE.RUNMODAL Function