IT/PLM시스템

[PLM] Aras Innovator의 AML이란?

개발자 두더지 2021. 2. 12. 01:40
728x90

 이번에 Aras Innovator이용하는 프로젝트에 참여하게 됐는데 한국에서는 PLM시스템으로 Aras Innovator을 사용하는 경우가 거의 없는 듯하다. 검색해보면 한국어 자료는 거의 0건에 가까웠다. 일본에서는 Aras Innovator를 커스터마이즈해서 PLM시스템을 만들어서 의뢰한 제조기업에 납품하는 경우가 꽤 있어서 그런지 일본어 자료는 어느정도 존재했다. 따라서 공부겸 당분간 일본 Aras Innovator 공식 블로그에 올라 온 튜토리얼의 시리즈 일부(특히 내가 필요한 자료 위주)를 번역하여 업로드할 계획이다.

 

1. AML이란

 AML이란 "Aras Markup Language"의 약어로 Aras의 도자적인 XML 스키마(문법과 비슷한 것)이다. 아이템의 검색이나 신신규 작성, 갱신, 특수한 비즈니스 로직의 실행 (예: 지정한 부품을 사용하고 있는 제품 정보를 일괄 취득) 등, Innovator 서버에 대해 명령(커맨드)는 모두 이 AML으로 지정(리퀘스트)되어 있다. 리퀘스트에 대해서 서버로부터 되돌아오는 답변(리스펀스)도 동일하게 AML이다. 

 Aras Innovator의 표준 Web클라이언트뿐만 아니라, 다른 툴(예를 들어, 배치 로드나 CAD커넥터 등)을 이용한 경우도 동일하게 AML을 사용해 조작을 하는 것이 가능하다.

 AML의 사용법을 이해해두면, Aras Innovator의 유저 인터페이스(폼이나 그리드 등)을 이용하여 1건씩 데이터 조작할 수 있을 뿐만 아니라, 일괄 처리하거나 프로그램을 이용하여 커스터마이즈 할 때 등에 유용하다.

 

2. AML 실행 툴의 사용법

AML의 실행을 간단히 하고 싶은 경우, Aras에는 "NASH"라는 툴을 표준 기능으로 제공하고 있으므로 이 기능을 사용하면 된다. NASH를 기동하기 위해서는 http://서버명/Innovator서버명령어(alias)/Client/scripts/nash.aspx 에 액세스하면 된다. 예를 들면, http://localhost/InnovatorServer/Client/scripts/nash.aspx과 같다.

1) 유저 ID (ユーザID):패스워드, 데이터베이스 등을 지정하여 "Login"버튼을 누른다.

2) Action란에 "ApplyAML"가 선택되어 있다는 것을 확인한다.

3) XML란에 AML을 입력하고 "Submit" 버튼을 누른다.

4) ShowXml 버튼을 눌러 결과를 확인한다.

 

 

3. AML에서 이용하는 "태그"

그럼 구체적으로 AML을 어떻게 쓰면 될지에 대해 설명하도록 하겠다. 먼저 "태그"부터 알아보자. AML은 이 "태그"를 사용하여 굉장히 심플하게 작성할 수 있다. 태그에는 크게 아래와 같이 네 가지 종류가 있다.

1) <AML> 태그

2) <Item> 태그

3) <Relationships> 태그

4) <property> 태그

1) <AML> 태그

 먼저, <AML> 태그에 대해 살펴보자. 이 태그가 감싸고 있는 범위가 AML로써 서버쪽에 일괄 처리되는 부분이다. 이 <AML>태그는 AML문의 처음과 마지막에 기재된다.

<AML> 태그가 감싸져있는 범위가 하나의 트랜잭션으로써 일괄 처리된다. 예를 들어, 10건의 부품 데이터를 신규작성하는 AML을 실행했으나, 8건째에 실패한 경우, 모두 롤백되므로 결론적으로 성공했던 1~7건도 등록되지 않게 된다.

 또한, AML(XML)에서는 대문자와 소문자가 구분된다. <AML>태그의 "AML"은 모두 대문자임을 잊지말자.

2) <Item>태그

 계속해서 두 번째, <Item>태그에서는 각각의 아이템의 처리에 대해 작성한다. <Item>태그에는 3개의 중요한 속성이 있다.

■ type - 아이템의 아이템명 (필수)

■ id - 아이템의 ID (유니크한 글자 수32개의 문자열)

■ action - 아이템에 적용된 메소드의 명칭

다른 다양한 속성도 있으므로, 자세한 것은 Programmer's Guide를 참고하길 바란다.

 <Item>태그의 제일 앞 글자는 대문자 "I(아이)"임에 주의하자.

3) <Relationships> 태그

 세 번째 <Relationships> 태그에 대해 알아보자. 기본적으로 Aras의 각 아이템은 다른 아이템과의 관계를 맺을 수 있다. <Relationships>태그는 릴레이션십 아이템을 정리하기 위한 태그이다.

 아래에서는 부품 아이템과 그 BOM의 릴레이션십을 검색하는 AML의 예이다.

<Relationships>태그도 첫 글자가 대문자"R"이다.

4) <property>태그

 마지막으로 <property> 태그이다. 이 태그는 <property>라고 작성하는 것이 아닌 구체적인 속명을 작성하고 <Item>태그 바로 아래에 위치한다.

 예를 들어, 아이템 타입 "Part"에는 "item_number", "name", "description", "cost"등의 속성이 있으며, 이러한 속성명이 AML의 태그가 된다.

 아래는 부품을 등록하기 위한 AML의 한 예이다.

 속성명은 반드시 소문자이여야하므로, 모든 <property>태그는 소문자이다.


참고자료

community.aras.com/ja-jp/b/blog/posts/aras-innovator-23-aml

 

728x90