18+
реклама
18+
Бургер менюБургер меню

Илья Отькало – 1С:Профессионал по платформе: к экзамену готов (страница 4)

18

Рис. Владельцы

Предопределенные элементы

Предопределённые элементы – это данные, созданные разработчиком в конфигураторе в момент разработки прикладного решения, обратиться к ним можно по имени, не прибегая к предварительному поиску элемента.

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

Рис. Предопределенные элементы

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

Если удалить предопределенный элемент в режиме 1С:Предприятие, он будет удален только в режиме 1С:Предприятие, при этом в конфигурации предопределённый элемент останется.

Документы

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

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

Стандартные реквизиты

Каждый документ характеризуется Номером и Датой (состав даты и времени) поэтому данные реквизиты являются стандартными и обязательными для заполнения.

Рис. Обязательные реквизиты

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

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

Рис. Документы на оси времени

Нумерация

Система поддерживает режим автоматической нумерации документов, при котором она самостоятельно может генерировать номер для нового документа.

Кроме этого, система позволяет осуществлять контроль уникальности номеров документов, не разрешая создавать документы с одинаковыми номерами. Уникальность номеров и автоматическая нумерация могут выполняться в пределах определенного периода (день, месяц, квартал или год). Например, если периодичность установлена год, то с нового года система опять начнет нумерацию указанных документов с 1.

Рис. Нумерация

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

НеОсвобождатьАвтоматически (используется в новых версиях по умолчанию) – номер объект получает при записи, а не при открытии формы, в этом режиме у объектов будет идти непрерывная нумерация.

ОсвобождатьАвтоматически – номер объект получает при открытии формы, но если пользователь откажется от записи объекта, то полученный номер будет в дальнейшем использоваться у другого объекта.

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

Рис. Режим автонумерации объектов

Реквизиты

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

Например, для документа «Заказ покупателя» это может быть информация о покупателе товаров (контрагенте), договоре, дате отгрузки и т. д.

Табличные части

Документ может содержать Табличные части. Например, для документа «Заказ покупателя» это может быть информация о товаре, количестве, цене, сумме, скидке по каждой позиции заказанной номенклатуры.

Количество Табличных частей определяется прикладной задачей. На уровне платформы явных ограничителей на их количество не существует. Число строк одной табличной части не может быть более 99 999 (100 000–1). Это связано с длиной реквизита «НомерСтроки», но с версии 8.3.27 технологической платформы в ОбъектМетаданных:ТабличнаяЧасть добавлено новое свойство – ДлинаНомераСтроки (LineNumberLength). Свойство может принимать целочисленное значение в диапазоне от 5 до 9 включительно, что позволяет хранить в табличной части до 999 999 999 (1 000 000 000–1) записей.

Рис. Реквизиты и табличные части

Проведение документа

Важным свойством документа является возможность его проведения. Если документ проводится, то он может изменить состояние тех или иных учитываемых данных. Если же документ не является «проводимым» это значит, что событие, которое он отражает, не влияет на состояние учета, который ведется в данном прикладном решении.

Например, документ «Заказ покупателя» при своем проведении может вносить изменения в состояние расчетов с покупателями, в учет запасов на складах, в состояние заказов покупателей и другие учетные данные.

Для документа «Доверенность» напротив, проведение может быть запрещено, потому что этот документ никак не влияет на состояние учета.

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

Рис. Список регистров для регистрации движения

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

Если необходимо документ проводить в будущем временем, то нужно установить свойство «Оперативное проведение» в значение «Запретить».

Когда нужно четко фиксировать факт проведения документа в реальном времени (без возможности проведения в будущем времени) или зафиксировать случившийся факт в прошлом времени (задним числом) необходимо установить свойство «Оперативное проведение» в значение «Разрешить».

Рис. Настройка оперативного проведения

Соответственно у документа есть процедура ОбработкаПроведения() в модуле объекта, данная процедура вызывается в момент срабатывания у документа метода Записать(). При необходимости от проведения можно отказаться используя оператор Отказ = Истина в процедуре ОбработкаПроведения().

Рис. Проведение документа

Ввод на основании

Одним из режимов ввода новых документов в процессе работы пользователя с системой 1С:Предприятие является режим ввода на основании.

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

Например, документ «Заказ покупателя» можно ввести на основании документа «Событие», а на основании «Заказа покупателя» можно создать документ «Счет на оплату».

Рис. Ввод на основании

Механизм ввода на основании при работе с большим числом документов и элементов справочника позволяет сократить время на заполнение документов и справочников. Для отрабатывания данного механизма используется процедура ОбработкаЗаполнения(), где первым параметром ДанныеЗаполнения передается произвольное значение, которое используется как основание для заполнения текущего документа или справочника.

Рис. Ввод на основании

Оперативное проведение документов

При проведении документа срабатывает обработчик ОбработкаПроведения(<Отказ>, <РежимПроведения>), где в параметр «РежимПроведения» передается текущий режим проведения:

Оперативный – это проведение документа в режиме реального (текущего) времени. Дата для документа устанавливается автоматически. Не зависит от вида используемого регистра. В основном используется для организации механизма контроля текущих остатков.

Неоперативный – это проведение документа не в реальном времени, а в прошлом или будущем. Например, используется при проведении документа будущей датой.

Рис. Код обработчика ОбработкаПроведения(<Отказ>, <РежимПроведения>)

У документа в свойстве «Оперативное проведение» можно настроить режим оперативного проведения:

Разрешено – разрешает проведение документов в «Оперативном режиме» и в «Неоперативном режиме». Таким образом, документы могут быть проведены в прошлом или текущем периоде.

Запрещено – разрешает проведение документов только в «Неоперативном режиме». Таким образом, документы могут быть проведены в прошлом, текущем или будущем периоде.

Рис. Настройка оперативного проведения документов

Удаление движений

Записи из проведенного документа попадают в регистры. Если документ провести повторно или отменить его проведение, то система должна точно знать, как поступать с ранее внесёнными записями в регистре. Для этого существует специальное свойство «Удаление движений».