이 장에서는 SAP RFC Invoke를 이용한 모델 개발하기절에서 만든 모델을 사용하여 Nexacro 어플리케이션을 개발하는 방법에 대해 설명합니다. Nexacro 어플리케이션은 Nexacro Studio 툴을 이용하여 개발합니다.
이번 장은 사용자가 Nexacro 및 Nexacro Studio에 익숙하다는 전제 하에 작성 되었습니다. 따라서, 기본적인 Nexacro 어플리케이션 개발 단계에 대한 상세정보는 설명하지 않습니다.
이 장에서 설명하는 Nexacro Studio를 이용한 X-UP 모델을 사용한 어플리케이션 개발단계는 다음과 같습니다.
TypeDefinition-Service 등록하기
모델 리스트와 인터페이스 가져오기
모델 호출 스크립트 작성하기
TypeDefinition-Service 등록하기
아래와 같이 TypeDefinition에서 Service를 추가합니다.
Field Name | Field Value |
---|---|
Prefix | XUP_SERVER 모델 호출 스크립트 코드에서 사용되는 Prefix를 입력합니다. |
Type | bs X-UP 모델을 호출하기 위해서는 반드시 bs 타입을 선택해야 합니다. |
URL | http://localhost:8080/xup/ X-UP 서버 URL을 입력합니다. |
ServiceList | ServiceInfoServiceServlet.do?service=serviceInfo&target=modelList 서비스 리스트 호출 url을 입력합니다. |
DatasetLayout | ServiceInfoServiceServlet.do?service=serviceInfo&target=modelLayout 입출력 정보를 획득하기 위한 url을 입력합니다. |
모델 리스트와 인터페이스 가져오기
Project Explorer에서 해당 Service를 Refresh하여 X-UP 서버의 모델 리스트를 가져옵니다.
가져온 모델 리스트는 도메인별 모델로 표시됩니다.
도메인이란 모델을 구분하기 위한 네임스페이스로 X-UP Builder의 프로젝트 이름으로 설정됩니다. 즉, X-UP 프로젝트 하나가 모델 도메인 하나에 해당됩니다.
모델 리스트에서 'INVOKE_SAP_RFC' 모델을 Refresh하여 인터페이스 정보(입출력 정보)를 가져옵니다.
모델 호출 스크립트 작성하기
Project Explorer의 모델의 인터페이스 정보에서 입출력 데이터셋을 Invisible Objects 에디터로 드래그 앤 드롭 합니다.
Script 에디터에서 아래와 같이 모델 호출 코드를 작성합니다.
this.btnSearch_onclick = function(obj:Button, e:nexacro.ClickEventInfo) { var svcparam = "domain=" + "NexawebInc" // Domain name + "&model=" + "INVOKE_SAP_RFC" // Model name + "&format=" + "xml" + "&version=" + "nexacro"; var svcUrl = "XUP_SERVER::FrontControllerServlet.do" + "?service=xupservice&" + svcparam; // Model Input parameters var strInDatasets = ""; var strOutDatasets = "FLIGHT_LIST1=FLIGHT_LIST1"; var strArgument = ""; this.transaction("searchFlightList", svcUrl, strInDatasets, strOutDatasets , strArgument, "fn_Transaction_Callback"); } this.fn_Transaction_Callback = function(strSvcID, nErrorCode, strErrorMag) { if(nErrorCode < 0) { this.alert(strErrorMag); return; } if(strSvcID == "searchFlightList") { trace(this.FLIGHT_LIST1.saveXML()); } }
Nexacro에서 X-UP 모델을 호출하기 위한 정보는 아래와 같습니다.
서비스 URL:
http://[host]:[port]/xup/FrontControllerServlet.do?service=xupservice&domain=[도메인이름]
&model=[모델이름]&format=xml&version=nexacro
입력 파라메터 : 각 모델에서 요구하는 입력 파라메터를 GET 또는 POST방식으로 전달
Quick View를 실행하여 결과를 확인합니다.