Документ в интерфейсе приложения
Во время работы приложения автоматически генерирует все команды и формы, которые требуются для работы с объектами Документа. Однако они могут не подходить вам в каких-то сложных или особенных случаях. Тогда вы можете создать в проекте собственные формы и задать собственные представления команд.
Для этого используйте группу свойств Документа — Интерфейс.
Добавление команд в автоматический интерфейс
добавляет в автоматический интерфейс приложения команды открытия списка объектов Документа и команду создания объекта Документа (например, для документа Накладная):
- Накладная.ОткрытьСписок
- Накладная.СоздатьОбъект
Если вы не хотите, чтобы пользователь мог самостоятельно работать с данными Документа (например, это служебный Документа, который вы открываете из встроенного языка в определенные моменты работы приложения), то вы можете отключить добавление этих команд в автоматический интерфейс. Для этого в проекте используйте свойство Документа ВключатьВАвтоИнтерфейс.
Представление автоматически добавленных команд
Команды, которые автоматически добавляет в интерфейс приложения, в качестве своего представления используют имя документа в проекте. Например, для документа Накладная в интерфейсе приложения будет две команды:
- Накладная — это команда перехода к списку объектов документа
- Накладная — это команда открытия формы нового объекта документа
Это стандартное поведение , но оно, как вы видите, не очень удачное. Команду открытия списка документов хочется назвать в множественном числе — Накладные.
Другой пример, когда для автоматически добавленной команды хочется иметь другое представление — это когда название документа в приложении является самостоятельным термином. Например, в проекте есть документ Накладная, но в приложении он должен называться Расходная накладная.
В этих случаях вы можете в проекте задать свойства документа Интерфейс.Список.Представление и Интерфейс.Объект.Представление. Представление списка будет использовать в качестве представления команды имя-документа.ОткрытьСписок(), а представление объекта — в качестве представления команды имя-документа.СоздатьОбъект().
Подробнее см. Локализация
Формы документа
Во время работы приложения автоматически сгенерирует формы для работы с объектами Документа: форму объекта и форму списка объектов. Однако эти формы могут быть не всегда удобны. Кроме того, если вы хотите реализовать какую-то собственную логику работы формы объекта или формы списка объектов, то в работу форм, сгенерированных автоматически, вы вмешаться не можете.
Поэтому, если автоматические формы вас не устраивают или если вам нужна собственная логика их работы, вы можете создать нужные вам формы в проекте, а затем указать, что Документа должен использовать именно эти формы. Для этого используйте свойства Документа Интерфейс.Объект.Форма и Интерфейс.Список.Форма.
Кроме того, те же автоматические формы объекта и списка можно создать не через среду разработки, а через встроенный язык соответствующими методами:
- СоздатьФормуОбъекта
Сигнатура: СоздатьФормуОбъекта(Ключ: {ИмяДокумента}.Ссылка? = Неопределено): ФормаОбъекта
Например:Накладная.СоздатьФормуОбъекта()
Создает форму объекта документа. Если документу назначена форма объекта, то будет создана форма именно этого типа. Иначе будет создана автоматическая форма типа
Параметр<ИмяДокумента>.АвтоматическаяФормаОбъекта
.Ключ
определяет, какой объект будет редактироваться в форме. Если в качестве значения ключа переданоНеопределено
, то будет открыта форма нового объекта. Опциональный- СоздатьФормуСписка
-
Сигнатура: СоздатьФормуСписка(): ФормаСписка
Например:Накладная.СоздатьФормуСписка()
Создает форму списка документа. Если документу назначена форма списка, то будет создана форма именно этого типа. Иначе будет создана автоматическая форма типа
<ИмяДокумента>.АвтоматическаяФормаСписка
.
- Для формы объекта — на форму включаются поля для редактирования всех
реквизитов объекта
- Имя типа — АвтоматическаяФормаСписка
- В качестве заголовка используется имя объекта конфигурации сущности, преобразованное в читаемый вид (ВидыЗадач → «Виды задач»)
- Включает все реквизиты из расширений
- Не поддерживаются:
- Множественные реквизиты
- Реквизиты с типом значения ДвоичныйОбъект.Ссылка
- Для формы списка — на форму добавляется динамический список с колонками для
всех реквизитов объекта
- Имя типа — <Имя документа>.АвтоматическаяФормаСписка
- В качестве заголовка используется имя объекта конфигурации сущности, преобразованное в читаемый вид (ВидыЗадач → «Виды задач»)
- Включает все реквизиты из расширений
- Не поддерживаются:
- Множественные реквизиты
- Реквизиты с типом значения ДвоичныйОбъект.Ссылка