Technology Blog Posts by Members
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member
2,216

はじめに


SAP HANAのXS Advanced (XSA)で動くSAP Fiori Launchpadについてご紹介したいと思います。Multi-Target Application (MTA)には、SAP Fiori Launchpad Site Modulesというものが用意されており、SAP HANAのXSAにデプロイして動かすことができます。

もちろん、すでにあるSAPUI5アプリを組み込んでタイルから呼び出したり、テーマをカスタマイズしたり、ロールでタイルの制御をしたりと、基本的な機能はゴリゴリ作り込めるようになっています。

少し話は変わりますが、2018年12月31日をもってSAP Web IDE for Cloudがなくなり、来年からはFull-Stackオンリーとなります。実は、今回ご紹介するSAP HANA版Fioriも、異なるランタイムのモジュールをつなぎ合わせて、ひとつのアプリを構成する、まさにフルスタックで開発を行うものです。まだやったことがない方、興味を持った方は、ぜひ実際に作ってみてほしいと思います。

この内容は、SAPアドベントカレンダーの12/8 (土) に投稿したものです。

前提条件


作り始める前に、HANA, Express Edition (Server + XSA Applications)を用意する必要があります。Express Editionである必要はありませんが、個人で自由に使える環境は少ないと思いますので、こちらを記載しています。

なお、このブログでは具体的な手順に触れていませんので、公式チュートリアルをご参照ください。AWSアカウントをお持ちの方は、AWS MarketplaceにAMIがあります。設定も含めて30分程度で環境が作れると思います。

今回使用したバージョンは、以下の通りです。

  • HANA, Express Edition (Server + XSA Application): 2.0 SPS 03

  • SAP Web IDE for HANA 2: SPS 03 Patch 2 ( Build 4.3.25 )


 

Fiori Launchpad on SAP HANA の作り方


全部で4ステップです。では、SAP Web IDEにログインして作っていきます。

flow.png

 

Step1. MTA Projectの生成


Workspaceで右クリック > New > Project from Templateを選択します。

mta-01.png

Multi-Target Application Projectを選択して、Nextをクリックします。

mta-02.png

Projectの名前を入力して、Nextをクリックします。

mta-03.png

以下を入力して、Finishをクリックします。

  • Application ID

  • Application Version

  • Space


 

mta-04.png

 

Step2. SAP Fiori Launchpad Site Modulesの追加


先ほど作成したMTAプロジェクトの中に、SAP Fiori Launchpad Site Modulesを追加します。
MTAプロジェクトを選択して右クリック > New > SAP Fiori Launchpad Site Modulesを選択します。

flsm-01.png

SAP Fiori Launchpad Site Modulesが見つからない場合は、機能を有効化する必要があります。
設定 > Featuresを選択し、SAP Fiori Launchpad SiteをONにしてください。

flsm-00.png

モジュールが追加できたら、Siteの名前を入力して、Nextをクリックします。

flsm-02.png

Site Contentの名前を入力して、Finishをクリックします。

flsm-03.png

MTAプロジェクトの中に、さきほど指定した名前で「Site」と「Site Content」が作られています。
これが、SAP Fiori Launchpad Site Modulesの実体です。

flsm-04.png

それぞれ、簡単にいうと次のような役割です。

Site     ・・・ Fioriのエントリポイント。実際のWebリソースを置くところ。

Site Content ・・・ Fiori Launchpadのサイト構成を定義するところ。

 

現時点では、Siteの中にJSONファイルしかなく、Webリソースらしきものは見当たりません。つまり、ここまでの手順で「アプリを抱え込んでいない、空っぽのSAP Fiori Launchpadを作った」ということになります。

さて、本当に空っぽのLaunchpadでしょうか?
よく見ると、Site Contentに中にapplicationsというフォルダもありますね??

実は、SAP Fiori Launchpad Site Modulesには、最初からタイルが2枚くっついてきます。タイルの中身が外部サイトのリンクであれば、Webリソースを自分自身で抱え込む必要はありませんが、タイルに表示する文言やリンク先のような設定(定義)は必要なので、それらをSite Contentに抱えているというワケです。

もし自分で作ったSAPUI5アプリをタイルから呼び出したい!と思ったときは、Siteの中にWebリソースを抱え込む必要があります。もう少し正確に言うと、SAP Fiori Launchpadからシングルページアプリケーション(SPA)としてSAPUI5を呼び出したい場合になります。

このあたりについては、続編としてまとめたいと思います。では、ビルドしてみましょう。

 

Step3. Build


MTAプロジェクトを選択して右クリック > Buildを選択します。

build-01.png

Buildが成功したことを確認します。

build-02.png

Buildに成功すると、mta_archivesというフォルダに*.mtarが作成されます。フォルダが見つからない場合は、SAP Web IDEをリロードしてみてください。

build-03.png

 

Step4. Deploy


先ほど作成された*.mtarを選択して右クリック > Deploy > Deploy to XS Advancedを選択します。

deploy-01.png

OrganizationとSpaceを選択して、Deployをクリックします。

deploy-02.png

Deployに成功したことを確認します。

deploy-03.png

Consoleに出ているログから、次のようなフレーズを探します。


Application "XXX" started and available at "http://hostname:port"



このURLでSAP Fiori Launchpadが動いているようです。

実際にアクセスした結果がこちらです。

deploy-04.png
deploy-05.png
deploy-06.png

Step.4 Deploy (Command ver.)


xs deployコマンドを実行してデプロイする方法もご紹介します。具体的には、以下のような手順でデプロイします。

  1. *.mtarファイルをローカルPCにダウンロード

  2. *.mtarファイルをSAP HANAに転送

  3. sshでサーバに接続

  4. SAP HANAにログインして、xs deployコマンドの実行


まず、*.mtarファイルを選択して右クリック > Exportを選択してファイルをダウンロードします。

export-01.png

 

次に、SCPコマンドを実行して*.mtarファイルをSAP HANAに転送します。


$scp -i .ssh/key-file.pem Downloads/hana_flp_0.0.1.mtar ec2-user@hxehost:work



 

sshでSAP HANAのサーバに接続します。


$ssh -i .ssh/key-file.pem ec2-user@hxehost



 

ec2-user (root)でログインしているので、hxeadmに切り替えて、xs loginでログインします。
-s オプション(Spaceの指定)は必須ではありませんが、デプロイ先がターゲットになっていることをご確認ください。


$ssh -i .ssh/key-file.pem ec2-user@hxehost
ec2-user@hxehost:~> sudo su -l hxeadm
hxeadm@hxehost:/usr/sap/HXE/HDB90> xs login -u xsa_admin -p password -s development

hxeadm@hxehost:/usr/sap/HXE/HDB90> xs target

API endpoint: https://hxehost:39030 (API version: 1)
User: xsa_admin
Org: HANAExpress
Space: development



 

xs deployを実行します。


hxeadm@hxehost:/usr/sap/HXE/HDB90> xs deploy /home/ec2-user/work/hana_flp_0.0.1.mtar 


Uploading 1 files:
/home/ec2-user/work/hana_flp_0.0.1.mtar
File upload finished

Starting process xs2-deploy...
Monitoring process 17501...
Validating parameters...
Processing MTA archive...
・・・
Unregistering discontinued service URLs...
Creating service brokers...
Updating subscribers...
Process finished.
Use "xs dmol -i 17501" to download the logs of the process.



 

xs appsでデプロイされたアプリを確認できます。


hxeadm@hxehost:/usr/sap/HXE/HDB90> xs apps | grep hana
home-hana_flp STARTED 1/1 64.0 MB <unlimited> https://hxehost:51006
home-Content-hana_flp STOPPED 0/1 32.0 MB <unlimited> <none>



 

さいごに


今回は、SAP HANA版Fioriの作り方をご紹介しました。環境面のハードルが低いので、個人の勉強用として、デモサイトとして、社内のトレーニング用として、などなど、いろいろな場面で活用できると思います。ぜひ、自分の環境を用意して、チャレンジしてみてください。

 

参考情報


Creating a New Launchpad Site
Fiori Launchpad in SAP HANA 2.0 SP01