Документы в системе «1С:Предприятие»

В предыдущем выпуске рассылки была представлена 6 часть учебного материала по обучению 1С: Предприятие 7.7. Конфигурирование. Компонента «Бухгалтерский учет».

Мы уже познакомились со справочными агрегатными объектами (константы, перечисление, справочники). Сегодня рассмотрим следующий агрегатный объект: документы.

Документы в системе «1С:Предприятие» являются электронными аналогами первичных документов и служат для ввода в систему информации о совершаемых хозяйственных действиях (т.е. событиях: купили, продали, договорились и т.д.), её просмотра и корректировки.

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

Задание. Создайте документ «Приходная накладная».
Документ «Приходная накладная» служит для отражения в системе учета факта приходования товара от поставщика на склад фирмы и является электронным аналогом расходной накладной поставщика.

1) Задайте структуру документа:
 -Щелкнув на строке «Документы» в окне «Метаданные» правой кнопкой мыши,
выберите режим «Новый документ»
 -В появившемся окне заполните поля так, как показано на рисунке

уникальности документа «В пределах года» означает, что при переходе на новый год будет автоматически производиться сброс номера.
• Снимите флаг «Разрешить проведение документа»
• Добавьте в шапку документа реквизит «Поставщик» (тип «Справочник.Организации»), а в табличную часть -- «Товар» (тип «Справочник.Товары»), «Цена» (число), «Количество» (число) и «ОбщСумма» (число).
• На закладке «Дополнительно» окна «Свойства Реквизита» для числовых полей укажите признак Неотрицательный и Разделять Триады, а для реквизита «ОбщСумма» - признак ИтогПоКолонке() чтобы иметь возможность получать общую сумму накладной в модулях с помощью функции «ИТОГО()».

2) Создайте форму документа
• Нажмите кнопку «Форма», с помощью помощника ввода реквизитов выберите все реквизиты, установите флаг «Вставлять имя», «Разместить в диалоге автоматически» и нажмите кнопку «Вставить».
• Приведите диалог в соответствии с рисунком 

в меню Вставить \ Текст и вставьте в диалог текст Приходная накладная №;
в нижней части документа (в подвале) вставьте новый «Текст», сотрите его заголовок, в формуле напишите: Итог(«ОбщСумма»), а слева от него поместите пояснение «Итого».
• При вводе строк накладной при выборе товара в графу «Цена» должна автоматически проставляться цена покупки из соответствующего реквизита, а при изменении цены или количества автоматически пересчитываться значение суммы. Для этого перейдите в Модуль формы и напишите две процедуры:

Процедура ВычЦенуПоУмолч()
          Цена=Товар.ЦенаПокупки;
КонецПроцедуры

Процедура ВычОбщСуммы()
         ОбщСумма =Цена*Количество;
КонецПроцедуры


Здесь переменные Цена, Количество, Товар и ОбщСумма доступны по контексту и не требуют дополнительного описания.
• Привяжите вызов этих процедур к соответствующим графам табличной части. Для этого выделите соответствующую графу щелчком по заголовку графы в форме, затем вызвав окно Свойства Поля Ввода (правая кнопка) на закладке «Дополнительно» напишите вызов этих процедур.
Для графы «Товар» - обеих: ВычЦенуПоУмолч(); Количество=1; ВычОбщСуммы() ;
для граф «Цена» и «Количество» - процедуру ВычОбщСуммы();
• Чтобы формулы пересчитывались, только если пользователь перевыбрал товар, а не просто дважды нажав Enter на этом поле, расположите в теле модуля метод:

Форма.Товар.ВыполнятьФормулуТолькоПриИзменении(1);
изменения в конфигураторе и проверьте работу в режиме 1С:Предприятие: Операции \ Журналы документов \ Полный \ Создать новый документ.

В следующем выпуске рассылки продолжим рассматривать создание документов в 1С: Предприятие 7.7.