Какие есть варианты автоматического снятия резервов с заказов покупателей через 7 дней в УТ 10.3
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
На сколько я помню в УТ 10 так и не реализован данный функционал. Вот в 11 вроде такое есть! Но точно не помню
Ну а если реализовывать самостоятельно. То нужно регламентное задание, которое бы формировала остатки по резерву, и высчитывала дату/дни нахождения в резерве
Ну а если реализовывать самостоятельно. То нужно регламентное задание, которое бы формировала остатки по резерву, и высчитывала дату/дни нахождения в резерве
(4) а вы коментарии почитайте. там вроде это описано как выставить количество дней
а где настроить через сколько дней чтобы снимался резерв?
4. 88wau24ru 17 14.03.19 13:55
(3)
В модуле обработки
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты = 11;//Число рабочих дней просроченной оплаты
Рабочих или календарных то что в константе
Константы.СпособКонтроляДнейЗадолженности.Получить()
Если используете рабочие то Регламентированный производственный календарь должен быть сформирован.
Дата от которой идёт отсчёт - это "Оплата" в документе Заказ покупателя
Показать4. 88wau24ru 17 14.03.19 13:55
(3)
В модуле обработки
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты = 11;//Число рабочих дней просроченной оплаты
Рабочих или календарных то что в константе
Константы.СпособКонтроляДнейЗадолженности.Получить()
Если используете рабочие то Регламентированный производственный календарь должен быть сформирован.
Дата от которой идёт отсчёт - это "Оплата" в документе Заказ покупателя
(7)
вот тут часть кода
я так понимаю что тут собака зарыта?
вот тут часть кода
ЗакрытиеЗаказовПокупателей = Документы.ЗакрытиеЗаказовПокупателей.СоздатьДокумент();
ЗакрытиеЗаказовПокупателей.ВидОперации = Перечисления.ВидыОперацийЗакрытиеЗаказовПокупателей.СнятиеРезервов;
ПользовательДляВыполненияРегламентныхЗаданий = Константы.ПользовательДляВыполненияРегламентныхЗаданийВФайловомВариант е.Получить();
ЗакрытиеЗаказовПокупателей.Подразделение = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПользовательДляВыполненияРегламентныхЗаданий, "ОсновноеПодразделение");
ЗакрытиеЗаказовПокупателей.Ответственный = ПользовательДляВыполненияРегламентныхЗаданий;
ЗакрытиеЗаказовПокупателейФорма = ЗакрытиеЗаказовПокупателей.ПолучитьФорму("ФормаДокумента");
//ЗакрытиеЗаказовПокупателейФорма.Открыть();//Разкоментируйте для проверки (!!!!!1)
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов = ЗакрытиеЗаказовПокупателей.ПолучитьФорму("ФормаОтбораЗаказов", ЗакрытиеЗаказовПокупателейФорма,);
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ВариантОтбораПоВидуОперации = Перечисления.ВидыОперацийЗакрытиеЗаказовПокупателей.СнятиеРезервов;
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДокументОбъект = ЗакрытиеЗаказовПокупателей;
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.Открыть();
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаНач = ДобавитьМесяц(ТекущаяДата(), -3);
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаКон = НачалоДня(ТекущаяДата())-1;
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты = 11;//Число рабочих дней просроченной оплаты
//ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПричинаЗакрытия = Справочники.ПричиныЗакрытияЗаказов.ПолучитьСсылку(Новый УникальныйИдентификатор("d11d6223-f487-11e6-b485-0cc47a6c5738"));
ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПостроительОтчета.Отбор.Сбросить();
ПостроительОтчета = ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПостроительОтчета;
(Нажатие на кнопку "Заполнить")
// Заполним Построитель параметрами из полей формы и выполним отбор
ДатаНачала = НачалоДня(ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаНач);
ДатаОкончания = КонецДня(ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаКон);
//ЗаполнитьПараметрыПостроителя(ПостроительОтчета);
// Заполним параметры построителя
ПостроительОтчета.Параметры.Вставить("НаличиеРезервов", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.НаличиеРезервов);
ПостроительОтчета.Параметры.Вставить("РазмещениеРезервов", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.РазмещениеРезервов);
ПостроительОтчета.Параметры.Вставить("СостояниеОплаты", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СостояниеОплаты);
ПостроительОтчета.Параметры.Вставить("СостояниеОтгрузки", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СостояниеОтгрузки);
ПостроительОтчета.Параметры.Вставить("СрокОплатыСравнение", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СрокОплатыСравнение);
ПостроительОтчета.Параметры.Вставить("СрокОтгрузкиСравнение", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СрокОтгрузкиСравнение);
ПостроительОтчета.Параметры.Вставить("ДатаНач", ДатаНачала);
ПостроительОтчета.Параметры.Вставить("ДатаКон", ДатаОкончания);
ПостроительОтчета.Параметры.Вставить("ДатаОплаты", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаОплаты);
ПостроительОтчета.Параметры.Вставить("ДатаОтгрузки", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ДатаОтгрузки);
ПостроительОтчета.Параметры.Вставить("ТекущаяДата", ТекущаяДата());
ПостроительОтчета.Параметры.Вставить("ПустаяДата", Дата('00010101'));
ПостроительОтчета.Параметры.Вставить("ПричинаЗакрытияЗаказа", ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПричинаЗакрытия);
Если Константы.СпособКонтроляДнейЗадолженности.Получить() = Перечисления.СпособыКонтроляДнейЗадолженности.ПоКалендарнымДням Тогда
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОплаты", НачалоДня(ТекущаяДата()-24*60*60*ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты));
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОтгрузки", НачалоДня(ТекущаяДата()-24*60*60*ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОтгрузки));
Иначе
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("НачГода",НачалоГода(ТекущаяДата()));
Запрос.УстановитьПараметр("КонГода",КонецГода(ТекущаяДата()));
Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| РегламентированныйПроизводственныйКалендарь.Год
|ИЗ
| РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
|ГДЕ
| РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачГода И &КонГода";
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Если ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СрокОтгрузкиСравнение = 2 или ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.СрокОплатыСравнение = 2 Тогда
Сообщить("Не заполнен Регламентированный производственный календарь за "+Год(ТекущаяДата())+" год.");
Сообщить("Дата, ранее которой заказы просрочены, рассчитана по календарным дням.");
КонецЕсли;
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОплаты", НачалоДня(ТекущаяДата()-24*60*60*ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты));
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОтгрузки", НачалоДня(ТекущаяДата()-24*60*60*ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОтгрузки));
Иначе
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОплаты", ЗаполнениеДокументов.ОпределитьДату(НачалоДня(ТекущаяДата()),-ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОплаты));
ПостроительОтчета.Параметры.Вставить("ТребуемаяДатаОтгрузки", ЗаполнениеДокументов.ОпределитьДату(НачалоДня(ТекущаяДата()),-ЗакрытиеЗаказовПокупателейФормаОтбораЗаказов.ПросроченоДнейОтгрузки));
КонецЕсли;
КонецЕсли;
ПостроительОтчета.Выполнить();
Показатья так понимаю что тут собака зарыта?
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)