질문이 있으십니까?

기본 컨텐츠 및 사용자가 직접 참여하여 만들어진 다양한 내용을 검색합니다.

ERP화면을 바로 그룹웨어 전자결재 상신화면으로 보여지게 하는 방법 (workflow.create.document)

API 소개

ERP 시스템과 그룹웨어 전자결재 시스템을 연동하는 요구는 상당히 많았습니다. 기존 1세대 때는, 데이타베이스(DB)를 공유하여, 서로 그곳에 쓰고, 갖어가고, 업데이트하는 구조였습니다. 이 기종간의 결합이니, 보안의 문제도 있고, 개발비고 드는 문제가 있었습니다. 그러나, 이제 ERP에서 보는 화면을 그대로 전자결재를 태우실 수 있습니다. 서로 DB를 열어야하는 부담감도 없습니다. API로 개발하여 공개하는 이유는, 어떤 ERP든 그룹웨어 측에서는 별도의 개발비가 발생하지 않습니다. 더불어, 연동되어지는 전자결재 양식이 많더라도 전혀 부담감이 없습니다.

1. 사전준비

1-1. 그룹웨어 사용자ID와 ERP 사용자ID 연결(매핑)

본 작업은 관리자만 할 수 있는 기능입니다. 그룹웨어 관리자 화면 -> 사용자계정관리에 보시면 ERP 연동ID를 등록하는 부분이 있습니다. ERP에서 사용하는 ID를 입력하여, 상호 정보를 매핑하여 주십시요.

1-2. 전자결재 양식을 생성

양식(Form)을 기반으로 운용되어지는 전자결재시스템입니다. ERP와 연동되어질 전자결재 문서양식을 먼저 만드시기 바랍니다. 이유는, 여러가지 유형을 하나의 결재문서로 하게되면, 나중에 양식별로, 문서번호를 채번하거나, 관리하기 힘들기 때문입니다.
  1. 질문경로 /mashup/flowform/doc01_trans?argTimeStamp=@docid
  2. 결과경로 /mashup/flowform/doc01_view?argTimeStamp=@docid
  3. 승인명령 /mashup/flowform/doc01_ok?argTimeStamp=@docid
  4. 반려명령 /mashup/flowform/doc01_reject?argTimeStamp=@docid
  5. 삭제명령 /mashup/flowform/doc01_del?argTimeStamp=@docid
  6. 통신방식 PostMessage방식

1-3. AuthKey 요청

결과로 제공해 드리는, 1회용 보안 URL은 아무나 호출할 수 없습니다. 미리 AuthKey 인증키를 발급 받으셔야합니다. AuthKey 발급은 무료이며, 호출 빈도에 따라, 재발급 될 수 있습니다. 계속 사용하실 수 있는 무한한 키는 아닙니다.
  1. 고객사 도메인 그룹웨어에서 개설된 도메인이 알려주셔야 합니다. ekp. gw. mobile.등 host를 제외한 순수 개설된 도메인이여야 합니다.
  2. 호출 Referer API를 호출하는 장소, 즉 서버나 IP 주소 또는 URL등을 알려주셔야합니다. 해당 API는 아무곳에서나 호출하실 수 없으며, 사전에 등록된 장소에서만 호출이 가능한 방식입니다.

1-4. 회신 콜백URL 등록 요청

아래 workflow.create.document API를 호출하실 때, 넘겨주시는 콜백URL이 있습니다. 2개 있는데, 이때 입력하는 것은 도메인을 제외한 URI 부분이며, 이곳에 사전에 도메인 부분을 등록 요청해야 합니다. 즉, ERP에서 사용할 API 서버의 도메인을 등록요청하시면 됩니다.

2. workflow.create.document

2-1. 처리 순서

  1. 상신데이타 전달 ERP에서 상신할 데이타를 그룹웨어로 Request Form 형태로 전달합니다.
  2. URL 수신 전가결재 상신페이지 URL을 받으세요. 1회용 보안URL입니다. 받으셔서, 새창으로 뜨우시기만 하면 됩니다.
[ 그림. 처리 흐름도 ]

2-2. Form으로 넘겨줄 데이타

목적지 주소는 http(s)://그룹웨어도메인/mashup/workflow.create.document 입니다. Request Form으로 넘겨 주셔야 합니다. 아래에 언급한 넘겨주셔야 하는 항목들은, Header절과 Body절로 구분됩니다. 잘 읽어 보시기 바랍니다.
  1. AuthKey 위에서 언급한 데로, 그룹웨어 서비스 제공자에게 받은 인증키(AuthKey)입니다. Request Header절에 넣어서 보내주셔야합니다.
  2. argErpUserID ERP에서 사용하는 사용자 계정입니다. 위에서 언급한데로 미리 그룹웨어 사용자계정과 연결(매핑)이 등록되어져야 합니다. ERP 계정을 통해, 그룹웨어 사용자를 찾는데 사용되어 집니다.
  3. argFormNo
  4. argErpDocKey
  5. argCallBackErpEventUrl 그룹웨어 전자결재 시스템에서 이벤트가 발생할 때마다 호출하는 콜백URL입니다. 받고 싶으신 콜백URL을 정의하세요. 그룹웨어에서는 4가지 정보를 GET 방식으로 넘겨드립니다. {1},{2},{3},{4} 아래의 설명을 참고하세요. 참고로, {3}은 잘 보관하셔서, 향후, 문서를 열람하기 위한 용도로 사용되어 집니다.
  6. argDocSubject 그룹웨어 전자결재 문서의 제목을 바꾸실 수 있습니다. 값을 전달하시면, 결재문서의 제목에 표시됩니다. 물론 상신자가 다시 편집이 가능합니다.
  7. argBodyHtml ERP 화면에 보이는, 즉 결재문서로 만들기 위한 HTML문을 만들어 전달하세요. 화면에서 어떤 부분을 결재문서로 태울 지, 지정하여 HTML로 만드시면 됩니다.
  8. argCallBackErpResultUrl 요청한 데이타를 기준으로 전자결재 상신하는 페이지 URL을 받으실 주소입니다. 기본적으로, ERP시스템내의 API 서버의 도메인 주소는 미리 지정되므로, 그 이후의 URI를 입력하시면 됩니다.
[ 그림. 샘플 화면 ]

2-2. 샘플

[ 그림. 타사 샘플 ]

2-3. 결과

위 8번 항목으로 정의하신 argCallBackErpResultUrl로 상신 페이지 경로(URL)을 넘겨드립니다.
[ 그림. 실행 결과 화면 ]

3. Postman으로 테스트

[Tab]
Headers > AuthKey 기입
Body
 . x-www-form-urlencoded 체크
 . form 값들 기입
결과값 : 성공, zurl 나오는걸 볼 수가 있습니다.

4. Online Demo

https://dev.zioyou.com/mashup/sample.workflow.create.document.html

댓글을 작성하세요

문서 이력

  • 2021-11-09 날짜로 신달수 님으로 부터 컨텐츠명이 변경 되었습니다.
  • 2021-12-25 날짜로 신달수 님으로 부터 컨텐츠명이 변경 되었습니다.
  • 2021-12-26 날짜로 신달수 님께서 등록 작업을 하였습니다.
  • 2022-01-17 날짜로 신달수 님께서 등록 작업을 하였습니다.
  • 2022-06-28 날짜로 신달수 님께서 수정 작업을 하였습니다.
  • 2024-02-29 날짜로 신달수 님께서 등록 작업을 하였습니다.
  • 2024-02-29 날짜로 배성현 님께서 삭제 작업을 하였습니다.
  • 2024-03-13 날짜로 배성현 님께서 등록 작업을 하였습니다.