Loading
目錄
選取篩選

          沒有結果
          沒有結果
          以下是搜尋小祕訣

          檢查關鍵字的拼字。
          使用較常見的搜尋字詞。
          選取較少篩選條件以擴大您的搜尋。

          搜尋所有 Salesforce 說明
          upsert 函數

          upsert 函數

          建立並更新指定物件的記錄,並將結果傳回至指定的回呼方法。

          必要版本

          提供版本:Lightning Experience
          提供版本:具有 Life Sciences Cloud、Life Sciences Cloud for Customer Engagement 附加元件授權和 Life Sciences Customer Engagement 受管理封裝的 EnterpriseUnlimited Edition。
          備註
          備註 若要使用此函數,請向 Salesforce 支援記錄要求,以將您計畫從簡報內容更新插入的物件列入允許清單。例如,若要更新內容內的帳戶設定檔,請將「帳戶」物件列入允許清單。

          僅 Life Sciences Cloud 行動應用程式支援此功能。

          您可以建立或更新自訂物件和支援的「生命科學客戶參與」物件。若要建立或更新記錄:

          • 使用者必須擁有指定物件和欄位的「讀取」權限。
          • 必須為每個物件建立已啟用物件中繼資料組態,並同步至 Life Sciences Cloud 行動應用程式。

          語法

          PresentationPlayer.upsert(objects, callbackMethod)

          引數

          引數 描述
          objects

          用於建立或更新記錄的物件陣列。

          • 若要建立記錄,請指定物件名稱。
          • 若要更新記錄,請指定包含識別碼或離線識別碼的識別碼欄位。
          callbackMethod 接收作業結果的 JavaScript 方法名稱。

          傳回

          此函數會傳回新記錄或更新記錄的識別碼陣列。

          限制

          此函數無法建立或更新使用者、記錄類型、區域範圍、區域範圍2 和 UserTerritory2Association 記錄。

          您無法使用此函數建立或更新相關記錄。若要更新相關記錄,例如父系子系關係中的記錄,請使用兩個函數呼叫。

          範例

          此範例使用物件名稱建立記錄。

          <body>
                        <input id="name" style="color: black;">
                        <input id="customField" style="color: black;">
                        <a href="javascript:save();">Save Record</a>
                </body>
                <script type="text/javascript">
                        function save() {
                                let name = document.getElementById("name").value;
                                let customField= document.getElementById("customField").value;
                                PresentationPlayer.upsert([{
                                        'sobject': 'Account',
                                        'name': name,
                                        'customField__c': customField
                                }], 'upsertCallbackMethod');
                        }
                        function upsertCallbackMethod(data) {
                                console.log(data);
                                PresentationPlayer.alert(JSON.stringify(data));
                        }
                </script>

          此範例使用記錄識別碼來更新記錄。

          <script type="text/javascript">
                        function save() {
                                let name = document.getElementById("name").value;
                                let customField= document.getElementById("customField").value;
                                let accountId = allData.customers[0].Id;
                                PresentationPlayer.upsert([{
                                        'sobject': 'Account',
                                        'id': accountId,
                                        'name': name,
                                        'customField__c': customField
                                }], 'upsertCallbackMethod');
                        }
                        function upsertCallbackMethod(data) {
                                if (data.state === 'success') {
                                        console.log(data);
                                        PresentationPlayer.alert(JSON.stringify(data));
                               } else {
                                        PresentationPlayer.alert(data.message + '\n' + data.code);
                               }
                        }
                </script>

          錯誤

          此函數一次最多可處理 15 筆記錄。如果您提交超過 15 筆記錄,則會發生錯誤。

          如果建立或更新記錄失敗,此函數也會傳回錯誤。例如,以下情況可能發生錯誤:

          • 驗證規則失敗。
          • 使用者沒有物件或欄位的「讀取」或「編輯」存取權。
          • 不支援該物件或欄位。
          • 發生 SQLite 資料庫查詢錯誤。
           
          正在載入
          Salesforce Help | Article