Провести документ неоперативно в 1с что это значит
Оперативное и неоперативное проведение документов 1С
В системе 1С Предприятие существует два вида проведения документов: оперативное и неоперативное. Рассмотрим, чем они отличаются.
Что такое проведение?
В общем, с точки зрения пользователя проведение — это процесс «утверждения» документа в системе 1С. Пока документ не проведён, он не имеет никакой силы и не влияет на учёт предприятия.
С технической точки после проведения в системе образуются образуются проводки и движения — записи регистров, пока документ не проведен, записей быть не должно (бывают и исключения).
Оперативное и неоперативное проведение документов 1С
Режим проведения и контроль остатков в типовых конфигурациях 1С
В типовых конфигурациях фирма 1С грамотно подошла к вопросу реализации контроля остатков в документах.
В режиме неоперативного проведения система НИКОГДА не контролирует остатки.
Это достаточно логичный подход, если хозяйственный документ вводится задним числом, это уже не нормальная ситуация с точки зрения учета, и система перекладывает ответственность за остатки в прошлом периоде на пользователя.
Получите понятные самоучители по 1С бесплатно:
Другие статьи по 1С:
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
Оперативное и неоперативное проведение документов в 1С 8.3
Режим проведения документа
В первом случае файл проводится с учетом нынешнего времени, благодаря этому программа может контролировать многие торговые процессы, к примеру, списание товаров или их продажа. Данный режим стоит применять, если нужна информация на текущий момент, так как если провести операцию чуть позже, данные будут уже совсем другими. Новый документ автоматически будет работать в данном режиме.
Неоперативное проведение ведет работу с прошлым или будущим, не ведя учет остатков. Часто бывает, что пользователь создал документ, но еще не провел его. Именно для таких случаев и предназначен этот режим, он позволяет избежать контроля программы, но это может привести к некоторым ошибкам или неточности учета. Например, будут списаны товары, которых уже нет в наличии. Так что лучше доверить выбор режима проводки 1С, программа сама подберет нужный способ.
Значения свойства «Оперативное проведение» у документов: «Разрешить» и «Запретить»
Рассмотрим, какие действия нужно провести чтобы включить оперативную настройку в программе «1С: Бухгалтерия предприятия 3.0». В предыдущих версиях порядок будет идентичным.
Запускаем программу через режим «Конфигуратор», открываем конфигурацию. Далее, находим дерево метаданных, раздел «Документы» и открываем свойство любого файла.
Для того, чтобы проводка была совершенна немедленно, ставим параметр «Разрешить». Проводить документы таким способом можно в обоих режимах. Регистры не влияют на оперативный вариант. С установленным значением «Разрешить» проводка может осуществляться как в прошлом, так и нынешнем времени. В случае использования прошедшей даты документ будет проведен в неоперативном режиме.
Крайне не рекомендуется менять настройки установленные разработчиком, так как это может повлиять на процессы проведения документов и сбить алгоритмы программы. Не стоит изменять системное время и день проведения работы в 1С для того, чтобы поменять дату оперативного проведения. Это приведет к неправильным бухгалтерским расчетам, которые в дальнейшем вызовут вычислительные ошибки в учете.
Оперативное и неоперативное проведение в 1С
В этой статье рассмотрим режимы Проведения, а также подход к действию с позиции пользователя 1С 8.3 Предприятие и разработчиков (особенно тех, кто только начинает этот тернистый путь).
1. Отражение хозяйственных операций
Разберемся откуда появились эти два Режима проведения. Для отражения хозяйственных операций (в том числе в режиме реального времени) требуется механизм учета и контроля движения (перемещения, например, купил => продал) товаров и материалов. Так как эти движения могут быть «размыты» во времени, то нужно понимать, как их регистрировать. В системе 1С для фиксации факта хозяйственной операции присутствует сущность «Документ». Следовательно требуется понимать, как проводить регистрацию и учет движений в Документе, если у каждой фиксации свои тонкости в регистрации движений. Отсюда и пришло понимание, что любая Операция может вноситься в режиме реального времени, т.е. «оперативно», и как свершившийся факт в прошлом (однозначно выполняемая операция в будущем) – «неоперативно». И в зависимости от стоящей задачи Документ может быть «оперативным», «неоперативным» или не иметь режима вовсе (например, Документ для внесения ручных операций).
Рис. 1. Регистрация событий хозяйственного учета
На рисунке 1 не указано отсутствие режима проведения, но исходя из задачи можно однозначно понимать, что если функции у Документа нельзя определить по указанному в рисунке 1, то Проведение отсутствует (это понимание важно не только пользователю, но в большей степени разработчику для планирования будущей архитектуры решения).
Для того чтобы перейти к применениям этих режимов, необходимо также понимать следующее: использующие режимы проведения Документы ориентируются на временную шкалу, по которой работает Платформа 1С 8.3 и которая контролирует расчет остатков. Для полного понимания использования временной шкалы используется схема, указанная в рисунке 2. Следует уточнить, что Таблица Движений — это таблица, которая формируется на основе введенных в Документ учетных данных и вносит записи в Регистры.
Рис. 2. Расчет итогов и Актуальных остатков на временной шкале
Как можно увидеть из рисунка 2, размещение Документа влияет на расчет остатков. Актуальные остатки (далее АО) – это рассчитанные остатки, хранящиеся на дату 01.11.3999 год по времени 00:00:00 в интервале 1-й секунды по Левой границе от этого времени (левая граница означает, что берется весь отрезок времени по указанную секунду, но не включая эту секунду). При этом понятие Границы времени и Момент времени, использующиеся в проведении, отличаются и имеют свои особенности применения, что будет рассказано в другой статье.
Пересчет по Таблице Движений выполняется по следующему правилу. Берется ближайший (по количеству секунд) Рассчитанный итог и:
1. При условии, что Документ находится правее на оси времени по отношению к Рассчитанным итогам (т.е. Документ в будущем), к нему прибавляют Движения до момента проведения;
2. При условии, что Документ находится левее на оси времени по отношению к Рассчитанным итогам (т.е. Документ в прошлом), из него вычитают Движения до точки проведения Документа.
Таким образом, чем больше Документов формируемых Движения между проводимым Документом и Рассчитанными итогами, тем дольше происходят вычисления.
Для Оперативного присуще проведение текущей Дата/Время. При этом в текущий момент Времени Оперативного проведения происходит просчет Актуальных остатков. С «проводящимися» Документами в режиме Неоперативного проведения такого не происходит, они влияют на пересчет промежуточных итогов, и уже потом Платформа 1С выполняет на их основе пересчет Актуальных остатков.
Особая потребность в Оперативной проводке возникает в многопользовательском режиме, когда данные создаются несколькими пользователями одновременно. В этом случае программным кодом должно учитываться изменяющиеся итоги и АО. Таким образом, оперативное проведение служит для определения возможности выполнения той или иной операции (и выполнения ее при соблюдении заданных условий). Неоперативное же служит для безусловного сохранения данных (проводок) в информационной базе, которые уже совершены или точно будут совершены.
Если Документ может использовать Оперативное проведение, а существует необходимость создать проводки будущей датой, для сохранения данных (проводок) в информационной базе, которые должны произойти в будущем, то Система не проведет такой Документ без вариантов выбора. Тогда пользователю остается только поменять реквизит дата Документа:
1. На текущую: в таком случае Система самостоятельно задаст время, равное Оперативной Отметке Времени и Документ будет проведен оперативно;
2. На прошедшую: Документ будет проведен в неоперативном режиме.
При текущих обстоятельствах если параметры учета указывают на необходимость проведения каких-либо Документов будущей датой, то для такого Документа Оперативное проведение должно быть запрещено. Помните: не рекомендуется изменять Дату и Время Операционной системы и Программы с целью изменения даты Оперативного проведения, потому что это допускает возможность приведение к неверному расчету бухгалтерских данных. Из-за этого возникнут грубые ошибки в бухгалтерском учете.
2. Для разработчиков: настройка объекта Метаданных
Оперативное проведение (далее – ОП). В момент создания Документа режим ОП будет установлен автоматически. Документ создает движения текущим Временем, и механизм контролирует остатки (например, списываемые товары проверяются на остатки по складам). Подобные проверки имеют важное значение в клиент-серверной архитектуре, когда пользователи могут изменить данные одновременно. При этом ОП имеет прямое отношение к АО.
Неоперативное проведение (далее – НП). Регистрирует Движения данных без контроля остатков с точкам Времени в «прошлом» или «будущем». Также проведение ранее сохраненного Документа, но не проведенного в момент сохранения, приведет к Неоперативному проведению. Когда пользователь использует НП, он имеет возможность игнорировать описанный программный контроль. Это может привести к ошибкам в учете и ошибкам в записываемых данных, поэтому Система определяет автоматически на уровне Платформы, какой режим будет использован.
Запускаем 1С:Предприятие в режиме Конфигуратор. Открываем Конфигурацию, раскрываем в дереве Метаданных узел «Документы» двойным кликом откроем окно свойств Документа (или же при создаем новый Документ), переходим на закладку Движения и видим следующую настройку:
Рис. 3. Настройка объекта Документ в дереве Метаданных
Как видно на рисунке 3, существует два варианта в поле «Оперативное проведение»: запретить и разрешить. Данное свойство предполагает, что при выборе варианта Запретить любое проведение Документа будет Неоперативным (при этом документы также можно проводить любой датой). А при выборе варианта Разрешить уже сама Платформа, согласно внутреннему устройству, будет проверять дату Документа. И если Дата не задана пользователем, то будет проводиться Оперативно, если задана отличная от текущей – то Неоперативно. Для того чтобы не изменять параметры, программные механизмы и алгоритмы работы решения, не рекомендуется пользователю вмешиваться в настройки проведения.
В обработке проведения необходимо выстроить алгоритм, проверяющий и контролирующий достаточность остатков с целью списания при проведении Документа.
Как правило, такая проверка делается в случае, когда ОП разрешено. В случае НП такую проверку можно не выполнять, так как концепция ОП и НП подразумевает, что пользователь может работать, как описано выше, в абсолютно противоположных режимах. Так как ОП Документов выполняется пользователем в режиме «реального времени», а такое проведение особенно актуально при многопользовательской работе, то в таком случае необходимо программным образом описать максимальное количество проверок способных исключить ошибки ввода данных пользователем.
Например, необходимо выполнить контроль остатков на складах списываемой Номенклатуры, для исключения возможность продажи одного товара в один момент Времени несколькими пользователями.
При ОП Документа Платформа сначала проверит положение даты Документа относительно текущей даты сеанса. Текущая дата сеанса равна системной дате компьютера, приведенной к часовому поясу сеанса. Если текущий момент Времени Документа совпадает с текущей датой сеанса, то Система проведет его Оперативно. В обработке же проведения об этом можно узнать, чтобы выстроить определенный алгоритм проведения Документа. И если дата меньше текущей даты сеанса, то он будет проведен Неоперативно.
НП Документов подразумевает отражение фактов хозяйственного учета, которые произошли в прошлом или которые точно произойдут в будущем. Именно поэтому задача НП Документов – отразить совершенные операции в информационной базе. В том числе контроль остатков и иные проверки не имеет смысла производить при НП. Если в результате ввода данных с последующим НП были допущены ошибки, то подразумевается, что анализ данных не является текущей задачей и не относится к НП. Такая задача выполняется, когда в базе имеются достаточно данных для анализа. Например, когда списали количество материалов не имеющегося по складу на дату проведения Документа и планируют вводить Документы ранней датой, приходующие товары.
Провести документ неоперативно в 1с что это значит
Этот вопрос задает себе каждый пользователь, который слышит эти слова.
Немного прописных истин:
Что такое вообще проведение документа? Это как подпись документа в реальной жизни. Документу придали силу. До подписи (проведения) — это просто бумажка, после — событие!
Оперативное проведение — это проведение документа текущим временем.
Неоперативное — это проведение документа ранее текущего времени. Даже в тот же день, тот же час, пусть на секунду раньше текущего времени — это уже неоперативно. Классический вариант — перепроведение документов прошедшей датой.
Позже текущего времени, или как говорят, «будущей датой», в 8-ке документ провести нельзя в принципе.
Опыт, накопленный годами:
Фирма 1C по пятнадцатилетнему опыту развития и поддержки 7-ки решила, что в 8-ке контроль остатков (товаров, взаиморасчетов и т.д.) будет проводиться только при оперативном проведении. В случает отсутствия остатков, документ не будет проведен. Внимание! А при неоперативном проведении документ будет проведен всегда! Последнее предложение надо перечитать несколько раз.
Как же так, спросите вы? А если товара нет, какие движения сформирует документ?! Такие, какие сможет.
Чтобы это понять (и принять), у меня ушло два месяца. А еще спустя полгода, я понял всю силу такого подхода. Это действительно хорошее решение!
Смысл в том, что контроль имеет смысл только при оперативной работе. А если задним числом что-то съехало — это результат работы задним числом. Кто ломал, тот пусть и делает.
В частности, в результате такого подхода меняется характер работы с базой. Теперь база перепроводится на ура, но в ней надо искать ошибки. Для этого существует серия обработок для проверки.
В заключение хочется отметить, что такая методика работы не связана с самой платформой 1С 8. В 8-ке можно было бы сохранить методику, заложенную в 7-ке. И в 7-ке можно было бы реализовать рассмотренную здесь методику. Поменялся именно подход к работе с базой.
Получается, что в 7-ке, где в одном отчете о продажах за день может быть 1000 позиций и не проводится только из-за одной, не проводится весь документ.
А в 8-ке, где в одном отчете о продажах за день может быть 1000 позиций, и ругается только по одной, ошибка только по этой позиции.
Подробнее о записи и проведении документов.
Проведение документов
Рассмотрим подробно свойства документа на вкладке «Движения»
Процедура ОбработкаПроведения
Формирование новых наборов записей регистров включает в себя операции, состоящие:
Следует учитывать, что при автоматической записи движений они будут записаны с замещением, то есть старые движения документа будут замещены новыми. Фактически, платформа неявно выполнит код:
Действие данного параметра проявляется в случае, если на момент записи нового (или модифицированного) набора записей в регистре присутствуют еще записи, подчиненные данному же регистратору.
Подробнее о формировании движений
С точки зрения платформы отдельного процесса «проведение» не существует. Есть запись документа с проведением, причем в рамках одной транзакции. Таким образом, в момент выполнения обработчика события ОбработкаПроведения документ уже записан.
Свойство «Удаление движений» документа как объекта конфигурации стандартно устанавливается платформой в значение «Удалять автоматически при отмене проведения». Это значит, что при перепроведении документа движения, подчиненные данному документу, перезаписываются, а при отмене проведения движения документа автоматически удаляются.
Если разработчик захочет реализовать нестандартный вариант проведения документа и установит свойство «Удаление движений» в значение «Удалять автоматически», то при записи документа с проведением сначала будут удалены все старые движения документа. То есть на момент выполнения обработчика события ОбработкаПроведения в регистрах не будет наборов записей с движениями данного документа.
При записи с проведением система автоматически запишет выбранные и незаписанные наборы записей, находящиеся в свойстве «Движения». Отсюда следуют два важных вывода:
В случаях, если необходимо программно вызвать саму обработку проведения, инициируется запись документа с проведением. Пример программного вызова проведения документа в оперативном режиме:
Пример перепроведения документов РеализацияТоваров в интервале с ДатаНачала по ДатаОкончания :
Оперативное и неоперативное проведение
Оперативное и неоперативное проведение подразумевает, что работа пользователей может происходить в двух принципиально разных по своей сути режимах. Оперативное проведение документов пользователями выполняется в режиме «реального времени», то есть отображает изменения, факты, свершающиеся в настоящее время. Поэтому при этом способе проведения документов следует осуществлять максимум проверок, способных исключить ошибки при вводе данных пользователями.
Например, при оперативном проведении следует выполнять контроль остатков на складе списываемой номенклатуры с тем, чтобы исключить одновременную продажу одного товара несколькими продавцами. При оперативном проведении документа система, прежде всего, проверит положение даты документа относительно текущей даты сеанса. Если дата проводимого документа совпадает с текущей датой сеанса, то система будет проводить такой документ в оперативном режиме, и в обработке проведения об этом можно узнать, чтобы выстроить определенный алгоритм проведения документа.
Если дата проводимого документа меньше текущей даты сеанса, то такой документ система будет проводить в неоперативном режиме. Неоперативное проведение документов подразумевает отражение в базе данных фактов, которые свершились в прошлом или которые точно будут совершены в будущем. Поэтому задача неоперативного проведения документов — просто отразить в информационной базе данные о совершенных операциях.
При неоперативном проведении документов не имеет смысла производить целый ряд проверок, в частности контроль остатков. Подразумевается, что если в процессе неоперативного проведения документов были допущены ошибки (например, списано такое количество номенклатуры, которого не было на складе на дату проведения документа), то анализ полученного состояния базы данных является отдельной задачей, не относящейся к неоперативному проведению.
С оперативным проведением документов связано понятие оперативной отметки времени и понятие момента времени.
Понятие момента времени
Для определения положения документа на оси времени используется реквизит документа «Дата». Дата содержит время с точностью до секунды. Это позволяет контролировать последовательность записи документов. Однако при большом объеме создаваемых документов вероятна ситуация, когда несколько документов будут иметь одинаковое значение даты (т. е. будут созданы в течение одной секунды). Как в этом случае определить последовательность созданных документов?
Для обработки подобных ситуаций было введено понятие момент времени. Момент времени представляет собой совокупность даты, времени и ссылки на объект базы данных. Он позволяет однозначно идентифицировать любой объект ссылочного типа базы данных на оси событий, но имеет смысл в основном только для документов. Кроме того, момент времени позволяет идентифицировать и необъектные данные, например, записи регистров, подчиненных регистратору.
Для нескольких документов, имеющих одинаковую дату и время, последовательность их на оси событий определяется системой исходя из ссылок на эти документы. Она может не совпадать с последовательностью создания документов, и она недоступна для изменения пользователем, то есть нельзя каким-либо образом повлиять на последовательность документов внутри одной секунды или вычислить, что один документ создан раньше, а другой — позже.
Оперативная отметка времени создается системой каждый раз при оперативном проведении документа. Ее значение формируется исходя из текущей даты сеанса и последней созданной оперативной отметки. Если последняя оперативная отметка меньше текущей даты сеанса, в качестве новой оперативной отметки принимается текущая дата сеанса. Если последняя оперативная отметка равна или больше текущей даты сеанса, в качестве новой оперативной отметки принимается значение на одну секунду большее, чем старая оперативная отметка времени.
Таким образом, если у объекта конфигурации Документ установлено свойство оперативного проведения, последовательность действий системы будет следующей: