// Выберем все профили покупателя для текущего пользователя,
// упорядочив результат по дате последнего изменения
$UserId = $arUser['ID'];
// получим последний профиль пользователя
$db_sales = CSaleOrderUserProps::GetList(
array("DATE_UPDATE" => "DESC"),
array("USER_ID" => $UserId)
);
$profileID = '';
while ($ar_sales = $db_sales->Fetch())
{
$profileID = $ar_sales['ID'];
}
// сопоставим ключ свойства профиля и значение поля пользователя
$propsUser = array(
'COMPANY' => 'COMPANY',
'CONTACT_PERSON' => 'CONTACT_PERSON',
'COMPANY_ADDRESS' => 'COMPANY_ADDRESS',
'INN' => 'INN',
'KPP' => 'KPP',
'PHONE' => 'PHONE',
'EMAIL' => 'EMAILS',
'COMPANY_ADR' => 'COMPANY_ADR',
);
$fieldsUser = array();
// получим свойства профиля
$db_propVals = CSaleOrderUserPropsValue::GetList(($b="SORT"), ($o="ASC"), Array("USER_PROPS_ID"=>$profileID));
while ($arPropVals = $db_propVals->Fetch())
{
//echo '<pre>'; print_r($arPropVals); echo '</pre>';
//составим массив
foreach($propsUser as $key => $value) {
if($arPropVals['CODE'] == $key && empty($arUser[$value]) ){
$fieldsUser[$value] = $arPropVals['VALUE'];
//echo '<pre>'; print_r($fieldsUser); echo '</pre>';
}
}
}
///////////////////////////////////////////////