mcpField
S
sap-sac-planning

sap-sac-planning

github.com/secondskyデータ・データベース480630 回インストール3 週間前に更新
リポジトリ

sap-sac-planning について

SAP Analytics Cloud のプランニングアプリ開発者向けスキルです。計画モデル、データ入力、バージョン、データアクション、ワークフローを扱います。Datasphere、BPC 接続、デバッグのガイダンスも含み、書き戻しや公開操作には明示的な承認を求めます。

主な機能

  1. 01計画モデルとデータ入力の設定
  2. 02データアクションとマルチアクションの連携
  3. 03バージョン、タスク、データロックの管理
  4. 04プランニング API と高度な数式
  5. 05データアクションの追跡とトラブルシューティング

活用シーン

  1. 01予算・予測アプリケーションの構築
  2. 02配賦とモデル横断プランニングのワークフロー設定
  3. 03バージョン公開と承認タスクの管理
  4. 04データアクションを追跡し中間結果を確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/secondsky/sap-skills --skill sap-sac-planning

インストール後、Claude Code で/sap-sac-planningを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
agents/
openai.yaml
references/
advanced-formulas.md
ai-planning-analytics.md
allocations.md
analytics-designer-planning.md
api-reference.md
api-snippets.md
bpc-live-connection.md
data-action-tracing.md
data-actions.md
data-locking.md
edge-cdp-control.md
input-tasks.md
javascript-patterns.md
job-monitoring.md
modeling-basics.md
multi-actions.md
planning-workflows.md
predictive-conversion.md
s4hana-acdocp-export.md
scheduling-calendar.md
seamless-planning-datasphere.md
value-driver-trees.md
version-edit-modes.md
version-management.md
version-publishing-notes.md
whats-new-2026-planning.md
templates/
data-action-checklist.md
multi-action-checklist.md

詳細

SAP Analytics Cloud Planning スキル

関連スキル

  • sap-sac-scripting:計画操作を自動化する Analytics Designer/OSE スクリプトに使用します
  • sap-datasphere:Datasphere との Seamless Planning とデータ基盤の設計に使用します
  • sap-sac-custom-widget:計画アプリケーションにカスタムウィジェットが含まれる場合に使用します
  • sap-dependency-security:ソースを固定した SAC MCP のセットアップとローカルツールの信頼性確保に使用します

SAP Analytics Cloud でエンタープライズ向け計画アプリケーションを構築するための包括的なスキルです。


参考資料の追加項目(2026)

  • 実行ガイド:references/data-actions.md、references/multi-actions.md、references/allocations.md、references/scheduling-calendar.md、references/data-locking.md
  • モデリングとガバナンス:references/modeling-basics.md、references/version-management.md、references/version-edit-modes.md、references/version-publishing-notes.md
  • 計算とインテリジェンス:references/advanced-formulas.md、references/predictive-conversion.md、references/ai-planning-analytics.md、references/api-snippets.md
  • ワークフロー支援:references/input-tasks.md、references/job-monitoring.md
  • ブラウザーでのトリアージ:共通の sap-browser-automation は、アプリ内での手動認証、承認済み Edge プロファイルのコピー、新しい Edge/CDP のセットアップ、DevToolsActivePort によるフォールバック、対象の選択に使用します。ローカルの references/edge-cdp-control.md には、計画の書き戻しに関する安全策が記載されています
  • 2025年に追加:references/seamless-planning-datasphere.md、references/bpc-live-connection.md、references/value-driver-trees.md、references/data-action-tracing.md
  • 2026年の新機能:references/whats-new-2026-planning.md
  • すぐに使えるテンプレート:templates/data-action-checklist.md、templates/multi-action-checklist.md、templates/parameter-table.md

詳細な説明をワンクリックで参照できるようにしつつ、このファイルの説明を簡潔に保つために活用してください。

認証が必要な SAC 計画のブラウザー検査では、ブラウザー/認証レイヤーに sap-browser-automation を使用し、計画固有の制約を確認するためにローカルの references/edge-cdp-control.md を読み込んでください。CDP は、計画テーブル、コンソールエラー、データアクションのステータス、承認済みのスクリーンショットをローカルで読み取り専用のトリアージに使用してください。書き戻し、公開、データアクション、マルチアクション、またはロックを変更する操作を行う前に、明示的な承認を得てください。


目次

このスキルを使用する場面

次のようなタスクに取り組む場合は、このスキルを使用します。

計画アプリケーションの開発:

  • データ入力機能を備えた計画対応ストーリーの作成
  • 計画用分析デザイナーアプリケーションの構築
  • 入力フォームと計画テーブルの実装
  • バージョンディメンションと日付ディメンションを使用した計画モデルの設定
  • 計画シナリオ用データソースの設定

データアクションとマルチアクション:

  • コピー、配賦、計算用データアクションの作成
  • 計画オペレーションをオーケストレーションするマルチアクションの構築
  • パラメーター(メンバー、数値、文字列、日時型)の設定
  • 埋め込みデータアクションの実装
  • 外部連携用 API ステップの設定

バージョン管理:

  • パブリックバージョンとプライベートバージョンの管理
  • 公開ワークフロー(Publish As、Publish Private Data)
  • プライベートバージョンの共同作業者との共有
  • API によるバージョンの作成と削除

計画ワークフロー:

  • カレンダーベースの計画プロセスの設定
  • 一般タスク、レビュータスク、複合タスクの作成
  • 複数レベルの承認ワークフローの実装
  • データロックタスクの設定
  • タスクの依存関係の管理

JavaScript 計画 API:

  • データ入力に getPlanning() API を使用
  • マスターデータに PlanningModel API を使用
  • フィルタリングとクエリに DataSource API を使用
  • 計画の自動化スクリプトの作成
  • API によるバージョン管理

データ入力と配賦:

  • 子メンバーへのスプレッドの実装
  • 兄弟メンバー間の分配の設定
  • ルールベースの配賦の設定
  • 計画テーブルでのコピー/貼り付け操作
  • 高度な数式を使った計算

データロック:

  • モデルのデータロックの設定
  • ロック状態(ロック済み、制限付き、オープン)の設定
  • カレンダーでのデータロックタスクの作成
  • イベントベースのデータロックの実装
  • マルチアクションへのデータロックの統合

Datasphere によるシームレスな計画(2025):

  • Datasphere ストレージを使った計画モデル
  • 統合データによるモデル横断計画
  • Datasphere への直接永続化
  • 計画のためのエンタープライズデータガバナンス

BPC ライブ接続:

  • S/4HANA 上の BPC Embedded を使った計画
  • SAC からの BPC 計画シーケンスの実行
  • BPC によるマスターデータ計画
  • ライブデータ接続の設定

バリュードライバーツリー:

  • ビジネスバリューチェーンの可視化の構築
  • What-if 分析とシナリオシミュレーション
  • ドライバーベースの計画
  • インタラクティブな計画ダッシュボード

データアクションのデバッグ:

  • データアクションの実行トレース
  • デバッグ用トレースポイントの追加
  • 中間結果の分析
  • 配賦に関する問題のトラブルシューティング

クイックスタート

計画対応ストーリーの作成
  1. 計画モデルの作成:必要なディメンションを設定します。

    • バージョンディメンション(必須)
    • 日付ディメンション(必須)
    • アカウントディメンション(推奨)
    • その他の業務ディメンション
  2. ストーリーにテーブルウィジェットを追加し、計画モデルにリンクします。

  3. テーブルで計画を有効化します。

    • テーブルを選択 → Planning パネル → Enable Planning
    • バージョン選択(パブリックまたはプライベート)を設定します。
  4. データ入力を設定します。

    • 編集可能なメジャー/アカウントを設定します。
    • スプレッドの動作を設定します。
    • 検証ルールを設定します。
分析デザイナー計画アプリケーションの作成
  1. 分析アプリケーションを作成します(最適化ストーリーではありません)。
  2. 計画モデルをデータソースとして追加します。
  3. テーブルウィジェットを追加し、計画を有効化します。
  4. 次の処理のスクリプトを作成します。
    • バージョン選択
    • データ送信
    • カスタム検証
    • ワークフロートリガー

中核となる概念

モデルの種類

計画モデル:

  • データの書き戻しに対応
  • バージョンディメンションと日付ディメンションが必須
  • スプレッド、分配、配賦が可能
  • データロックに対応
  • 予算編成、予測、計画に使用

分析モデル:

  • 読み取り専用(書き戻し不可)
  • 必須ディメンションなし
  • レポート作成時のパフォーマンスが向上
  • 計画が不要な場合に使用
バージョン管理

パブリックバージョン:

  • アクセス権を持つすべてのユーザーに表示されます
  • 組織全体で共有されます
  • 更新するには公開が必要です

プライベートバージョン:

  • 作成者のみに表示されます(共有されている場合を除く)
  • シミュレーションや仮定分析に使用されます
  • パブリックバージョンまたは新しいバージョンとして公開できます

編集モード:

  • パブリックバージョンの編集中に、一時的なプライベートコピーが作成されます
  • 公開されるまで、変更は編集者のみに表示されます
  • 公開時に自動検証されます

参照:詳細なワークフローについては、references/version-management.md を参照してください。

プランニング API の概要

getPlanning() API - テーブルのプランニング操作:

// Check if planning is enabled
var isEnabled = Table_1.getPlanning().isEnabled();

// Get public versions
var publicVersions = Table_1.getPlanning().getPublicVersions();

// Get private version
var privateVersion = Table_1.getPlanning().getPrivateVersion();

// Set user input (data entry)
Table_1.getPlanning().setUserInput(selection, value);

// Submit data changes
Table_1.getPlanning().submitData();

PlanningModel API - マスターデータ操作:

// Get dimension members with properties
var members = PlanningModel_1.getMembers("CostCenter");

// Create new members
PlanningModel_1.createMembers("CostCenter", [
    {id: "CC100", description: "Marketing"}
]);

// Update existing members
PlanningModel_1.updateMembers("CostCenter", [
    {id: "CC100", description: "Marketing Dept"}
]);

// Delete members
PlanningModel_1.deleteMembers("CostCenter", ["CC100"]);

DataSource API - フィルタリングとクエリ:

// Set dimension filter
Table_1.getDataSource().setDimensionFilter("Version",
    "[Version].[parentId].&[public.Actual]");

// Get members with booked values only
var members = Table_1.getDataSource().getMembers("Account",
    {accessMode: MemberAccessMode.BookedValues});

// Remove filter
Table_1.getDataSource().removeDimensionFilter("Version");

参照:API ドキュメントの全容については、references/api-reference.md を参照してください。


データアクション

データアクションは、プランニングモデルの計算とデータ操作を実行します。

ステップの種類
ステップの種類目的
コピーディメンション/バージョン間でデータを移動します
詳細式複雑な計算を実行します
配賦ルールに基づいて配分します
通貨換算通貨を換算します
埋め込みデータアクション別のデータアクションを実行します
コピー手順の作成
Source:
  Version = Actual
  Year = 2024

Target:
  Version = Budget
  Year = 2025

Mapping:
  Account = Account (same)
  CostCenter = CostCenter (same)
詳細式の例
// Calculate forecast = Actual + (Budget - Actual) * 0.5
[Version].[Forecast] = [Version].[Actual] +
    ([Version].[Budget] - [Version].[Actual]) * 0.5
パラメーター

パラメーターを追加すると、データアクションを再利用できます:

  • メンバーパラメーター:ディメンションメンバーを選択します
  • 数値パラメーター:数値を入力します
  • 文字列パラメーター:テキストを入力します(2025+)
  • 日時パラメーター:日付/時刻を選択します(2025+)

参照:設定ガイドの全容については、references/data-actions.md を参照してください。


マルチアクション

マルチアクションは、複数のモデルやバージョンにまたがるプランニング操作をまとめて実行します。

利用可能なステップの種類
  1. データアクションステップ:パラメーターを指定してデータアクションを実行します
  2. バージョン管理ステップ:バージョンを公開します
  3. 予測ステップ:予測シナリオを実行します
  4. データインポートステップ:SAP ソースからインポートします
  5. API ステップ:外部 HTTP API を呼び出します
  6. データロックステップ:データスライスをロック/ロック解除します
  7. PaPM ステップ:Profitability and Performance Management を実行します
マルチアクションフローの例
1. Clean target version (Data Action)
2. Import actuals (Data Import)
3. Run forecast (Predictive)
4. Calculate allocations (Data Action)
5. Publish to public version (Version Management)
6. Lock published data (Data Locking)
モデル間パラメーター

パブリックディメンションを使用する場合は、モデルの異なるステップ間で値を共有するために、モデル間パラメーターを作成します。

参照:マルチアクションの設定については、references/data-actions.md を参照してください。


S/4HANA ACDOCP エクスポート

SAC から SAP S/4HANA の ACDOCP テーブル(ERP の計画データを一元管理するストレージ)へネイティブのプランニングデータをエクスポートする、従来の非推奨パスです。2026 年第 2 四半期時点で、SAP はモデルデータの SAP S/4HANA へのエクスポートを非推奨とし、代わりに書き戻し統合シナリオを推奨しています。このセクションは既存の環境の保守用として残しており、新しいプランニングソリューションの標準設計として使用するものではありません。

アーキテクチャ
SAC Planning Model → Data Export Service → Cloud Connector → API_PLPACDOCPDATA_SRV → ACDOCP
前提条件
要件詳細
レガシーモードプランニングモデルで有効にする必要があります
OData サービス/IWFND/MAINT_SERVICE で API_PLPACDOCPDATA_SRV を有効化します
Cloud Connectorオンプレミスの S/4HANA で必要です
エクスポートに必要なディメンション
  • バージョン(計画カテゴリ):エクスポートできるのはパブリックバージョンのみです
  • FiscalYearPeriod:エクスポート範囲に必須です
  • メジャー:エクスポートジョブごとに対象メジャーは 1 つのみです
  • G/L 勘定:ACDOCP へのマッピングに必要です
エクスポートの動作
  • エクスポートされたデータは、範囲内の既存データを上書きします
  • S/4HANA は変更に対する差分レコードを生成します
  • 削除は反映されません:ACDOCP のデータをクリアするには、値を 0 に設定して再エクスポートします
  • エクスポートジョブの作成後はフィルターを変更できないため、ジョブには内容がわかる名前を付けてください
レガシー保守チェックリスト

非推奨化の影響、SAP Note 3707288 のガイダンス、サポートされている移行パスを確認せずに、新しい実装でこのパスを作成しないでください。

  1. 計画モデルでレガシーモードを有効にします
  2. Cloud Connector を使用して S/4HANA 接続を作成します
  3. Data Management → データエクスポートジョブを作成します
  4. ディメンションを ACDOCP フィールドにマッピングします
  5. エクスポート範囲を定義します(FiscalYearPeriod + PlanningCategory は必須です)
  6. エクスポートをスケジュールするか、実行します

参考:レガシー設定の詳細については references/s4hana-acdocp-export.md を、Q2 2026 の非推奨化に関する注記については references/whats-new-2026-planning.md を参照してください。


Datasphere によるシームレスな計画

シームレスな計画では、SAC の計画と SAP Datasphere を統合し、計画データにエンタープライズレベルのストレージとガバナンスを提供します。

アーキテクチャの概要
SAC (Planning Logic & UX) ──Direct Persistence──► Datasphere (Data Storage & Governance)

SAC に残るもの:計画計算、バージョン管理、データアクション、カレンダーのワークフロー Datasphere に移行するもの:ファクトデータ、公開ディメンション、物理ストレージ、データガバナンス

主なメリット
メリット説明
データの統合ストレージを一元化し、一貫性を確保します
直接永続化SAC での変更は Datasphere に即座に反映されます
リソースの最適化SAC のメモリとストレージの使用量を削減します
エンタープライズでの再利用性Datasphere のモデリングを計画データに拡張できます
前提条件
  1. SAP HANA Cloud 上の SAC テナント - System → About で確認します
  2. 同じ場所に配置されたテナント - SAP データセンターの同じリージョン内にあること
  3. 1:1 のテナント連携 - 1 つの SAC テナントと 1 つの Datasphere テナントを連携させること
  4. 一貫した IdP - 同じ SAML ID プロバイダーを使用すること
  5. Datasphere のスペースロール - DW Modeler、DW Integrator、または DW Space Administrator
クイックセットアップ
  1. 新しい計画モデルを作成します
  2. データストレージの場所として SAP Datasphere Space を選択します
  3. ディメンションを設定します(公開ディメンションは Datasphere に保存されます)
  4. モデルの詳細で Expose to Datasphere を有効にします
  5. SAC で通常どおり計画します。変更は自動的に永続化されます
モデル間計画

モデル間操作(データアクション、マルチアクション)のすべてのモデルは、同じ Datasphere スペースに存在する必要があります。

参考:詳細なアーキテクチャ、設定、トラブルシューティングについては references/seamless-planning-datasphere.md を参照してください。


BPC ライブ接続

SAC は S/4HANA 上の BPC Embedded へのライブデータ接続をサポートしており、SAC の最新インターフェースを使用しながら BPC エンジンで計画できます。

サポート対象の BPC バージョン
バージョン計画のサポート
BPC Embedded (S/4HANA)すべての計画機能
BPC for NetWeaver制限あり(読み取り専用)
BPC StandardBPC へのエクスポートが必要
BPC ライブ接続で利用できる計画機能
  • データ入力:BPC モデルに直接入力します
  • 計画シーケンス:SAC から FOX スクリプトを実行します
  • バージョン管理:BPC がカテゴリを制御します
  • マスターデータ計画:ディメンションのプロパティを更新します
  • データロック:BPC が連携をロックします
BPC 計画シーケンスの実行
// Execute BPC planning sequence
PlanningSequence_1.setParameterValue("FISCAL_YEAR", "2025");
PlanningSequence_1.setParameterValue("VERSION", "PLAN");
PlanningSequence_1.execute().then(function() {
    Table_1.getDataSource().refreshData();
});
BPC ライブ接続と SAC ネイティブの使い分け

BPC ライブ接続を使用する場合:既存の BPC 資産がある場合、複雑な FOX スクリプトがある場合、BW レポートと統合する場合 SAC ネイティブを使用する場合:新規実装の場合、要件がよりシンプルな場合、モバイルを優先するアプリケーションの場合

参考:セットアップ、前提条件、トラブルシューティングについては references/bpc-live-connection.md を参照してください。


バリュードライバーツリー

バリュードライバーツリー(VDT)は、計画モデル内で値がどのように流れるかを可視化し、ドライバーベースの計画と What-If 分析を可能にします。

ユースケース
シナリオ例
ドライバーベースの計画価格や従業員数が収益に与える影響をモデル化します
What-If 分析シナリオをシミュレーションし、連鎖的な影響を確認します
戦略的計画バリューチェーンへの影響を可視化します
経営層へのプレゼンテーションタッチスクリーンに適した会議室向けの表示
バリュードライバーツリーの作成
  1. ストーリーまたはアプリケーションにバリュードライバーツリーウィジェットを追加します
  2. 日付ディメンションを含む計画モデルを選択します
  3. ノードを追加します(モデルから自動作成するか、手動で作成します)
  4. ノードごとにメジャーと構造を設定します
  5. ノードをリンクします(ドライバーは右側、結果は左側)
  6. 表示する日付範囲を設定します
ノードの設定
設定説明
1 つの勘定+1 つの構造値を 1 行で表示します
複数の勘定勘定ごとに行を表示します(例:売上+数量)
複数の構造シナリオ/通貨を比較します
JavaScript API
// Get VDT reference
var vdt = ValueDriverTree_1;

// Get selected node value
var value = vdt.getSelectedNode().getValue("Revenue", "2025Q1");

// Collapse/expand nodes
vdt.collapseNode("Node_Revenue");
vdt.expandNode("Node_Revenue");

リファレンス:詳しい設定手順とベストプラクティスについては、references/value-driver-trees.mdを参照してください。


データアクションのトレース

データアクションのトレースは、データアクションの実行中に中間結果を調べるためのデバッグツールです。

トレースを使用する場面
シナリオトレースの活用方法
新規開発各ステップで期待どおりの結果が生成されることを検証します
エラーのデバッグ不正なデータの原因となるステップを特定します
パフォーマンスの調査最も多くのデータを処理しているステップを確認します
配賦のデバッグドライバー比率と分布を検証します
トレースポイントの追加
  1. データアクションデザイナーでデータアクションを開きます
  2. トレースするステップに移動します
  3. トレースポイントの追加をクリックします(または右クリックして → トレースポイントの追加を選択します)
  4. わかりやすい名前を付けます(例:「コピーの後」、「配賦の前」)
トレースモードの実行
  1. デザイナーでデータアクションを開きます
  2. トレース付きで実行をクリックします
  3. 必要なパラメーターを設定します
  4. 実行すると、各トレースポイントでデータが取得されます
  5. トレース結果パネルで結果を確認します
結果の分析
表示説明
トレースポイントのデータその時点のすべての値
前回からの変更トレースポイント間の差分
フィルター済み表示特定のデータに絞り込みます
高度な数式での TRACE()
// Add tracepoints in script
[Revenue] = [Quantity] * [Price]
TRACE("After_Revenue_Calc")

[Final] = [Revenue] * (1 + [Tax])
TRACE("After_Tax")

リファレンス:デバッグの完全ガイドについては、references/data-action-tracing.mdを参照してください。


計画ワークフロー(カレンダー)

SAP Analytics Cloud のカレンダーは、共同計画プロセスを管理します。

タスクの種類

一般タスク:担当者によるデータ入力

  • 作業ファイル(ストーリー/アプリケーション)を添付します
  • 期限と通知を設定します
  • 完了状況を追跡します

レビュータスク:承認ワークフロー

  • 一般タスクの結果をレビューします
  • 提出内容を承認または却下します
  • ステータス変更時に自動で通知します

複合タスク:入力とレビューの組み合わせ

  • 単一レベルのワークフローに対して、簡素化された承認を行います
  • 地域別計画向けのドライビングディメンションをサポートします

データロックタスク:ロック変更のスケジュール設定

  • ロック/ロック解除するデータスライスを指定します
  • 目標とするロック状態を設定します
  • イベントベースでトリガーします
複数レベルの承認
Round 1: Regional Managers review regional plans
    ↓ (on approval)
Round 2: Finance Director reviews consolidated plan
    ↓ (on approval)
Round 3: CFO final approval
    ↓ (on approval)
Data Locking: Lock approved plan data
タスクの依存関係

先行タスクを設定して、順次実行されるワークフローを作成します。

  • 先行タスクが完了すると、レビュ―タスクが自動的に開始されます
  • 承認イベントをトリガーとして、データロックタスクが実行されます

リファレンス:カレンダーの設定については、references/planning-workflows.mdを参照してください。


スプレッドと分布

スプレッド(垂直)

親メンバーから子メンバーに値を分配します。

  • 均等スプレッド:子メンバー間で均等に分配します
  • 比例スプレッド:既存の比率を維持します
  • 自動:SAC が最適な方法を決定します
// Spreading happens automatically when entering at aggregate level
// Example: Enter 1000 at "Total Regions" spreads to child regions
分布(水平)

同じ階層レベルのメンバー間で値を移動します。

  • ソースセルとターゲットセルを選択します
  • 分布方法を選択します
  • コンテキストメニューまたはスクリプトで適用します
ルールによる配賦

データアクションで構造化された配賦を設定します。

  • パーセンテージ分布に使用するドライバー勘定を定義します
  • 配賦先を設定します
  • データアクションまたはマルチアクションで実行します

データロック

計画サイクル中および終了後に、計画データを保護します。

ロック状態
状態データ入力オーナーによる編集
オープンはいはい
制限付きいいえ(オーナーを除く)はい
ロック済みいいえいいえ
混在状況によります状況によります(選択範囲に複数の状態が含まれます)
設定
  1. 計画モデルでデータロックを有効化
  2. ドライビングディメンションを定義(例:Region、Version)
  3. データスライスにオーナーを割り当て
  4. モデル設定でロック領域を設定
スクリプト例
// Get data locking object
var dataLocking = Table_1.getPlanning().getDataLocking();

// Get lock state for selection
var selection = Table_1.getSelections()[0];
var lockState = dataLocking.getState(selection);

// Check if locked
if (lockState === DataLockingState.Locked) {
    Application.showMessage("This data is locked.");
}

参照:データロックのパターンについては、references/planning-workflows.md をご覧ください。


メンバーを動的に管理する

実行時にディメンションメンバーを動的に作成、更新、削除します。

サポートされる操作
// Create new member
PlanningModel_1.createMembers("CostCenter", {
    id: "CC_NEW",
    description: "New Cost Center"
});

// Update existing member
PlanningModel_1.updateMembers("CostCenter", {
    id: "CC_NEW",
    description: "Updated Description"
});

// Get single member
var member = PlanningModel_1.getMember("CostCenter", "CC_NEW");

// Get members with pagination
var members = PlanningModel_1.getMembers("CostCenter", {
    offset: "0",
    limit: "100"
});
重要な制限事項
  • ディメンションタイプ:「Generic」ディメンションのみサポートされます(Account、Version、Time、Organization は対象外です)
  • 更新が必要:メンバーを変更した後に Application.refreshData() を呼び出してください
  • カスタムプロパティ:名前の競合を避けるためにプレフィックスを使用してください(例:「CUSTOM_Region」)

参照:API の全ドキュメントについては、references/analytics-designer-planning.md をご覧ください。


よく使われる JavaScript パターン

属性で有効なバージョンを検索する
var allVersions = PlanningModel_1.getMembers("Version");
var activeVersion = "";

for (var i = 0; i < allVersions.length; i++) {
    if (allVersions[i].properties.Active === "X") {
        activeVersion = allVersions[i].id;
        break;
    }
}
console.log("Active Version: " + activeVersion);
計画サイクルからフィルターを設定する
Application.showBusyIndicator();
Table_1.setVisible(false);

// Find active planning cycle
var cycles = PlanningModel_1.getMembers("PlanningCycle");
var activeCycle = "";

for (var i = 0; i < cycles.length; i++) {
    if (cycles[i].properties.Flag === "ACTIVE") {
        activeCycle = cycles[i].id;
        break;
    }
}

// Apply MDX filter
Table_1.getDataSource().setDimensionFilter("Date",
    "[Date].[YQM].&[" + activeCycle + "]");

Table_1.setVisible(true);
Application.hideBusyIndicator();
バージョンの公開
// Get forecast version
var forecastVersion = Table_1.getPlanning().getPublicVersion("Forecast2025");

// Check if changes need publishing
if (forecastVersion.isDirty()) {
    forecastVersion.publish();
    Application.showMessage("Version published successfully.");
}
データアクションの実行
// Execute data action with parameters
DataAction_1.setParameterValue("Version", "Budget");
DataAction_1.setParameterValue("Year", "2025");

DataAction_1.execute();

// Or execute in background
DataAction_1.executeInBackground();

参照:その他の例については、references/javascript-patterns.md をご覧ください。


パフォーマンスに関するベストプラクティス

データアクションの最適化
  1. 入力コントロールを使用する:パラメーターにリンクしてデータ範囲を縮小します
  2. 関連するアクションを埋め込む:同じモデル/バージョンのアクションを組み合わせます
  3. モデル間の操作を最小限にする:可能な場合はデータを単一のモデルに保持します
  4. バッチ処理を使用する:操作を単一のトランザクションにまとめます
ストーリーのパフォーマンス
  1. データロックを選択的に有効化する:必要なモデルでのみ有効にします
  2. 成長モードを使用する:ページネーションを含む大規模なテーブルに使用します
  3. 表示するディメンションを制限する:表示されるデータセルを減らします
  4. フィルターを最適化する:データ入力の前にストーリーフィルターを適用します
API のパフォーマンス
  1. 転記済み値フィルターを使用する:転記済みデータのみを取得します
  2. getMembers() の結果を制限する:limit パラメーターを設定します
  3. メンバーリストをキャッシュする:再利用する場合はスクリプト変数に保存します
  4. ビジーインジケーターを使用する:体感パフォーマンスを向上させます

トラブルシューティング

問題:データが保存されない

確認項目:

  1. テーブルで計画機能が有効になっていますか?
  2. ユーザーに計画権限がありますか?
  3. データがロックされていますか?
  4. 検証ルールに違反していませんか?

デバッグ:

console.log("Planning enabled: " + Table_1.getPlanning().isEnabled());
var lockState = Table_1.getPlanning().getDataLocking().getState(selection);
console.log("Lock state: " + lockState);
問題:バージョンが公開されない

確認項目:

  1. 変更は有効なものだけですか?(無効な変更は破棄されます)
  2. データアクセス制御で書き込みが許可されていますか?
  3. バージョンはすでに公開されていませんか?
問題:データアクションが失敗する

確認項目:

  1. ソースデータは存在しますか?
  2. ターゲットバージョンは書き込み可能ですか?
  3. ディメンションマッピングは正しいですか?
  4. パラメーターは正しく設定されていますか?

デバッグ:「Show Only Leaves」オプションを指定して、データアクションのトレーステーブルを使用します。

問題:getMembers() が空の結果を返す

確認項目:

  1. ディメンション名は正しいですか?
  2. モデルは接続されていますか?
  3. ユーザーに読み取りアクセス権がありますか?
  4. 正しい API(PlanningModel と DataSource のどちらか)を使用していますか?

公式ドキュメントへのリンク

必須リソース:

データアクションとマルチアクション:

バージョン管理:

データロック:

Allocations & Spreading:

Learning Resources:


同梱のリファレンスファイル

このスキルには、包括的なリファレンスドキュメントが26個含まれています。

API とスクリプティング:

  1. references/api-reference.md:計画用の Analytics Designer API 完全リファレンス
  2. references/analytics-designer-planning.md:計画スクリプティング、setUserInput、バージョン、データロック、オンザフライでのメンバー作成
  3. references/api-snippets.md:API コードの簡単な例とスニペット

計画の主な機能: 4. references/data-actions.md:データアクション、マルチアクション、パラメーター、ステップ 5. references/multi-actions.md:複数の計画オペレーションをオーケストレーションする方法 6. references/allocations.md:ルールベースの配分と割り当て 7. references/advanced-formulas.md:複雑な計算式と数式 8. references/predictive-conversion.md:予測フォーキャスティングの統合

ワークフローとコラボレーション: 9. references/planning-workflows.md:カレンダー、タスク、承認、データロック 10. references/scheduling-calendar.md:計画カレンダーの設定 11. references/input-tasks.md:共同でのデータ入力タスク 12. references/job-monitoring.md:データアクションの実行状況の追跡

バージョン管理: 13. references/version-management.md:バージョン、公開、共有、編集モード 14. references/version-edit-modes.md:バージョン編集のワークフロー 15. references/version-publishing-notes.md:公開に関するベストプラクティス

統合と応用: 16. references/s4hana-acdocp-export.md:既存のランドスケープ向けの、レガシー/非推奨 S/4HANA ACDOCP エクスポートのリファレンス 17. references/ai-planning-analytics.md:AI を活用した計画機能

開発: 18. references/javascript-patterns.md:コードスニペット、パターン、ベストプラクティス 19. references/modeling-basics.md:計画モデルの基本 20. references/data-locking.md:データロックの設定と管理 21. references/edge-cdp-control.md:共有の sap-browser-automation 認証、Edge/CDP、および復旧レイヤーを使用する SAC 計画用ブラウザーアドオン

2025年の新機能: 22. references/seamless-planning-datasphere.md:シームレス計画のアーキテクチャ、前提条件、SAP Datasphere を使用した設定 23. references/bpc-live-connection.md:BPC Embedded ライブ接続、計画シーケンス、マスターデータ計画 24. references/value-driver-trees.md:バリュードライバーツリーの設定、ノード構成、JavaScript API 25. references/data-action-tracing.md:データアクションのトレース、トレースポイント、デバッグ手法

2026年の新機能: 26. references/whats-new-2026-planning.md:QRC1 および QRC2 の2026年計画機能、非対称レポート、複合バージョン管理、AI 支援データアクション、API の機能強化


Claude への指示

このスキルを使用する際は、次の点に従ってください。

  1. 最初にモデルタイプを確認する - 書き込み操作では、分析モデルではなく計画モデルであることを確認します
  2. 計画が有効になっていることを確認する - テーブルで計画が有効になっている必要があります
  3. 適切な API を使用する - マスターデータには PlanningModel、トランザクションには getPlanning() を使用します
  4. バージョンを正しく扱う - 下書きにはプライベートバージョンを使用し、準備ができたら公開バージョンに公開します
  5. データロックを遵守する - 編集を提案する前にロック状態を確認します
  6. ビジーインジケーターを使用する - UX を向上させるため、時間のかかる処理に使用します
  7. MDX 構文に従う - ディメンションフィルターには [Dim].[Hierarchy].&[Member] を使用します
  8. データアクションをテストする - 本番環境にデプロイする前にトレースを使用します
  9. パフォーマンスを考慮する - フィルターを適用してデータ範囲を絞り込みます
  10. ドキュメントへのリンクを含める - 回答に関連する SAP Help のリンクを含めます

トラブルシューティングの場合:

  • コンソールでスクリプトエラーを確認します
  • モデルの接続を確認します
  • データアクションのログを確認します
  • まず簡略化したシナリオでテストします
  • ユーザー権限とデータアクセスを確認します

2026年の新機能

QRC1 2026 (2026.3)
  • AI 支援によるデータアクション: 自然言語のコメントから高度なフォーミュラスクリプトを生成したり、既存のスクリプトからコメントを生成したりできます。
  • Snowflake へのライブデータ接続: プランニング対応モデルは Snowflake にライブ接続できます。
  • ストーリーのバージョン管理: 安全な反復開発のために、ストーリーのメジャーバージョンを最大 10 個まで管理できます。
QRC2 2026 (2026.8)
  • 非対称レポーティング: 行/列ごとに異なる期間、階層、メジャーを持つテーブル。プランニングデータの入力に対応します。
  • 複合バージョン管理: ロールバック対応で、複合のバージョンを最大 10 個まで管理できます。
  • Job Monitor のデータエクスポート API: データ抽出ジョブとデルタ計算ジョブを追跡できます。
  • データインポートサービス API の強化: マスターデータを Datasphere のパブリックディメンションにインポートできます。外部ファクトデータをシームレスプランニングのプライベートバージョンにインポートできます。
  • onAfterExecute イベントの強化: 追加のアップロード情報(メッセージ、統計、拒否されたレコード、ターゲットバージョン、ファイル名)。
  • マルチアクション API ステップ: HTTP 204 レスポンス: 成功レスポンスとして受け入れられます。
  • カレンダー: チーム参照の保持: イベントのアクティベーション時にチームが自動同期されます。
  • Just Ask での高度なフィルターの併用: 期間フィルターで日付メンバーを除外できます。
  • 非推奨: モデルデータの S/4HANA へのエクスポート: 代わりにライトバック統合を使用してください。

リファレンス: 詳細な説明、使用手順、出典については references/whats-new-2026-planning.md を参照してください。


バンドルリソース

リファレンスドキュメント
  • references/data-actions.md - データアクションの設定と実行
  • references/multi-actions.md - マルチアクションのオーケストレーション
  • references/allocations.md - 配分方法とスプレッド
  • references/scheduling-calendar.md - ワークフローのスケジューリング
  • references/data-locking.md - データロックの設定
  • references/version-management.md - バージョン管理のベストプラクティス
  • references/api-reference.md - プランニング API リファレンス
  • references/javascript-patterns.md - JavaScript スクリプティングパターン
  • references/edge-cdp-control.md - 共有の sap-browser-automation Edge/CDP および認証レイヤー向けのプランニング固有のアドオン
テンプレート
  • templates/data-action-checklist.md - データアクション実装チェックリスト
  • templates/multi-action-checklist.md - マルチアクション設定ガイド
  • templates/parameter-table.md - パラメーターテーブルテンプレート

ライセンス: GPL-3.0 バージョン: 1.5.0 メンテナー: Eduard Jiglau メール: [email protected] ウェブサイト: https://sap-ai-skills.com リポジトリ: https://github.com/secondsky/sap-skills

コメント