CAP プロジェクトの作成

Objective

After completing this lesson, you will be able to SAP Cloud Application Programming Model プロジェクトの生成

SAP Business Application Studio の使用

Dev 領域およびプロジェクトウィザード

前述のように、SAP Business Application Studio (BAS) を開発環境として使用して、Node.js ランタイムの CAP アプリケーションを作成します。BAS には、開発に必要なすべての機能が即座に利用可能なという利点があります。たとえば、Node.js および CAP の CDS 開発キットはすでに使用可能です。

BAS を使用してアプリケーションを開発するための dev 領域の作成および CAP プロジェクトの生成については、ビデオを視聴してください。

コマンドラインインタフェース

CAP プロジェクトは、npm パッケージ @sap/cds-dk を使用して作成することもできます。このパッケージには、コマンド行クライアントおよび CAP の開発ツールキットが含まれています。

@sap/cds-dk は BAS ですぐに利用できます。対応するコマンドは、BAS のターミナルに直接入力することができます。新しいターミナルを開くには、BAS の左上隅にあるハンバーガーメニューから TerminalNew Terminal を選択します。

@sap/cds-dk は、新規プロジェクトの初期化からクラウドへのデプロイまで、CAP 開発のさまざまな段階のコマンドを提供します。すべてのコマンドの概要を取得するには、cds help を使用します。cds <helpcommand> または cds <コマンドを使用しますか?具体的なサポートを受けることができます。cds init を使用して、新しい CAP プロジェクトを生成できます。

設定超過規則

最小設定

CAP には、他のフレームワークで設定する必要がある多くの項目に対するデフォルト設定があります。目標は、できるだけ設定せずに作業できるようにすることです。必要に応じて、これらのデフォルト設定を特定の設定で上書きすることができます。たとえば、package.json ファイル内の上記のフォルダのデフォルト名を以下のように上書きすることができます。

JSON
123456789
{ ... "cds": { "folders": { "db": "database/", "srv": "services/", "app": "uis/" } } }

注記

追加設定なしで機能することからメリットを得るには、CAP の規則に従うことをお奨めします。設定を本当に必要な場合にのみ、設定を追加するか、デフォルトを上書きします。

ヒント

cds env コマンドを使用して、特定のキーまたは現在の環境全体の有効な設定を端末に表示することができます。たとえば、ターミナルで cds env フォルダを実行すると、デフォルトのフォルダ名を上書きしていないと、以下の出力が得られます。
JSON
1
{ db: 'db/', srv: 'srv/', app: 'app/' }

ローカルテスト

ターミナルで cds watch コマンドを実行すると、http サーバが監視モードで起動します。その結果、プロジェクトがコンパイルされ、ローカルに提供されます。これは、提供されているサーバを使用して BAS (または VS Code) から CAP ベースのアプリケーションにアクセスしてテストできることを意味します (図 HTTP サーバの起動を参照)。

cds watch の "watch" は、コマンドがプロジェクトのファイルの変更を継続的に監視することを示します。ソースファイルで変更が検出されると、サーバは自動的に再起動され、これらの変更が反映されます。変更後にサーバをマニュアルで停止して再起動する必要はありません。

サーバが監視モードで実行されている間、コンソールにログが出力されます。これらのログは、問題の検出、要求のフローの理解、およびエラーのトラブルシューティングに役立ちます。

注記

実際は、cds watch は次のような便利なショートカットにすぎません。
Code Snippet
1
cds serve all --with-mocks --in-memory?

cds serve を実行しますか?ターミナルで、cds serve および利用可能なオプションに関する詳細情報を取得します。

-- インメモリですか?オプションを使用すると、一時的なインメモリデータベースが自動的に追加されます。これは、package.json でのデフォルト設定または設定に基づいて、起動ごとに (再) ブートストラップされます。追加された疑問符は、設定されたデータベースが存在する場合はそれを考慮する、より防御的なバリアントを適用し、永続データベースが設定されていない場合にのみインメモリデータベースを追加します。

cds watch の実行中は、ブラウザで http://localhost:4004 を開いて、汎用の index.html ページを表示できます。このページは、主に開発およびテストを目的としています。本稼働シナリオでは、通常は公開されず、適切なユーザインタフェースに置き換えられません。

このページには、公開されているすべてのサービスエンドポイントの一覧が表示されます。これにより、開発者およびテスタはそれらに直接アクセスしやすくなります。

OData サービスごとに、その $metadata 文書へのリンクもあります。これをクリックすると、サービスのメタデータが表示され、サービスのエンティティセット、タイプ、およびその他の詳細が XML 形式で記述されます。

Node.js アプリケーションの場合は、公開されたエンティティセットごとに index.html ページに Fiori プレビューリンクもあります。このようなリンクは、対応するエンティティセットに基づいて SAP Fiori エレメント一覧ページを動的に提供します。これは、本稼動での使用を目的としていないことに注意してください。適切な SAP Fiori エレメントアプリケーションの代わりにはなりません。

ヒント

サーバプロセスを終了するには、アプリケーションが実行されているターミナルで Ctrl+C を押します。

デモと演習:Hello World アプリケーションの作成

注記

演習問題として、SAP Business Application Studio で、以下のデモのステップバイステップの手順を実行します。

シミュレーションのソースコードは、以下の GitHub リポジトリのブランチ 1_hello_world にあります。

https://github.com/SAP-samples/cap-development-learning-journey

このリポジトリのコンテンツとその使用方法の詳細については、ここを参照してください。

Hello World アプリケーションの作成方法については、ビデオを視聴してください。

ここで、dev 領域で CAP プロジェクトを作成する方法と、CAP アプリケーションをローカルでテストする方法を理解しました。ここでは、CAP の基本的な機能について説明します。