- Модуль: sale
- Путь к файлу: ~/bitrix/modules/sale/lib/exchange/onec/documentbase.php
- Класс: BitrixSaleExchangeOneCDocumentBase
- Вызов: DocumentBase::outputXml
protected function outputXml(array $fields, $level=0)
{
$xml = '';
foreach ($fields as $name=>$value)
{
if(is_array($value))
{
switch ($name)
{
case 'REK_VALUES':
$xml .= $this->outputXmlRekValue($level, $name, $value);
break;
case 'ITEMS':
$xml .= $this->outputXmlItems($level, $name, $value);
break;
case 'AGENT':
$profile = new ProfileDocument();
$profile->setFields($value);
$xml .= $this->openNodeDirectory($level, 'AGENTS');
$xml .= $this->openNodeDirectory($level+1, $profile->getNameNodeDocument());
$xml .= $profile->output($level+1);
$xml .= $this->closeNodeDirectory($level+1, $profile->getNameNodeDocument());
$xml .= $this->closeNodeDirectory($level, 'AGENTS');
break;
case 'STORIES':
$xml .= $this->outputXmlStories($level, $name, $value);
break;
case 'TAXES':
$xml .= $this->outputXmlTaxes($level, $name, $value);
break;
case 'DISCOUNTS':
$xml .= $this->outputXmlDiscounts($level, $name, $value);
break;
}
}
else
$xml .= $this->formatXMLNode($level, $name, $value);
}
return $xml;
}