Расширение схемы полями, сохраняемыми в другой (неосновной) таблице
В элементе детали (см. пример) прописываем атрибут ExtendedBook="RepairParamBook", который указывает на имя элемента. Этот элемент является ссылкой на схему-справочник для детали, где сохраняются поля. Первичным ключом в такой схеме должен быть аналог первичного ключа карточки в основной схеме, куда подключаем такие поля.
Добавляем схему-справочник, где содержатся добавляемые поля.
Первичный ключ - аналогичен элементу первичного ключа в основной схеме.
Добавляем элемент, который будет ссылкой на деталь.
Visible="False"
Update=False
RefBook= Имя схемы-справочника
Добавляем скрытую деталь. Наследуемся от схемы-справочника.
Visible="False"
ExtendedBook=""
ForeignKey= имя первичного ключа в схеме-справочнике
В поле FieldName пишем имя ExtendedBook, через дробь - имя поля сохранения
Update=False
OnChange=""
<element name="RepairParam" occures="zeroormore" type="UMM_RepairParam" ForeignKey="WorkTrans" ExtendedBook="RepairParamBook" Visible="False" />
Пример описания букового поля:
<element name="RepairParamBook" type="integer" RefBook="UMM_RepairParamBook" FieldName="Code" Title="Доп.поля ремонтов" Visible="False" Update="False"/>
Добавляем необходимые дополнительные поля, которые должны сохраняться в другой схеме. В FieldName="~RepairParamBook/InterruptType~" прописываем поле сохранения в детали через ссылку. ОБЯЗАТЕЛЬНО OnChange="ExtendedDetailFieldOnChange"
Пример:
<element name="RepInterruptType" RefBook="YType" FieldName="~RepairParamBook/InterruptType~" InsertBefore="Code" Title="Тип прерывания" TabPage="Ремонт" Update="False" OnChange="ExtendedDetailFieldOnChange" Tips="" Help="" />
Пример схемы детали для сохранения полей:
<element name="UMM_RepairParamBook" TableName="um_WorkTrans_param_r" PkName="WorkTrans" Book="UMM_RepairParamBook"
Caption="Параметры ремонтов" Title="Параметры ремонтов">
<!--element name="Code" type="Identity" FieldName="Code" Title="Код" Visible="False" Tips="" Help="" /-->
<element name="WorkTrans" type="integer" FieldName="WorkTrans" RefBook="WorkTransBook" Title="Ремонт" Visible="False" Tips="" Help="" />
<element name="InterruptType" Title="Тип прерывания" RefBook="YType" FieldName="InterruptType"/>
</element>
<element name="UMM_RepairParam" ParentSchema="UMM_RepairParamBook" Book="">
</element>
В результате должна наполниться и сохраниться деталь.
