SAP HANAデータを使ったアプリの作り方

SAP HANAデータを使ったアプリの作り方

AdaloがSAP HANAデータを使ったアプリ構築に向いている理由

Adaloは、データベース駆動のウェブアプリとネイティブiOS・Androidアプリを作れるノーコードアプリビルダーです。3つのプラットフォームを1つのバージョンでカバーし、Apple App StoreとGoogle Playに公開できます。SAP HANAの強力なインメモリデータベースに接続するエンタープライズアプリケーションにとって理想的なソリューションで、コードを1行も書かずにデータ駆動アプリを構築できます。

SAP HANAデータで動くアプリを構築する際、ネイティブのアプリストア配信はチームや顧客にどこにいてもリーチするために不可欠です。Adaloを使えば、SAP HANA連携アプリを両方のモバイルプラットフォームとウェブに同時にデプロイでき、リアルタイムのデータ更新でユーザーを引き付けるプッシュ通知も完備しています。

貴重なSAP HANAデータを持つエンタープライズチームはよくもどかしいギャップに直面します。データベースは高速な分析とトランザクション処理を提供しますが、そのデータをポリッシュされたモバイルアプリを通じて従業員や顧客の手に届けるには、従来は数ヶ月の開発と多大な予算が必要でした。

AIを活用したアプリビルダーであるAdaloは、REST APIを通じてSAP HANAデータに接続したネイティブiOS・Androidアプリとウェブアプリを1つのコードベースで作成できることでこのギャップを埋めます。DreamFactoryをミドルウェアとして使うことで、SAP HANAデータベースをコードなしで完全に機能するエンタープライズアプリに変換できます。

AdaloがSAP HANAデータを使ったアプリ構築に向いている理由

Adaloはデータベース駆動のウェブアプリと真のネイティブiOS・Androidアプリを作成します。3つのプラットフォームを1つのバージョンでカバーし、Apple App StoreとGoogle Playに直接公開できます。これはSAP HANAの強力なインメモリデータベースに接続するエンタープライズアプリケーションにとって理想的なソリューションで、コードを1行も書かずにデータ駆動アプリを構築できます。

プラットフォームのモジュラーインフラは月間アクティブユーザー100万人以上のアプリに対応でき、上限なし——SAP HANAデータベースが数千のフィールドワーカーや顧客に同時にデータを供給する場合に重要です。負荷下でパフォーマンスの制約に達するアプリラッパーとは異なり、Adaloの専用アーキテクチャは大規模でも速度を維持します。

アプリ構築の主要ステップ:

  1. SAP HANAの設定:ODataサービスを有効にし、API認証情報を設定し、適切なユーザー権限を確保します。
  2. DreamFactoryの使用:SAP HANAデータのREST APIを生成してAdaloからアクセスできるようにします。
  3. Adaloでの作成:Adaloのドラッグ&ドロップビルダーを使ってアプリを設計し、External Collectionsを通じてSAP HANAデータにリンクします。
  4. 機能の追加:ライブデータの表示、CRUD操作用フォームの作成、ユーザー認証の追加をします。
  5. パフォーマンスの最適化:大規模データセットを効率的に処理するためにキャッシュ、ページネーション、APIモニタリングを使用します。
  6. デプロイ:各プラットフォームを再構築することなくウェブ・iOS・Android全体で1つのアプリをリリースします。

Adaloのアプローチは開発時間とコストを削減し、ビジネスがSAP HANAデータで動く機能的なアプリをより簡単に作成できるようにします。適切な設定により、数ヶ月ではなく数日で業務ダッシュボード、顧客ポータル、モバイルツールを構築できます。有料プランには無制限のデータベースレコードが含まれ、エンタープライズ規模のデプロイメントを制限する可能性のあるストレージの制約が取り除かれます。

SAP HANA Cloudでインテリジェントアプリを構築する | SAP TechEd 2022 | デモ

SAP HANA Cloud

始める前に必要なもの

始める前に必要なツールとアカウントへのアクセスがあることを確認してください:SAP HANA、外部API機能を持つAdaloアカウント、それらの間の接続をつなぐDreamFactoryです。

SAP HANAアカウントとAPI認証情報

SAP HANA

SAP HANAに接続するには、以下のデータベース詳細が必要です:ホスト名(完全修飾ドメイン名)、ポート番号、データベース名、ユーザー名、パスワード。シングルコンテナシステムにはポート30015を使用し、マルチテナントシステムにはポート3NN15(「NN」をインスタンス番号に置換)が必要です。

接続前にSAP HANA Studioを開き、ServicesタブのODataサービス用にHTTPとHTTPSエンドポイントを有効にします。管理者認証情報を使用する代わりに専用の統合ユーザー(例:HDB_API_USER)を作成することをお勧めします。

API接続設定付きAdaloアカウント

アプリを構築するには、アクティブなAdaloアカウントが必要です。AdaloはウェブPublishingの無料プランを提供していますが、REST APIを通じた外部データベースへのアクセスには月$36のProサブスクリプションが必要です。このプランはExternal Collections機能のロックを解除し、AdaloがSAP HANAデータベースからデータを取得してアプリに表示できるようにします。有料プランにはデータ上限なしが含まれており、エンタープライズデータが成長してもSAP HANA連携が任意のレコード制限に達することはありません。

SAP HANA API生成向けDreamFactoryの設定

DreamFactory

SAP HANAはAdaloが使用できる形式でネイティブにデータを提供しないため、DreamFactoryがミドルウェアとして機能し、SAP HANAデータをRESTful APIに変換します。無料14日間のホスト型トライアルか、セルフホスティングも可能です。

セルフホスト型インストールの場合、サーバーは以下の要件を満たす必要があります:64ビット、少なくとも4GB RAM(8GB推奨)、PHP 8.1以上、ApacheまたはNGINXなどのウェブサーバー。DreamFactoryが設定されSAP HANAに接続されると、Adaloがリクエストを認証するためのAPIキーとベースURLが生成されます。DreamFactoryによると、この自動API作成プロセスにより企業は年間約$201,783の開発・保守コストを節約できます。

「DreamFactoryはすべてを合理化し、フロントエンドアプリケーションの構築に集中しやすくします。クリック、クリック、クリックで...接続できる何かを見つけました。」 - Edo Williams, リードソフトウェアエンジニア, Intel

SAP HANAデータを使ったアプリの構築方法

インフラが設定されたら、実際のアプリ構築に取り掛かりましょう。これにはDreamFactoryをSAP HANAデータをREST APIとして公開するよう設定すること、Adaloでアプリを作成すること、2つのプラットフォームをリンクすること、エンタープライズデータを表示する画面を設計することが含まれます。

SAP HANA APIアクセス向けDreamFactoryの設定

DreamFactoryはSAP HANAのテーブル、ビュー、ストアドプロシージャのRESTエンドポイントを作成することでプロセスを簡素化します。これらのエンドポイントにより標準HTTPメソッドを使った完全なCRUD操作が可能になります。

DreamFactoryの管理パネルにアクセスし、API Generation & Connectionsに移動します。サービスタイプとしてSAP HANAまたはSAP HANA OData Connectorを選択します。ホスト名(完全修飾ドメイン名)、ユーザー名、パスワード、データベース名を含む必要な接続詳細を入力します。

セキュリティは最優先事項です。APIを完全に公開するのを防ぐため、特定のテーブルまたはHTTPメソッドへのアクセスを制限するロールベースアクセス制御(RBAC)を適用してください。

「ロールベースアクセス制御(RBAC)は、ユーザーを特定の権限を持つ定義済みのロールに割り当てることで、API権限管理を簡素化します。」

Adaloで新しいアプリを作成する

Ada(AdaloのAIビルダー)を使えば、欲しいものを説明するだけでアプリを生成します。Magic Startは説明からアプリの完全な基盤を作成し、Magic Addは自然言語で機能を追加します。

Adaloアカウントにログインして新しいプロジェクトを開始します。BlankまたはMobile Firstテンプレートを基盤として選べます。Magic Start機能も、シンプルな説明からアプリの完全な基盤を生成できます——エンタープライズデータに接続した在庫管理アプリが必要と伝えると、データベース構造、画面、ユーザーフローを自動的に作成します。

データはSAP HANAにあるため、Adaloでデータ構造をゼロから構築する必要はありません。代わりに、SAP HANAテーブルを反映するExternal Collectionsを作成します。このアプローチにより既存のエンタープライズデータを複製・移行することなくアプリに表示できます。

APIを通じてAdaloをSAP HANAに接続する

Adaloで新しいExternal Collectionを設定してSAP HANAデータに接続します。DreamFactoryから3つの主要な詳細が必要です:Base API URL(例:https://your-instance.com/api/v2/hana_service/_table/table_name)、特定のテーブルエンドポイント、APIキーです。

コレクションの設定時にX-DreamFactory-Api-Keyというカスタムヘッダーを追加し、DreamFactoryのAppsタブからのAPIキーを入力してください。このヘッダーによりAdaloとSAP HANAデータベース間の安全な通信が確保されます。

特にResults Keyフィールドに注意してください。resourceに設定する必要があります。DreamFactoryはこのJSONキーの下にレコードコレクションを構造化し、誤った設定ではアプリがデータを表示できません。

アプリ画面の設計とデータ表示

接続が確立されたら、Adaloで直感的なユーザーインターフェースの構築に集中しましょう。

ホーム画面にSimple Listコンポーネントを追加することから始めます。External Collectionからデータをプルするようリストを設定すると、SAP HANAデータがリアルタイムで表示されます。AdaloのMagic Textツールを使って特定のSAP HANAデータフィールドをUI要素にバインドします。例えば、first_nameとlast_nameフィールドを組み合わせてフルネームを表示用にフォーマットできます。

AdaloのMagic Add機能で自然言語で欲しいものを説明して新しい機能を追加できます。従業員ディレクトリ用の検索フィルターが必要?説明するだけでAIがコンポーネントとロジックを生成します。

ユーザー認証と権限の追加

Adaloはユーザー認証を簡単にします。ログイン画面を追加し、サインアップフォームを設定し、コードなしでパスワードリセットフローを設定します。

ユーザーロールをSAP HANAの権限に合わせるには、DreamFactoryで設定したRBACシステムを活用してください。これにより各ユーザーのアクセスがロールに基づいて適切に制限されます。エンタープライズデプロイメントでは、マネージャー、フィールドワーカー、管理者向けに異なるアプリ体験を作成でき、それぞれが自分の責務に関連するデータのみを見られます。

アプリのパフォーマンスとスケーラビリティの改善

アプリが稼働してSAP HANAからデータをアクティブに引き出したら、ユーザーベースとデータの両方が成長するにつれてスピードとレスポンシブ性を維持することが次のハードルです。

大規模データセット向けのキャッシュとページネーションの有効化

SAP HANAテーブル全体をアプリに一度に読み込もうとすると、パフォーマンスが低下する可能性があります。代わりに、現在のビューに必要なデータのみを取得するサーバーサイドページネーションを使うようDreamFactoryのAPIを設定してください。

External CollectionにURLパラメータとフィルターを設定して取得レコード数を制限できます——例えば1ページあたり50レコード。DreamFactoryキャッシングを有効にするとレスポンス時間がさらに速くなります。

「REST APIのパフォーマンスを確保するには、クエリを最適化してクライアントに返すデータ量を最小化してください。」

Adaloの単一コードベースアーキテクチャでプラットフォーム全体にデプロイする

パフォーマンスはデータ取得だけの問題ではなく、プラットフォーム全体でアプリをどれだけ効率的にスケールできるかも重要です。Adaloの際立った機能の1つは単一コードベースアーキテクチャで、アプリを一度構築してウェブ・iOS・Androidにシームレスにデプロイできます。

2025年後半のAdalo 3.0インフラ刷新以降、プラットフォームは以前のバージョンより3〜4倍高速になり、アプリのニーズに合わせてスケールするモジュラーインフラを備えています。これにより任意のレコード制限がなく——SAP HANA連携はプラットフォームの制約に達することなくエンタープライズデータと共に成長できます。

「アプリケーションを一度開発し、ウェブベースアプリとしても、iOSとAndroidの両方と互換性のあるバージョンとしても、シームレスにデプロイします。」

アプリのパフォーマンスとユーザーアクティビティの監視

パフォーマンスを注視するには、SAP HANAバックエンドとAdaloフロントエンドの両方を監視する必要があります。DreamFactoryの管理パネルはレスポンス時間、遅いクエリ、接続の問題を示す可能性がある認証エラーなど、APIの使用状況に関するインサイトを提供します。

AdaloのX-Ray機能はパフォーマンス問題がユーザーに影響する前に特定し、アプリのロジックやデータ取得パターンの潜在的なボトルネックを浮き彫りにします。この積極的なアプローチにより、デプロイ後ではなく開発中に問題に対処できます。

SAP HANA連携の一般的な問題の修正

DreamFactoryを通じてAdaloをSAP HANAに接続する際、認証失敗、データフォーマットの不一致、API接続の問題の3つの主要領域で問題が発生することがあります。

認証エラーとAPIトークンの問題

AdaloをSAP HANAにリンクする際の最も頻繁な問題の1つが認証エラーです。例えば401 Unauthorizedエラーは通常APIキーまたはトークンが無効であることを意味します。SAP HANAまたはDreamFactoryで認証情報を再生成し、AdaloのExternal Collection設定でヘッダーを更新してください。

403 Forbiddenエラーが発生した場合は権限の問題の可能性が高いです。SAP BTPのユーザーロールを確認して必要な権限が有効になっていることを確認してください。

考えられるエラー 考えられる原因 推奨される解決策
401 Unauthorized 無効なAPIキーまたはトークン SAP HANA/DreamFactoryで認証情報を再生成し、Adaloのヘッダーを更新する。
403 Forbidden 権限不足 SAP BTPのユーザーロールを確認し、必要な権限を有効にする。
接続タイムアウト ファイアウォール/IPブロック 統合ツールのアウトバウンドIPアドレスをSAP HANAのallowlistに追加する。
404 Not Found 不正なAPIエンドポイント SAP BTP CockpitでSubaccount API URLを確認する。

データフォーマットと解析の問題

AdaloがSAP HANAからの数値や日付を解析できない場合、問題はデータ型の不一致にあることが多いです。例えば、通貨値はDECIMAL(22, 3)として、日付はDATEとして、テキストフィールドはデータを処理するのに十分な長さのNVARCHARとして保存されていることを確認してください。

API接続障害のデバッグ

接続の問題が疑われる場合は、まずSAP HANA Cloud CentralでSAP HANAインスタンスがRUNNING状態であることを確認してください。次に、DreamFactoryの接続設定にSQLエンドポイント、ホスト名、ポートが正しく入力されていることを確認してください。

さらなるデバッグには、PostmanまたはAdaloのAPIテストが非常に役立ちます。これらのツールにより問題を認証情報またはデータリクエスト自体に切り分けることができます。このプロセスはデータフローを確認するためにAirtableをExternal Collectionとして設定する方法に似ています。

AdaloでSAP HANA連携アプリをリリースする

パフォーマンスの最適化とトラブルシューティングが終わったら、アプリをリリースする時です。設定、接続、設計、テストのフェーズを無事に完了しました。

本番公開前に、IT専門家とベータテスターにアプリをレビューしてもらい、最後の調整を特定してください。Adaloの単一コードベースアーキテクチャにより、ウェブ・iOS・Androidプラットフォームでアプリを同時にリリースできます。このアプローチは開発を——従来のコーディング方法より最大20倍——加速します。

「コードを書かなくていい世界を想像してください。ただ言うだけでコンピューターがやってくれる。」 - Koushik Sen, コンピューターサイエンス講師, UC Berkeley

Adaloを使えば1つのビルドから本番対応のProgressive Web AppとネイティブiOS・Androidアプリをデプロイできます。プラットフォームで300万以上のアプリが作成され、2,000万以上の日次データリクエストが99%以上のアップタイムで処理されており、インフラはエンタープライズ規模でその実力を証明しています。

代替アプローチとの比較

SAP HANA連携アプリを構築するためのオプションを評価する際は、異なるプラットフォーム間のトレードオフを理解することで適切な選択をするのに役立ちます。

FlutterFlowは技術的なユーザー向けのローコードオプションですが、自分で別のデータベースをセットアップ・管理する必要があります。ビルダーも同時に2画面しか表示できませんが、Adaloは1つのキャンバスで最大400画面を表示できます。アプリストア公開にはユーザーごとに月$70からの価格設定ですが、データベースはまだ含まれていません。

Bubbleは広範なカスタマイズを提供しますが、モバイルアプリにはウェブラッパーを使用しており、大規模展開時にパフォーマンスの課題をもたらす可能性があります。価格はWorkload Unitsによる使用量ベースの課金とレコード制限で月$69からです。

Adaloのアプローチは月$36で無制限の使用量、有料プランで無制限のデータベースレコード、真のネイティブiOS・Androidコンパイルを含みます。1つのビルドがそれぞれのアプリストアにデプロイされたウェブ・Android・iOSアプリを自動的に更新します。

よくある質問

他のアプリビルディングソリューションよりAdaloを選ぶ理由は?

AdaloはAIを活用したアプリビルダーで、真のネイティブiOSおよびAndroidアプリを作成します。ウェブラッパーとは異なり、ネイティブコードにコンパイルし、1つのコードベースからApple App StoreとGoogle Play Storeの両方に直接公開します。有料プランでは無制限のデータベースレコードと使用量ベースの課金なしを提供しています。

App Storeにアプリを構築・公開する最速の方法は?

Adaloのドラッグ&ドロップインターフェースとAI支援構築機能により、数ヶ月ではなく数日でアイデアから公開済みアプリへ移行できます。Magic Startは説明からアプリの完全な基盤を生成し、AdaloはApp Store申請プロセスを処理するので証明書やプロビジョニングプロファイルではなく機能に集中できます。

DreamFactoryはSAP HANAのAPI作成をどのように簡単にしますか?

DreamFactoryはノーコードのポイント&クリックインターフェースでSAP HANAのAPI作成を簡単にします。SAP HANAデータベースから直接CRUD操作とODataサポートを含む完全なRESTエンドポイントを自動的に生成します。つまりカスタムコーディングをスキップしてより速くAPIを起動できます。

AdaloをSAP HANAに接続するには何が必要ですか?

3つの主要コンポーネントが必要です:API認証情報とODataサービスを有効にしたSAP HANAアカウント、REST APIアクセスのためのExternal Collections機能のロックを解除するAdalo Proサブスクリプション($36/月)、そしてSAP HANAデータをRESTful APIに変換するミドルウェアとして機能するDreamFactory。

AdaloアプリでSAP HANAからの大規模データセットをどう処理しますか?

DreamFactoryのAPIでサーバーサイドページネーションを有効にして現在のビューに必要なデータのみを取得します(通常1ページあたり50レコード)。DreamFactoryキャッシングを有効にしてレスポンス時間を速め、External Collectionでフィルタリングパラメータを使用します。Adaloの有料プランにはレコード制限がないので、データと共にアプリをスケールできます。

SAP HANA連携アプリを複数のプラットフォームに同時にデプロイできますか?

はい、Adaloの単一コードベースアーキテクチャにより一度構築してウェブ・iOS・Androidに同時にデプロイできます。アプリへの更新はすべてのプラットフォームに自動的に適用されるため、SAP HANAデータをどこでもアクセス可能に保ちながら別々のコードベースを維持する必要がありません。

エンタープライズデータを使ったモバイルアプリにはAdaloの方がFlutterFlowより優れていますか?

非技術チームには、はい。FlutterFlowは技術的なユーザー向けのローコードで、別途データベースのセットアップが必要です。Adaloには組み込みのデータベース機能があり、「PowerPointと同じくらい簡単」と言われるビジュアルビルダーを持ち、FlutterFlowの2画面制限に対してAdaloは最大400画面を同時に表示できます。

テンプレートからアプリ開発をスタート

既製のアプリテンプレートを使って、すばやくアプリを構築しましょう

ノーコードで開発を始める
言語: 日本語