Александр, спасибо.
Доступ к стандартным полям получил без проблем. Но вот с пользовательскими проблема.
После 2 часов экспериментов пришел к такому коду:
------------------
CModule::IncludeModule('crm');
$rootActivity = $this->GetRootActivity();
$Company = $rootActivity->GetVariable("COMPANY");
$arUserFields = CCrmCompany::GetUserFields( $Company);
// $arUserFields = $USER_FIELD_MANAGER->GetUserFields('CRM_COMPANY', $Company);
foreach ($arUserFields as $FIELD_NAME => $arUserField):
$res=$res.FIELD_NAME= '.$FIELD_NAME.' ';
$res=$res.$arUserField["ID"];
$res=$res.$arUserField["DEF"].' ';
$res=$res.$arUserField["USER_FIELD_ID"].' ';
$res=$res.$arUserField["EDIT_FORM_LABEL"].' ';
$res=$res.$arUserField["VALUE"].' ';
$res=$res.$arUserField["USER_FIELD_NAME"].' ';
endforeach;
$rootActivity->SetVariable("res",$res);
---------------------
Конструкция $USER_FIELD_MANAGER->GetUserFields() выдает неизвестный Exception, поэтому я использовал локальный метод CCrmCompany::GetUserFields().
Проблема в том, что данный код в цикле корректно выдает только FIELD_NAME и ID, остальные элементы пустые, при том, что я точно знаю, что там должны быть значения. Ну как минимум пользовательское название поле должно быть. Где копать?