Glide 修正スクリプトを実行して既存のデータを移行
インスタンスを Washington DC から Xanadu リリースに更新する場合は、Glide 修正を手動で実行して、請求書テーブルと請求書明細テーブルをそれぞれのベーステーブルに更新する必要があります。
始める前に
必要なロール:admin
手順
- 移動先 すべて > システム定義 > 修復スクリプト.
-
[新規] を選択します。
新しい修正スクリプトレコードが開きます。
- 修正スクリプト レコードを開きます。
- 再ペアレント請求書テーブルとして 名前 を入力します。
- [ロールバック用に記録] チェックボックスをオフにします。
-
[ スクリプト] フィールドで、請求書明細行に次のコードを追加します。
(function() { const invoiceLinetableToReparent = "sn_shop_invoice_line"; const invoiceLineNewExtends = "sn_fin_base_invoice_line"; const oldExtends = ""; var invoiceLineGr = new GlideRecord("sys_db_object"); invoiceLineGr.get("name", invoiceLinetableToReparent); if(invoiceLineGr.super_class.name == invoiceLineNewExtends) { gs.info("{0} table already reparented to {1}. No reparenting required.", invoiceLinetableToReparent, invoiceLineNewExtends); return; } try { var invoiceLinetpc = new GlideTableParentChange(invoiceLinetableToReparent); var reparentInvoiceLineResult = invoiceLinetpc.change(oldExtends, invoiceLineNewExtends); } catch (e) { gs.warn("Table parent change for sn_shop_invoice_line did not complete. Error: {0}", e); } })(); -
[ スクリプト] フィールドに、請求書の次のコードを追加します。
(function() { const invoiceTableToReparent = "sn_shop_invoice"; const oldExtends = ""; const invoiceNewExtends = "sn_fin_base_invoice"; var invoiceGr = new GlideRecord("sys_db_object"); invoiceGr.get("name", invoiceTableToReparent); if(invoiceGr.super_class.name == invoiceNewExtends){ gs.info("{0} table already reparented to {1}. No reparenting required.", invoiceTableToReparent, invoiceNewExtends); return; } try { var tpc = new GlideTableParentChange(invoiceTableToReparent); var reparentResult = tpc.change(oldExtends, invoiceNewExtends); } catch (e) { gs.warn("Table parent change for sn_shop_invoice did not complete. Error: {0}", e); } })(); - [保存] を選択します。
-
[送信] を選択します。
修正スクリプトが作成されます。
-
[Run Fix Script] を選択します。
親の請求書テーブルと請求書明細行テーブルが、それぞれのベーステーブルに変更されます。