Редактор форм используется для создания и редактирования форм объектов прикладного решения. Формы объектов используются системой для визуального отображения данных объекта в процессе работы пользователя.

Любая форма представляет совокупность трех составляющих:

  • диалога формы - окна, которое будет отображаться на экране;
  • модуля формы - программы на встроенном языке, отвечающую за работу с элементами управления формы и обработку событий;
  • реквизитов формы - совокупности объектов, принадлежащих форме, данные которых она использует в своей работе.

Непосредственно редактор форм обеспечивает редактирование диалога формы, ее реквизитов и вызывает редактор текстов и модулей для редактирования модуля формы.

Окно редактора формы содержит три закладки, обеспечивающие редактирование всех трех составляющих формы.

Редактирование диалога формы

Редактор форм позволяет разработчику полностью использовать широкий набор возможностей диалога. Перечислим основные из этих возможностей:

Панели, страницы, закладки

Редактор диалога позволяет разработчику размещать в форме специальные элементы управления, которые помогают придать форме собственный узнаваемый стиль, сделать доступ к данным простым и понятным, а также разместить большой объем информации на ограниченной площади.

Редактор позволяет разместить на форме несколько панелей, каждая из которых может содержать несколько страниц. Например, форма документа может содержать панель с двумя страницами: Товары и Дополнительно:

Разработчик имеет возможность задать режим, при котором страницы будут прокручиваться в пределах панели, или использовать закладки для переключения между страницами. Редактор позволяет определить большое количество разнообразных вариантов расположения и отображения закладок:

Например, закладки можно расположить сверху горизонтально:

Или можно расположить закладки слева вертикально:

Элементы управления

Редактор позволяет размещать в форме большое количество разнообразных элементов управления. Размещать элементы управления можно путем перетаскивания, или используя специальный диалог вставки элементов управления, позволяющий одновременно задавать нужные свойства выбранного элемента управления:

В случае, когда форма содержит большое количество элементов управления, разработчик может использовать режим отображения элементов управления в списке, который позволяет быстро перемещаться к нужному элементу управления:

Редактор предоставляет возможность задания порядка, в котором пользователь будет обходить элементы управления формы при вводе и редактировании данных. Возможна установка автоматического порядка обхода или ручное задание порядка обхода в специальном списке элементов управления, или щелчком мыши прямо на форме:

Сетка, выравнивание

Редакторформ обладает большими возможностями для управления размещением элементов на форме. В частности он поддерживает работу с разметочной сеткой, когда границы и размеры элементов управления выравниваются по разметочной сетке, расположенной в форме. Разработчик имеет возможность менять шаг разметочной сетки и тем самым добиваться более точного расположения элементов управления:

Также редактор поддерживает использование выравнивающих линий, которые служат для облегчения выравнивания и взаимного расположения элементов управления формы. Например, на следующем рисунке выравнивающие линии использованы для размещения элементов управления на странице Дополнительно:

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

Выравнивание элементов управления также может быть выполнено с помощью специальных маркеров, показывающих желаемое направление смещения элементов управления. Маркеры появляются, когда два элемента управления находятся в непосредственной близости друг от друга.

Синие выравнивающие маркеры указывают желаемое направления перемещения элемента управления для выравнивания его по одной из границ соседнего элемента управления:

Красные выравнивающие маркеры указывают желаемое направления перемещения элемента управления в случае, когда он перекрывает другой элемент управления:

Также следует сказать, что редактор поддерживает операции выравнивания, изменения размеров и порядка для группы элементов управления:

Привязки

Редактор форм позволяет настроить поведение элементов управления, расположенных в форме, таким образом, чтобы при изменении размеров формы, обеспечивалось естественное восприятие информации: одна часть элементов оставалась на месте, другая часть перемещалась вместе с границами формы, а третья часть изменяла свой размер в соответствии с изменением размеров формы.

Для задания подобного поведения элементов формы разработчик может описывать привязки - зависимости положения границ элементов управления от положения границ формы. Границу элемента управления можно привязывать как к границе или центру формы, так и к границе или центру другого элемента управления.

Редактор поддерживает большое разнообразие различных видов привязок и может отображать их в графическом виде:

Разделители

Разделители являются специальными элементами управления, с помощью которых возможно перераспределение пространства формы без изменения ее размеров. В режиме 1С:Предприятие разделитель обладает способностью "захватываться" мышью и перемещаться внутри формы в ее пределах с учетом возможности расположения других элементов управления и ориентации разделителя:

При перемещении разделителя, все элементы управления, привязанные к разделителю, будут изменять свои размеры или перемещаться в соответствии с установленными привязками:

ActiveX

Редактор позволяет размещать в форме элементы управления типа ActiveX, которые разработчик может настроить и в дальнейшем управлять ими, используя средства встроенного языка:

Редактирование модуля формы

Для редактирования модуляформы конфигуратор вызывает редактор текстов и модулей. Этот редактор предоставляет разработчику большое разнообразие возможностей для создания и изменения текста модуля.

Редактирование реквизитов формы

Редактирование реквизитов формы выполняется в списке, который позволяет создавать новые реквизиты, изменять имеющиеся и удалять ненужные реквизиты:

Если у формы существует основной реквизит, определяющий поведение формы, отличное от типового, - он выделяется жирным шрифтом. Разработчик может установить курсор на нужный реквизит и, используя команду меню, сразу перейти в диалог формы, к тому элементу управления, который соответствует выбранному реквизиту.

Дополнительная информация

Вы можете познакомиться с использованием редактора форм в реальном режиме времени. Для этого можно скачать демонстрационный ролик "Пример разработки торговой мини-системы", в котором показан процесс разработки торговой мини-системы с использованием этого редактора для создания форм документов "Приходная накладная", "Расходная накладная" и форм отчетов "Анализ продаж" и "Анализ продаж по периодам".

Общий реквизит в 1С 8.3 — это объект метаданных платформы, позволяющий использовать один реквизит для многих объектов конфигурации (справочников, документов, планов счетов и т.д). Объект создан в основном для облегчения труда разработчика и разделения данных.

Общие реквизиты были первоначально реализованы в версии 1С 7.7, но сразу в платформу 8 версии разработчики его не включили. Механизм общих реквизитов был введен разработчиками 1С только в релизе 8.2.14.

Общие реквизиты очень удобно добавлять, чтобы не изменять стандартные объекты в конфигурации, я часто их использую наряду с .

После добавления общего реквизита его можно использовать и в запросах и выводить на форму объектов — внешне он ничем не отличается от обычного реквизита.

Единственное ограничение общих реквизитов — невозможность использования их в .

Рассмотрим основные настройки и свойства общих реквизитов, отличные от других объектов конфигурации:

Состав — список объектов, к которым будет использован общий реквизит, настройка напоминает настройку плана обмена.

Получите 267 видеоуроков по 1С бесплатно:

Автоиспользование — настройка определяет, будет ли использоваться общий реквизит для тех объектов, у которых в составе указан режим использования «Автоматический».

Разделение данных — эту настройку рассмотрим отдельно.

Разделение данных в 1С с помощью общего реквизита

Разделение данных — механизм, аналогичный механизму . Однако производительность данного механизма более эффективна, и он настраивается проще.

Механизм позволяет настроить отображение только элементов, которые может видеть пользователь. К примеру, можно разграничить все объекты (документы, справочники и т.д.), где установлена определенная организация.

Настройка разделения данных с помощью общих реквизитов 1С

Для настройки в общем реквизите необходимо указать разделение данных — Разделять . Сразу после нажатия система предложит создать параметры учета по умолчанию:

При этом необходимо будет при старте системы указать параметры сеанса, как это сделать, с примером было описано в статье .

На этом настройка окончена — пользователю будет доступна только та информация, которая указана в выбранных параметрах сеанса.

Пример использования общего реквизита

Разберем настройку общего реквизита в 1С 8.3 на примере каркасной конфигурации и реквизита Организация:

В системе имеется 3 документа, где необходимо указание реквизита Организация: это Приходная Накладная, Расходная Накладная, Начисление Зарплаты.

Настройка проста:

  1. Создаем новый Общий реквизит, указываем тип — СправочникСсылка.Организация.
  2. В составе расставляем для наших документов — Использовать .

Все, настройка окончена!

Смотрим результат:

Система отображает общий реквизит «как свой»: и в запросах, и в реквизитах формы, и в других местах. Вот такое волшебство! 🙂

Не добавляется общий реквизит 1С 8.3

[Кнопка 7710967300 БУХ РБ] Connect=Srvr="%servername%";Ref="%base_name%"; AdditionalParameters=/Z "-0,-0,+7710967300";

После /Z указываем общие реквизиты по порядку. Так как в нашей типовой бухгалтерии уже есть два общих системных реквизита, указываем для них значение -0 чтобы они не использовались, а в качестве третьего (который мы создали) передаём ИНН.

1000 и 1 чекбокс

Теперь нужно определить, какая часть данных будет являться общей для всех областей. Всё это настраивается через конфигуратор. В свойствах общего реквизита, который мы только что создали, есть пункт «Состав» открывающий небольшой список из 800 параметров:

Подбор параметров оставляем на ваше благоразумие, усмотрение и окружение. Вот наш вариант (аккуратнее, там 20 000 пикселей).

Разделитель также даёт возможность настроить отдельный список пользователей для каждой базы — это может пригодиться, если у вас сотни пользователей — при входе в определённую базу не придётся проматывать этот список до кровавых мозолей. Мы это не используем, потому что настроили прозрачную авторизацию.

Выгружаем данные из текущих баз

Для выгрузки данных из текущих баз, мы используем универсальный XML-обмен. Нельзя просто так взять и выгрузить базу, нужно настроить правила обмена, иначе при загрузке могут (и обязательно возникнут) ошибки и конфликты, а вторая база просто не пролезет. Напомним, что мы делим области базы для каждой организации и в нашем случае работают такие правила обмена . Если вам вздумается использовать другой разделитель, придётся пораскинуть мозгами и чекбоксами. Главное — не использовать типовую выгрузку — это приведёт к дублированию всех предопределённых записей.

Хозяйке на заметку: справочники и документы лучше выгружать отдельно — так можно избежать лишних ошибок в момент загрузки.

Загружаем данные в разделённую базу

Запускаем 1С с параметром /Z «-0,-0,+%ваш разделитель%», указывая разделитель той организации, данные которой собираемся загрузить. Запускаем универсальный обмен и скармливаем ему полученные при выгрузке файлы: сперва справочники, потом документы. Повторяем эту операцию для каждой базы-области.

Чтобы упростить задачу, мы осуществляем выгрузки массово, предварительно запуская чуть исправленную стандартную обработку через командную строку (/Execute c:\выгрузка.epf). Затем вручную загружаем полученные файлы в разделённую базу.

Как потратить больше времени, чтобы потратить меньше времени

Процесс разделения — штука не быстрая. Напомним, что у нас сейчас больше 500 организаций, но за пару недель мы успели разделить только 70. Однако, мы точно знаем, что уже через полгода поблагодарим прошлых себя за проделанную работу и кучу сэкономленных времени и сил.

Бухгалтеры не замечают перехода организаций из обычной базы в разделённую, для них процесс проходит безболезненно. Попа горит только у админов:)

Побочные эффекты: экономия места 1 к 20, косвенное увеличение скорости работы — неоценимо. В абсолютных цифрах: 50 организаций занимают 2 Гб пространства в SQL, тогда как одна отдельная база занимает от 800 Мб.

Обещанная ложка дёгтя, даже четыре:

  • если кто-то из пользователей запорол данные в одной организации, приходится откатывать назад всю разделённую базу — нельзя просто взять и откатить одну область данных
  • приходится более тщательно тестировать обновления, особенно те, которые добавляют или изменяют справочники
  • если нужно передать базу клиенту (или слить налоговой:), приходится делать обратную процедуру: выгружать организацию из разделённой базы при помощи универсального обмена, затем загружать в пустую обычную базу и из неё сохранять в. dt-файл
  • в разделённой базе нельзя управлять регламентными заданиями (например, не получится автоматически обновить курсы валют)
Первые три ложки не такие горькие — они просто заставляют нас быть более внимательными. А вот что делать с четвёртой мы пока не знаем, но усердно исследуем.

В системе 1С:Предприятие существует возможность ведения в одной информационной базе учета по нескольким предприятиям. Для этого используется разделитель учета.

Использование разделителя учета задается в конфигурации. Если в конфигурации определено использование разделителя учета, то в табло счетов существует возможность выбора конкретного значения разделителя учета, по которому будут выдаваться бухгалтерские итоги.

Для установки значения разделителя учета следует воспользоваться пунктом "Разделитель учета" меню "Действия" или соответствующей кнопкой панели инструментов. При этом на экран выдается диалог для установки значения разделителя учета.

В поле "Значение разделителя учета" можно указать конкретное значение разделителя учета. Способ ввода значения зависит от типа разделителя учета, определенного в конфигурации. Как правило, это справочник. В этом случае для выбора значения следует воспользоваться кнопкой выбора и выбрать нужное значение из списка значений справочника.

Кнопка "Пустое значение" позволяет стереть введенное значение разделителя учета, то есть задать пустое значение. Это имеет смысл в том случае, если, наряду с конкретными значениями разделителя учета, в проводках использовалось и пустое значение.

Флажок "По всем" позволяет установить режим вывода итогов по всем значениям разделителя учета в сумме.

Для установки выбранных значений следует нажать кнопку "ОК" . Для отказа от установки значений - кнопку "Отмена" .

После установки выбранных значений табло счетов будет выводить итоги по конкретному значению разделителя учета или по пустому значению или по всем значениям в сумме, в зависимости от выбранного в диалоге варианта.


Close