Здравствуйте. Тут такая проблема возникла. Стоит задача загрузить товаров в CRM с помошью скрипта. Скрипт должен взять csv файл загруженный в определенную папку в файловой системе bitrix24 и в основе его сожержимого создать товары (с вложенными секциями) в CRM. До этого это сделалось с помошью визуального интерфейса и через импорт. Чтобы выполнить эту задачу я создал скрипт и внутри него получаю csv файл с помошью кода:
$csvFile = new CCSVData();
$csvFile->LoadFile($_SERVER['DOCUMENT_ROOT']."/import_folder/m00000.csv");
$csvFile->SetFieldsType('R');
$csvFile->SetFirstHeader("false");
$csvFile->SetDelimiter(',');
Файл таким образом я получаю. Потом чтобы загрузить содержимое этого файла на товары я хотел использовать стандартный метод
crm.product.add. Код получился примерно такой:
<script src="//api.bitrix24.com/api/v1/"></script>
<?
while ($row = $csvFile->Fetch())
{
?>
<script>
BX24.callMethod(
"crm.product.add",
{
fields:
{
"ID": $row[0],
"External ID": $row[1],
"Name": $row[2],
"Symbolic code": $row[3],
"Price": $row[4],
"Currency": $row[5],
... и так далее
}
},
);
</script>
<?
}
Но при выполнении BX24.callMethod я получаю ошибку Uncaught Error: Unable to initialize Bitrix24 JS library!
Я попытался заменить этот метод на
require_once('crest.php');
$resultProduct = CRest::call(
'crm.product.add',
[
'fields' => [
'>ID' => $row[0],
'>External ID' => $row[1],
'>Name' => $row[2],
'>Symbolic code' => $row[3],
'>Price' => $row[4],
'>Currency' => $row[5],
... и так далее
]
]
);
После этого я вовсе получаю серверную ошибку 500 и скрипт не запускается. Помогите пожалуйста как можно решать данную задачу. Битрикс с версией 21.900.
$csvFile = new CCSVData();
$csvFile->LoadFile($_SERVER['DOCUMENT_ROOT']."/import_folder/m00000.csv");
$csvFile->SetFieldsType('R');
$csvFile->SetFirstHeader("false");
$csvFile->SetDelimiter(',');
Файл таким образом я получаю. Потом чтобы загрузить содержимое этого файла на товары я хотел использовать стандартный метод
crm.product.add. Код получился примерно такой:
<script src="//api.bitrix24.com/api/v1/"></script>
<?
while ($row = $csvFile->Fetch())
{
?>
<script>
BX24.callMethod(
"crm.product.add",
{
fields:
{
"ID": $row[0],
"External ID": $row[1],
"Name": $row[2],
"Symbolic code": $row[3],
"Price": $row[4],
"Currency": $row[5],
... и так далее
}
},
);
</script>
<?
}
Но при выполнении BX24.callMethod я получаю ошибку Uncaught Error: Unable to initialize Bitrix24 JS library!
Я попытался заменить этот метод на
require_once('crest.php');
$resultProduct = CRest::call(
'crm.product.add',
[
'fields' => [
'>ID' => $row[0],
'>External ID' => $row[1],
'>Name' => $row[2],
'>Symbolic code' => $row[3],
'>Price' => $row[4],
'>Currency' => $row[5],
... и так далее
]
]
);
После этого я вовсе получаю серверную ошибку 500 и скрипт не запускается. Помогите пожалуйста как можно решать данную задачу. Битрикс с версией 21.900.