В предыдущем выпуске рассылки была представлена 6 часть учебного материала по обучению 1С: Предприятие 7.7. Конфигурирование. Компонента «Бухгалтерский учет».
Мы уже познакомились со справочными агрегатными объектами (константы, перечисление, справочники). Сегодня рассмотрим следующий агрегатный объект: документы.
Документы в системе «1С:Предприятие» являются электронными аналогами первичных документов и служат для ввода в систему информации о совершаемых хозяйственных действиях (т.е. событиях: купили, продали, договорились и т.д.), её просмотра и корректировки.
Идентификатор документа - уникальное сокращенное наименование документа, которое будет автоматически записываться вместе с номером документа в соответствующие графы журнала. В любом вновь создаваемом документе автоматически создаются два поля - номер и дата документа. Кроме этих полей необходимо определить дополнительные реквизиты шапки документа и табличной части.
Задание. Создайте документ «Приходная накладная». Документ «Приходная накладная» служит для отражения в системе учета факта приходования товара от поставщика на склад фирмы и является электронным аналогом расходной накладной поставщика.
1) Задайте структуру документа: -Щелкнув на строке «Документы» в окне «Метаданные» правой кнопкой мыши, выберите режим «Новый документ» -В появившемся окне заполните поля так, как показано на рисунке
Диапазон уникальности документа «В пределах года» означает, что при переходе на новый год будет автоматически производиться сброс номера. • Снимите флаг «Разрешить проведение документа» • Добавьте в шапку документа реквизит «Поставщик» (тип «Справочник.Организации»), а в табличную часть -- «Товар» (тип «Справочник.Товары»), «Цена» (число), «Количество» (число) и «ОбщСумма» (число). • На закладке «Дополнительно» окна «Свойства Реквизита» для числовых полей укажите признак Неотрицательный и Разделять Триады, а для реквизита «ОбщСумма» - признак ИтогПоКолонке() чтобы иметь возможность получать общую сумму накладной в модулях с помощью функции «ИТОГО()».
2) Создайте форму документа • Нажмите кнопку «Форма», с помощью помощника ввода реквизитов выберите все реквизиты, установите флаг «Вставлять имя», «Разместить в диалоге автоматически» и нажмите кнопку «Вставить». • Приведите диалог в соответствии с рисунком
выберите в меню Вставить \ Текст и вставьте в диалог текст Приходная накладная №; в нижней части документа (в подвале) вставьте новый «Текст», сотрите его заголовок, в формуле напишите: Итог(«ОбщСумма»), а слева от него поместите пояснение «Итого». • При вводе строк накладной при выборе товара в графу «Цена» должна автоматически проставляться цена покупки из соответствующего реквизита, а при изменении цены или количества автоматически пересчитываться значение суммы. Для этого перейдите в Модуль формы и напишите две процедуры: Процедура ВычЦенуПоУмолч() Цена=Товар.ЦенаПокупки; КонецПроцедуры
Здесь переменные Цена, Количество, Товар и ОбщСумма доступны по контексту и не требуют дополнительного описания. • Привяжите вызов этих процедур к соответствующим графам табличной части. Для этого выделите соответствующую графу щелчком по заголовку графы в форме, затем вызвав окно Свойства Поля Ввода (правая кнопка) на закладке «Дополнительно» напишите вызов этих процедур. Для графы «Товар» - обеих: ВычЦенуПоУмолч(); Количество=1; ВычОбщСуммы() ; для граф «Цена» и «Количество» - процедуру ВычОбщСуммы(); • Чтобы формулы пересчитывались, только если пользователь перевыбрал товар, а не просто дважды нажав Enter на этом поле, расположите в теле модуля метод: