ステップ 1: カスタムボタンを作成する
デフォルトでは、すべての詳細ページに [編集]、[削除]、[コピー] など複数の標準ボタンが含まれています。必要に応じて、カスタムボタンを作成してページレイアウトに追加することもできます。請求書の詳細ページのカスタムボタンを作成するには、次の手順に従います。
- DE 組織の [設定] から、 をクリックし、[Invoice (請求書)] をクリックします。
- [ボタン、リンク、およびアクション] セクションまで下へスクロールし、[新規ボタンまたはリンク] をクリックします。
- [表示ラベル] 項目に、「Renumber Line Item」(品目の再採番) と入力します。
- [表示の種類] に、[詳細ページボタン] を選択します。
- [動作] には [JavaScript を実行] を選択します。
- [内容のソース] には [OnClick JavaScript] を選択します。
- ここでは JavaScript を実行する [詳細ページ] ボタンを作成します。次の JavaScript コードをコピーしてフォームに貼り付けることができます。ソースコードについては、https://gist.github.com/3605659を参照してください。
1{!REQUIRESCRIPT("/soap/ajax/29.0/connection.js")} 2{!REQUIRESCRIPT("/soap/ajax/29.0/apex.js")} 3var result = sforce.apex.execute("InvoiceUtilities","renumberLineItems",{invoiceName:"{! 4Invoice__c.Name}"}); 5alert(result); 6window.location.reload(); - フォームが次の画面と同様であることを確認し、[保存] をクリックします。
- 確認メッセージが表示されたら、[OK] をクリックします。このボタンは、次のステップでページレイアウトに追加します。

もうひとこと...
貼り付けたコードを詳しく見てみましょう。
- 行 1 および行 2 は、Salesforce AJAX Toolkit から 2 つのライブラリ、Force.com SOAP API を囲む JavaScript ラッパーを読み込みます。
- 行 3 は、AJAX Toolkit を使用してメソッドをコールし、現在の請求書の名前を渡します。
- 行 4 および行 5 は、アラートメッセージを表示して現在のページを更新する標準の JavaScript コールです。