Групповая корректировка назначения

03.11.22

Задачи пользователя - Корректировка данных

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

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Групповая корректировка назначения
.epf 11,20Kb
19 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

В отличие от типового механизма заполнения документа "Корректировка назначения" учитывается количество товара на всех складах. То есть если товар заказали со склада 1, а назначение закрепили на складе 2, тогда товар останется зарезервированным, и его можно будет переместить под обеспечение заказа.

Проверено на релизе Управление торговлей, редакция 11 (11.5.9.131).
Платформа: 8.3.22.1672.

Обработку можно использовать как внешний файл или подключить через систему доп. обработок как регламентное задание.

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

На релизе УТ НИЖЕ 11.5.9 работать НЕ БУДЕТ.

Запрос по излишкам товара:

"ВЫБРАТЬ
	|	Остатки.Назначение КАК Назначение,
	|	Остатки.Номенклатура КАК Номенклатура,
	|	СУММА(Остатки.ВНаличииОстаток) - СУММА(Остатки.КОбеспечениюОстаток) - СУММА(Остатки.РезервироватьНаСкладеОстаток) КАК Освободить
	|ПОМЕСТИТЬ НазначенияКОтмене
	|ИЗ
	|	РегистрНакопления.ЗапасыИПотребности.Остатки(
	|			,
	|			Назначение <> ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)
	|				И Склад ССЫЛКА Справочник.Склады) КАК Остатки
	|
	|СГРУППИРОВАТЬ ПО
	|	Остатки.Назначение,
	|	Остатки.Номенклатура
	|
	|ИМЕЮЩИЕ
	|	СУММА(Остатки.ВНаличииОстаток) - СУММА(Остатки.КОбеспечениюОстаток) - СУММА(Остатки.РезервироватьНаСкладеОстаток) > 0
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Остатки.Назначение КАК Назначение,
	|	Остатки.Номенклатура КАК Номенклатура,
	|	СУММА(Остатки.КОбеспечениюОстаток) + СУММА(Остатки.РезервироватьНаСкладеОстаток) КАК Заказано,
	|	СУММА(Остатки.ВНаличииОстаток) - СУММА(Остатки.КОбеспечениюОстаток) - СУММА(Остатки.РезервироватьНаСкладеОстаток) КАК Склад,
	|	НазначенияКОтмене.Освободить КАК Освободить
	|ИЗ
	|	РегистрНакопления.ЗапасыИПотребности.Остатки(
	|			,
	|			Назначение <> ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)
	|				И Склад ССЫЛКА Справочник.Склады) КАК Остатки
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ НазначенияКОтмене КАК НазначенияКОтмене
	|		ПО Остатки.Номенклатура = НазначенияКОтмене.Номенклатура
	|			И Остатки.Назначение = НазначенияКОтмене.Назначение
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
	|		ПО (ЗаказКлиентаТовары.Ссылка.Назначение = Остатки.Назначение)
	|			И (ЗаказКлиентаТовары.Обособленно)
	|			И (ЗаказКлиентаТовары.Номенклатура = Остатки.Номенклатура)
	|
	|СГРУППИРОВАТЬ ПО
	|	Остатки.Номенклатура,
	|	Остатки.Назначение,
	|	НазначенияКОтмене.Освободить
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	НазначенияКОтмене.Назначение.Заказ.Организация КАК Организация,
	|	Остатки.Назначение КАК Назначение,
	|	Остатки.Номенклатура КАК Номенклатура,
	|	Остатки.Склад КАК Склад,
	|	СУММА(Остатки.КОбеспечениюОстаток) + СУММА(Остатки.РезервироватьНаСкладеОстаток) КАК Заказано,
	|	СУММА(Остатки.ВНаличииОстаток) - СУММА(Остатки.КОбеспечениюОстаток) - СУММА(Остатки.РезервироватьНаСкладеОстаток) КАК Разница,
	|	ВЫБОР
	|		КОГДА Остатки.Склад = ЗаказКлиентаТовары.Склад
	|			ТОГДА 1
	|		КОГДА Остатки.Склад = ЗаказКлиентаТовары.Ссылка.Склад
	|			ТОГДА 2
	|		ИНАЧЕ 3
	|	КОНЕЦ КАК ПорядокСКлада,
	|	НазначенияКОтмене.Освободить КАК Освободить
	|ИЗ
	|	РегистрНакопления.ЗапасыИПотребности.Остатки(
	|			,
	|			Назначение <> ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)
	|				И Склад ССЫЛКА Справочник.Склады) КАК Остатки
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ НазначенияКОтмене КАК НазначенияКОтмене
	|		ПО Остатки.Номенклатура = НазначенияКОтмене.Номенклатура
	|			И Остатки.Назначение = НазначенияКОтмене.Назначение
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
	|		ПО (ЗаказКлиентаТовары.Ссылка.Назначение = Остатки.Назначение)
	|			И (ЗаказКлиентаТовары.Обособленно)
	|			И (ЗаказКлиентаТовары.Номенклатура = Остатки.Номенклатура)
	|
	|СГРУППИРОВАТЬ ПО
	|	Остатки.Номенклатура,
	|	Остатки.Назначение,
	|	Остатки.Склад,
	|	ЗаказКлиентаТовары.Склад,
	|	ВЫБОР
	|		КОГДА Остатки.Склад = ЗаказКлиентаТовары.Склад
	|			ТОГДА 1
	|		КОГДА Остатки.Склад = ЗаказКлиентаТовары.Ссылка.Склад
	|			ТОГДА 2
	|		ИНАЧЕ 3
	|	КОНЕЦ,
	|	НазначенияКОтмене.Назначение.Заказ.Организация,
	|	НазначенияКОтмене.Освободить
	|
	|УПОРЯДОЧИТЬ ПО
	|	ПорядокСКлада
	|ИТОГИ
	|	СУММА(Разница),
	|	СУММА(Освободить)
	|ПО
	|	Организация,
	|	Назначение,
	|	Номенклатура"

Второй запрос в пакете - для отображения информации на форме обработки в пользовательском режиме.

Процедура снятия лишних резервов:


Процедура СнятьЛишниеНазначения(РезультатЗапроса) Экспорт
	
	ВыборкаОрганизации = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Организация");
	Пока ВыборкаОрганизации.Следующий() Цикл
		ВыборкаНазначения = ВыборкаОрганизации.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Назначение");
		
		ДокКорНаз = Документы.КорректировкаНазначенияТоваров.СоздатьДокумент();
		ДокКорНаз.Дата = ТекущаяДата();
		ДокКорНаз.Комментарий 	= "Автоматическая отмена избыточных резервов";
		ДокКорНаз.Организация 	= ВыборкаОрганизации.Организация;
		ДокКорНаз.ВидОперации 	= Перечисления.ВидыОперацийКорректировкиНазначения.СнятьРезервПоМногимНазначениям;
		ДокКорНаз.Автор       	= ПараметрыСеанса.АвторизованныйПользователь;
		ДокКорНаз.Ответственный = ПараметрыСеанса.АвторизованныйПользователь;
		
		Пока ВыборкаНазначения.Следующий() Цикл //снять сверх свободного остатка
			ВыборкаНом = ВыборкаНазначения.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура");
			Пока ВыборкаНом.Следующий() Цикл         
				
				ВсегоПоТовару = ВыборкаНом.Освободить;
				
				Выборка = ВыборкаНом.Выбрать();
				Пока Выборка.Следующий() Цикл         
					Если Выборка.Разница > 0 Тогда 
						
						СтрДок = ДокКорНаз.Товары.Добавить(); 
						Освободить = Мин(Выборка.Освободить,Выборка.Разница);
						СтрДок.Количество 			= Освободить;
						СтрДок.КоличествоУпаковок 	= Освободить;
						СтрДок.Номенклатура 		= Выборка.Номенклатура;
						СтрДок.Склад 				= Выборка.Склад;
						СтрДок.ИсходноеНазначение	= Выборка.Назначение;
						СтрДок.ИсходныйЗаказ		= Выборка.Назначение.Заказ;
						
						ВсегоПоТовару = ВсегоПоТовару - Освободить;
					КонецЕсли;	
				КонецЦикла;
			КонецЦикла;
		КонецЦикла;
		
		Ошибки = "";
		Ошибка = Не ДокКорНаз.ПроверитьЗаполнение();
		
		Если Не Ошибка Тогда
			Попытка
				ДокКорНаз.Записать(РежимЗаписиДокумента.Проведение);
				Ошибки = "Проведен документ "+ДокКорНаз;
			Исключение
				//ДокКорНаз.Записать(РежимЗаписиДокумента.Запись);
				Ошибки = ПолучитьСообщенияПользователю(Истина);
				Ошибка = Истина;
			КонецПопытки;
		Иначе
			Ошибки = ПолучитьСообщенияПользователю(Истина);
		КонецЕсли;
		
		Если ТипЗнч(Ошибки) = Тип("ФиксированныйМассив") Тогда
			Для Каждого Сообщение Из Ошибки Цикл
				ОповеститьОРезультате(Сообщение.Текст, Ошибка);
			КонецЦикла;                                              
		Иначе
			ОповеститьОРезультате(Ошибки, Ошибка);
		КонецЕсли; 
	КонецЦикла;
	
КонецПроцедуры

 

Вступайте в нашу телеграмм-группу Инфостарт

Назначение резервы запасы резервирование регламентное задание обособление

См. также

Логистика, склад и ТМЦ 1С:Предприятие 8 Россия Платные (руб)

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

50000 руб.

26.07.2023    11193    61    0    

11

Логистика, склад и ТМЦ Бухгалтер Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Модуль ответственное хранения в 1С 8.3 для складов и фулфилмент-операторов: учет чужого товара, приемка на хранение, передача, возвраты, акты, адресный склад и работа с товарами поклажедателей.

89900 руб.

09.06.2020    56210    43    60    

78

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка номенклатуры из файлов Excel (xls, xlsx, ods, csv, mxl) в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

12444 руб.

29.10.2014    232342    748    532    

495

Обмен с ГосИС Логистика, склад и ТМЦ Программист Пользователь 1С:Предприятие 8 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Внешняя обработка для инвентаризации кодов маркировки в системе "Честный знак". Позволяет быстро определить и списать коды маркировки проданного, испорченного, утраченного (полный перечень причин списания указан ниже)  товара, которые всё ещё числятся за организацией. Привести в соответствие остатки маркированного товара программы 1С и системы "Честного знака".

6649 руб.

09.01.2024    16580    166    30    

156
Отзывы
1. Pira 154 09.02.23 16:36 Сейчас в теме
Аналогичная обработка для корректировки назначения по этапам производства в ERP: https://infostart.ru/public/1805833/
Остальные комментарии
Подписаться на ответы Инфостарт бот МАКС МАКС бот Сортировка: Древо развёрнутое
Свернуть все
1. Pira 154 09.02.23 16:36 Сейчас в теме
Аналогичная обработка для корректировки назначения по этапам производства в ERP: https://infostart.ru/public/1805833/
Для отправки сообщения требуется регистрация/авторизация