---
title: Power Platform マネージドソリューションを編集する方法
url: "https://www.geekfujiwara.com/tech/powerplatform/5595/"
author: ギークフジワラ
published: "2024-11-14T02:12:06+00:00"
updated: "2024-11-14T12:36:30+00:00"
categories: [Power Platform]
description: "Power Platform ではマネージドソリューションとして配布することが推奨されています。 その理由はいくつかあります。 これらの理由から、Power Platform ではマネージドソリューション (Managed solution…"
---

# Power Platform マネージドソリューションを編集する方法

Power Platform ではマネージドソリューションとして配布することが推奨されています。

その理由はいくつかあります。

{.accent}
1. **バージョン管理**: マネージドソリューションはバージョン管理が容易で、更新やアップグレードがスムーズに行えます。これにより、ソリューションの一貫性と安定性が保たれます。
2. **セキュリティ**: マネージドソリューションは、ソリューションのコンポーネントがロックされているため、意図しない変更や削除を防ぐことができます。これにより、セキュリティが向上します。
3. **依存関係の管理**: マネージドソリューションは、依存関係の管理がしやすく、必要なコンポーネントがすべて含まれていることを保証します。これにより、ソリューションのデプロイメントが簡単になります。
4. **サポートとメンテナンス**: マネージドソリューションは、ベンダーや開発者からのサポートが受けやすく、問題が発生した場合のトラブルシューティングが迅速に行えます。
5. **再利用性**: マネージドソリューションは、他の環境やプロジェクトで再利用しやすく、開発の効率を向上させます。

これらの理由から、Power Platform では**マネージドソリューション** (Managed solution) として配布することが推奨されています。

一方で、マネージドソリューションはソシューション内のオブジェクトを基本的には変更することができません。

マネージドソリューションの中身を編集したいときはどのようにしたら良いでしょうか？

## マネージドソリューションのオブジェクトをアンマネージドソリューションに追加することで編集可能にできる

マネージドソリューションのオブジェクトをアンマネージドソリューションに追加することで編集可能にすることができます。絵にすると以下のようになります。

![](https://www.geekfujiwara.com/wp-content/uploads/2024/11/b662868f13fe389722b641b769fff785-1024x576.png)

もし、追加したとしてもマネージドソリューションのレイヤーには残り続けるので、マネージドソリューションレイヤーレベルのバージョンは破壊されることは有りません。

:::raw
<!-- wp:sgb/message {"message":"レイヤーとして1枚上にかぶして開発するイメージを持って","boxColor":"#009EF3","bgColor":"#b4e0fa","icon":"far fa-lightbulb"} -->
<div class="wp-block-sgb-message"><div class="memo sng-shadow-0" style="border-radius:0px;background-color:#b4e0fa;color:#009EF3"><div class="memo_ttl dfont"><span class="sng-box-msg__icon" style="background:#009EF3"><i class="far fa-lightbulb"></i></span><div class="sng-box-msg__title">レイヤーとして1枚上にかぶして開発するイメージを持って</div></div><div class="sng-box-msg__contents"><!-- wp:paragraph -->
<p>アンマネージドソリューションが一枚上にかぶさって開発できるような形式ですので、アンマネージドソリューション内のオブジェクトを削除すればすぐにマネージドソリューションのバージョンに戻すことができます。</p>
<!-- /wp:paragraph --></div></div></div>
<!-- /wp:sgb/message -->
:::

## 操作手順

手順にして説明致します。

:::raw
<!-- wp:sgb/timeline -->
<div class="wp-block-sgb-timeline"><div class="sgb-tl"><!-- wp:sgb/timeline-item {"itemTitle":"\u003cstrong\u003eアンマネージドソリューションの作成\u003c/strong\u003e"} -->
<div class="wp-block-sgb-timeline-item sgb-tl-item"><div class="sgb-tl-item__label--default"></div><div class="sgb-tl-item__title"><strong>アンマネージドソリューションの作成</strong></div><div class="sgb-tl-item__main"><!-- wp:paragraph -->
<p>新しいアンマネージドソリューションを作成します。</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>「ソリューション」タブで「新しいソリューション」をクリックし、必要な情報を入力してアンマネージドソリューションを作成します。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5599,"sizeSlug":"full","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-full is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-1.png" alt="" class="wp-image-5599"/></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>例えばこのような名前のソリューションを作成します。このように作成したソリューションは<strong>アンマネージドソリューション</strong>として作成されます。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5600,"sizeSlug":"full","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-full is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-2.png" alt="" class="wp-image-5600"/></figure>
<!-- /wp:image --></div><div class="sgb-tl-item__marker main-bdr main-bc"></div></div>
<!-- /wp:sgb/timeline-item -->

<!-- wp:sgb/timeline-item {"itemTitle":"\u003cstrong\u003eマネージドソリューションのオブジェクトの追加\u003c/strong\u003e"} -->
<div class="wp-block-sgb-timeline-item sgb-tl-item"><div class="sgb-tl-item__label--default"></div><div class="sgb-tl-item__title"><strong>マネージドソリューションのオブジェクトの追加</strong></div><div class="sgb-tl-item__main"><!-- wp:paragraph -->
<p>今作成したアンマネージドソリューション内に移ります。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5601,"sizeSlug":"full","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-full is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-3.png" alt="" class="wp-image-5601"/></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><strong>既存を追加</strong>からインポート済みのマネージドソリューションの内部にある編集したいオブジェクトを追加します。今回は、例えばキャンバスアプリを追加してみようと思います。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5602,"sizeSlug":"full","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-full is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-4.png" alt="" class="wp-image-5602"/></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>検索機能を使い、追加したいオブジェクトを追加します。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5603,"sizeSlug":"large","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-large is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-5-1024x518.png" alt="" class="wp-image-5603"/></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph --></div><div class="sgb-tl-item__marker main-bdr main-bc"></div></div>
<!-- /wp:sgb/timeline-item -->

<!-- wp:sgb/timeline-item {"itemTitle":"\u003cstrong\u003eオブジェクトの編集\u003c/strong\u003e"} -->
<div class="wp-block-sgb-timeline-item sgb-tl-item"><div class="sgb-tl-item__label--default"></div><div class="sgb-tl-item__title"><strong>オブジェクトの編集</strong></div><div class="sgb-tl-item__main"><!-- wp:paragraph -->
<p>追加が完了したら、アンマネージドソリューション内でオブジェクトを編集できるようになります。</p>
<!-- /wp:paragraph -->

<!-- wp:image {"id":5604,"sizeSlug":"large","linkDestination":"none","className":"is-style-sango-with-border"} -->
<figure class="wp-block-image size-large is-style-sango-with-border"><img src="https://www.geekfujiwara.com/wp-content/uploads/2024/11/image-6-1024x491.png" alt="" class="wp-image-5604"/></figure>
<!-- /wp:image --></div><div class="sgb-tl-item__marker main-bdr main-bc"></div></div>
<!-- /wp:sgb/timeline-item --></div></div>
<!-- /wp:sgb/timeline -->
:::

## ソリューションの違いとソリューションレイヤーの考え方

ソリューションレイヤーは、Power Platform でのソリューション管理において非常に重要な概念です。これにより、同じアプリでもマネージドソリューションのバージョンを破壊せずアプリの編集を行うことができます。

![](https://www.geekfujiwara.com/wp-content/uploads/2024/11/2-1024x576.png)

### ソリューションレイヤーの基本概念

1. **レイヤーの階層構造**: 
    - ソリューションレイヤーは、環境内のソリューションが適用される順序を示す階層構造を持っています。上位のレイヤーが下位のレイヤーを上書きする形で適用されます。
2. **デフォルトレイヤー**: 
    - 環境にはデフォルトのアンマネージドレイヤーがあり、ここにはすべてのカスタマイズが最初に保存されます。これは最も下位のレイヤーです。
3. **マネージドレイヤー**: 
    - マネージドソリューションがインポートされると、それぞれのソリューションに対して個別のマネージドレイヤーが作成されます。これらのレイヤーはデフォルトレイヤーの上に積み重ねられます。
4. **アンマネージドレイヤー**: 
    - ユーザーが直接行うカスタマイズや、アンマネージドソリューションのインポートによる変更は、デフォルトレイヤーに適用されます。
5. **レイヤーの削除**: 
    - マネージドソリューションをアンインストールすると、そのソリューションのレイヤーが削除され、下位のレイヤーが再び適用されます。
    - 今回のように作成した**マネージド**ソリューションの上に存在する**アンマネージド**ソリューションのオブジェクトを削除した場合、**マネージド**ソリューションのバージョンに戻すことができます。

このようにソリューションのタイプをうまく使い分けでアプリの編集とバージョンアップに備えましょう！
