GrabDuck

1С-Битрикс Разработчикам - bitrix:iblock.element.add.form не все дополнительные поля ...

:

Стандартно в Битриксе таких возможностей не предусмотрено, здесь уже необходимо дорабатывать компонент под конкретные нужды.

Для примера можно реализовать следующим образом:

1) В коде вызова компонента вручную добавьте ID доп. св-в (которые вы хотите вывести на редактирование)

Код
...
"PROPERTY_CODES" => array(
   0 => "NAME",
   1 => "DATE_ACTIVE_FROM",
   2 => "69", //ID необходимого свойства
   3 => "",
),
"PROPERTY_CODES_REQUIRED" => array(
   0 => "NAME",
   1 => "DATE_ACTIVE_FROM",
   2 => "69", //ID необходимого свойства
   3 => "",
),
...

1) Скопируйте стандартный шаблон компонента;
2) В нем найдите код

Код
...
case "S":
case "N":
...

Добавьте в него

Код
case "E":
case "S":
case "N":

3) далее необходимо произвести выборку необходимых вам данных и вывести их:

Например:

Код
...
<?if($propertyID == 69):?>

   <select name="PROPERTY[<?=$propertyID?>][<?=$i?>]">
      <option value=""></option>
      <?
      $arSelect = Array("ID", "NAME");
      $arFilter = Array("IBLOCK_ID"=>IntVal(15), "ACTIVE"=>"Y");
      $res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>1000), $arSelect);
      while($ob = $res->GetNextElement()){
         $arFields = $ob->GetFields();
            //print_r($arFields);
         if($value == $arFields["ID"]){$selected = "selected";}else{$selected = "";}
         echo "<option value=\"".$arFields["ID"]."\" ".$selected.">".$arFields["NAME"]."</option>";
      }
      ?>
   </select>

<?else:?>

   <input type="text" name="PROPERTY[<?=$propertyID?>][<?=$i?>]" size="25" value="<?=$value?>" />
   <?if($arResult["PROPERTY_LIST_FULL"][$propertyID]["USER_TYPE"] == "DateTime"):?>
   <?$APPLICATION->IncludeComponent(
   'bitrix:main.calendar',
   '',
   array(
   'FORM_NAME' => 'iblock_add',
   'INPUT_NAME' => "PROPERTY[".$propertyID."][".$i."]",
   'INPUT_VALUE' => $value,
   ),
   null,
   array('HIDE_ICONS' => 'Y')
   );?>
   <br /><small><?=GetMessage("IBLOCK_FORM_DATE_FORMAT")?><?=FORMAT_DATETIME?></small>
   <?endif?>

   <br />

<?endif;?>
...

Недостатком такого способа является то, что при редактировании страницы (на которой расположен компонент) через редактор, дополнительные свойства, введенные вручную, удаляются. Но данную проблему можно легко решить доработав данный компонент.