Создать новый документ в 1с 8.3. Оперативное и неоперативное проведение

Документы в 1С 8.2 и 8.3 — объект метаданных, с помощью которого в 1С фиксируются хозяйственные операции предприятия.

Каждый созданный документ в конфигурации создать для отражения своего типа операции, например: поступление товаров, списание товаров и т.д.

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

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

Настройка и свойства документов в 1C 8.3 и 8.2

Рассмотрим самые интересные вкладки с точки зрения разработчика.

Данные

Одна из основные вкладок документа:

Здесь описывается структура хранения информации будущего документа, реквизиты аналогичны . Сильно отличаются стандартные реквизиты:

Получите 267 видеоуроков по 1С бесплатно:

Движения документа

Самая важная вкладка, на которой определяется состав регистров, по которым будет делать движения документ:

Рассмотрим подробно свойства документа на этой странице:

Проведение — разрешить или запретить. Определяет, будут ли движения по данному документу.

Оперативное проведение — разрешить или запретить. Если установлено разрешить, то проведение документа будущей датой невозможно.

Удаление движений — определяет режим очистки движения документа: Удалять автоматически при отмене проведения — движения будут очищены только при нажатии кнопки «Отмена проведения», но не удаляет при перепроведении. Удалять автоматически — значит, что движения будут удаляться в любом случае, даже если документ 1С перепроводится. Не удалять автоматически — значит, что удаление движений берет на себя разработчик системы.

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

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

Быстрая пошаговая демонстрация разработки приложения на платформе 1С:Предприятие 8.2.

Для выполнения примера вам понадобится платформа 1С:Предприятие 8.2. На нашем сайте вы можете скачать . Данная демонстрация подготовлена с использованием именно такой версии!

Простая система кадрового учета

26. Теперь создайте новый документ "ПриемНаРаботу". (установите курсор на ветку Документы и щелкнув правой кнопкой мыши выберите Добавить). Задайте имя документа ПриемНаРаботу. Перейдите на закладку Данные.

27. Добавьте реквизит "ФИО", укажите ему тип значения Строка и длина 100 символов.

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

Кстати, у любого документа уже есть два заранее заданных реквизита "Номер" и "Дата".

Далее нужно создать таким же образом, как и реквизит "ФИО", остальные реквизиты и укажите для каждого из них правильный тип:
реквизит Должность - тип "СправочникСсылка.Должности"
реквизит Оклад - тип Число, длина 10, точность 2
реквизит ДатаПриема - тип Дата

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

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

Что конкретно произойдет при проведении документа, определяется программистом 1С. При проведении выполнится предопределенная процедура ОбработкаПроведения(). Именно в этой процедуре программист пишет программный код на языке 1С, которыйи совершает все изменения в системе. Сейчас нам нужно добраться до процедуры ОбработкаПроведения(). Она хранится в "Модуле объекта".

Для открытия модуля объекта перейдите на закладку "Прочее" и нажмите кнопку "Модуль объекта". Другой способ перейти в модуль объекта – выбрать в дереве конфигурации документ ПриемНаРаботу и кликнув правой кнопкой мышки выбрать "Открыть модуль объекта".

В результате откроется окно для редактирования текста программы.

28. На панели инструментов найдите пиктограмму "Процедуры и функции" и нажав на нее выберете "ОбработкаПроведения".

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

СпрСотр = Справочники.Сотрудники.СоздатьЭлемент();
СпрСотр.Наименование = ФИО;
СпрСотр.Должность = Должность;
СпрСотр.Оклад = Оклад;
СпрСотр.ДатаПриема = ДатаПриема;
СпрСотр.Записать();

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

Кстати, часто начинающие специалисты 1С забывают вызвать Записать() . Если вы не вызовете метод Записать(), то все ваши изменения не сохранятся в базе.

Обратите внимание, что каждый оператор в языке 1С заканчивается символом ";" (точка с запятой). После слова КонецПроцедуры точки с запятой нет, потому что это не оператор, а операторная скобка (есть такое понятие в 1С). Точки с запятой нет также после слов Цикл и Тогда , но после слов КонецЦикла и КонецЕсли обязательно ставьте точку с запятой. В данной программе мы не использовали ни циклы, ни условия.

Также обратите внимание как оформляются комментарии.

// это комментарий

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

29. Закройте окно модуля и сохраните конфигурацию.

Теперь можно попробовать принять нового сотрудника по всей форме.

30. Запустите 1С в режиме 1С:Предприятие. В панели навигации выберете "Прием на работу". Перед нами откроется список документов "Прием на работу" и это список пока пустой.

31. Создайте новый документ. Откроется форма документа "Прием на работу" для ввода данных. Номер документа присвоится автоматически после его записи, дата документа - сегодняшнее число.

Введите все данные: ФИО сотрудника, укажите ему должность, оклад и дату приема на работу.

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

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

Теперь организуем правильное увольнение сотрудников с помощью кадрового приказа.

32. Создайте в Конфигураторе новый документ "Увольнение". Укажите, что он содержит реквизиты "Сотрудник" тип "СправочникСсылка.Сотрудники" и "ДатаУвольнения" тип Дата.

33. Напишите следующий текст в модуле документа в процедуре ОбработкаПроведения():

СпрСотр=Сотрудник.ПолучитьОбъект();
СпрСотр.ДатаУвольнения=ДатаУвольнения;
СпрСотр.Записать();

Рассмотрим записанный программный код более подробно.

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

34. Создадим журнал "КадровыеДокументы". Для этого установите курсор на ветку "Журналы документов" в дереве конфигурации и щелкните "Добавить". Задайте имя журнала.

На закладке "Данные" укажите регистрируемые документы: "ПриемНаРаботу" и "Увольнение".

Создадим новые графы:

  • Сотрудник – для документа "ПриемНаРаботу" это реквизит "ФИО", а для документа "Увольнение" - это реквизит "Сотрудник";
  • ДатаПриемаУвольнения – для документа "ПриемНаРаботу" это реквизит "ДатаПриема", а для документа "Увольнение" - это реквизит "ДатаУвольнения".

35. Сохраните конфигурацию и запустите ее в режиме 1С:Предприятия. Проверьте работу документа "Увольнение", а затем откройте журнал "Кадровые документы". В результате он будет выглядеть примерно так:

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

Для сравнения скажу, что написание такого же прикладного решения в другой среде или на другом языке программирования (Visual Basic или Delphi) займет в три или даже в пять раза больше времени и сил. Что бы там ни говорили недоброжелатели, но на 1С программы пишутся гораздно быстрее.

Продолжаем изучать продукт 1С Предприятие. Сегодня немного углубимся в программирование. А именно создадим новый документ. Я уже писал о том как создать новую базу. Поэтому рассмотрим создание документа именно в новой базе. Но таким же образом можно создать документ абсолютно в любой конфигурации.

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

Создание документа в конфигураторе 1С

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

У нас открылась конфигурация, теперь переходим к созданию документа 1С. Для этого на пункте Документы кликаем правой кнопкой и выбираем Добавить.

Открылось окно Документа тут очень много различных вкладок о них пока говорить не буду так как мы с вами создаем простой документ. Заполняем на вкладке Основные имя документа например напишем Приход товара. Кстати писать нужно все слитно и с большой буквы. Остальные поля пока оставляем пустыми.

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

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

Теперь необходимо в нашу таблицу Материалы добавить колонки а именно Наименование, Количество, Цена и Сумма. Для этого на таблице материалы кликаем правой кнопкой и Выбираем Добавить Реквизиты табличной части.

В окне Свойств пишем Имя, Тип оставляем Строка а вот длину немного увеличим до 50 знаков так.

Таким же образом создаем остальные элементы (Количество, Цена, Сумма) только в поле Тип выбираем число.

Теперь перейдем на вкладку Формы и создадим форму нажав на плюс и в открывшемся окне кликаем Готово.

Ну вот в принципе и все документ 1С создан осталось только запустить 1С и проверить что получилось. Для этого в окне конфигуратора кликаем на значек Начать отладку.

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

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

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

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


Пожалуй, самая важная вкладка при создании нового документа 1с 8.2 — это «Данные». Здесь требуется указать все реквизиты, которые нужны в документе. При необходимости, можно добавить табличные части. Вкладка «Нумерация» позволяет вести нумерацию документов. Здесь можно использовать внешний нумератор, или сделать нумерацию только документов этого вида. При этом, существует возможность выбора времени обнуления нумерации, например, в пределах года или месяца. Чтобы создать форму документа в 1с, перейдите на вкладку «Формы». Здесь вы сможете настроить внешний вид нового документа и его списка.


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