5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【SAPUI5】WebIDEでデプロイできないとき、ローカルからABAPサーバにデプロイする方法

Posted at

はじめに

この記事は chillSAP 夏の自由研究2020 の記事として執筆しています。

WebIDEで開発していると、クラウドプラットフォームの障害などでたまにABAPサーバにデプロイできなくなることがあります。すぐに復旧すればよいですが、1日くらいかかることもあります。スケジュールの都合で待っていられない!となったときに、ローカルからデプロイする方法をご紹介します。
UI5 Toolingを使えば完全にローカルで開発することも可能ですが、今回はそういったことは置いておいて「デプロイだけできるようにする」ことを目的とします。

前提

  • VS CodeNode.jsGitがインストール済
  • VS Codeがインストールされた端末からABAPサーバにアクセスが可能であること
  • WebIDEでアプリの動作を確認済で、「あとはデプロイするだけ」の状態になっていること
  • ABAPサーバで移送依頼を登録済であること

実行環境

  • @ui5/cli: 1.13.0
  • nwabap-ui5uploader: 0.3.4
  • バックエンド:S/4HANA 1909(FPS01) On-premise

ステップ

  1. ソースコードをGitからクローン
  2. デプロイ用の設定を追加
  3. デプロイ

1. ソースコードをGitからクローン

git clone <リポジトリURL>

クローンしたら、npm installを実行してモジュールをローカルにインストールします。

2. デプロイ用の設定を追加

nwabap-ui5uploaderをインストールします。

npm install nwabap-ui5uploader --save-dev

.nwabaprcというファイルを作成して、プロジェクト直下に置きます。ここでサーバーやログイン情報などを設定します。(コメントは削除してください)
image.png

.nwabaprc
{
    "base": "./dist", //ABAPサーバーに持っていくフォルダを指定
    "conn_server": "http://myserver:8000", //サーバ
    "conn_user": "upload",                 //ログインユーザ
    "conn_password": "upl04d",             //パスワード
    "abap_package": "$TMP",                //パッケージ
    "abap_bsp": "ZMOB81TEST",            //BSPアプリのID
    "abap_bsp_text": "UI5 upload local objects", //BSPアプリのテキスト
    "abap_transport": "S4DK901491"         //移送依頼
}

3. デプロイ

①ビルド、②デプロイというステップで行います。
以下のコマンドでビルドします。

npm run build

このコマンドはpackage.jsonにある以下のスクリプトを実行します。WebIDEでビルドするのと同じです。
image.png

続いてデプロイです。

npx nwabap upload

すべてOKで終了すれば完了です。
image.png

動作確認

以下の観点で動作確認します。
①ローカルからデプロイしたアプリが動くか
②さらにWebIDEからのデプロイをしてもちゃんと動くか

①ローカルからデプロイしたアプリが動くか

カタログ、タイルの設定をしてラウンチパッドで開いてみます。
カタログの設定
image.png
タイルの設定
image.png
初回にタイルを開いたとき、Component.jsが見つからないというエラーになりました。
プログラム /UI5/APP_INDEX_CALCULATEを実行したところ、開けるようになりました。
image.png
image.png
中身のないアプリですが、この状態で正常に開けています。
image.png

②さらにWebIDEからのデプロイをしてもちゃんと動くか

WebIDEからのデプロイができるようになったときに、デプロイ後のアプリがちゃんと動くか確認します。
"Update an existing application"を選択します。以降はウィザードに従ってデプロイするだけです。
image.png
WebIDEでの更新分が反映され、正常に動きました。
image.png

まとめ

WebIDEからデプロイできなくなっても、ローカルでデプロイできます。VS Codeなどの環境さえ整っていれば簡単なステップでデプロイが可能です。いざというときの保険に、ローカル環境は持っておきたいですね。

関連記事

【SAPUI5】UI5 Tooling:ABAPサーバへデプロイ

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?