OperationResult
ツールボックスをアップグレードする際の個々の操作のステータス
説明
OperationResult
オブジェクトは、ツールボックスの個人用設定をアップグレードする際の個々の操作のステータスを表します。
作成
関数 matlab.settings.loadSettingsCompatibilityResults
を使用して、ツールボックスの特定のバージョン番号用の ReleaseCompatibilityResults
オブジェクトを作成します。ReleaseCompatibilityResults
オブジェクトの Results
プロパティには VersionResults
オブジェクトが含まれています。その VersionResults
オブジェクトの VersionChanges
プロパティには、OperationResult
オブジェクトの配列が含まれています。
たとえば、次のコードは、ツールボックス mytoolbox
の Version 2
の OperationResult
オブジェクトの配列を取得します。
myCompatibilityResults = matlab.settings.loadSettingsCompatibilityResults('mytoolbox','Version2'); myCompatibilityResults.Results.VersionChanges
ans = 1×2 OperationResult array with properties: Operation Status ExceptionLog
プロパティ
Operation
— 実行するアップグレード操作
string スカラー
実行するアップグレード操作。string スカラーとして指定します。
例: "move mytoolbox.font.MyFontSize mytoolbox.font.FontSize"
Status
— アップグレード操作のステータス
"Succeeded"
| "Skipped"
| "Failed"
アップグレード操作のステータス。"Succeeded"
、"Skipped"
または "Failed"
として指定します。次の表に、各ステータスと考えられる原因を示します。
ステータス | 原因 | |
---|---|---|
"Succeeded" | N/A | |
"Skipped" | 操作で指定された設定または設定グループが、アップグレード対象の個人用設定に存在しません。 | |
"Failed" | 移動操作 |
|
削除操作 |
|
ExceptionLog
— 最初のアップグレードの例外
ReleaseCompatibilityException
オブジェクト | ReleaseCompatibilityException
オブジェクトの 0 行 0 列の配列
アップグレード操作の実行中に発生する最初のアップグレードの例外。ReleaseCompatibilityException
オブジェクトとして指定します。例外が発生していない場合、ExceptionLog
は ReleaseCompatibilityException
オブジェクトの 0 行 0 列の配列です。
例
個人用設定のアップグレード結果の取得
ツールボックスの出荷時のツリーを作成してからアップグレードを行う関数を作成し、アップグレードが正常に完了していることをテストします。
関数 createMyToolboxFactoryTree
はツールボックス mytoolbox
用の出荷時の設定ツリーを作成します。
function myToolboxFactoryTree = createMyToolboxFactoryTree() myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ... 'Hidden',false); toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false) addSetting(toolboxFontGroup,'MyFontSize','FactoryValue',11,'Hidden',false, ... 'ValidationFcn',@matlab.settings.mustBeNumericScalar) addSetting(toolboxFontGroup,'MyFontColor','FactoryValue','Black', ... 'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar); end
空の matlab.settings.SettingsFileUpgrader
オブジェクトを指定して、関数 createMyToolboxSettingsFileUpgraders
を作成します。
function upgraders = createMyToolboxSettingsFileUpgraders() upgraders = matlab.settings.SettingsFileUpgrader.empty; end
ツールボックスの settingsInfo.json
ファイルを作成します。ルート設定グループ名として mytoolbox
、設定ツリー作成関数として createMyToolboxFactoryTree
、設定ツリー アップグレード関数として createMyToolboxSettingsFileUpgraders
を指定します。settingsInfo.json
をツールボックスの resources
フォルダーに配置します。
{ "ToolboxGroupName" : "mytoolbox", "Hidden" : false, "CreateTreeFcn" : "createMyToolboxFactoryTree", "CreateUpgradersFcn" : "createMyToolboxSettingsFileUpgraders" }
設定ツリー作成関数を含むフォルダーとツールボックスのリソース フォルダーを MATLAB® パスに追加します。次に、mytoolbox
の出荷時の設定ツリーを読み込みます。
matlab.settings.reloadFactoryFile('mytoolbox');
関数 settings
を使用して設定ツリーのルートにアクセスし、MyFontSize
設定の個人用の値を設定します。
s = settings; s.mytoolbox.font.MyFontSize.PersonalValue = 15;
createMyToolboxFactoryTree
の設定名を MyFontSize
と MyFontColor
から FontSize
と FontColor
に変更します。
function myToolboxFactoryTree = createMyToolboxFactoryTree() myToolboxFactoryTree = matlab.settings.FactoryGroup.createToolboxGroup('mytoolbox', ... 'Hidden',false); toolboxFontGroup = addGroup(myToolboxFactoryTree,'font','Hidden',false) addSetting(toolboxFontGroup,'FontSize','FactoryValue',11,'Hidden',false, ... 'ValidationFcn',@matlab.settings.mustBeNumericScalar) addSetting(toolboxFontGroup,'FontColor','FactoryValue','Black', ... 'Hidden',false,'ValidationFcn',@matlab.settings.mustBeStringScalar); end
2 つの設定の名前変更を、mytoolbox
Version 2
の設定ツリーへの変更として関数 createMyToolboxSettingsFileUpgraders
に記録します。
function upgraders = createMyToolboxSettingsFileUpgraders() upgraders = matlab.settings.SettingsFileUpgrader('Version2'); move(upgraders,'mytoolbox.font.MyFontSize','mytoolbox.font.FontSize'); move(upgraders,'mytoolbox.font.MyFontColor','mytoolbox.font.FontColor'); end
mytoolbox
の出荷時の設定ツリーを再度読み込みます。
matlab.settings.reloadFactoryFile('mytoolbox');
関数 settings
を使用して設定ツリーのルートにアクセスし、FontSize
設定の個人用の値が MyFontSize
設定から正しく移動していることを確認します。
s = settings; s.mytoolbox.font.FontSize
ans = Setting 'mytoolbox.font.FontSize' with properties: ActiveValue: 15 TemporaryValue: <no value> PersonalValue: 15 FactoryValue: 11
mytoolbox
Version 2
に対する 1 番目のアップグレード操作の結果を取得します。
compatibilityResults.matlab.settings.loadSettingsCompatibilityResults("mytoolbox","Version2"); compatibilityResults.Results.VersionChanges(1)
ans = OperationResult with properties: Operation: "move mytoolbox.font.MyFontSize mytoolbox.font.FontSize" Status: "Succeeded" ExceptionLog: [0×0 matlab.settings.ReleaseCompatibilityException]
バージョン履歴
R2019b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)