Я пытаюсь выполнить групповую вставку CSV для Salesforce с помощью пошагового руководства для массовой вставки. - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь загрузить CSV-файл контактов на SALESFORCE, и у меня возникают проблемы с данными в CSV.

    $file_name = $_FILES["fileToUpload"]["tmp_name"];

    $csv = explode("\n", file_get_contents($file_name));

    $res = array_values($csv);

    $upload_url = $instance_url . "/services/data/v44.0/jobs/ingest/$decode_res[id]/batches/";

    $curl = curl_init($upload_url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPHEADER, $auth_header);
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
    curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($res));
    $curl_result = curl_exec($curl);

    print_r(json_decode($curl_result, true));
    $curl_status = curl_getinfo($curl, CURLINFO_HTTP_CODE);

1 Ответ

0 голосов
/ 06 марта 2019
Found the solution
The data is need to be passed in csv format
example ==>
FirstName,LastName,Title,ReportsTo.Email,Birthdate,Description
Tom,Jones,Senior Director,buyer@salesforcesample.com,1940-06-07Z,"Self-described"

    $file_name = $_FILES["fileToUpload"]["tmp_name"];
    $csv = explode("\n", file_get_contents($file_name));

    $res = array_values(array_filter($csv));

    $string = "";

    foreach (array_chunk($res, 1) as $value) {
        $string .= $value[0] . "\n";
    }

    $upload_url = 
    "$instance_url/services/data/v44.0/jobs/ingest/$decode_res[id]/batches/";
    $curl = curl_init($upload_url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPHEADER, $auth_header);
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
    curl_setopt($curl, CURLOPT_POSTFIELDS, $string);
    $curl_result = curl_exec($curl);



Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...