Agent Skills by ALSEL
汎用ソフトウェア開発⭐ リポ 0品質スコア 65/100

add-dataverse

Dataverseテーブルをデータソースとして確認・管理し、Power Appsコードアプリに追加できます。自動生成されたTypeScriptモデルとサービスを利用して実装が可能です。また、新しいDataverseテーブルの作成にも対応しています。Dataverseとの接続、テーブルの追加、スキーマの設計、Dataverseデータのクエリが必要な場合に活用してください。

description の原文を見る

Adds Dataverse tables to a Power Apps code app with generated TypeScript models and services. Can also create new Dataverse tables. Use when connecting to Dataverse, adding tables, creating schema, or querying Dataverse data.

SKILL.md 本文

📋 共有手順: shared-instructions.md - 横断的関心事

参考資料:

Dataverse の追加

2 つのパス: 既存テーブル (ステップ 5 へスキップ) または 新規テーブル (フル ワークフロー)

ワークフロー

  1. 計画 → 2. API 認証のセットアップ → 3. 既存テーブルの確認 → 4. テーブルの作成 → 5. データ ソースの追加 → 6. 生成されたファイルの確認 → 7. ビルド

ステップ 1: 計画

メモリ バンクでプロジェクト コンテキストを確認します。ユーザーに次の質問をします:

  1. どの Dataverse テーブルが必要ですか? (例: accountcontactcr123_customentity)
  2. テーブルは環境に既に存在していますか、それとも新規作成が必要ですか?

テーブルが既に存在する場合: ステップ 5 へスキップします。

新規テーブルを作成する場合:

  • ユーザーが必要なデータについて質問し、適切なスキーマを設計します
  • 必要に応じて標準 Dataverse テーブルを使用します (contact は個人用、account は組織用)
  • 依存関係グラフを構築します -- ティア分類については data-architecture-reference.md を参照してください
  • EnterPlanMode でプラン モードに入り、テーブル、カラム、リレーションシップ、および作成順序を含む ER モデルを表示します
  • ExitPlanMode で承認を取得します

ステップ 2: API 認証のセットアップ (テーブルを作成する場合)

詳細については api-authentication-reference.md を参照してください。

az account show   # Azure CLI がログインしていることを確認
pwsh -NoProfile -Command "pac org who"       # 環境 URL を取得

$api = Initialize-DataverseApi -EnvironmentUrl "https://<org>.crm.dynamics.com"
$headers = $api.Headers
$baseUrl = $api.BaseUrl
$publisherPrefix = $api.PublisherPrefix

システム管理者またはシステム カスタマイザーセキュリティ ロールが必要です。

ステップ 3: 既存テーブルの確認 (テーブルを作成する場合)

テーブルを作成する前に、常に既存テーブルをクエリします:

$existingTables = Invoke-RestMethod -Uri "$baseUrl/EntityDefinitions?`$filter=IsCustomEntity eq true&`$select=SchemaName,LogicalName,DisplayName" -Headers $headers

Find-SimilarTablesCompare-TableSchemasBuild-TableNameMapping 関数については table-management-reference.md を参照してください。

ask_user_question でユーザーに次の情報を表示します:

  • 再利用可能 なテーブル (既に存在し、カラムが一致)
  • 拡張が必要 なテーブル (存在するがカラムが不足)
  • 作成が必要 なテーブル (一致するものが見つからない)

ステップ 4: テーブルの作成 (テーブルを作成する場合)

作成前に明示的な確認を取得します。依存関係順に作成します:

  • ティア 0: 参照テーブル (依存関係なし)
  • ティア 1: プライマリ エンティティ (ティア 0 を参照)
  • ティア 2: 依存テーブル (ティア 1 を参照)

table-management-reference.md の安全な関数を使用します:

ステップ 5: データ ソースの追加

各テーブルについて:

pwsh -NoProfile -Command "pac code add-data-source -a dataverse -t <table-logical-name>"

各テーブルに対してコマンドを実行することで、複数のテーブルを追加できます。

ステップ 6: 生成されたファイルの確認

コマンドは次のファイルを生成します:

  • src/generated/models/{Table}Model.ts -- TypeScript インターフェース
  • src/generated/services/{Table}Service.ts -- CRUD メソッド (create、get、getAll、update、delete)

ユーザーに使用例を表示します:

import { AccountsService } from "../generated/services/AccountsService";

const result = await AccountsService.getAll({
  select: ["name", "accountnumber"],
  filter: "statecode eq 0",
  orderBy: ["name asc"],
  top: 50
});
const accounts = result.data || [];

重要なルール:

  • 生成されたサービス (AccountsService.getAll() など) を使用し、fetch/axios は使用しない
  • 実際のデータについて result.data を確認する
  • 必要でない限り、生成されたファイルを編集しない
  • Dataverse コードを作成する前に dataverse-reference.md を read_file で確認 -- ピックリスト フィールド、仮想フィールド、ルックアップに重要な注意点があります

ステップ 7: ビルド

npm run build

続行する前に TypeScript エラーを修正します。まだデプロイしないでください

メモリ バンクの更新

追加 (または作成) されたテーブル、生成されたファイル、スキーマに関するメモを記録します。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
promitdutta
リポジトリ
promitdutta/power-platform-skills-qwen
ライセンス
MIT
最終更新
2026/4/5

Source: https://github.com/promitdutta/power-platform-skills-qwen / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: promitdutta · promitdutta/power-platform-skills-qwen · ライセンス: MIT