iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

ArasPLM開發分享系列 第 3

[Day3]Aras後端開發與使用C#(Method)

昨天介紹的AML在Aras當中的Method模組也有提供伺服器端C#或VB的程式語言支援,這邊介紹的C#所撰寫的語法都是來自於Aras內建的函式庫IOM,最後會利用C#的.apply()轉成AML後送往資料庫

  • 新增一個Method,上方下拉選單選擇Server-side / C#,之後我們就可以開始撰寫程式囉

  • Aras系統中Part更變前的資料清單

GET

  1. C#的get寫法與AML邏輯相似,要注意的是這邊要getProperty欄位屬性值時必須寫在apply(生成AML)之後,這邊為了方便看到get後的結果所以在後面下了一個錯誤視窗的code,可以在畫面中看到想要印出來的訊息,這個其實很方便,有時候在有bug時可以在程式中設一個中斷點,去分區塊找尋錯誤並debug
Innovator inn = this.getInnovator();
Item Part = inn.newItem("Part", "get");
Part.setAttribute("select", "item_number,name");
Part.setAttribute("where", "[Part].item_number='Test'");
Part = Part.apply();

string test  = Part.getProperty("name");  
  
return inn.newError(test);

return this;

  1. 寫好code後在上方的Actions中點選Run Server Method,就能看到錯誤訊息中get出Part(Test)的name屬性欄位值(Aras1)

  2. 彈跳視窗顯示結果

ADD

  1. C#的add寫法與AML邏輯相似,在add完後可以看到Aras中多了一筆Part(Test2),name屬性欄位值(PLM2)也有相對應的產生
Innovator inn = this.getInnovator();
Item Part = inn.newItem("Part", "add");
Part.setProperty("item_number","Test2");
Part.setProperty("name","PLM2");
Part = Part.apply();

return this;

EDIT

  1. C#的edit寫法與AML邏輯相似,要注意的是要修改前必須要先where篩選,edit完後可以看到Part(Test2)的name屬性欄位已經從PLM2被修改成PLM3
Innovator inn = this.getInnovator();
Item Part = inn.newItem("Part", "edit");
Part.setAttribute("where", "[Part].item_number='Test2'");
Part.setProperty("name","PLM3");
Part = Part.apply();

return this;


上一篇
[Day2]Aras後端開發與使用AML
下一篇
[Day4]簡易MVC基礎介紹
系列文
ArasPLM開發分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言