Orchestration
기존 Lambda 또는 Java로 개발해야 했던 워크플로우를 Configuration으로 코딩 없이 개발할 수 있게 구성된 Tool Set이다. Batch Service와 동일하게 App 환경에서만 Config가 가능하며, Dev/Sandbox/Prod 환경은 프로비저닝 된 데이터로만 사용이 가능하다.
TIP
Service Orchestration은 Account 대표 계정에서만 Config가 가능하다. (Tenant 계정은 메뉴 접근 시, Unauthorized 에러 발생)
Orchestration List
생성한 Orchestration을 확인하거나 새롭게 생성하기 위한 팝업화면들을 호출할 수 있는 리스트 화면이다. 리스트는 Config View와 Activate View로 나누어져 있으며, 각 리스트는 환경에 따라 활성화된다. 각 리스트에 대한 상세 설명은 아래와 같다.
List 구성
Config View
작성된 모든 Orchestration이 표시되는 영역으로, Config View 에서만 생성, 수정, 삭제, 활성화 여부 설정, Designer 호출이 가능하다.
[그림1. Config View]
- Service Orchestration List : 생성한 Orchestration 목록이 표시되는 영역이다. 해당 리스트에서 Orchestration 선택 시 하단에 해당 Orchestration의 Step과 Step의 Property, Parameter, Mapping Field, Task Condition 등이 표시된다.
- Button
- Deploy History : Service Orchestration Deploy 이력을 확인할 수 있는 팝업화면이 호출된다.
- New : 신규 Orchestration 생성을 위한 팝업 화면이 호출된다.
- Delete : 선택한 Orchestration을 삭제한다.
- Step : Orchestration List에서 Orchestration 선택했을 시에 표시되는 영역으로, 선택한 항목의 Orchestration Designer에서 생성한 Step들이 List로 표시된다.
- Property, Parameter, Mapping Field, Task Condition: Step List에서 Step을 선택했을 시에 표시되는 영역으로, 선택한 항목의 Property, Parameter, Mapping Field, Task Condition이 List로 표시된다.
Active View
Config View에서 작성한 Orchestration 중 활성화된 Orchestration만 표시되는 영역으로, 해당 영역에서는 Orchestration 생성 또는 삭제, 수정이 불가하고 활성화되어 있는 Orchestration 확인과 활성화, 비활성화 여부 설정만 가능하다.
[그림1. Active View]
- Service Orchestration List: 현재 활성화 되어있는 Orchestration 목록이 표시되는 영역이다. 해당 리스트에서 Orchestration 선택 시 하단에 해당 Orchestration의 Step과 Execution History가 표시된다.
- Button
- Deploy History: Service Orchestration Deploy 이력을 확인할 수 있는 팝업화면이 호출된다.
- Manual Execute: 생성한 Orchestration이 정상적으로 작동하는지 확인해 볼 수 있도록 Trigger Parameter를 입력하여 수동 실행해 볼 수 있는 팝업화면이 호출된다.
- Step, Execution History
- Step : Orchestration List에서 Orchestration 선택했을 시에 표시되는 영역으로, 선택한 항목의 Orchestration Designer에서 생성한 Step들이 List로 표시된다.
- Execution History : 해당 Orchestration의 실행 결과와 이력이 List로 표시된다.
- Property, Parameter, Mapping Field, Task Condition: Step List에서 Step을 선택했을 시에 표시되는 영역으로, 선택한 항목의 Property, Parameter, Mapping Field, Task Condition이 List로 표시된다
신규 팝업 화면 구성
[그림1. Orchestration
New Pop up
화면]
- Name, Description : 해당 Orchestration의 이름과 설명을 작성하는 항목이다.
- Trigger Type, Sub Type : Orchestration이 동작하게 하는 Trigger의 Type을 설정하는 항목으로, Trigger Type에 따라 설정 가능한 Sub Type이 다르게 표시된다.
INFO
Trigger Type에 따라 설정 가능한 Sub Type 항목과 설명은 아래 표 참고
Component
Trigger Type
Sub Type
Description
Component
Select
설정한 Component에서 데이터 조회 (Select) 요청이 들어왔을 경우 Service Orchestration 수행
Component
Insert
설정한 Component에서 데이터 신규 저장 (Insert) 요청이 들어왔을 경우 Service Orchestration 수행
Component
Update
설정한 Component에서 데이터 수정 (Update) 요청이 들어왔을 경우 Service Orchestration 수행
Component
Delete
설정한 Component에서 데이터 삭제 (Delete) 요청이 들어왔을 경우 Service Orchestration 수행
TIP
Trigger Type - Sub Type별 동일 Component는 1개씩만 생성 가능하다.
Ex. Component - Select 타입으로TEST Component
를 Target으로 생성하였다면, 추후 Component를 Trigger Type으로 지정 시 Sub Type은 - Insert / Update / Delete 타입만 지정 가능하다.Business Object
Trigger Type
Sub Type
Description
Business Object
Select
설정한 Business Object에서 데이터 조회 (Select) 요청이 들어왔을 경우 Service Orchestration 수행
Business Object
Insert
설정한 Business Object에서 데이터 신규 저장 (Insert) 요청이 들어왔을 경우 Service Orchestration 수행
Business Object
Update
설정한 Business Object에서 데이터 수정 (Update) 요청이 들어왔을 경우 Service Orchestration 수행
Business Object
Delete
설정한 Business Object에서 데이터 삭제 (Delete) 요청이 들어왔을 경우 Service Orchestration 수행
TIP
Trigger Type - Sub Type별 동일 Business는 각 1개씩만 생성 가능하다.
Ex. Business Object - Select 타입으로TEST BO
를 Target으로 생성하였다면, 추후 Business Object을 Trigger Type으로 지정 시 Sub Type은 - Insert / Update / Delete 타입만 지정 가능하다.Platform
Trigger Type
Sub Type
Description
Platform
REST API
설정한 Integration Definition에서 REST API 요청이 들어왔을 경우 Service Orchestration 수행
Platform
Procedure
설정한 Integration Definition에서 Procedure 요청이 들어왔을 경우 Service Orchestration 수행
Platform
Select
Open API를 통해 설정한 Business Object로 데이터 조회 (Select) 요청이 들어왔을 경우 Service Orchestration 수행
Platform
Insert
Open API를 통해 설정한 Business Object로 데이터 신규 저장 (Insert) 요청이 들어왔을 경우 Service Orchestration 수행
Platform
Update
Open API를 통해 설정한 Business Object로 데이터 수정 (Update) 요청이 들어왔을 경우 Service Orchestration 수행
Platform
Delete
Open API를 통해 설정한 Business Object로 데이터 삭제 (Delete) 요청이 들어왔을 경우 Service Orchestration 수행
Automation
Trigger Type
Sub Type
Description
Automation
Create Auth
Application의 권한 메뉴에서 신규 권한을 생성할 경우 Service Orchestration 수행
Automation
Edit Auth
Application의 권한 메뉴에서 기존 권한을 수정할경우 Service Orchestration 수행
Automation
Apply Auth
Application의 권한 메뉴에서 권한을 특정 Menu/Screen/Component/Control에 적용할 경우 Service Orchestration 수행
Automation
Release Auth
Application의 권한 메뉴에서 권한을 특정 Menu/Screen/Component/Control에 해제할 경우 Service Orchestration 수행
Automation
Create User
Application의 사용자 메뉴에서 신규 사용자를 생성할 경우 Service Orchestration 수행
Automation
Edit User
Application의 사용자 메뉴에서 사용자 정보를 수정할 경우 Service Orchestration 수행
Automation
Login
Application에 접속하기 위해 로그인을 수행할 경우 Service Orchestration 수행
Automation
Password Init
Application에서 비밀번호를 초기화 하였을 경우 Service Orchestration 수행
Automation
Edit Password Policy
Application의 비밀번호 정책 메뉴에서 정책 정보를 수정할 경우 Service Orchestration 수행
Schedule
Trigger Type
Sub Type
Description
Schedule
-
Studio에서 컨피그한 Cron Expression에 따라 Service Orchestration 수행
Schedule
CRON
Service Orchestration을 실행하기 위한 실행주기를 Cron 표현식으로 작성 (Amazon EventBridge Cron expressions reference)
Schedule
Scheduling Active Status
Service Orchestration에 대해 설정한 Scheduling의 활성 여부
Schedule
Allow Overlap Execute
Service Orchestration에 대해 설정한 중첩 실행 허용 여부
- Active Status : 생성한 Orchestration의 활성화 여부를 작성하는 항목이다.
- Target : Trigger를 발생시킬 Target을 설정하는 항목으로, Trigger Type이 Component, Business Object, Platform 일 경우에만 표시된다.
- Trigger Condition : Orchestration이 설정한 Trigger 상황에 맞게 실행되기 위한 Trigger Condition 조건식을 설정하는 항목으로, Trigger Type이 Schedule인 경우를 제외하고 반드시 설정해야 한다.
[그림2. Trigger Condition Expression 팝업 화면 _Basic]
Trigger Condition 조건식을 설정하는 화면으로 직접 조건식을 작성하는 화면이다. (Ex. 작성예시)
- 조건식 작성영역 : 사용자가 직접 조건문을 입력할 수 있는 영역이다.
- Button
- Control : Control Look up화면이 호출되며. 선택 시 1번 영역에 입력된다.
- Function : 조건식을 구성할 수 있는 Function들의 Lookup 화면이 호출된다. 선택 시 1번 영역에 입력된다.
[그림3. Trigger Condition Expression 팝업 화면 _Advanced]
Trigger Condition 조건식을 설정하는 화면으로 직접 조건식을 작성해야 하는 Basic과 달리 입력 필드로 선택하여 조건식을 완성할 수 있는 화면이다. 해당 영역에서 조건식을 완성한 후 Basic 탭으로 넘어가면 완성된 조건식이 표시된다.
- 조건식을 연결할 때의 상황을 정의하는 항목이다. 입력할 수 있는 항목은 AND와 OR가 있다.
- 하위 조건들을 부정식으로 설정하는 항목이다. 부정식으로 작성하고자 할 때 NOT을 선택한다.
- Type : Trigger Type과 Sub Type에 따라 설정할 수 있는 Trigger Condition Type이다.
INFO
Trigger Type과 Sub Type에 따라 설정 가능한 Trigger Condition Type과 설명은 아래 표 참고
Common (모든 Trigger의 Sub Type에 표시되는 항목)
Trigger Type
Sub Type
Trigger Condition Type
Trigger Condition Type Description
Common
-
accountId
Tenant SYS_ID
Common
-
userId
User SYS_ID
Common
-
envCode
환경코드 정보
(Ex. Dev, App, Sandbox, Prod)
Common
-
lang
언어팩 정보 (Ex. en-US, ko-KR)
Common
-
timezone
타임존 정보 (Ex. 0, -32400)
Component
Trigger Type
Sub Type
Trigger Condition Type
Trigger Condition Type Description
Component
Common
screenName
사용자가 Config한 Screen Name
Component
Common
screenUrl
사용자가 Config한 Screen URL
(Ex. /home)
Component
Common
componentTemplate
Component Template명
(Ex. vQSToolbarList)
Component
Select
searchData
검색 대상인 Business Object Field명
Component
Insert
saveData
신규 추가 대상인 Business Object Field명
Component
Update
beforeData
수정되기전 데이터의 Business Object Field명
Component
Update
afterData
수정되는 데이터의 Business Object Field명
Component
Delete
beforeData
삭제 대상인 Row의 특정 Business Object Field명
Business Object
Trigger Type
Sub Type
Trigger Condition Type
Trigger Condition Type Description
Business Object
Common
screenName
사용자가 Config한 Screen Name
Business Object
Common
screenUrl
사용자가 Config한 Screen URL
(Ex. /home)
Business Object
Common
componentTemplate
Component Template명
(Ex. vQSToolbarList)
Business Object
Select
searchData
검색 대상인 Business Object Field
Business Object
Insert
saveData
신규 추가 대상인 Business Object Field
Business Object
Update
beforeData
수정되기 전의 Business Object Field
Business Object
Update
afterData
수정되는 Business Object Field
Business Object
Delete
beforeData
삭제 대상인 Row의 특정 Business Object Field
Platform
Trigger Type
Sub Type
Trigger Condition Type
Trigger Condition Type Description
Platform
Procedure
screenName
사용자가 Config한 Screen Name
Platform
Procedure
screenUrl
사용자가 Config한 Screen URL
(Ex. /home)
Platform
Procedure
Integration Definition Parameter
Procedure Input Parameter 설정 값
Platform
REST API
screenName
사용자가 Config한 Screen Name
Platform
REST API
screenUrl
사용자가 Config한 Screen URL
(Ex. /home)
Platform
REST API
Integration Definition Parameter
REST API Input Parameter 설정 값
Platform
Select
busobjectid
조회 대상인 Business Object SYS_ID
Platform
Select
searchSpec
조회 대상인 Business Object Field
Platform
Insert
busobjectid
신규 추가 대상인 Business Object SYS_ID
Platform
Insert
saveData
신규 추가 대상인 Business Object Field
Platform
Update
busobjectid
수정 대상인 Business Object SYS_ID
Platform
Update
saveData
수정 대상인 Business Object Field
Platform
Delete
busobjectid
삭제 대상인 Business Object SYS_ID
Platform
Delete
beforeData
삭제 대상인 Row의 특정 Business Object Field
Automation
Trigger Type
Sub Type
Trigger Condition Type
Trigger Condition Type Description
Automation
Create User
userLoginId
신규 사용자 생성 시 입력한 Login ID
Automation
Create User
userEmail
신규 사용자 생성 시 입력한 E-Mail 주소
Automation
Create User
userStatus
신규 사용자 생성 시 선택한 계정 상태 값 (활성, 비활성)
Automation
Create User
userMfaFlag
신규 사용자 생성 시 선택한 MFA 상태 값 (YES, NO)
Automation
Edit User
userName
사용자 정보 수정 시, 입력한 사용자 이름
Automation
Edit User
userDesc
사용자 정보 수정 시, 입력한 사용자 설명
Automation
Edit User
userLoginId
사용자 정보 수정 시, 입력한 사용자 로그인 ID
Automation
Edit User
userEmail
사용자 정보 수정 시, 입력한 사용자 E-Mail 주소
Automation
Edit User
userPhoneNumber
사용자 정보 수정 시, 입력한 사용자 전화번호
Automation
Edit User
userCountry
사용자 정보 수정 시, 입력한 사용자 국가
Automation
Edit User
authName
사용자 정보 수정 시, 추가한 권한명
Automation
Edit User
addAuthId
사용자 정보 수정 시, 추가한 권한의 SYS_ID
Automation
Edit User
removeAuthId
사용자 정보 수정 시, 삭제한 권한의 SYS_ID
Automation
Password Init
loginId
비밀번호 찾기(초기화) 시, 입력한 로그인 ID
Automation
Password Init
email
비밀번호 찾기(초기화) 시, 입력한 이메일 주소
Automation
Password Init
platformType
비밀번호 찾기(초기화) 시, 호출된 PlatformType (Ex. Mobile, Web)
Automation
Password Init
exception
비밀번호 찾기(초기화) 시, 발생한 에러의 종류(Ex. userInactiveException, InvalidRequestException)
Automation
Edit Password Policy
policyId
비밀번호 정책의 SYS_ID
Automation
Edit Password Policy
policyActiveFlag
비밀번호 정책의 활성/비활성 여부 (Ex. "1", "0")
Automation
Edit Password Policy
policyItemId
비밀번호 정책 아이템의 SYS_ID
Automation
Edit Password Policy
policyItemActiveFlag
비밀번호 정책 아이템의 활성/비활성 여부 (Ex. "1", "0")
Automation
Login
username
로그인한 사용자의 Login ID
Automation
Login
osVersion
사용자가 로그인 한 운영체제(OS) 버전 (Mobile Application만 해당)
Automation
Login
osType
사용자가 로그인 한 운영체제(OS) 유형 (Mobile Application만 해당)
Automation
Login
deviceModel
사용자가 로그인 한 기기 모델 유형 (Mobile Application만 해당)
Automation
Login
status
로그인 결과 (Ex. True, false)
Automation
Login
exception
로그인 시, 발생한 에러의 종류
(Ex.UserCheckException, PasswordChangeException, invalidPublicKeyException, UserInactiveException, TemporaryPasswordExpiredException 등)
Automation
Create Auth
saveData
신규 생성 시 입력한 권한의 이름 (Ex. [$.saveData.AUT_NAME])
Automation
Create Auth
saveData
신규 생성 시 입력한 권한의 비고 (Ex. [$.saveData.AUT_DESC])
Automation
Edit Auth
saveData
기존 권한 데이터를 수정 시 입력한 권한의 이름 (Ex. [$.saveData.AUT_NAME])
Automation
Edit Auth
saveData
기존 권한 데이터를 수정 시 입력한 권한의 비고 (Ex. [$.saveData.AUT_DESC])
Automation
Edit Auth
authId
기존 권한 데이터의 SYS_ID
Automation
Apply Auth
authId
Menu, Screen, Component, Control에 적용한 권한의 SYS_ID
Automation
Release Auth
authId
Menu, Screen, Component, Control에 적용 해제한 권한의 SYS_ID
TIP
Automation Type은 각 Sub Type 당 단 1개의 Orchestration만 생성 가능하다.
- Target : SearchData와 같이 추가적으로 대상을 지정해야 하는 항목들을 Trigger Condition Type으로 설정했을 때 표시되는 항목으로, 돋보기 아이콘을 선택 시 호출되는 Lookup에서 선택하여 입력한다.
- Operator : 비교식을 만드는 조건들을 선택하는 영역이다.
- Data Type :
- Source Type :
- Value : 비교식으로 비교할 대상의 값을 입력하는 영역이다.
- Add : 값 선택 시 조건식 추가
신규 Orchestration 생성 방법
[그림1. Orchestration
New
Pop up 화면]
- Object Explorer에서 Service Admin 메뉴 선택 후 Service Orchestration 메뉴에 진입한다.
- Config View 탭 선택 후 리스트 상단
New
버튼을 선택한다. - 생성하고자 하는 Orchestration의 이름과 설명을 작성한다.
- Orchestration을 수행시킬 Trigger Type을 선택하고, 그에 따른 Sub Type, Target, Trigger Condition을 입력한다.
INFO
Trigger Type에 따른 각 영역에 대한 상세는 신규 팝업 화면 구성 챕터를 참고한다.
- 정보를 모두 입력한 후 하단
Save
버튼을 눌러 저장한다. - Orchestration List에 생성한 항목이 정상 생성되었는지 확인한 후 Context Menu를 호출하여 Orchestration Designer 실행, 상세 내용을 작성한다.
INFO
Orchestration Designer에 대한 상세 설명은 1.2 Orchestration Designer 챕터를 참고한다.
WARNING
동일한 Business Object를 기반으로 Component, Business Object Trigger를 각각 실행조건 없이 생성하였을 경우 중복 실행될 수 있습니다.
TIP
Service Orchestration의 생성 제한은 Application당 기본 50개로, 생성 제한 개수는 R&D에 요청 시 확장 가능합니다.
Orchestration Designer
워크플로우 개발은 등록된 Orchestration 목록에서 오른쪽 마우스를 클릭했을 때 표시되는 Context menu에서 Orchestration Designer를 호출하여 Drag & Drop 방식으로 개발할 수 있다.
[그림1. Orchestration Designer 호출]
Designer 구성
[그림1 Orchestration Designer의 영역]
- Canvas : 팝업화면 왼쪽 Task, Flow Group에서 Task 또는 Flow를 선택하고 배치하여 개발하려는 Workflow를 설정하는 영역이다.
- Designer Toolbar : Canvas에서 작성된 Task 또는 Flow를 선택, 확대, 축소, 위치 변경, 정렬 등의 기능을 이용하여 제어할 수 있는 Icon Menu를 제공한다.
- Task, Flow : Orchestration Designer에서 사용되는 Object의 집합이다. 사용할 Task 또는 Flow를 Drag & Drop으로 Canvas 영역에 배치하여 Orchestration을 설정한다.
- 기능 버튼
- Validation : 생성한 항목들을 저장 전 정상적으로 생성되었는지 확인하는 버튼이다. 버튼 선택 시 Validation이 실행되고 실패 시 오류가 발생한 부분을 확인할 수 있는 팝업 화면 호출버튼이 표시된다.
[그림1.Validation 결과에 따른 버튼 표시 형태]
- 성공 : Validation 체크가 성공했을 때 버튼의 형태
- 실패 : Validation 체크가 실패했을 때 버튼의 형태로, 괄호 속 숫자가 발생한 에러의 숫자이다. 해당 숫자를 선택 시 3번 에러 목록 팝업화면이 호출된다.
- 에러 목록 팝업 화면 : 에러가 난 항목을 리스트로 보여주는 팝업 화면이다.
- 버튼 선택 시 해당 항목이 위치한 곳으로 포커스가 이동한다.
- Save : 생성한 항목들을 저장하는 버튼으로, Validation이 완료되어야 활성화된다.
- 팝업 화면 버튼
- 최소화 최대화 버튼 : 버튼 선택 시 Orchestration Designer 팝업 화면 사이즈가 최소화, 최대화된다.
- 닫기 버튼 : Orchestration Designer 팝업 화면이 닫힌다.
Canvas
워크플로우를 설정하거나, 설정한 Task 또는 Flow의 구성을 표시하는 영역이다. Canvas에 배치한 Task, Flow는 선택 시 Canvas 영역 우측에 호출되는 Attribute와 Parameters에서 상세 설정을 한다.
[그림1. Task, Flow 배치가 배치된 Canvas]
TIP
상세 설정을 하는 Attribute와 Parameters는 Attribute와 Parameters 챕터를 참고한다.
Designer Toolbar
Canvas에 배치된 Task, Flow의 확대, 축소, 위치 변경, 정렬 등을 기능을 제공하는 메뉴들이 배치된 Toolbar이다.
[그림1. Canvas에 배치 되어있는 Toolbar]
- 확대 : Canvas 영역을 확대한다.
- 축소 : Canvas 영역을 축소한다.
- 이동 : 마우스를 Drag하여 Canvas 내에서 위치를 이동한다. 버튼 선택 없이 Space bar를 누른 상태에서 마우스 Drag하여 이동 가능하다.
- 선택 : Canvas 내에 배치된 Task, Flow 등을 선택한다.
- 화면 맞춤 : Canvas 내에 배치된 Task, Flow 등을 한 화면에서 볼 수 있도록 Canvas 사이즈를 조절한다.
- 정렬 : Canvas 내에 배치된 Task, Flow 등을 정렬한다.
Task, Flow
워크플로우를 구성하는 Task, Flow를 표시하는 영역이다. 해당 영역에서 원하는 Task 또는 Flow를 선택 후 Drag, Canvas 영역에 Drop하여 사용한다.
Canvas 영역에 배치 되어있는 Task, Flow에는 색상이 표시되어 한 눈에 어떤 워크플로우 인지할 수 있다.
[그림1. Task, Flow Group]
Task
- Application Lambda : VSCode Extension에서 생성한 Application Lambda를 실행하는 Step Type
- Long-term Service : VSCode Extension에서 생성한 Long-term Service(AWS ECS Fargate)를 실행하는 Step Type
- Procedure : Application Database를 기반으로 존재하는 DB Procedure를 실행하는 Step type
- Business Object : 특정 Business Object에 CRUD를 하기 위한 Step Type
- Rest API : Axios를 기반으로, GET, POST, PUT, DELETE 메서드 호출 가능한 Step Type
INFO
Request, Response Body 자료형은 JSON만 사용 가능하다.
Flow
Wait : 특정 시간(ISO 8601 형식의 Timestamp 값)또는 지정된 시간(초 단위)만큼 실행을 중단시키는 Step Type
Choice : Payload, Static, Environment의 설정한 값을 기반으로 조건을 판단하여 Step 실행 분기를 선택하는 Step Type
TIP
Choice Flow를 통한 재귀 반복 수행을 할 경우 반복 제한 횟수는 기본 5회로, 반복 제한 횟수는 R&D에 요청 시 확장 가능합니다.
Pass : 해당 Step을 통과하기 위해 사용되는 Step Type
Parallel : Parallel Flow 하위의 Step들을 병렬 실행시키기 위하여 사용되는 Step Type
Loop : 특정 횟수만큼 내부의 Step들을 동시에 실행시키는 Step Type
TIP
순차적으로 실행되는 것이 아닌, 반복 횟수만큼 동시 실행됨
[그림2. Canvas에 배치된 Task, Flow]
- 배치된 Task 또는 Flow의 Type이 표시되는 영역이다.
- Attribute에서 입력한 'Name'이 표시되는 영역이다.
- Attribute에서 설정한 Input Parameter, Output Parameter의 개수가 표시되는 영역이다.
Attribute
Canvas영역에 배치한 Task, Flow의 Attribute와 Parameters 항목을 추가할 수 있는 영역이다. 해당 영역은 선택한 Task 또는 Flow의 Type에 따라 Attribute를 구성하는 항목이 다르게 표시된다.
속성에서 지정해야 하는 각 항목은 아래 각 영역에 대한 설명에 작성되어 있는 표를 참고한다.
[그림1. Attribute 영역 예시]
- Attribute : 각 Task 또는 Flow의 속성을 정의. 기본으로 이름과 설명을 정의하고 각 Task, Flow에 따라 정의가 필요한 Property들이 표시된다.
::: info
각 Task, Flow에 따른 Property 목록과 설명은 아래 표 참고
:::
Parent Type (Sub Type) | Child Type | Description |
Application Lambda | Target Lambda Service | Application Lambda Task를 실행하기 위한 대상 속성값 |
Long-term Service | Target Long-Term Service | Long-Term Service Task를 실행하기 위한 대상 속성값 |
Procedure | Data Source | Procedure Task를 실행하기 위한 Data Source 속성값 |
Procedure | Procedure Name | Procedure Task를 실행하기 위한 Procedure 이름 속성값 |
Rest API | Method | Rest API Task를 실행하기 위한 API Method 속성값 (Get, Post, Put, Delete) |
Rest API | URL | Rest API Task를 실행하기 위한 URL 속성값 |
Business Object | Target Business Object | Business Object Task를 실행하기 위한 대상 속성값 |
Business Object | Type | Business Object Task를 실행하기 위한 대상 타입 값 (Select, Insert, Delete, Update) |
Business Object | Unmask Flag | Business Object Task (Select Type)에서 조회 대상 데이터의 마스킹 해제 여부 속성값 (기본 값: N/A) |
Wait | Value Acquisition Type | Wait Flow를 수행하기 위해 Wait Value을 가져오기 위한 속성값 (Payload Seconds, Payload Timestamp, Static Seconds, Static Timestamp) |
Wait | Refer Key | Value Acquisition Type이 Payload Seconds 또는 Payload Timestamp일 경우 해당 속성값을 가져오기 위한 Payload Key 속성 값 |
Wait | Wait Second | Value Acquisition Type이 Static Seconds 또는 Static Timestamp일 경우 해당 속성 값을 가져오기 위한 속성값 |
Loop | Iteration Acquisition Type | Loop Flow를 수행하기 위해 Iteration Limit Value을 가져오기 위한 속성값 (Payload, Static, Environment) |
Loop | Iteration Type | Iteration Acquisition Type이 Static일 경우의 해당 속성값 |
Loop | Refer Key | Iteration Acquisition Type이 Payload일 경우의 해당 속성값을 가져오기 위한 Payload Key 속성 값 |
Loop | Expression | Iteration Acquisition Type이 Environment일 경우의 해당 속성 값을 가져오기 위한 환경변수 표현 값 |
- Input Parameters : 각 Task 또는 Flow에서 사용하기 위한 요청 파라미터를 정의.
INFO
각 Task, Flow에 대한 요청 파라미터 상세는 아래 표 참고
- Output Parameters : 수행된 Task 또는 Flow의 결과값 등의 응답 데이터를 정의
INFO
각 Task, Flow에 대한 응답 데이터의 상세는 아래 표 참고
Parent Type | Child Type | Description | Source Type |
Application Lambda | Input Parameter | Application Lambda Task에서 사용하기 위한 요청 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Application Lambda | Output Parameter | 수정된 Application Lambda Task의 결과 값 등의 응답 데이터를 정의 | Return Data, Static, Environment |
Long-Term Service | Input Parameter | Long-term Service Task에서 사용하기 위한 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Long-Term Service | Output Parameter | 수정된 Long-term Service Task의 결과 값 등의 응답 데이터를 정의 | Return Data, Static, Environment |
Procedure | Input Parameter | Procedure Task에서 사용하기 위한 요청 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Procedure | Output Parameter | 수정된 Procedure Task에서 사용하기 위한 요청 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Rest API | Header Parameter | Rest API Task에서 사용하기 위한 API Header 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Rest API | Payload Parameter | Rest API Task에서 사용하기 위한 Payload(Body)를 정의 | Static, Environment, Payload, Global Task Parameter |
Rest API | Output Parameter | 수행된 Rest API Task의 결과 값 등의 응답 데이터를 정의 | Return Data, Static, Environment |
Business Object | Input Parameter | Business Object Task에서 사용하기 위한 요청 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Business Object | Field Mapping | Business Object에서 실행한 요청 파라미터의 데이터를 Business Object Field에 매핑하기 위한 정보를 정의 | |
Business Object | Condition | Business Object Task에서 Select 타입으로 실행할 경우 조회하려는 데이터의 조건식을 추가하기 위한 정보를 정의 | |
Business Object | Output Parameter | 수행된 Business Object Task의 결과 값 등의 응답 데이터를 정의 | Return Data, Static, Environment |
Choice | Rule | Choice Flow에서 생성한 분기가 특정 조건을 만족할 때 수행되도록 설정하는 Rule을 정의 | |
Pass | Pass Parameter | Pass Flow에서 다음 Step으로 넘어갈 경우 기존 파라미터 정보를 넘겨주기 위한 데이터를 정의 | |
Parallel | Input Parameter | Parallel Flow에서 Child Step에게 넘겨주기 위한 파라미터를 정의 | Static, Environment, Payload, Global Task Parameter |
Parallel | Output Parameter | 수정된 Child Step의 결과 값 또는 Parelle Flow의 Input 파라미터 등의 응답 데이터를 정의 | Child Payload, Static, Environment |
Loop | Input Parameter | Loop Flow에서 사용하기 위한 요청 파라미터를 정의 | Payload, Static, Environment, Iteration Index |
Loop | Output Parameter | 수정된 Child Step의 결과 값 또는 Loop Flow의 Input 파라미터 등의 응답 데이터를 정의 | Child Payload, Static, Environment |
TIP
Choice의 Rule은 Choice 하위에 배치된 Task의 수만큼 표시된다.
Parameters
Attribute 영역에서 정의한 Parameter들의 상세를 지정하는 영역으로 Parameter 버튼을 선택하면 Attribute 좌측에 팝업으로 호출된다.
[그림1. Start의 Trigger Parameter]
- Canvas 영역에 배치 되어있는
Start
선택 시 표시되는 항목으로 해당 항목만 Attribute 영역에 표시된다. +
버튼을 눌러 Parameter를 추가할 수 있는 영역으로, Orchestration의 Type과 Sub Type에 따라 다르게 표시된다.INFO
각 Type과 Sub Type에 따라 설정 가능한 Trigger Parameter와 설명은 아래 표 참고
TIP
Trigger BO, Component, Platform(api, procedure)의 전달 가능한 변수, 단일변수, array 변수 지정 가능하며, 이 후 다른 task에서 input 변수 지정하여 직접 사용 가능하다. 단, object 형태의 변수는 전달은 가능하나 object내의 field를 지정하여 사용하기 위해서는 추가 프로그램 개발 후 첫번째 task 지정이 필요하다.
- Common
Trigger Type | Sub Type | Trigger Parameter | Data Type | Trigger Parameter Description |
Common | applicationId | String | 호출된 Lambda의 요청 전문 중 Application의 SYS_ID | |
Common | accountId | String | 호출된 Lambda의 요청 전문 중 Account의 SYS_ID | |
Common | userId | String | 호출된 Lambda의 요청 전문 중 사용자의 SYS_ID |
- Component
Trigger Type | Sub Type | Trigger Parameter | Data Type | Trigger Parameter Description |
Component | Select | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Component | Select | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Component | Select | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Component | Select | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Component | Select | searchData | Object | 호출된 Lambda의 요청 전문 중 검색 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Select | sortData | Object | 호출된 Lambda의 요청 전문 중 정렬 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Select | pageIndex | Integer | 호출된 Lambda의 요청 전문 중 페이징 인덱스 정보 |
Component | Select | pageSize | Integer | 호출된 Lambda의 요청 전문 중 페이징 사이즈 정보 |
Component | Select | linkId | String | |
Component | Select | linkValue | String | |
Component | Select | objectProp | Object | |
Component | Select | consoleFlag | Boolean | 호출된 Lambda의 요청 전문 중 콘솔 여부 플래그 (Studio: true / Web: false) |
Component | Select | afterData | Array[Object] | 호출된 Lambda의 응답 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Select | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Component | Insert | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Component | Insert | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Component | Insert | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Component | Insert | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Component | Insert | beforeData | - | 빈 배열 형식 (Ex. []) |
Component | Insert | afterData | Array[Object] | 호출된 Lambda의 요청 전문 중 저장 요청 데이터 (실제 Business Object Field명으로 치환됨) |
Component | Insert | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Component | Update | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Component | Update | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Component | Update | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Component | Update | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Component | Update | beforeData | Array[Object] | 수정 요청이 들어온 Row의 원본 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Update | afterData | Array[Object] | 수정 요청이 들어온 Row의 수정 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Update | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Component | Delete | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Component | Delete | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Component | Delete | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Component | Delete | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Component | Delete | sysIds | Array[String] | 호출된 Lambda의 삭제 요청 SYS_ID 배열 데이터 |
Component | Delete | beforeData | Array[Object] | 삭제 요청이 들어온 Row의 원본 데이터 (실제 Business Object 필드명으로 치환됨) |
Component | Delete | afterData | - | 빈 배열 형식 (Ex. []) |
Component | Delete | Authorization | String | 호출된 Lambda의 Cognito ID Token |
- Business Object
Trigger Type | Sub Type | Trigger Parameter | Data Type | Trigger Parameter Description |
Business Object | Select | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Business Object | Select | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Business Object | Select | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Business Object | Select | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Business Object | Select | searchData | Object | 호출된 Lambda의 요청 전문 중 검색 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Select | sortData | Object | 호출된 Lambda의 요청 전문 중 정렬 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Select | pageIndex | Integer | 호출된 Lambda의 요청 전문 중 페이징 인덱스 정보 |
Business Object | Select | pageSize | Integer | 호출된 Lambda의 요청 전문 중 페이징 사이즈 정보 |
Business Object | Select | linkId | String | |
Business Object | Select | linkValue | String | |
Business Object | Select | objectProp | Object | |
Business Object | Select | consoleFlag | Boolean | 호출된 Lambda의 요청 전문 중 콘솔 여부 플래그 (Studio: true / Web: false) |
Business Object | Select | afterData | Array[Object] | 호출된 Lambda의 응답 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Select | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Business Object | Insert | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Business Object | Insert | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Business Object | Insert | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Business Object | Insert | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Business Object | Insert | beforeData | - | 빈 배열 형식 (Ex. []) |
Business Object | Insert | afterData | Array[Object] | 호출된 Lambda의 요청 전문 중 저장 요청 데이터 (실제 Business Object Field명으로 치환됨) |
Business Object | Insert | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Business Object | Update | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Business Object | Update | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Business Object | Update | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Business Object | Update | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Business Object | Update | beforeData | Array[Object] | 수정 요청이 들어온 Row의 원본 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Update | afterData | Array[Object] | 수정 요청이 들어온 Row의 수정 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Update | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Business Object | Delete | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Business Object | Delete | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Business Object | Delete | sysIds | Array[String] | 호출된 Lambda의 삭제 요청 SYS_ID 배열 데이터 |
Business Object | Delete | beforeData | Array[Object] | 삭제 요청이 들어온 Row의 원본 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Delete | afterData | Array[Object] | 호출된 Lambda의 응답 데이터 (실제 Business Object 필드명으로 치환됨) |
Business Object | Delete | Authorization | String | 호출된 Lambda의 Cognito ID Token |
- Platform
Trigger Type | Sub Type | Trigger Parameter | Data Type | Trigger Parameter Description |
Platform | Rest API | interfaceId | String | 호출된 Lambda의 요청 전문 중 수행된 Integration Definition의 SYS_ID |
Platform | Rest API | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Platform | Rest API | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Platform | Rest API | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Rest API | pageSize | Integer | 호출된 Lambda의 요청 전문 중 페이징 사이즈 정보 |
Platform | Rest API | pageIndex | Integer | 호출된 Lambda의 요청 전문 중 페이징 인덱스 정보 |
Platform | Rest API | Lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Platform | Rest API | afterData | String | 호출된 Lambda의 요청 전문에 포함된 Integration Definition Parameter 정보 (Key:Value 형식) |
Platform | Rest API | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Platform | Procedure | interfaceId | String | 호출된 Lambda의 요청 전문 중 수행된 Integration Definition의 SYS_ID |
Platform | Procedure | componentId | String | 호출된 Lambda의 요청 전문 중 Component의 SYS_ID |
Platform | Procedure | component | String | 호출된 Lambda의 요청 전문 중 Component의 Template 종류 (Ex. vQSToolbarList) |
Platform | Procedure | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Procedure | pageSize | Integer | 호출된 Lambda의 요청 전문 중 페이징 사이즈 정보 |
Platform | Procedure | pageIndex | Integer | 호출된 Lambda의 요청 전문 중 페이징 인덱스 정보 |
Platform | Procedure | lang | String | 호출된 Lambda의 요청 전문 중 언어팩 정보 (Ex. "en-US", "ko-KR") |
Platform | Procedure | interfaceParam | String | 호출된 Lambda의 요청 전문에 포함된 Integration Definition Parameter 정보 (Key:Value 형식) |
Platform | Procedure | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Platform | Select | busobjectid | String | 호출된 Lambda의 요청 전문 중 Business Object SYS_ID |
Platform | Select | pageindex | Integer | 호출된 Lambda의 요청 전문 중 페이징 인덱스 정보 |
Platform | Select | pagesize | Integer | 호출된 Lambda의 요청 전문 중 페이징 사이즈 정보 |
Platform | Select | searchspecs | Integer | 호출된 Lambda의 요청 전문 중 검색 데이터 |
Platform | Select | searchexpr | String | 호출된 Lambda의 요청 전문 중 검색 표현식 |
Platform | Select | sortspecs | Array[Object] | 호출된 Lambda의 요청 전문 중 정렬 데이터 |
Platform | Select | sortexpr | String | 호출된 Lambda의 요청 전문 중 정렬 표현식 |
Platform | Select | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Select | calsmaskcheck | Boolean | 호출된 Lambda의 요청 전문 중 마스킹 데이터 해제 여부 플래그 (Ex. true / false) |
Platform | Select | afterData | Array[Object] | 호출된 Lambda의 응답 데이터 |
Platform | Insert | busobjectid | String | 호출된 Lambda의 요청 전문 중 Business Object SYS_ID |
Platform | Insert | addobjs | Array[Object] | 호출된 Lambda의 신규 저장 요청 데이터 배열 객체 |
Platform | Insert | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Insert | afterData | Array[Object] | 호출된 Lambda의 신규 저장 요청 데이터 배열 객체 |
Platform | Update | busobjectid | String | 호출된 Lambda의 요청 전문 중 Business Object SYS_ID |
Platform | Update | updateobjs | Array[Object] | 호출된 Lambda의 수정 요청 데이터 배열 객체 |
Platform | Update | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Update | beforeData | Array[Object] | 수정 요청이 들어온 Row의 원본 데이터 |
Platform | Update | afterData | Array[Object] | 수정 요청이 들어온 Row의 수정 데이터 |
Platform | Delete | busobjectid | String | 호출된 Lambda의 요청 전문 중 Business Object SYS_ID |
Platform | Delete | removeids | Årray[String] | 호출된 Lambda의 삭제 요청 SYS_ID 배열 데이터 |
Platform | Delete | timezone | Integer | 호출된 Lambda의 요청 전문 중 Timezone 정보 (Ex. -32400) |
Platform | Delete | beforeData | Array[Object] | 삭제 요청이 들어온 Row의 원본 데이터 |
Platform | Delete | afterData | 빈 배열 형식 (Ex. []) |
- Automation
Trigger Type | Sub Type | Trigger Parameter | Data Type | Trigger Parameter Description |
Automation | Create User | userName | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 이름 |
Automation | Create User | userDesc | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 설명 |
Automation | Create User | userLoginId | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 Login ID |
Automation | Create User | userEmail | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 E-Mail |
Automation | Create User | userPhoneNumber | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 전화번호 |
Automation | Create User | userLockFlag | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 잠금 플래그 (Default: "0") |
Automation | Create User | userMfaFlag | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 잠금 플래그 (Default: "0") |
Automation | Create User | userStatus | String | 호출된 Lambda의 요청 전문 중 신규 생성 사용자 잠금 플래그 (Default: "1") |
Automation | Create User | callSvc | String | 호출된 Lambda의 요청 전문의 Action Type (Ex. createUser / EditUser) |
Automation | Create User | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Edit User | userName | String | 호출된 Lambda의 요청 전문 중 수정한 사용자 이름 |
Automation | Edit User | userDesc | String | 호출된 Lambda의 요청 전문 중 수정한 사용자 설명 |
Automation | Edit User | userLoginId | String | 호출된 Lambda의 요청 전문 중 사용자 Login ID |
Automation | Edit User | userEmail | String | 호출된 Lambda의 요청 전문 중 사용자 E-Mail |
Automation | Edit User | userPhoneNumber | String | 호출된 Lambda의 요청 전문 중 수정한 사용자 전화번호 |
Automation | Edit User | userCountry | String | 호출된 Lambda의 요청 전문 중 수정한 사용자 국가 정보 |
Automation | Edit User | authName | String | 호출된 Lambda의 요청 전문 중 수정한 사용자 권한 명 |
Automation | Edit User | addAuthId | String | 호출된 Lambda의 요청 전문 중 사용자에게 추가할 권한 SYS_ID |
Automation | Edit User | removeAuthId | String | 호출된 Lambda의 요청 전문 중 사용자에 추가되어 있는 권한을 삭제할 SYS_ID |
Automation | Edit User | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Password Init | String | 호출된 Lambda의 요청 전문 중 비밀번호를 초기화 할 E-Mail 주소 | |
Automation | Password Init | platformType | String | 호출된 Lambda의 요청 전문 중 플랫폼 타입 (Ex. Web / Mobile) |
Automation | Edit Password Policy | saveData | Object | 호출된 Lambda의 요청 전문 중 |
Automation | Edit Password Policy | policyId | String | 호출된 Lambda의 요청 전문 중 |
Automation | Edit Password Policy | serviceType | String | 호출된 Lambda의 요청 전문 중 |
Automation | Edit Password Policy | sysId | String | 호출된 Lambda의 요청 전문 중 |
Automation | Edit Password Policy | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Login | username | String | 호출된 Lambda의 요청 전문 중 사용자의 Login ID |
Automation | Login | platformType | String | 호출된 Lambda의 요청 전문 중 플랫폼 타입 (Ex. Web / Mobile) |
Automation | Login | application | String | 호출된 Lambda의 요청 전문 중 어플리케이션 코드명 (Ex. demo / openga ) |
Automation | Login | osVersion | String | 호출된 Lambda의 요청 전문 중 운영체제(OS) 버전 (Mobile Application만 해당) |
Automation | Login | osType | String | 호출된 Lambda의 요청 전문 중 운영체제(OS) 유형 (Mobile Application만 해당) |
Automation | Login | deviceModel | String | 호출된 Lambda의 요청 전문 중 기기 모델 유형 (Mobile Application만 해당) |
Automation | Login | appMasterId | String | 호출된 Lambda의 요청 전문 중 Mobile Application의 식별 SYS_ID (Mobile Application만 해당) |
Automation | Login | currentVersion | String | 호출된 Lambda의 요청 전문 중 Mobile Application의 버전 정보 (Mobile Application만 해당) |
Automation | Create Auth | saveData | Object | 호출된 Lambda의 요청 전문 중 신규 저장 권한 정보 데이터 |
Automation | Create Auth | afterData | Object | 호출된 Lambda의 요청 전문 중 신규 저장 권한 정보 데이터 및 채번된 SYS_ID |
Automation | Create Auth | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Edit Auth | saveData | Object | 호출된 Lambda의 요청 전문 중 수정 대상 권한의 수정 데이터 |
Automation | Edit Auth | afterData | Object | 호출된 Lambda의 요청 전문 중 수정 대상 권한의 수정 데이터 및 권한의 SYS_ID |
Automation | Edit Auth | authId | String | 호출된 Lambda의 요청 전문 중 수정 대상 권한의 SYS_ID |
Automation | Edit Auth | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Apply Auth | authId | String | 호출된 Lambda의 요청 전문 중 권한의 SYS_ID |
Automation | Apply Auth | objectIds | Array[String] | 호출된 Lambda의 요청 전문 중 권한을 적용 할 Menu / Screen / Component / Control의 SYS_ID |
Automation | Apply Auth | Authorization | String | 호출된 Lambda의 Cognito ID Token |
Automation | Release Auth | authId | String | 호출된 Lambda의 요청 전문 중 권한의 SYS_ID |
Automation | Release Auth | objectIds | Array[String] | 호출된 Lambda의 요청 전문 중 권한을 적용 해제할 Menu / Screen / Component / Control의 SYS_ID |
Automation | Release Auth | Authorization | String | 호출된 Lambda의 Cognito ID Token |
[그림2. 각 Task, Flow의 Parameter 팝업 예시]
- Parameter를 구성하는 항목들은 각 Task, Flow 별로 다르게 표시된다.
INFO
각 Task, Flow의 파라미터에 따라 설정 가능한 Source Type과 Target Type은 아래 표 참고
- Trigger (Start)
Category | Parameter Type | Source Type | Target Type |
Trigger (Start) | Trigger Parameter | Trigger Data | Payload |
Trigger (Start) | Trigger Parameter | Static | Payload |
Trigger (Start) | Trigger Parameter | Environment | Payload |
Trigger (Start) | Trigger Parameter | Trigger Data | Global Task Parameter |
Trigger (Start) | Trigger Parameter | Static | Global Task Parameter |
Trigger (Start) | Trigger Parameter | Environment | Global Task Parameter |
- Application Lambda
Category | Parameter Type | Source Type | Target Type |
Application Lambda | Input Parameter | Static | Param Data |
Application Lambda | Input Parameter | Environment | Param Data |
Application Lambda | Input Parameter | Global Task Parameter | Param Data |
Application Lambda | Input Parameter | Payload | Param Data |
Application Lambda | Output Parameter | Return Data | Payload |
Application Lambda | Output Parameter | Static | Payload |
Application Lambda | Output Parameter | Environment | Payload |
Application Lambda | Output Parameter | Return Data | Global Task Parameter |
Application Lambda | Output Parameter | Static | Global Task Parameter |
Application Lambda | Output Parameter | Environment | Global Task Parameter |
- Long-term Service
Category | Parameter Type | Source Type | Target Type |
Long-Term Service | Input Parameter | Static | Param Data |
Long-Term Service | Input Parameter | Environment | Param Data |
Long-Term Service | Input Parameter | Global Task Parameter | Param Data |
Long-Term Service | Input Parameter | Payload | Param Data |
Long-Term Service | Output Parameter | Return Data | Payload |
Long-Term Service | Output Parameter | Static | Payload |
Long-Term Service | Output Parameter | Environment | Payload |
Long-Term Service | Output Parameter | Return Data | Global Task Parameter |
Long-Term Service | Output Parameter | Static | Global Task Parameter |
Long-Term Service | Output Parameter | Environment | Global Task Parameter |
- Procedure
Category | Parameter Type | Source Type | Target Type |
Procedure | Input Parameter | Static | Param Data |
Procedure | Input Parameter | Environment | Param Data |
Procedure | Input Parameter | Global Task Parameter | Param Data |
Procedure | Input Parameter | Payload | Param Data |
Procedure | Output Parameter | Return Data | Payload |
Procedure | Output Parameter | Static | Payload |
Procedure | Output Parameter | Environment | Payload |
Procedure | Output Parameter | Return Data | Global Task Parameter |
Procedure | Output Parameter | Static | Global Task Parameter |
Procedure | Output Parameter | Environment | Global Task Parameter |
- Rest API
Category | Parameter Type | Source Type | Target Type |
Rest API | Header Parameter | Static | Header |
Rest API | Header Parameter | Environment | Header |
Rest API | Header Parameter | Global Task Parameter | Header |
Rest API | Header Parameter | Payload | Header |
Rest API | Payload Parameter | Static | Param Data |
Rest API | Payload Parameter | Environment | Param Data |
Rest API | Payload Parameter | Global Task Parameter | Param Data |
Rest API | Payload Parameter | Payload | Param Data |
Rest API | Output Parameter | Return Data | Payload |
Rest API | Output Parameter | Static | Payload |
Rest API | Output Parameter | Environment | Payload |
Rest API | Output Parameter | Return Data | Global Task Parameter |
Rest API | Output Parameter | Static | Global Task Parameter |
Rest API | Output Parameter | Environment | Global Task Parameter |
- Business Object
Category | Parameter Type | Source Type | Target Type |
Business Object | Input Parameter | Static | Param Data |
Business Object | Input Parameter | Environment | Param Data |
Business Object | Input Parameter | Global Task Parameter | Param Data |
Business Object | Input Parameter | Payload | Param Data |
Business Object | Output Parameter | Return Data | Payload |
Business Object | Output Parameter | Static | Payload |
Business Object | Output Parameter | Environment | Payload |
Business Object | Output Parameter | Return Data | Global Task Parameter |
Business Object | Output Parameter | Static | Global Task Parameter |
Business Object | Output Parameter | Environment | Global Task Parameter |
Business Object | Condition | Search spec Item | - |
Business Object | Condition | Sort spec Item | - |
Business Object | Condition | Search Expression | - |
Business Object | Condition | Sort Expression | - |
Business Object | Condition | Page size | - |
Business Object | Condition | Page offset | - |
- Choice
Category | Parameter Type | Source Type | Target Type |
Choice | Rule | Payload | - |
Choice | Rule | Return Data | - |
- Pass
Category | Parameter Type | Source Type | Target Type |
Pass | Input Parameter | Static | Child Payload |
Pass | Input Parameter | Environment | Child Payload |
Pass | Input Parameter | Global Task Parameter | Child Payload |
- Parallel
Category | Parameter Type | Source Type | Target Type |
Parallel | Input Parameter | Payload | Child Payload |
Parallel | Input Parameter | Iteration Index | Child Payload |
Parallel | Output Parameter | Child Payload | Payload |
Parallel | Output Parameter | Static | Payload |
Parallel | Output Parameter | Environment | Payload |
Parallel | Pass Parameter | Payload | Payload |
- Loop
Category | Parameter Type | Source Type | Target Type |
Loop | Pass Parameter | Static | Payload |
Loop | Pass Parameter | Environment | Payload |
Loop | Input Parameter | Payload | Child Payload |
Loop | Input Parameter | Static | Child Payload |
Loop | Input Parameter | Environment | Child Payload |
Loop | Output Parameter | Child Payload | Payload |
Loop | Output Parameter | Static | Payload |
Loop | Output Parameter | Environment | Payload |
Designer 사용 방법
워크플로우 개발은 등록된 Orchestration 목록에서 오른쪽 마우스를 클릭했을 때 표시되는 Context menu에서 Orchestration Designer를 호출하여 Drag & Drop 방식으로 개발할 수 있다. [그림1. Orchestration Designer 호출]
- Object Explorer에서 Service Admin 메뉴 선택 후 Service Orchestration 메뉴에 진입한다.
- Config View 탭 선택 후 리스트에서 Orchestration Designer를 호출할 항목에 마우스 우클릭 후 호출되는 Context 메뉴에서
Open Designer
버튼을 선택한다. - Orchestration Designer가 호출되면 우측 Task, Flow Group에서 원하는 Task 또는 Flow를 Drag하여 Canvas 영역에 배치한다.
TIP
Canvas에 배치된 Task 또는 Flow는 선택 후 Drag & Drop으로 위치 변경이 가능하다. 이때, Flow 중 Parallel과 Loop와 같이 하위 항목이 있는 경우 Parallel 또는 Loop 영역을 선택과 함께 Ctrl
Key를 누르면 하위 항목까지 그룹화 되어 이동한다.
[그림1. Loop 선택 후 Ctrl
Key를 눌러 그룹화가 활성화된 예시]
TIP
Canvas 상에서 Parallel 또는 Loop을 이동할 때 하위 항목이 함께 선택되지 않아 따로 배치되어 있더라도 실제 Server단에서는 하위 항목으로 그룹화 되어있다. (Designer Toolbar에서 정렬
버튼을 눌러 정렬 실행 시 다시 정상적으로 배치된다.)
배치한 Task, 또는 Flow를 클릭하면 좌측에 Attribute 영역이 표시되며, 해당 영역에서 배치한 Task 또는 Flow의 Attribute와 Parameter 등 상세 항목들을 설정한다.
INFO
Attribute와 Parameter 입력 값들의 상세는 Attribute와 Parameters 챕터를 참고한다.
원하는 Task와 Flow를 모두 배치한 후 우측 상단 Validation 버튼을 눌러 저장 전 Validation 체크를 실행한다.
TIP
Validation을 실행 후 오류가 발생하지 않아야 Save 버튼이 활성화된다.
Save하여 작성한 내용을 최종 저장한다.