Для чего нужны документы в 1с
Перейти к содержимому

Для чего нужны документы в 1с

  • автор:

Документы

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

Момент времени

Помимо даты документа, существует понятие момент времени , это тот момент в который произошла запись в базу данных. Если в одно и тоже время(в течении одной секунды) произошла запись двух разных документов, то система разделит время их записи и один документ будет располагаться раньше второй позже и второй документ может получать значения регистров уже с учетом своего момента времени. Момент времени это свойство объекта метаданных Документ .

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

При вводе документа система автоматически устанавливает текущие дату и время документу. Это поведение настраивается на уровне свойств документа.

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

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

Оперативное проведение

Оперативное проведение – это проведение и получения остатков(например для контроля) на текущий момент, то есть при оперативном перепроведении дата будет сдвигаться на текущую и в таком случае можно при списании остатков проверить "текущий" остаток, что происходит достаточно быстро, благодаря хранению текущих остатков в отдельной таблице.

Неоперативное проведение

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

Состояние документа

Документ всегда находится в каком то одном из трех состояний

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

Движения документа – это записи в регистрах накопления или сведений, подчиненных этому документу. Какие именно записи будут занесены в регистр, определяется с помощью процедуры ОбработкаПроведения в модуле документа, в случае если первый параметр этой процедуры (который по умолчанию называется Отказ ) не выставляется в Истина , документ получает статус Проведен . В случае "прямой" записи в регистры подчиненные регистратору, достаточно просто ссылки на документ — регистратор, сам документ может быть не проведен или даже помечен на удаление. Другими словами программно можно сформировать любые записи в регистре «подсунув» под них подходящий по виду документ.

Часто используемые классы

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

Здесь мы отобрали все документы, у которых дата попадает в 2008 год и значение реквизита "Клиент" равно содержимому переменной "СпрИванов".

Ввод на основании

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

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

dokument

Документы в 1С: состав и проведение

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

Роль метаданных в формировании структуры документов

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

Реквизиты и журналы

Каждому виду документа соответствует неограниченное количество его реквизитов. Обязательные черты любого документа в 1С:

  • Многострочная часть и шапка имеют неограниченное число реквизитов;
  • У каждого документа есть экранный диалог – форма на экране;
  • Обязательна настройка общих характеристик: номер, длина, уникальность, дата и т.п.;
  • У документа есть шапка и табличная часть;
  • Табличная часть состоит из однотипных строк с информацией;
  • Каждому документу присуща своя дополнительная информация.
Отличия Документов от Констант, Справочников и Перечислений

Документы и Константы хранят значения, но Документ – это информация о хозяйственном событии, Константа – неизменный параметр метаданных. У константы нет печатной формы.

Документы и Справочники имеют список реквизитов и печатные формы, но Справочник содержит нормативно-справочную информацию, а Документы – актуальные данные о свершившихся фактах.

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

Экранные формы Документов

Чтобы найти Документы в 1С, нужно выйти в соответствующий Журнал. На экране появятся все записи журнала, содержащие заранее установленные реквизиты. К примеру, в Кадровых документах системы, можно увидеть все записи о Приеме на работу, Увольнении, Отпусках и Внутреннем перемещении. Отбор возможен по дате, виду документа, автору документа, номеру в системе. Если установить интервал экранного выведения записей, то пользователь увидит только позиции за указанный временной период. Колонки журнала настраиваются в Конфигураторе. Отбор можно установить как программно, так и вручную. Можно использовать функционал закладок.

02

Создание, проведение и удаление Документа

Методы создания Документа в 1С:

  • Создать Документ в 1С можно через меню, выбрав в подменю соответствующую позицию;
  • Можно создавать записи в открытой форме журнала путём копирования;
  • Сделать новый Документ можно на основании другого введённого в систему.

Таким образом, существует 3 способа введения нового документа: создание, копирование, ввод на основании.

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

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

Печать Документа в системе

Распечатать можно только те Документы, которые имеют печатную форму. Заказать печатную форму можно для любого документа. Печатные формы формируются с помощью встроенного языка . Печатная форма – отчёт, созданный на основании сведений о хозяйственных операциях. Печатную форму Документа в 1С можно также настраивать.

Документы

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

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

Каждый документ характеризуется номером, датой и временем. Система поддерживает режим автоматической нумерации документов, при котором она самостоятельно может генерировать номер для нового документа. Кроме этого система позволяет осуществлять контроль уникальности номеров документов, не разрешая создавать документы с одинаковыми номерами:

Документы

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

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

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

Документы

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

Документы

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

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

Например, документ Поступление товаров и услуг при своем проведении может вносить изменения в состояние расчетов с поставщиками, в учет остатков товаров, в состояние заказов покупателей и другие учетные данные:

Документы

Для документа Коммерческое предложение контрагенту напротив, проведение может быть запрещено, потому что этот документ никак не влияет на состояние учета:

Документы

Конструктор движений

Алгоритм, на основании которого документ вносит те или иные изменения в состояние учетных данных при своем проведении, описывается средствами встроенного языка на этапе разработки прикладного решения. Система содержит конструктор движений, который помогает разработчику создавать алгоритмы проведения документа. Подробнее…

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

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

Документы

Форма списка

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

Документы

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

Для просмотра и изменения данных отдельных документов используется форма документа. Как правило, она представляет данные в удобном для восприятия и редактирования виде:

Документы

Форма выбора

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

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

Документу могут быть сопоставлены несколько макетов, содержащих данные, необходимые для обеспечения работы документа:

Документы

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

Справочники и документы. В чем сила 1С

Много узкоспециализированных объектов или небольшое количество универсальных? Истина, как обычно, посередине. Справочники и документы в 1С — это пример удачного попадания в эту середину. Разумеется, речь не о том, что видит пользователь, а о том, чем оперирует разработчик. Идея » а давайте у нас будут не таблицы базы данных, а справочники и документы», при всей своей внешней неброскости, не столь проста. О чем и поговорим далее

Вступление

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

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

На создании ключей автоматизация не заканчивается. И для справочников и для документов создается ряд служебных полей. Также, разработчикам предоставляются интересные инструменты и методы. Рассмотрим их подробнее.

Справочники

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

Некоторые из них заслуживают более подробного рассказа.

Сразу вызывает вопросы поле код. Зачем оно нам, если у нас уже есть уникальный идентификатор? Здесь мы снова имеем дело с некоторыми издержками автоматизации. Уникальный идентификатор формируется по некоторым своим «внутренним» правилам. В общем случае, пользователь его не видит и, тем более, не может его менять. С другой стороны, платформа 1С создавалась в те времена, когда автодополнение после каждого введенного символа еще не было так распространено, считалось, что поиск по коду важнее поиска по наименованию. Поэтому каждый справочник надо бы снабдить неким кодом, но уже доступным для пользователя. С тех пор так и пошло, что какой-нибудь справочник контрагентов имеет встроенный уникальный идентификатор для ссылок и не менее уникальный ИНН(КПП), но уже для поиска.

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

Но тут «особо умных» ждет подвох

Мы-то удалили код из справочника, а платформа не совсем.

Этому багу уже лет двадцать. Поначалу я на него сердился, а теперь кажется, что мне будет его не хватать, если его когда-нибудь исправят.

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

Одна «галочка» и пользователь получает у себя перед глазами красивое «дерево», а разработчик такие методы как ПринадлежитЭлементу() и ВыбратьИерархически().

Отдельно стоит рассказать про так называемые табличные части. Табличная часть — это таблица, связанная с основной таблицей справочника или документа отношением много-к-одному. В предыдущей, седьмой версии табличная часть могла быть только у документа. Причем в количестве строго одна штука. В восьмой версии ограничение на количество табличных частей сняли, а заодно и разрешили создавать табличные части и для справочников. Жаль только, что нельзя создавать табличные части у табличных частей. Такого рода задачи, хоть и нечасто, но все же приходится решать. И в этот момент приходит понимание, что при всей своей простоте, концепция табличных частей реально экономит разработчику очень много времени.

Документы

Как я уже говорил, у документа кроме ссылки есть поле дата. Это позволяет рассматривать документы как инструмент отображения событий. Есть еще три предопределенных поля:

Можно добавлять табличные части. Но самое интересное в документах — это то, что у них как правило есть движения. Движения это записи в регистрах накопления (регистрах бухгалтерии, регистрах расчета, реже в регистрах сведений) связанные с документом. В самых простых случаях нет необходимости писать код для формирования движений (а в сложных есть такая возможность!). Можно воспользоваться конструктором движений.

Три (если у вас «+», «приход») или четыре клика (если у вас «-«, «расход») и платформа создаст вам код

Быстрая разработка

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

Такое простое разделение как бы берет за руку неопытного разработчика и ведет его к результату. Нам нужен учет на складе? Хорошо, какие у нас будут документы? Очевидно, что как минимум, для начала, приход на склад и расход со склада. А что в документах? В документах ссылки на справочники склады, товары и т.д. Ну и количество, разумеется. И все это делается за считанные минуты даже теми, кто никогда раньше не видел 1С. Еще несколько минут и мы создали регистр остатков товаров на складе, с помощью конструктора движений сгенерировали код для документов прихода и расхода. В принципе, наша учетная система уже готова к использованию. Можно еще создать отчет. Также с помощью конструктора. И так же быстро, как все остальное. Но это тема отдельного интересного разговора.

Заключение

В бурно развивающихся и постоянно меняющихся ИТ иногда встречаются «долгоиграющие» темы. Хороший пример тому язык запросов SQL. Вывод разработчика на уровень абстракции справочники/документы появился в 1С четверть века назад. И это прекрасно работает до сих пор. Что и служит доказательством удачной находки.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *