はじめに
SAP Web IDEが2022年に廃止され、後継としてSAP Business Application Studio(BAS)が標準の開発環境になりました。BASはVS Codeベースのクラウド統合開発環境で、ブラウザだけでSAP開発が始められます。
Fiori・CAP・ABAP Cloud・RAP開発のすべてをBASで一元的に扱えるのが強みで、S/4HANA Cloud時代の開発の標準ツールです。
BASの特徴
クラウドベース
ローカルにインストール不要で、BTPテナントにログインすれば即座に使えます。マシンの性能に依存せず、複数PC間で同じ開発環境を共有できます。
Dev Space(開発空間)
「Dev Space」と呼ばれる仮想開発環境を複数作成できます。それぞれのDev Spaceには、用途別に必要なツールセットがプリインストールされています。
VS Codeベース
UIと操作感はVS Codeそのもので、拡張機能・ショートカット・デバッグ機能などが揃っています。既にVS Codeを使っている開発者なら即戦力になります。
Git連携
Git操作はターミナルまたはGUI(Source Controlパネル)から行えます。GitHub、SAP BTP Gitリポジトリ、Azure DevOpsなどと連携できます。
Dev Spaceの種類
flowchart LR BAS["Business
Application Studio"] --> DS1["SAP Fiori
Dev Space"] BAS --> DS2["Full Stack
Cloud Application
(CAP)"] BAS --> DS3["SAP HANA Native
Application"] BAS --> DS4["SAP Mobile
Application"] BAS --> DS5["Basic
(自由構成)"]
各Dev Spaceの用途
- SAP Fiori:UI5 / Fiori Elements開発に最適化。Fiori Toolsプラグイン含む
- Full Stack Cloud Application:CAP(Node.js/Java)+ UI5の統合開発用。CAPフレームワーク全体の解説はSAP CAP入門を参照
- SAP HANA Native:HDI(HANA Deployment Infrastructure)を使うDB層開発
- SAP Mobile Application:BTP Mobile Services向け開発
- Basic:必要な拡張を自分で入れる自由構成
使い始めの流れ
- BTPコックピットで BAS サブスクリプションを有効化
- BAS を起動してDev Spaceを作成(種類を選ぶ)
- Dev SpaceにログインしてTerminalを開く
cds initやyo easy-ui5などでプロジェクト雛形を生成- 開発・ローカルプレビュー
- Git commitしてリモートリポジトリにpush
- Continuous Integration & Delivery ServiceまたはBTPパイプラインでデプロイ
Fiori Toolsとの連携
BASのFiori Dev Spaceには、Fiori開発に特化した「Fiori Tools」というツール群が含まれています。
- Application Generator:Fiori Elementsプロジェクトの雛形生成
- Application Wizard:GUIで設定項目を選んでプロジェクト作成
- Guided Development:ステップバイステップの実装アシスト
- Deployment:BTPへのデプロイGUIツール
Application Generatorから生成したプロジェクトは、即プレビューして画面を確認できます。詳しくはFiori Elements実装ガイドを参照してください。
ABAP Cloud / RAPとの関係
BASはABAP Cloud開発(RESTful Application Programming Model = RAP)にも対応しています。BTP ABAP Environment向けのABAP開発、S/4HANA Cloud Public向けのDeveloper Extensibilityも、BASとADT(ABAP Development Tools)の組み合わせで行います。
ABAP Cloudの基本はABAP Cloud入門を参照してください。
BAS vs VS Code
「ローカルのVS Codeで開発できないの?」という疑問は頻出です。答えは「できる」ですが、BTP連携の手軽さではBASが圧倒的に楽です。
| 観点 | BAS(クラウド) | VS Code(ローカル) |
|---|---|---|
| BTP認証 | 自動 | 手動設定 |
| Destination接続 | 簡単 | 追加設定 |
| 環境再現性 | 常に同じ | PCごとに差 |
| オフライン作業 | 不可 | 可能 |
| 性能 | テナント依存 | ローカル依存 |
| ライセンス | BTP課金 | 無料 |
ハイブリッド(ローカルVS Code + BTPログイン)も可能ですが、新規プロジェクトはBAS推奨です。
よくある疑問
Q. BASは有料ですか?
A. BTPサブスクリプションの一部として提供されます。Free Tierでの試用も可能です。
Q. 他の開発者と共同編集できますか?
A. 各開発者が自分のDev Spaceを持つ形が基本です。同時編集はGit経由で行います。
Q. 拡張機能は追加できますか?
A. VS Code Marketplaceの多くの拡張がインストール可能です。ただしBASのセキュリティ方針で一部制限があります。
Q. Dev Spaceの起動が遅いのですが?
A. 停止していたDev Spaceの再起動は1〜2分かかるのが通常です。頻繁に使うなら停止せずに維持する運用もあります(コスト増に注意)。
まとめ
- BASはWebIDE廃止後のSAP標準クラウド開発環境
- VS CodeベースでDev Space(用途別仮想環境)を作成して使う
- Fiori・CAP・ABAP Cloud・Mobile全方位に対応
- Fiori ToolsでFiori Elements開発が大幅に簡素化
- ローカルVS Codeも使えるがBTP連携はBASが楽
次はAdaptation Project実践で、BASを使った標準Fioriアプリのキーユーザー拡張を見ていきます。
BASの使い方を知った後は、実際にUI5アプリとCAPバックエンドを作ってBTPにデプロイするところまで通しで体験するのが効果的です。Dev Spaceの操作感も含め、開発環境の使いこなし力が上がります。