

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 寫入到 Salesforce
<a name="salesforce-writing-to"></a>

**先決條件**

您想要寫入到的 Salesforce sObject。將需要物件名稱，例如 `Account` 或 `Case` 或 `Opportunity`。

Salesforce 連接器支援四種寫入操作：
+ INSERT
+ UPSERT (更新插入)
+ UPDATE
+ DELETE

使用 `UPSERT` 寫入操作時，必須提供 `ID_FIELD_NAMES` 選項來指定記錄的外部 ID 欄位。

 也可以新增連線選項：
+  `TRANSFER_MODE`：支援兩種模式：`SYNC` 和 `ASYNC`。預設值為 `SYNC`。設為 `ASYNC` 時，將使用 Bulk API 2.0 Ingest 來處理。
+  `FAIL_ON_FIRST_ERROR`：預設值為 `FALSE`，這表示即使有一些寫入記錄失敗， AWS Glue 任務仍會繼續處理所有資料。設為 時`TRUE`，如果有任何失敗的寫入記錄， AWS Glue 任務將會失敗，而且不會繼續處理。

**範例**

```
salesforce_write = glueContext.write_dynamic_frame.from_options(
    frame=frameToWrite,
    connection_type="salesforce",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "Account",
        "API_VERSION": "v60.0",
        "WRITE_OPERATION": "INSERT",
        "TRANSFER_MODE": "ASYNC",
        "FAIL_ON_FIRST_ERROR": "true"
    }
)
```