# 制御された編集でロード スクリプトを更新する

`Qlik Code` の制御された編集機能を使用すると、ローカルで編集するためにアプリケーションのロード スクリプトの作業コピーをご使用のマシンにダウンロードできます。これらのローカルコピーは、[バインディング](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding)を介してソース アプリケーションに接続されています。受信変更と送信変更をプルおよびプッシュすることで、ローカル スクリプトをリモートの Qlik Cloud バージョンと同期できます。ローカル QVS ファイルを編集して `Qlik Code` の Qlik Cloud アプリケーションにバインドすることもできるため、最初にアプリケーションを作成することなくローカル スクリプトを構築できます。

情報メモこのワークフローにより、スクリプトのローカルコピーを Qlik Cloud アプリケーションに対して保存、更新、同期することができます。簡単な検査や迅速な編集のワークフローについては、「[Qlik Cloud に対して直接ロード スクリプトを更新する](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-cloud-backed.htm)」を参照してください。

## バインディングとは何ですか？

`Qlik Code` では、バインディングとは、ロード スクリプトのローカル作業コピー（または別のローカル QVS ファイル）と Qlik Cloud 内の分析アプリケーションとの間の接続です。

バインディングは、次の場合に作成されます：

* ローカルで編集するために、スクリプトの作業コピーをダウンロードします（「[スクリプトの作業コピーのダウンロード](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#WorkingCopy)」を参照）。

* 別の QVS ファイルを既存のアプリケーションに手動でバインドします （「[既存のローカル ファイルのバインド](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#BindOther)」を参照）。

バインディングが作成されると、拡張はローカル ファイルと Qlik Cloud アプリケーションの関係を[ワークスペース](https://code.visualstudio.com/docs/editing/workspaces/workspaces)のルートにある resource-map.json ファイルに保存します。

## スクリプトの作業コピーのダウンロード

アプリケーションのロード スクリプトの作業用コピーをローカル マシンにダウンロードできます。この操作を行うと、ロード スクリプトのコピーが QVS 形式で[ワークスペース](https://code.visualstudio.com/docs/editing/workspaces/workspaces)にダウンロードされ、ローカルに作成されたファイルとソース アプリケーションの間に[バインディング](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding)が自動的に作成されます。

ローカル作業コピーは、デフォルト作業コピー フォルダー設定（「[設定の参照](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-settings-reference.htm)」を参照）で指定されたフォルダー、またはその設定が空の場合は[ワークスペース](https://code.visualstudio.com/docs/editing/workspaces/workspaces)のルートに保存されます。

次の手順を実行します。

1. `VS Code` [Explorer](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view) で、Qlik Cloud を展開します。

2. アプリケーションを見つけて右クリックします。

3. 作業コピーをダウンロードするをクリックします。

   ワークスペースにスクリプトのローカル コピーが既に 1 つ以上存在する場合、別のオプションが表示されます：ダウンロード済みリソース...。このオプションを使用すると、既存のローカル ファイルに移動できます。

ローカル コピーをダウンロードしてバインドした後は、編集したり、リモートの Qlik Cloud バージョンからの変更を取り込んで更新したり、自身のローカルの変更をリモートの Qlik Cloud バージョンにプッシュしたりできます。「[ローカルバージョンとリモートバージョン間の変更同期](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Synchronizing)」を参照してください。

## 既存のローカル ファイルのバインド

また、ローカル コンテンツを上書きすることなく、既存のローカル QVS ファイル（現在アプリケーションに接続されていないファイル）を Qlik Cloud アプリケーションにバインドすることもできます。[バインディング](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding)は、ファイルをアプリとその現在のスクリプトバージョンにリンクします。

次の手順を実行します。

1. `VS Code` [Explorer](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view)で、バインドするローカル ファイルを右クリックします。

2. Qlik Cloud スクリプトにバインドするをクリックします。

3. バインド先の Qlik Cloud アプリケーションを選択します。

ファイルを手動でバインドした後は、ファイルを編集したり、リモートの Qlik Cloud バージョンから受信した変更で更新したり、独自のローカル変更をリモートの Qlik Cloud バージョンにプッシュしたりすることができます。「[ローカルバージョンとリモートバージョン間の変更同期](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Synchronizing)」を参照してください。

## スクリプトのバインド解除

どちらのコピーも削除せずにローカル ファイルとリモート バージョン間のリンクを解除するには、Qlik: Unbind from QCS Resource コマンド（[コマンド パレット](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_command-palette)から利用可能）を使用します。

## ローカルバージョンとリモートバージョン間の変更同期

情報メモアプリケーションのロード スクリプトを編集する権限が必要です。表示権限のみがある場合、スクリプトを読み取り専用モードで開くことはできますが、編集することはできません。

スクリプトをダウンロードまたは手動でバインドした後、`VS Code` テキストエディターを使用して編集できます。

`Qlik Code` では、次のオプションが提供されます：

* リモートの Qlik Cloud バージョンに加えられた変更でローカル スクリプトを更新しています。例えば、別のユーザーが Qlik Cloud 内で、または各自でインストールした `Qlik Code` を使用してロード スクリプトを編集します。

* 自身の変更をリモートQlik Cloudバージョンにプッシュする。

### 個別スクリプトの同期

スクリプトを個別に同期できます。

次の手順を実行します。

1. `VS Code` [Explorer](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view) で、スクリプトのローカル作業コピーを見つけます。

2. ファイルを右クリックし、次のいずれかを選択します：

   * Qlik Cloud からプルする：前回のダウンロードまたは更新以降にスクリプトに加えられた変更で、ローカル コピーを更新します。

   * Qlik Cloud に変更をプッシュする：ローカルの変更をリモートの Qlik Cloud バージョンにプッシュします。既存のスクリプトの置き換えを確認するよう求められます。

### スクリプトの一括同期

スクリプトを一括で同期することもできます。これらのアクションを実行すると、アクセス権を持つすべてのアプリケーションおよび作業コピーに対して変更がプッシュ/プルされます。

次の手順を実行します。

1. `VS Code` [Explorer](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view) で、Qlik Cloud を展開します。

2. パネル ツールバーで、次のいずれかを選択します：

   * the Qlik Cloud からすべて更新する icon （）：前回のダウンロードまたは更新以降にスクリプトに加えられた変更で、すべてのローカル コピーを更新します。

   * the すべての変更を Qlik Cloud にプッシュする icon （）：すべてのローカルの変更を、リモートの Qlik Cloud バージョンにプッシュします。

### 競合の管理

前回の同期以降に Qlik Cloud でスクリプトが変更されており、ローカルにも変更がある場合、`Qlik Code` は競合を検出し、可能な場合はそれを解決するためのオプションを提示します。これらのオプションは、`VS Code` テキスト エディター内に表示されます。

* マージを確認する：提案された変更のマージを続行します。

* マージをキャンセルする：提案されたマージを拒否し、ローカル コピーに戻します。

ヒント メモ`VS Code` は、競合の検出と解決のためのネイティブ オプションを提供します。詳細については、公式の `VS Code` ドキュメントの[VS Code でマージ競合を解決する](https://code.visualstudio.com/docs/sourcecontrol/merge-conflicts)を参照してください。

[Qlik Code でのロード スクリプトの編集](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-edit-load-script.htm)

[Qlik Code 件のコマンドを実行中](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-commands.htm)