АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

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

Читайте также:
  1. E. баланс відображає інформацію на певну дату, а звіт про фінансові результати за певний період
  2. I. Понятие о завещании и его составление (форма)
  3. I. Сущность и значение документации
  4. II. Документация как элемент метода бухгалтерского учета
  5. II. Достижения и успехи, учитываемые в формировании информационной базы «Золотой фонд студентов»
  6. III. ИНФОРМАЦИОННО-МЕТОДИЧЕСКАЯ ЧАСТЬ
  7. III. Основные требования, предъявляемые к документам
  8. III. Порядок формирования информационной базы «Золотой фонд студентов».
  9. III. Форма договора
  10. IV период школы управления — информационный период (1960 г. по настоящее время).
  11. IV. Список использованнЫХ ИНФОРМАЦИОННЫХ ИСТОЧНИКОВ
  12. Microsoft нацеливает хранение Windows 8 на информационные центры предприятия.

Для пользователя содержимое документа представляется в экранной форме документа:

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


Предопределенные процедуры.

Для обслуживания работы действий с документами в системе 1С имеется большое количество предопределенных процедур. Однако, прежде чем приступить к описанию последних, сделаю важное пояснение. Документ как объект конфигурации содержит ДВА РАЗНЫХ программных модуля.

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

Предопределенные процедуры, принадлежащие модулю документа:

Предопределенная процедура Описание
ОбработкаПроведения(Знач) Обработка проведения. В теле описываются подготовка данных реквизитов документа, бухгалтерских итогов к формированию операции, а также свойства этой операции (Корреспондирующие счета, Субконто и т.п.). Здесь же описываются движения регистров оперативного учета, если документ в них участвует. Выполнение проведения система самостоятельно заключает в транзакцию, поэтому не употребляйте операторов, ожидающих отклика пользователя и, вообще, постарайтесь минимизировать подготовку проведения, передав, по возможности, часть этой работы в модуль формы. В переменную Знач передается значение, указанное в методе Провести() при его работе. Параметр не обязательный.
ОбработкаУдаления Проведения() При отмене проведения документа (удалении проведенного документа) системой автоматически удаляются его проводки и движения регистров. Тем не менее, если при проведении совершались еще какие-то действия, то отменять их нужно в теле данной процедуры. Например, если при проведении исходя из бухгалтерских итогов рассчитывалась построчная итоговая сумма, то при распроведении её нужно очищать: Процедура ОбработкаУдаленияПроведения() Если ВыбратьСтроки() = 1 Тогда // Обратите внимание Пока ПолучитьСтроку() = 1 Цикл Сумма = 0; // Сумма - реквизит документа *** КонецЦикла; КонецЕсли; КонецПроцедуры *** Пример доступности контекста документа в модуле документа
АрхивироватьДокумент() Вызывается при смене расчетного периода журнала расчетов "вперед". Требуется описывать, если документ порождает записи журнала расчетов.

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

Предопределенная процедура Описание
ВводНового(ПризнакКопирования, ОбъектКопирования) Вызывается при создании интерактивном создании нового документа пользователем. Процедура обычно содержит предустановки значений некоторых реквизитов при создании нового документа или операторы управления видом экранной формы. ПризнакКопирования - имя переменной, которую система установит в "0", если введен просто новый документ, и в "1", если документ скопирован (через F9, например). При этом в Переменную ОбъектКопирования будет передан объект, с которого скопировали. Копирование не следует путать с вводом на основании. Процедура ВводНового(Копирование) Если ИмяПользователя() <> "Бухгалтер" Тогда Предупреждение("Вам не позволено создавать этот документ!"); СтатусВозврата(0); Возврат; //Новый документ не будет создан КонецЕсли; Если Копирование = 1 Тогда Возврат; КонецЕсли; КонецПроцедуры
ВводНаОсновании(Основание) Выполняется при вводе нового документа на основании другого. В переменную Основание передается контекст документа-основания, т.е. теперь вы можете обратиться к его реквизитам через эту переменную: СуммаДоплаты=Основание.СуммаСверху; //Свой реквизит принимает значение реквизита документа-основания. Помните, что после обработки этой процедуры система не сохранит информацию о том, что новый документ введен на основании другого. Для реализации такой возможности вы должны иметь во вновь создаваемом документе реквизит типа "Документ", куда можно записать ссылку на документ-основание. Лучше сделать её доступной пользователю, чтобы он потом имел возможность выбрать другой документ-основание.
ПриЗаписи() Выполняется при записи (перезаписи) документа. Имейте ввиду, что операторы этой процедуры выполняются ДО фактической записи документа в базу. Это, так сказать, подготовительная работа.
ПриВводеСтроки() Вызывается при вводе пользователем новой стоки многострочной части документа. Такой операцией, например, можно отменить ввод новых строк, если в документе нельзя вводить строки вручную (можно добавить какое-либо условие): Процедура ПриВводеСтроки().......СтатусВозврата(0); КонецПроцедуры
ПриНачалеРедактированияСтроки() Обрабатывает начало изменения существующей (!) строки (когда пользователь ручками вводит или изменяет значения реквизитов табличной части). Исходя из примера, описанного выше для процедуры ПриВводеСтроки(), догадайтесь, как можно запретить редактирование стоки?
ПриРедактированииНовойСтроки() Похожая на предыдущую, но с тем отличием, что вызывается только при редактировании ВНОВЬ созданной строки.
ПриОкончанииРедактированияСтроки (ФлагНовойСтроки) ФлагНовойСтроки - имя переменной, в которую будет записана 1, если окончен ввод НОВОЙ строки, соответственно - 0, если закончено редактирование ИМЕВШЕЙСЯ. Процедура вызывается, когда пользователь "дезактивирует" строку мышкой, нажатием Enter, или Esc (кроме случая, когда отказываются от редактирования новой строки).
ПриУдаленииСтроки() Действие, которое будет обработано данной процедурой, очевидно исходя из имени процедуры. Что еще добавить?
ПриИзмененииПорядкаСтрок (ФлагДействия) ФлагДействия - имя переменной, которая станет "-1", если строка поднимается вверх, станет "1" при перемещении строки вниз, и станет "0", если изменяются номера строк, например, при сортировке. А что при этом сделать - это уже ваша фантазия (моей не хватает:).

Не забывайте о том, что имеются предопределенные процедуры, общие для любых форм системы 1С, такие как ПриОткрытии(), ПриЗакрытии() и т.д. Их подробное описание здесь не приводится, дабы не перегружать главу о документах.


1 | 2 | 3 | 4 | 5 |

Поиск по сайту:



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