$result = CSaleOrderProps::GetOrderPropsRelations(array('PROPERTY_ID' => $propertyId));
        while ($row = $result->Fetch()) {
            $relations[$row['ENTITY_TYPE']][] = $row['ENTITY_ID'];
        }
    } else {
        $propertyId = null;
        $property = array('TYPE' => 'STRING', 'PERSON_TYPE_ID' => $personTypeId);
    }
}
// 4. check requested person type
if (!($personType = $personTypes[$personTypeId])) {
    LocalRedirect('sale_order_props.php?lang=' . LANG . GetFilterParams('filter_', false));
}
// SETTINGS ////////////////////////////////////////////////////////////////////////////////////////////////////////////
// input settings
$inputSettings = Input\Manager::getSettings($property, $reload);
if (isset($resetInputSettings)) {
    unset($property['DEFAULT_VALUE'], $property['SETTINGS']);
    $property = array_diff_key($property, $inputSettings);
    if ($propertyId && $existentProperty && $property['TYPE'] == $existentProperty['TYPE']) {
        $property['MULTIPLE'] = $existentProperty['MULTIPLE'];
        $property['DEFAULT_VALUE'] = $existentProperty['DEFAULT_VALUE'];
        $property += $existentProperty['SETTINGS'];
    }
}
// load property metadata
switch ($property['TYPE']) {
    case 'ENUM':
        if (!$variants) {
            $result = CSaleOrderPropsVariant::GetList($b = 'SORT', $o = 'ASC', array('ORDER_PROPS_ID' => $propertyId));
            while ($row = $result->Fetch()) {