ビジネス・オブジェクト、属性、および変数の名前変更

時間とともに、アプリケーションが変更され、ビジネス・オブジェクト、その属性、および変数の名前が変更される場合があります。ただし、ビジネス・プロセスの多くの部分に、ビジネス・オブジェクト、属性、または変数に対する参照または依存関係が存在する可能性があります。そのため、名前変更によって予期しない結果が生じることがあります。ビジネス・オブジェクト、属性、または変数の名前を変更し、名前変更によって生じる影響を確認するには、名前変更機能を使用します。

ビジネス・オブジェクト、その属性、および変数の名前変更の手順について、以下のセクションで説明します。

ビジネス・オブジェクトおよび属性の名前変更

ビジネス・オブジェクトを見つけるには、ナビゲーションから「データ」を選択します。ビジネス・オブジェクトを名前変更するには、以下のステップに従います。

  1. 名前変更するビジネス・オブジェクトを右クリックします。メニューから「名前変更」を選択します。
  2. 開いたウィンドウの「新規名」フィールドでビジネス・オブジェクト名を変更します。デフォルトでは、「OK」をクリックすると、後続の「リファクタリング」ウィンドウにそのビジネス・オブジェクトへの参照が表示されます。 ただし、「参照の更新」をクリアすることもできます。その場合は、ビジネス・オブジェクトへの参照はいずれも更新されません。
  3. 「リファクタリング」ウィンドウのペインに、ビジネス・オブジェクトを参照するビジネス・プロセスおよびサービスが表示されます。更新対象のビジネス・プロセスおよびサービスを選択し、「OK」をクリックします。参照がない場合はペインがブランクになりますが、そのまま「OK」をクリックしてビジネス・オブジェクトの名前を変更します。後でリストを分析する場合は、「クリップボードにコピー」をクリックして、ビジネス・プロセスおよびサービスの名前をクリップボードにコピーできます。
  4. 後で、特に JavaScript セクションで、更新を予定していたすべての成果物を確認してください。リファクタリング機能は、古いビジネス・オブジェクトおよび古いビジネス・オブジェクト・リストに対して new キーワードでインスタンス化された、すべての完全修飾参照 (例: new tw.object.OldBusinessObjectnew tw.object.listOf.OldBusinessObject) を更新します。

ビジネス・オブジェクト自体は、属性と呼ばれる他の変数で構成されています。 ビジネス・オブジェクトの属性は名前を変更できます。また、名前変更機能によって、影響を受けるビジネス・プロセスおよびサービスが表示されます。属性を名前変更するには、以下のステップに従います。

  1. 「データ」をクリックし、名前変更する属性を含むビジネス・オブジェクトをメニューでダブルクリックします。
  2. 名前変更する属性を「パラメーター」リストで選択します。「名前」フィールドで名前を変更すると、Alt+Shift+R を押して値をリファクタリングするよう通知するメッセージが表示されます。このキーの組み合わせを押すと、「リファクタリング」ウィンドウが開始されます。 「新規名」フィールドで、属性名を変更します。デフォルトでは、「OK」をクリックすると、後続の「リファクタリング」ウィンドウにその属性への参照が表示されます。 ただし、「参照の更新」をクリアすることもできます。その場合は、属性への参照はいずれも更新されません。
  3. 「リファクタリング」ウィンドウのペインに、ビジネス・オブジェクトを参照するビジネス・プロセスおよびサービスが表示されます。更新対象のビジネス・プロセスおよびサービスを選択し、「OK」をクリックします。参照がない場合はペインがブランクになりますが、そのまま「OK」をクリックして属性の名前を変更します。後でリストを分析する場合は、「クリップボードにコピー」をクリックしてビジネス・プロセスおよびサービスの名前をクリップボードにコピーできます。
  4. 後で、特に JavaScript セクションで、更新を予定していたすべての成果物を確認してください。
    リファクタリング機能は、次の場合にオブジェクトの属性を更新します。
    • オブジェクトが、キーワード new でインスタンス化された完全修飾ビジネス・オブジェクト、またはオブジェクトの上位属性に割り当てられている場合。リファクタリングされる上位属性の例として GreatGrandparentBusObj.GrandparentBusObj.ParentBusObj.busobj.name が挙げられます。
    • オブジェクトが、ANY 型を持たないローカル変数、またはオブジェクトの上位属性に割り当てられている場合。

    最初の例では、name が更新されます。次の 2 つの例では、id が更新されます。

    var businessobject = new tw.object.BusinessObject();
    businessobject.name = "John";
    tw.local.customerInfo.id = 1234;
    var customer = tw.local.customerInfo;
    customer.id = 5678;

ビジネス・オブジェクトをリファクタリングする際に、そのビジネス・オブジェクトの参照のいずれかを別のユーザーが編集している場合、その参照はリファクタリング対象として選択されません。その参照を編集しているユーザーを示すメッセージが表示されます。

リファクタリング・ウィンドウを開始すると、リファクタリングされるビジネス・オブジェクトがロックされ、リファクタリング対象として選択された参照もすべてロックされます。リファクタリング操作が終了すると、ビジネス・オブジェクトと参照がアンロックされます。
制限
  • Coach 内の JavaScript コードは更新されません。
  • リファクタリング用に選択可能としてリストされるには、ビジネス・プロセスまたはサービスが、「変数」タブにある変数または変数フィールドを使用して、そのビジネス・オブジェクトを参照している必要があります。
    重要: ケース・タイプ定義に対して自動的に作成されるシステム生成プライベート共有ビジネス・オブジェクトをリファクタリングすることはできません。このビジネス・オブジェクトは、ケース・タイプ定義とその各変数をトラッキングするので、それらに対して行った変更が自動的に反映されます。ケース・タイプ定義の名前を変更した場合は、プライベート共有ビジネス・オブジェクトの名前も変更されます。例えば、ケース・タイプ定義の名前を「My Case」から「My First Case」に変更すると、プライベート共有ビジネス・オブジェクトの名前が自動的に「My_Case_Folder」から「My_First_Case_Folder」に変更されます。
  • 大括弧表記が使用されている場合は、プロパティー名が更新されません。例えば、以下のコードでは、firstname は更新されません。customer['firstname'] = "John"
  • ビジネス・オブジェクトのパラメーター名を変更すると、リファクタリングを行ってもバインディングが更新されません。

変数の名前変更

変数は、ビジネス・プロセス内またはサービス内にあります。つまり、変数の名前を変更しても、別のビジネス・プロセスにもサービスにも影響しません。変数の名前を変更すると、同じビジネス・プロセスまたはサービス内にあるその変数への参照に影響する可能性があります。

変数を名前変更するには、以下のステップに従ってください。

  1. 「変数」タブをクリックし、名前を変更する変数を選択します。
  2. 「名前」フィールドで名前を変更すると、Alt+Shift+R を押して値をリファクタリングするよう通知するメッセージが表示されます。このキーの組み合わせを押すと、「リファクタリング」ウィンドウが開始されます。 「新規名」フィールドで、変数名を変更します。デフォルトでは、「OK」をクリックすると、その変数へのすべての参照が更新されます。ただし、「参照の更新」をクリアすることもできます。その場合は、変数への参照はいずれも更新されません。ビジネス・オブジェクトまたは属性の名前を変更する場合とは異なり、参照を選択するための後続のパネルは表示されないか、参照は表示されません。