이글은 아래 링크의 원본 글에 대한 한글 번역 입니다
http://scn.sap.com/community/web-dynpro-abap/floorplan-manager/blog/2013/09/19/using-fpm-applications-on-an-ipad

 

 

웹딘프로아밥과 FPM 은 데스크탑 어플리케이션 작성을 위해 설계되었습니다. 기술적으로는 FPM 어플리케이션은 태블릿이나 스마트폰처럼 모바일 환경에서도 사용 가능합니다. 그러나 많은 기능 제약이 있었습니다. 이제 SAP에도 변화가 생기고 있습니다. 노트 1853087을 적용하면 웹딘프로아밥/FPM 을 모바일 사파리 브라우저에서도 실행할 수 있습니다.

 

이 블로그에서는 모바일 장치에서 FPM 어플리케이션을 실행할때 사용할 수 있는 새로운 기능을 소개하겠습니다. 서버 버전이 NW 7.03/7.31 SP9 (+ 노트 1893651) 또는 NW 7.40 SP4 이상이면 가능합니다.

 

모바일과 데스크탑의 주요 차이점은 키보드와 마우스를 사용하지 않고 "터치"를 사용하는 방식 뿐만 아니라 화면의 크기가 데스크탑에 비해 매우 작다라는 특징이 있습니다. 그래서 보통 모바일 용 화면은 더 단순하게 만듭니다. 꼭 필요한 필드만 배치하고 자주 사용하지 않는 필드를 표시하지 않는다거나 기존의 복잡한 화면을 여러개의 단순한 화면으로 나누어 작은 화면에 잘 보이도록 배치하는 등의 방법을 사용합니다.

 

FPM의 configuration을 활용하면 이렇게 데스크탑/모바일의 화면을 별도로 가지는게 가능합니다. 이제부터 어떻게 만들고 enhance하고 adapt할 건지 소개하겠습니다. 기술적인 부분은 How to Create, Enhance, and Adapt Floorplan Manager Applications on SAP NetWeaver 7.31 를 참고하세요.

 

하지만 아직 한가지 문제는 남아있습니다:

 

만약 어플리케이션을 모바일용으로 adapt 하면 데스크탑 사용자들은 모바일에 맞춰 줄어든 기능을 함께 사용해야 하는 불편함을 감수 해야 합니다. 아니면 복사본을 만들어서 모바일용과 데스크탑용을 분리하여 운영 할 수 있습니다. 이런 경우 2개의 어플리케이션을 유지보수 해야 하고 각자 실행하는 어플리케이션이 달라지는 문제가 있습니다.

 

다행히 해결방법이 있습니다: 접속 장치의 종류를 인식하고 Context-Based Adaptations (CBA) 를 사용하는 것입니다. 무슨뜻이냐면 모바일용으로 복사가 아니라 단지 데스크탑용 대비 delta(변화량)만 관리하면 된다는 것입니다. FPM이 자동으로 장치의 종류를 인식하여 어플리케이션에 delta(변화량)를 적용해서 실행할 것인지 아닌지를 판단합니다. 이렇게 하면 하나의 어플리케이션만 유지보수 하면 됩니다. 사용자들은 동일한 어플리케이션을 사용하지만 접속 장치에 따라 모바일은 더 단순한 UI 를 보게 됩니다.

 

이 기술은 modification이 필요하지 않습니다. 그러므로 SAP 스탠다드 프로그램을 adpat 하는데에도 전혀 문제가 없습니다.

 

단계별 설명

이 블로그의 나머지 부분은 예제를 통해서 어떻게 작동하는지 설명하겠습니다. 예제는 SAP 스탠다드 어플리케이션이고 이를 단순화 시켜 adapt 하여 모바일로 접속하여 사용하는 것을 보여드리겠습니다. 예제 어플리케이션은 바로 FPM_DEMO_PLAYER 입니다. 이 어플리케이션은 엄청 단순합니다. 탭으로 구성된 2개의 리스트가 있습니다. 하나는 유명 축구 선수 목록이고 하나는 유명 테니스 선수 목록입니다. 선수를 선택 하게 되면 상세내역을 아래에 폼으로 보여줍니다.
FPM_DEMO_PLAYER.png

 

0. Adaptation Schema 만들기

이 준비 단계는 Netweaver 7.03/7.31 SP9 버전에서만 필요합니다. 높은 버전을 사용하고 있다면 이 단계를 건너띄고 스탠다드에 있는 스키마 FPM_DEVICE 를 사용하면 됩니다.
Context Based Adaptations(CBA)에는 어플리케이션이 무엇을 기준으로 adapt 할것인지 결정하는 adaptation scheme가 있습니다. 이번 예제에서는 1개의 기준(dimension)만 있으면 됩니다. 바로 장치 종류 (데스크탑, 테블릿, 스마트폰) 입니다.
adaptation scheme는 뷰클러스터 유지보수에서 정의합니다.
  1. 티코드 SM34로 이동합니다.
  2. 뷰클러스터 FPM_VC_ADAPT_SCHEMA를 입력하고 '유지보수' 버튼을 누릅니다.
  3. 새로운 스키마를 등록합니다. 이름은 ZDEVICE로 하겠습니다.
  4. 새로 만든 스키마를 선택하고 왼쪽 트리에서 Dimensions를 선택합니다.
  5. Dimension 하나를 추가 합니다. 이름은 DEVICE, 인덱스는 1, 타입은 FPM_DEVICE_TYPE
  6. 저장합니다.

 

1. CBA 활성화

첫번째 단계는 기존 데스크탑용 어플리케이션을 adapt 가능하도록 변경하는 것입니다. 장치 종류를 인식하여 분기할 수 있도록 하기 위함이죠.
  1. 티코드 FPM_WB 를 실행하여 FPM 워크벤치를 실행합니다. SAP GUI에서 실행한 경우 웹브라우저 새창으로 화면이 뜹니다.
  2. 화면에서 Context Based Adaptations 섹션에 있는 "Enable FPM Applications for Context-Based Adaptations" 링크를 찾아서 클릭합니다. FPM_WB.png
  3. 이제 CBA Enabler 가 실행됩니다. 우선 application configuration name에 변경할  어플리케이션을(FPM_DEMO_PLAYER) 입력합니다. 그리고 adaptation schema에 적용할 스키마를(ZDEVICE 또는 0단계 생략했다면 FPM_DEVICE) 입력합니다. 그리고 2개의 새로 만들 이름을(adapted application 과 adapted application configuration) 입력합니다. 2개의 이름은 아무렇게나 해도 되지만 2개를 동일하게 입력하기를 바랍니다. 예를들어 ZDEMO_PLAYER 를 입력하겠습니다. 이제 다 입력했으면 Next 버튼을 누릅니다.CBA Enabler Step 1.png
  4. 이제 CBA Enabler의 2번째 단계 화면에 들어왔습니다. 패키지와 transport request를 지정합니다. 여기서는 아무것도 변경할 필요없이 단지 Save 버튼만 눌러도 됩니다. 어플리케이션이 adapt 할 수 있는 준비가 되었습니다. 결과 화면에는 단순하게 링크 2개가 보입니다. CBA Enabler Step 3.png

어플리케이션을 adapt 하기 전에 좀전에 Save 버튼을 눌러서 어떤 변화가 생긴건지 설명해 주세요:

어플리케이션 FPM_DEMO_PLAYER 자체는 변경되지 않습니다. 대신 adpat 가능한 새로운 어플리케이션 (ZDEMO_PLAYER)으로 감싸는 형태로 만들었습니다. 이 새 어플리케이션은 원래 기능을 포함하고 있습니다.(복사가 아닙니다) 그리고 adapt 가능한 기능을 추가로 가지고 있습니다. 그러므로 새 어플리케이션을 실행(링크 Execute Application을 클릭)해도 기존 어플리케이션과 동일한 화면이 나타납니다.

이제 Configuration Editor를 (링크 Launch Configuration Editor를 클릭) 실행하도록 하겠습니다.

2. UI에 adapt 적용

앞에서 링크 Launch Configuration Editor를 클릭했다면 바로 FPM configuration editor ("FLUID")가 실행됩니다. 만약 CBA enabler를 닫아버려서 링크를 누를수 없다면, SE80에서 실행할 수 있습니다. 로컬 오브젝트로 이동합니다. 새로만든 FPM 어플리케이션 컨피규레이션 ZDEMO_PLAYER를 선택합니다. Start Configurator 버튼을 누르거나 단축키 F7을 누르세요. 웹브라우저에 Configurator가 나타날 겁니다. 링크 FPM_DEMO_PLAYER_OIF 를 눌러서 이동하세요.

툴바에는 추가 뷰를 볼 수 있는 3가지 버튼이 있습니다.

icon_buttons.png

 

이 중에서 왼쪽 첫번째 있는 버튼을 누르면 화면 상위 adaptation 패널이 열립니다. 이제 화면이 아래 그림처럼 보입니다:

FLUID.png

 

모바일용 새로운 adaptation을 추가 하기 위해서 Add 버튼을 누릅니다. 팝업 화면이 나타납니다. Applies to all values 체크 박스를 풉니다. Device Type 에는 TABLET을 선택합니다. Namespace에는 Z를 입력합니다.adatation popup.png

 

OK 버튼을 누르면 태블릿용 adaptation이 생성됩니다. 이제 이 adaptation에는 FPM configuration editor의 모든 기능을 사용하여 편집할 수 있습니다. 자유롭게 필요한 변경사항을 적용하세요.

편집을 끝내고 태블릿에서 어플리케이션을 실행하면 화면은 이런식으로 됩니다:

app on tablet.png

 

이런 화면을 보려고 우리가 무엇을 한건가요:

테니스 선수 뷰를 삭제하였습니다. 대신 상세(detail)뷰를 만들고 기존에 상세 폼을 이동시켰습니다.

툴바에서 Edit 와 Check 버튼을 제거했습니다.

목록 제거와 상세 폼의 제목을 제거하기 위해서 list configuration인 FPM_DEMO_PLAYER_LIST_FOOTBALL 와 form configuration인 FPM_DEMO_PLAYER_FORM_FOOTBALL에 adaptation을 생성했습니다. 앞서 adaptation을 만드는 작업과 동일한 방법으로 하면 됩니다.

이 모든 작업은 FPM configuration editor 에서 스탠다드 수정없이 모두 가능합니다. 그리고 변경한 내용은 오직 태블릿으로 접속할때만 나타납니다. 만약 데스크탑에서 실행한다면 어플리케이션에는 아무 변화도 없을 것입니다.

요약

웹딘프로아밥과 FPM은 모바일 장치를 위해 설계된것은 아닙니다. 모바일 사용자의 완벽한 요구사항을 만족하기 위해서 FPM은 좋은 선택이 아닙니다. 그러나 이미 만들어둔 FPM 어플리케이션을 모바일 장치에서도 사용할 수 있도록 하는 대안이 될 수 있습니다. 이 방법(adaptation)의 장점은 다음과 같습니다:

  • 데스크탑 어플리케이션에 전혀 영향이 없습니다.
  • 모바일용 adaptation은 원본에서 변경된 것만 가지고 있습니다. 그러므로 원본에 버그 수정이나 기능 향상이 있다면 모바일에도 동일하게 적용이 됩니다.
  • 다른 UI를 가지고 있지만 실행하는 어플리케이션은 여전히 동일하고 비지니스 로직에는 전혀 변화가 없습니다.
  • 이런 adaptation을 작성하는데 작업량이 적습니다. (빠른 개발)

 

이글은 아래 링크의 원본 글에 대한 한글 번역 입니다
http://scn.sap.com/community/web-dynpro-abap/floorplan-manager/blog/2013/09/19/using-fpm-applications-on-an-ipad

 

+ Recent posts