Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебно-методическое пособие РЭИС.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
3.85 Mб
Скачать

3.3.2. Экранные формы документа

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

Форма документа

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

Форма списка

Данная экранная форма отображает список документов определенного вида и является аналогом журнала, содержащего документы одного вида.

Форма выбора

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

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

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

Рис.3.4.

3.3.3. Макеты документа

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

У документа может быть несколько печатных форм, поэтому и макетов может быть несколько. Например, из документа «Поступление основных средств» могут быть напечатаны Реестр принятых основных средств, Акт приема-передачи ОС Счет-фактура ит.д. Первые два макета могут принадлежать этому документу, а макет счета-фактуры может быть общим для всей конфигурации или может принадлежать документу СчетФактура.  

На рисунке 3.5 показан пример простого макета для документа Счет:

Рис.3.5.

Этот макет состоит из нескольких областей, например, Заголовок, Шапка, Состав. Область Состав предназначена для многократного вывода, что необходимо для отражения списковой информации из табличной части документа.

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

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

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

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

На закладке «Движения» задаются основные параметры проведения документа. Самый первый параметр разрешает или запрещает проведение документа.  

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

Стоит отметить, что в 1С:Предприятии 8.0 проведение документа и движения по регистрам не связаны жестко. Документ может быть не проведен и иметь движения.

Рассмотрим параметр «Оперативное проведение». При таком проведении можно контролировать текущие остатки регистров, например, при проведении расходной накладной нужно проверить, достаточно ли товара на складе.

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

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

Процедура ОбработкаПроведения(Отказ, Режим) 

//проверка остатка производится   

//только при оперативном проведении   

Если Режим = РежимПроведенияДокумента.Оперативный Тогда   

Если ОстатокНаСкладе < СтрокаСостава.Количество Тогда   

Сообщить("Товара "+СокрЛП(СтрокаСостава.Номенклатура)+"имеется только"+Остаток);  

Отказ = Истина;  

Возврат;  

КонецЕсли;

КонецЕсли;  

КонецПроцедуры

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

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

При оперативном проведении дата документа, как правило, изменяется на текущий момент, что является обычным поведением системы. Но разработчик может взять этот процесс под свой контроль. Он сам может получать очередную оперативную отметку времени и присваивать ее документу при проведении или при записи. Для этого предназначен метод глобального контекста ПолучитьОперативнуюОтметкуВремени. Его возвращаемое значение соответствует текущей дате (с учетом времени), но будет не меньше, чем последняя оперативная отметка времени, полученная каким-либо пользователем в этом сеансе работы с информационной базой. Таким образом, 1С:Предприятие 8.0 предоставляет механизм для получения неповторяющихся отметок времени.

Например:

Процедура ПередЗаписью (Отказ, РежимЗаписи, РежимПроведения)

Дата = ПолучитьОперативнуюОтметкуВремени();  

....  

КонецПроцедуры