Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок

“Новая” и “старая” методики контроля отрицательных остатков при проведении документов в системе 1С:Предприятие 8.3

Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок
Эта статья предназначена для внедренцев 1С – и особенно для тех, кто готовится к Аттестации на 1С:Специалист по платформе.

Сегодня мы разберем 2 методики контроля остатков – причем не только остатков на складе, но и, например, взаиморасчетов (“какова текущая задолженность клиента и можно ли отгружать ему товары”)

Обе методики применяются и в типовых конфигурациях, и в Аттестационных заданиях. И поскольку их две – нужно четко понимать, когда применима “новая” методика, а когда только “старая”.

Это базовые знания для программистов 1С, рекомендуем не оставлять пробелов в таких областях. На изучение у Вас должно уйти 15 минут 🙂

Постановка задачи

Возьмем простую конфигурацию с документами “Поступление товаров” и “Реализация товаров”:

Для учета остатков используется регистр накопления “Свободные остатки”:

При проведении документа “Поступление товаров” выполняются движения-приход:

Процедура ОбработкаПроведения(Отказ, Режим)         Движения.СвободныеОстатки.Записывать = Истина;     Для Каждого ТекСтрокаТовары Из Товары Цикл         Движение = Движения.СвободныеОстатки.Добавить();         Движение.

ВидДвижения = ВидДвиженияНакопления.Приход;         Движение.Период = Дата;         Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;         Движение.Количество = ТекСтрокаТовары.

Количество;     КонецЦикла;

КонецПроцедуры

Обработка проведения документа «Поступление товаров» выполнена с помощью конструктора движений и интереса не представляет, так как при поступлении на склад контроль остатков не нужен.

Иногда контроль остатков реализуют и для документа «Поступление товаров» – чтобы при отмене проведения или перепроведении документа не образовался отрицательный остаток.

Например, на склад поступили 10 новых телевизоров LG, 6 из них было продано. Если в документе поступления 10 шт. исправить на 5 шт. – образуется отрицательный остаток «минус 1 шт.».

В типовой УТ 11 подобный контроль включается с помощью функциональной опции «Контролировать товары организаций при отмене приходов».

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

Мы намеренно работаем над простой задачей, когда себестоимость при списании не рассчитывается. Это позволит нам сосредоточиться именно на нюансах контроля остатков.

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

Естественно, Вы можете оптимизировать их самостоятельно, либо пройти наш курс по Ускорению и Оптимизации 1С 🙂

Как Вы уже поняли, решение задачи может быть выполнено двумя способами. Начнем с методики, которая применялась ещё со времен «1С:Предприятие 8.0».

Старая методика контроля остатков

Принцип старой методики контроля остатков следующий: проверяем, есть ли остаток товаров в нужном количестве. Если есть – списываем, если нет – сообщаем об ошибке.

Алгоритм в старой методике состоит из нескольких блоков:

  1. Запросом получаются остатки товаров и данные документа
  2. В цикле выполняется контроль достаточности товаров
  3. Если товаров недостаточно, то документ не проводится
  4. Если товаров достаточно – выполняются движения-расход

Вот так выглядит программный код:

Процедура ОбработкаПроведения(Отказ, РежимПроведения)         //  1. Очистка старых движений регистра     Движения.СвободныеОстатки.Очистить();     Движения.СвободныеОстатки.Записывать = Истина;     Движения.Записать();         //  2. Получение запросом данных документа и остатков регистра     Запрос = Новый Запрос;     Запрос.

Текст =         “ВЫБРАТЬ         |   Товары.Номенклатура КАК Номенклатура,         |   СУММА(Товары.Количество) КАК Количество         |ПОМЕСТИТЬ Товары         |ИЗ         |   Документ.РеализацияТоваровУслуг.Товары КАК Товары         |ГДЕ         |   Товары.Ссылка = &Ссылка         |         |СГРУППИРОВАТЬ ПО         |   Товары.

Номенклатура         |         |ИНДЕКСИРОВАТЬ ПО         |   Номенклатура         |;         |         |////////////////////////////////////////////////////////////////////////////////         |ВЫБРАТЬ         |   Товары.Номенклатура КАК Номенклатура,         |   ПРЕДСТАВЛЕНИЕССЫЛКИ(Товары.

Номенклатура) КАК НоменклатураПредставление,         |   Товары.Количество КАК Количество,         |   ЕСТЬNULL(Остатки.КоличествоОстаток, 0) КАК Остаток         |ИЗ         |   Товары КАК Товары         |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СвободныеОстатки.

Остатки(         |               &МоментВремени,         |               Номенклатура В         |                   (ВЫБРАТЬ         |                       Товары.Номенклатура КАК Номенклатура         |                   ИЗ         |                       Товары КАК Товары)) КАК Остатки         |       ПО Товары.Номенклатура = Остатки.

Номенклатура”;     Запрос.УстановитьПараметр(“Ссылка”, Ссылка);     Запрос.УстановитьПараметр(“МоментВремени”, МоментВремени());     РезультатЗапроса = Запрос.Выполнить();         //  3. Обход результатов запроса     ВыборкаТовары = РезультатЗапроса.Выбрать();         Пока ВыборкаТовары.Следующий() Цикл                 //  4.

Проверка на достаточность товаров         Дефицит = ВыборкаТовары.Количество – ВыборкаТовары.Остаток;         Если Дефицит>0 Тогда             Отказ = Истина;             Сообщение = Новый СообщениеПользователю;             Сообщение.Текст = “Товара “+ВыборкаТовары.НоменклатураПредставление+” недостаточно в количестве “+Дефицит+” шт.

“;             Сообщение.Сообщить();         КонецЕсли;                 //  5. Переход в начало цикла, если были ошибки         Если Отказ Тогда             Продолжить;         КонецЕсли;                 //  6. Выполнение движений в регистры         Движение = Движения.СвободныеОстатки.ДобавитьРасход();         Движение.Период = Дата;         Движение.

Номенклатура = ВыборкаТовары.Номенклатура;         Движение.Количество = ВыборкаТовары.Количество;     КонецЦикла;         //  7. Установка флага записи движений в конце транзакции     Движения.СвободныеОстатки.Записывать = Истина;    

КонецПроцедуры

Прокомментируем ключевые точки алгоритма.

Ниже в алгоритме будет запрос к остаткам регистра.

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

Когда возможна такая ситуация? Когда дата документа сдвигается вперед.

Покажем на примере, к чему это приведет:

  1. Остаток ламп настольных 10 шт.
  2. Проводится документ от 16.02.17, списываем 6 ламп

Источник: https://xn----1-bedvffifm4g.xn--p1ai/articles/%D1%81%D1%82%D0%B0%D1%82%D1%8C%D0%B8-%D0%BF%D0%BE-%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D0%B5-%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D1%8C-%D0%BE%D1%81%D1%82%D0%B0%D1%82%D0%BA%D0%B0/

Оперативное проведение в 1с это, типичные проблемы при расчете остатков

Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок

Многие компании используют механизмы резервирования товаров в 1C. Данное описание подходит для программ «1С:Управление торговлей, ред. 10.3» и «Управление производственным предприятием».

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

В этой статье мы постараемся исправить ситуацию, рассмотрим основные принципы резервирования и ответим на следующие вопросы: 

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

Резервирование товара

Зарезервировать товар для покупателя можно несколькими способами.

Способ №1 – в заказе покупателя

В момент оформления заказа покупателя можно зарезервировать товары, указанные в заказе.

Меню: Документы – Продажи – Заказы покупателей

Для этого в таблице товаров нужно в колонке «Размещение» указать склад, на котором вы хотите сделать резерв.

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

Способ №2 – в корректировке заказе покупателя

Для исправления заказа покупателя многие пользователи создают документ «Корректировка заказа покупателя», указывая в нем добавляемые и удаляемые из заказа позиции.

Создать корректировку можно на основании заказа или вручную.

Меню: Документы – продажи – Корректировка заказа покупателя

Корректировка заказов покупателя также может устанавливать резерв, как и заказ покупателя. Указывайте склад в колонке «Размещение» или пользуйтесь кнопкой «Заполнить и провести».

Способ №3 – в документе «Резервирование товаров»

Поставить резерв можно отдельным документом «Резервирование товаров». Его можно создать на основании заказа покупателя или вручную.

Меню: Документы – Продажи – Резервирование товаров

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

Способ №4 – в момент поступления товаров

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

Меню: Документы – Закупки – Поступления товаров и услуг

Для установки резерва в поступлении товаров должна быть заполнена колонка «Заказ покупателя».

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

Способ №5 – во внутреннем заказе

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

Меню: Документы – Запасы (склад) – Внутренние заказы

Во внутреннем заказе, как и в заказе покупателя, присутствуют колонка «Размещение» и кнопка «Заполнить и провести», позволяющие поставить номенклатуру в резерв.

Это основные способы установки резерва. Самым популярным способом, естественно,  является постановка резерва через документ «Заказ покупателя».

Помимо этих способов, есть другие варианты, когда программа может установить резерв: 

  • В корректировке внутреннего заказа (по аналогии с корректировкой заказа покупателя) 
  • В документе «Приходный ордер на товары», если установлен флаг «Без права продажи» (товары берутся на ответственное хранение)
  • В документе «Возврат товаров от покупателя» – при возврате товара, который был продан из резерва
  • В документе «Авансовый отчет», если подотчетник съездил за товарами по заказу поставщику (по аналогии с поступлением товаров).

Для снятия резерва также существует множество способов, рассмотрим основные из них.

Способ №1 – в реализации товаров 

В момент отгрузки товаров в программе оформляется документ «Реализация товаров и услуг».

Меню: Документы – Продажи – Реализации товаров и услуг

Если по заказу покупателя были зарезервированы товары, то в момент реализации резерв необходимо снять. Для того чтобы резерв с товаров был снят, нужно в таблице «Товары» указать способ списания «Из резерва».

В случае заполнения реализации товаров на основании заказа покупателя, программа сама определяет какой товар в резерве, а какой будет списан из свободного остатка на складе. Будьте очень внимательны при заполнении документа вручную: если указать способ списания «Со склада», товар спишется, но резерв по нему не снимется и «повиснет».

Способ №2 – в документе «Закрытие заказов покупателей»

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

Меню: Документы – Продажи – Закрытие заказов покупателя

https://www.youtube.com/watch?v=J5TmdqEyN6Q

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

После проведения документа по всем входящим в него заказам не будет никаких резервов.

Способ №3 – в документе «Резервирование товаров»

Помимо установки резерва, этот документ можно использовать также и для снятия резерва.

Меню: Документы – Продажи – Резервирование товаров

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

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

Способ №4 – в «Требовании-накладной» или «Перемещении товаров»

Документы «Требование-накладная» и «Перемещение товаров» используются для списания товаров на затраты подразделения и перемещения товаров с одного склада на другой соответственно.

Меню: Документы – Запасы (склад) – Перемещение товаров

Меню: Документы – Запасы (склад) – Требование-накладная

Если документы оформляются на основе внутреннего заказа, в котором был установлен резерв, то в момент проведения документов необходимо резерв снять. Для снятия резерва должна быть заполнена колонка «Документ резерва»:

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

Эти способы снятия резерва наиболее популярные, но есть и другие возможные ситуации: 

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

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

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

Отчет «Товары в резерве на складах»

Меню: Отчеты – Запасы (склад) – Товары в резерве на складах

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

Отчет можно настраивать: ставить отборы, менять состав группировок и т.д.

Отчет «Анализ доступности товаров на складах» 

Меню: Отчеты – Запасы (склад) – Анализ доступности товаров на складах

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

Источник: https://steptosleep.ru/1%D1%81-%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B5-%D0%BF%D1%80%D0%BE%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5/

(no title)

Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок

about1c

Решил написать сегодня о таких известных вещах, как режимы проведения документов. Возможно текст будет кому-то полезен.Если время будет позволять, то и дальше буду выкладывать подобные мини-статейки, которые будут касаться в основном УПП, т.к.

я его сейчас время от времени “ковыряю” :)Итак, режимы проведения документов в УПП.Я их условно разделю на две группы:1. Оперативное/неоперативное2. Отложенное проведение (оно же допроведение)

1. Оперативное/неоперативное проведение.

Если кратко, то документ, который проводится текущей датой – проводится оперативно. Документ, который проводится в текущей дате, но задним числом, проводится неопреративно.

Тут уместно сделать замечание – если мы перепроводим текущей датой документ, который ввели этим же днем ранее, то программа задает вопрос, каким образом нужно перепровести документ – оперативно или не оперативно.

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

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

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

2. Отложенное проведение (допроведение)

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

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

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

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

Расписание допроведения пользователь может настроить самостоятельно.

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

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

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

Более наглядно картину об отложенном проведении можно увидеть в обработке «Диаграмма отложенного проведения». В ней достаточно наглядно представлена информация о временной оси проведения по каждой организации, для которой включен режим отложенного проведения.

Принудительно запустить допроведение можно из обработки «Допроведение документов», которая расположена в том же меню «Отложенное проведение». В обработке обязательно указывается настройка допроведения, которая была сохранена ранее в справочник «Настройки допроведения документов».

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

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

about1c

Скажу пару слов о параметрах, которые можно задать в меню “Настройка программы”. Они в большинстве своем интуитивно понятны, но некоторые требуют пояснения.

Например, включение/отключение регистра «Свободные остатки». Для чего он нужен и нужен ли вообще? На мой взгляд, лучше этот регистр при ведении учета использовать. Основной плюс – при контроле остатков анализируется один регистр «Свободные остатки», а не несколько (Товары на складах, Товары в рознице, Товары в резерве на складах и т.д.

). Но есть и минусы – т.к. появляется дополнительный регистр складского учета, то повышается время затрачиваемое на проведение документа. Ну и база пухнет, естественно.

В разделе “Регламентные задания” есть интервал для опроса регламентных заданий в файловом варианте. Но не указано в чем он измеряется. Значение задается в секундах.

На раздел «Расчет себестоимости» можно обращать внимание, только если учет ведется в РАУЗ. В партионном учете данные из этого раздела вообще не используются.

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

Например, если в течение месяца документ «Расчет себестоимости выпуска» активно используется, то для “черновых” расчетов можно уменьшить значение в поле «Максимальное количество итераций СЛУ», скажем, до 20 и увеличить значение в поле «Среднее отклонение решения СЛУ», скажем до -3 (кстати это число обозначает степень). При этом конечно погрешность расчета увеличится.

Но в конце месяца можно вернуть прежние значения, понизив скорость и погрешность расчета и выполнить “чистовой” расчет.

Флажок «Использовать временные таблицы…» желательно установить, т.к. повышается оптимальность запросов и использования оперативной памяти. По идее. 🙂

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

Рост идет за счет того, что в системе сохраняются все копии измененных объектов (справочников и/или документов). Имеет смысл версионировать только ключевые, важные документы.

Просмотреть историю изменения объектов можно в отчете «История изменения объектов», который расположен в меню «Сервис»

Page 3

?

|

about1c

Особенности настройки учетной политики управленческого учета.

Раздел Запасы.

Метод списания По ЛИФО поддерживается только в партионном учете, а в РАУЗ не используется.
Флажок Не включать НДС в стоимость партий необходимо устанавливать, если мы выделяем НДС отдельно от стоимости товара. Если же мы работаем, например, на ЕНВД, то данный флажок нужно снять, чтобы НДС увеличивал стоимость партии товара. Т.к. мы не сможем в дальнейшем возместить этот налог из бюджета. Данный флажок имеет отношение только к материальным ценностям в момент их поступления на склад.
Настройка Порядок формирования учетных цен интуитивно понятна:- По плановым ценам – учетная цена определяется на основании  плановых цен, которые заданы по специальному типу цены, который выбран в учетной политике в качестве плановой.- По прямым затратам – учетная цена определяется по данным складского учета- По нулевой стоимости – учетная цена равна нулю.

Раздел Производство и учет затрат 

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

Раздел Производство->Распределение затрат 

Источник: https://about1c.livejournal.com/6987.html

Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок

Оперативное или неоперативное проведение. Особенности работы формы документа. Контроль остатков по новой методике – без блокировок

Установка даты документа при открытии формы

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

Причем время документа будет установлено в зависимости от следующих настроек. Если свойство АвтоВремя расширения формы документа имеет значение НеИспользовать то время документа будет установлено по значению текущей даты сеанса. В остальных случаях дате документа присваивается время начала дня (00:00:00).

Установка даты нового документа при записи нового документа в форме

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

Но если время документа “нулевое” (0:00:00), то при неоперативном проведении документа оно будет изменено согласно настройкам свойства АвтоВремя. Исключение – когда АвтоВремя имеет значение НеИспользовать тогда время документа не меняется.

.

Запрет интерактивной записи проведенного документа без проведения (перепроведения)

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

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

Предотвращение подобных ситуаций достигается за счет установки свойства расширения формы документа ПриЗаписиПерепроводить значение Истина.Тогда отказ в обработке проведения приведет к откату транзации – документ не будет и перезаписан.

Установка режима проведения

При проведении документа из формы система проверяет наличие у пользователя соответствующих прав (Проведение, Интерактивное проведение, Интерактивное проведение неоперативное).

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

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

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

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

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

При записи документа из формы расширение формы документа выполняет установку режима проведения документа.

Для реализации данного функционала система использует вариант (Автоматически, Оперативный, Неоперативный, Запрашивать) указанный в качестве значения свойства ИспользоватьРежимПроведения расширения формы документа.

Вариант “Автоматически”

Вариант АвтоматическиАвтоматически у свойства ИспользоватьРежимПроведения расширения формы документа. Платформа стандартно устанавливает это значение для новой формы.

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

Для проводимого документа происходит проверка положения даты документа относительно текущей даты сеанса.

Если дата документа (без учета времени) равна текущей дате сеанса, то система автоматически выбирает вариант проведения Оперативный.

Если дата документа (без учета времени) больше текущей даты сеанса, пользователю выдается предупреждение: “Дата оперативно проводимого документа больше текущей. Документ не может быть проведен оперативно!”, и проведение документа отменяется.

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

Вариант “Оперативный”

Вариант Оперативный устанавливается посредством выбора значения Оперативныйу свойства ИспользоватьРежимПроведения расширения формы документа.

В данном варианте, если дата документа (без учета времени) меньше текущей даты сеанса, выдается предупреждение: “Дата оперативно проводимого документа меньше текущей. Документ не может быть проведен оперативно!”, и проведение документа отменяется.

Если дата документа (без учета времени) равна текущей дате сеанса, производится запись документа с оперативным проведением.

Если дата документа (без учета времени) больше текущей даты сеанса, выдается предупреждение: “Дата оперативно проводимого документа больше текущей. Документ не может быть проведен оперативно!”, и проведение документа отменяется.

Вариант “Неоперативный”

Вариант Неоперативный устанавливается посредством выбора значения Неоперативный у свойства ИспользоватьРежимПроведениярасширения формы документа.

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

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

Вариант “Запрашивать”

Вариант Запрашиватьустанавливается посредством выбора значения Запрашиватьу свойства ИспользоватьРежимПроведениярасширения формы документа.

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

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

Поведение системы при этом варианте определяется прежде всего положением даты документа (без времени) по отношению к текущей дате сеанса.

При равенстве этих дат далее проверяется, имеет ли пользователь право проводить документ неоперативно. Если пользователь такого права не имеет, система проводит данный документ в оперативном режиме.

Если право на неоперативное проведение есть, пользователю выдается диалог с режимом выбора проведения.

После выбора режима проведения система проводит документ соответственно в оперативном или неоперативном режиме.

Если дата документа (без учета времени) меньше текущей даты сеанса, поведение системы определяется опять же наличием права на неоперативное проведение у пользователя. Если пользователь таким правом не обладает, выдается предупреждение: “Дата оперативно проводимого документа меньше текущей. Документ не может быть проведен оперативно!”, и проведение документа отменяется.

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

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

Документ не может быть проведен оперативно!”, и проведение документа отменяется.

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

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

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

Документ не может быть проведен оперативно!”, и проведение документа отменится.

Прочие функции

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

  • при открытии формы проведенного документа, если у пользователя нет права Интерактивное изменение данных форма переводится в режим ТолькоПросмотр;
  • при открытии формы документа, в которой находятся таблицы, отражающие движения основного реквизита (объекта документа), эти движения автоматически считываются из базы данных и отображаются;
  • при записи из формы (даже если и программной – посредством Записать()) система выполняет проверку прав на интерактивное проведение или интерактивную отмену проведения.

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

Где применяется?

  • 1С:Управление торговлей 10.3
  • 1С:Управление производственным предприятием 1.3
  • 1С: Комплексная автоматизация 1.1

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

  • Оперативно проводить можно только документы за сегодняшний день.
  • Оперативное проведение документа 1С выполняется в текущий момент времени.

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

  • При оперативном проведении в большинстве конфигураций выполняется проверка на наличие остатков.

    Если к примеру, на складе нет остатка, то товарный документ не проведется.

  • Невозможно оперативно провести документ будущей датой.

Неоперативное проведение документа 1С

  • Неоперативно можно провести документ за любую дату, при этом дата и время документа не изменятся.
  • При неоперативном проведении остатки могут не контролироваться. Например, документ проводится, но при этом выдает сообщение об отсутствии товара на складе.

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

Однако информация об одной и той же хозяйственной операции может отображаться в различных документах, а значит при создании первичного документа она должна попасть в них и сохраниться. Эта процедура и называется в 1С «проведением».

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

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

При неоперативном проведении операция регистрируется в прошлом от текущего момента, даже если прошла только секунда.

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

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

Первое, что следует запомнить – это то, что документ, проведенный оперативно, нельзя провести будущей датой. Программа в этом случае выдаст ошибку. Возьмем к примеру Приходно-кассовый ордер. Разумеется, что сегодня вы не знаете, сколько денег поступит в кассу завтра. Это вы узнаете только по факту совершения операции, когда кассир получит деньги на руки и проведет документ.

Второй важный момент. На основании режима проведения документов в типовых программах (особенно предназначенных для торговли: и 1С: Управление производственным предприятием 8 ()) разработчики реализовали функции контроля различных конфликтов. Например, контроль достаточности складского запаса товаров для проведения операции по его реализации.

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

Поэтому при оперативном проведении документа программа подключает к нему всякие модули контроля, которые в качестве основы используют ранее введенную информацию.

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

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

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

Источник: https://www.trosnab.ru/operativnoe-ili-neoperativnoe-provedenie-osobennosti-raboty-formy/

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