gifts2017

Автоматическое создание заказов поставщику по статистическим данным продаж в 1С 7.7 ТиС

Опубликовал Вадим Вадим (sonic112) в раздел Обработки - Обработка документов

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

Алгоритм работы программы.

  1. По заданному периоду анализа продаж и периода закупок рассчитывается набор статистических параметров, характеризующих выбранный список номенклатуры. Отбор списка – типичный для отчетов в 1С 7.7 ТиС. Набор параметров выводится в таблицу, при работе с которой менеджер имеет возможность просмотреть результаты расчета и скорректировать при необходимости количество товара, предлагаемого к заказу программой.
  2. Для расчета плана заказа товара используется прогноз продаж на основе расчета средней скорости продаж в периоде анализа с учетом реального нахождения товара на складе. Дополнительно рассчитывается средне-квадратическое отклонение скорости продаж, характеризующее разброс значений скорости продаж. Увеличивая в расчете скорость продаж на величину средне-квадратического отклонения, можно создать некоторый запас товара на случай ее статистического отклонения в сторону увеличения. В расчете плана заказа можно учесть уже известные заявки покупателей и уже согласованные заказы поставщиков.
  3. В  набор параметров, которые может рассматривать менеджер при принятии решения о плане заказа, включаются: 

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

3.2.    Количество по резервам, заявкам покупателей и заказам поставщикам, влияющим на расчет данных.

3.3.    Количество и себестоимость товара:

3.3.1. На дату конца периода анализа продаж,

3.3.2. На дату начала периода закупок,

3.3.3. Отгрузка номенклатуры за период анализа продаж,

3.3.4. Средняя скорость продаж в день,

3.3.5. План заказа товара, исходя из средней скорости продаж,

3.3.6. План заказа товара, исходя из средней скорости продаж, увеличенной на средне-квадратическое отклонение скорости.

3.3.7. Снижение продаж в периоде анализа из-за отсутствия товара на складе.

3.4.    Число дней нахождения товара на складев периоде анализа, время продажи остатков в днях.

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

5. План заказа товара рассчитывается так, чтобы его хватило до даты конца периода закупок. После расчета таблицы план заказа можно менять, изменения количество дней заказа, а также меняя коэффициент (от 0 до 100%) учета средне-квадратического отклонения скорости. После расчета колонка «К заказу» рассчитана с коэффициентом ноль, колонка «Максимальное количество плана заказа» - с коэффициентом 100%.

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

7. Для удобства работы на данные таблицы можно наложить отбор. Отбор может содержать любое число уровней, объединяемых по «И» / «ИЛИ», и накладывается на любые упомянутые ранее параметры. Например, (Поставщик=ООО Ромашка) И (Время нахождения товара на складе > 30).

8. Кнопка «Обновить остатки» пересчитывает остатки на дату конца периода анализа.

9. Кнопкой «Печать» формируется отчет по таблице с учетом настроек видимости колонок и строк.

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

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

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

13. Заказы формируются последовательно по всем поставщикам, имеющим не нулевую колонку "К заказу", для фирмы, указанной на странице настроек.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Инфо_ПланированиеЗакупок.ert
.ert 244,50Kb
02.02.14
44
.ert 244,50Kb 44 Скачать
Инфо_ПланированиеЗакупок1.ert
.ert 245,50Kb
09.10.14
26
.ert 245,50Kb 26 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Илья Бильчук (Lada385) 02.03.14 20:29
Отличная вещь! Говорю спасибо!
2. Андрей Крючин (maskva) 05.03.14 17:47
Хотели попробовать и вот:
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\1С_БАЗА\DB0\EXTFORMS\PRNFORMS\ИНФО_ПЛАНИРОВАНИЕЗАКУПОК.ERT(1788)}: Регистр.Продажи.ТекущийДокумент.Сторно. <<?>> Контрагент,
Запрос[20] : Неверно заданный путь 'Контрагент'
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\1С_БАЗА\DB0\EXTFORMS\PRNFORMS\ИНФО_ПЛАНИРОВАНИЕЗАКУПОК.ERT(1788)}: Условие (Фирма в ВыбРазделитель1 <<?>> );
Запрос[38] : Ошибка в условии

Обработку просто скопировали в базу и открыли.
3. Андрей Крючин (maskva) 05.03.14 17:55
А, ну и вкладка "Таблица анализа номенклатуры" не открывается совсем.
4. Вадим Вадим (sonic112) 06.03.14 12:06
Здравствуйте!
1. Действительно, в стандартной конфигурации реквизит "Контрагент" в документе "Сторно" не предусмотрен, так же как и реквизиты "ДвижениеДенежныхСредств", "Договор", "Склад". Использование документа "Сторно" в этом случае приводит к искажению данных, так как в документе сторно теряется информация о том, данные по какому контрагенту, складу, договору сторнируются. Это не всегда нужно, но в данном случае нужно, так как при отборе по контрагенту выпадут документы сторнирования. Если вы не используете документы сторнирования, уберите строку ошибки в запросе. Можно использовать конструкцию
Регистр.Продажи.ТекущийДокумент.Сторно.СторнируемыйДокумент.Контрагент, но нужно проверить, возможно, что не все сторнированные документы в вашей базе имеют реквизит "Контрагент".
2. Закладка "Таблица анализа номенклатуры" до проведения расчета пустая, она вам не нужна. После проведения расчета, доступ откроется. Сделано это для того, чтобы операции с пустой таблицей не приводили к ошибкам. Это сделать проще, чем при каждом действии с таблицей проверять ее заполненность.
3. Сообщение об ошибке в условии скорее всего наведенная ошибка, условие стандартное в 1С ТиС.
Будут еще вопросы, - пишите.
Прикрепленные файлы:
imageАватар
5. Анатолий Ман (Самоделкин) 24.04.14 11:35
Хорошая обработка.

Строку Регистр.Продажи.ТекущийДокумент.Сторно. закоментировал, все работает.
6. Анатолий Ман (Самоделкин) 24.04.14 14:14
(4) sonic112, что считает немного не так: отчет беру с 1.01 по сегодня, у меня есть товар, который был закуплен в январе, в начале февраля продан и закуплен по новой, в конце февраля продан и до настоящего времени не закуплен, в Вашем отчете выдает, что его нет в наличии и в заказ он не попадает, по мне должна быть хотя бы 1, а то получается товара нет и не надо.
7. Вадим Вадим (sonic112) 24.04.14 19:18
Не имея базы сложно сказать, что конкретно у вас работает не так. Могу посоветовать, где искать.
1. Посмотрите, не наложены ли фильтры по контрагентам, номенклатуре, фирме и т.д. так, что ваши документы не попадают в отчет. Проверьте правильность установки дат, документы должны быть в периоде анализа. Посмотрите установку отборов таблице, возможно у вас по умолчанию устанавливается какой-либо отбор.
2. Остаток считается по регистру "ПартииНаличие". Этот же регистр используется в стандартных отчетах 1С, например, "Ведомость по партиям ТМЦ". Попробуйте сформировать этот отчет, если там остаток будет, повторите настройки отчета для обработки. Расхождений быть не должно, так как запрос, по сути, одинаковый.
3. Продажи считаются по регистру "Продажи", отчет в стандартной конфигурации, использующий тот же регистр, - "Планирование закупок". Проверьте, попадает ли ваш товар в стандартный отчет, там тоже запрос по сути одинаковый.
4. Проверьте наличие записей в нужных регистрах по вашим документам отчетом "Отчет о движениях документа".
Если ничего не поможет, нужно более подробное описание: какой документ, какие настройки и т.д.
Пишите.
8. Vitaly Aksenov (vita55555) 07.08.14 16:35
Автору спасибо!
Есть вопрос:
В Шапке сказано:
"
чтобы заказ, поставленный в установленные сроки, обеспечил наличие товара до следующей поставки
"

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

Правильно ?
9. Вадим Вадим (sonic112) 08.08.14 15:58
Здравствуйте!
Все правильно с небольшими уточнениями. Уточнения касаются лишь того, на что еще может влиять выбор периода закупок.
1. До даты начала периода закупок учитываются заказы поставщикам, еще не поступившие на склад.
2. До даты конца периода закупок учитываются заявки покупателей, которые предполагается отгрузить.
3. Программа не проверяет возможный недостаток товара до даты начала закупок.
vita55555; +1 Ответить
10. Vitaly Aksenov (vita55555) 11.08.14 11:10
Спасибо за ответ!
Еще есть вопрос:
1)
есть колонки - Снижение продаж из-за отсутствия товара.
Я так понимаю, это снижение рассчитывается за период с даты поставки текущего заказа и до даты поставки следующего заказа, если не будет текущей поставки,
Т.к.Правильно?

2) А можно ли как из отчета узнать - сколько за прошлые периоды уже потеряно из-за ситуация отсутствия товара ?
Сколько например длилась в днях эта ситуация ?
11. Вадим Вадим (sonic112) 11.08.14 16:35
Здравствуйте!
1. Неправильно. Снижение продаж за счет отсутствия товара считается по периоду анализа, а не по периоду закупок. Это естественно, так как только в периоде анализа нам известно количество дней, когда товар на складе отсутствовал. В периоде закупок мы должны обеспечить наличие товара, там пропусков товара в наличии быть не должно. Снижение продаж считается как произведение средней скорости продаж на число дней отсутствия товара на складе.
2. Можно, включив интересующий вас период в период анализа. Число дней отсутствия товара на складе = Число рабочих дней в периоде анализа - Число дней нахождения товара на складе.
12. Динара Билалова (ipbilalova@mail.ru) 27.05.15 18:13
ПОДСКАЖИТЕ, ПОЖАЛУЙСТА ЧТО ДЕЛАТЬ!!!

Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\USERS\ADMINISTRATOR\DESKTOP\INFO.PLANIROVANIEZAKUPOK1.ERT(1841)}: Регистр.Продажи.ТекущийДокумент.Сторно. <<?>> Контрагент,
Запрос[20] : Неверно заданный путь 'Контрагент'
13. Вадим Вадим (sonic112) 28.05.15 19:03
Здравствуйте!
Это обсуждалось в сообщении №4:
1. Действительно, в стандартной конфигурации реквизит "Контрагент" в документе "Сторно" не предусмотрен, так же как и реквизиты "ДвижениеДенежныхСредств", "Договор", "Склад". Использование документа "Сторно" в этом случае приводит к искажению данных, так как в документе сторно теряется информация о том, данные по какому контрагенту, складу, договору сторнируются. Это не всегда нужно, но в данном случае нужно, так как при отборе по контрагенту выпадут документы сторнирования. Если вы не используете документы сторнирования, уберите строку ошибки в запросе. Можно использовать конструкцию
Регистр.Продажи.ТекущийДокумент.Сторно.СторнируемыйДокумент.Контрагент, но нужно проверить, возможно, что не все сторнированные документы в вашей базе имеют реквизит "Контрагент".
14. user611708_svoiludi.8 (svoiludi.8) 23.09.16 10:14
Добрый день!
Для 1С 8.3 есть такое приложение?
15. Вадим Вадим (sonic112) 24.09.16 16:54
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа