г. Санкт-Петербург
Войти
Логин
Пароль
Зарегистрироваться
После регистрации на сайте вам будет доступно отслеживание состояния заказов, личный кабинет и другие новые возможности
Заказать звонок
Логин
Пароль
Зарегистрироваться
После регистрации на сайте вам будет доступно отслеживание состояния заказов, личный кабинет и другие новые возможности
Логин
Пароль
Зарегистрироваться
После регистрации на сайте вам будет доступно отслеживание состояния заказов, личный кабинет и другие новые возможности


1
3
4
5
6
7
8
9
10
11
12
Выгрузка заказов из БУС в xml, Скрипт выгрузки заказов из Битрикс в xml
 
Скрипт можно разместить в корневом разделе сайта позволяет выгружать те заказы что ещё не были выгружены в xml для анализа или последующей выгрузки в другую систему.
[CODE]define("NO_AGENT_CHECK", true);
define("NO_KEEP_STATISTIC", true);

require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

if ( !$GLOBALS['USER']->IsAdmin() )
{
die("Доступно только для администратора.");
}

CModule::IncludeModule('sale');

$arErrors = array();
if ( isset($_REQUEST['ORDER_ID']) || isset($_REQUEST['ORDER_ID_TEXT']) )
{
$nOrder = ( (int)$_REQUEST['ORDER_ID_TEXT'] > 0 ? (int)$_REQUEST['ORDER_ID_TEXT'] : (int)$_REQUEST['ORDER_ID'] );
if ( $nOrder && CSaleOrder::GetByID($nOrder) )
{
ob_end_clean();

header('Content-Type: text/html; charset=utf-8');
header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
header('Pragma: no-cache');
header('Content-transfer-encoding: binary');
header('Content-Disposition: attachment; filename=order-'.$nOrder.'.xml');
header('Content-Type: application/x-unknown');

ob_start();
CSaleExport::ExportOrders2Xml(array('ID' => $nOrder));
$sXml = ob_get_clean();

echo strtr($sXml, array('encoding="windows-1251"' => 'encoding="utf-8"'));
exit();
}
else
{
$arErrors[] = "Заказ №{$nOrder} не найден.";
}
}

$arOrdersID = array();
$dbOrders = CSaleOrder::GetList(array("ID" => "DESC"), array(), false, array('nTopCount' => 200), array('ID', 'DATE_INSERT'));
while ($arOrder = $dbOrders->Fetch())
{
$arOrdersID[] = $arOrder;
}

?>



Просмотр XML выгрузки для заказа






'.var_export($_REQUEST, 1).'';?>

Форма генерирует XML файл заказа, такой же как при экспорте

заказов с сайта в 1C, но в кодировке utf-8 для просмотре в браузере




if ( $arErrors )
{
// Ошибки
echo implode('
', $arErrors).'
';
}

?>
Выберите из списка (200 последних ID):


Или введите номер заказа вручную:




* Полученный XML файл можно открыть в Google Chrome,

файл будет открыт с XML форматированием.



[/CODE]
1
3
4
5
6
7
8
9
10
11
12