0. sonic112 14 03.02.14 12:17 Сейчас в теме

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

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

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. Lada385 89 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 14 06.03.14 12:06 Сейчас в теме
Здравствуйте!
1. Действительно, в стандартной конфигурации реквизит "Контрагент" в документе "Сторно" не предусмотрен, так же как и реквизиты "ДвижениеДенежныхСредств", "Договор", "Склад". Использование документа "Сторно" в этом случае приводит к искажению данных, так как в документе сторно теряется информация о том, данные по какому контрагенту, складу, договору сторнируются. Это не всегда нужно, но в данном случае нужно, так как при отборе по контрагенту выпадут документы сторнирования. Если вы не используете документы сторнирования, уберите строку ошибки в запросе. Можно использовать конструкцию
Регистр.Продажи.ТекущийДокумент.Сторно.СторнируемыйДокумент.Контрагент, но нужно проверить, возможно, что не все сторнированные документы в вашей базе имеют реквизит "Контрагент".
2. Закладка "Таблица анализа номенклатуры" до проведения расчета пустая, она вам не нужна. После проведения расчета, доступ откроется. Сделано это для того, чтобы операции с пустой таблицей не приводили к ошибкам. Это сделать проще, чем при каждом действии с таблицей проверять ее заполненность.
3. Сообщение об ошибке в условии скорее всего наведенная ошибка, условие стандартное в 1С ТиС.
Будут еще вопросы, - пишите.
Прикрепленные файлы:
imageАватар
6. Самоделкин 2 24.04.14 14:14 Сейчас в теме
(4) sonic112, что считает немного не так: отчет беру с 1.01 по сегодня, у меня есть товар, который был закуплен в январе, в начале февраля продан и закуплен по новой, в конце февраля продан и до настоящего времени не закуплен, в Вашем отчете выдает, что его нет в наличии и в заказ он не попадает, по мне должна быть хотя бы 1, а то получается товара нет и не надо.
5. Самоделкин 2 24.04.14 11:35 Сейчас в теме
Хорошая обработка.

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

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

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

2) А можно ли как из отчета узнать - сколько за прошлые периоды уже потеряно из-за ситуация отсутствия товара ?
Сколько например длилась в днях эта ситуация ?
11. sonic112 14 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 14 28.05.15 19:03 Сейчас в теме
Здравствуйте!
Это обсуждалось в сообщении №4:
1. Действительно, в стандартной конфигурации реквизит "Контрагент" в документе "Сторно" не предусмотрен, так же как и реквизиты "ДвижениеДенежныхСредств", "Договор", "Склад". Использование документа "Сторно" в этом случае приводит к искажению данных, так как в документе сторно теряется информация о том, данные по какому контрагенту, складу, договору сторнируются. Это не всегда нужно, но в данном случае нужно, так как при отборе по контрагенту выпадут документы сторнирования. Если вы не используете документы сторнирования, уберите строку ошибки в запросе. Можно использовать конструкцию
Регистр.Продажи.ТекущийДокумент.Сторно.СторнируемыйДокумент.Контрагент, но нужно проверить, возможно, что не все сторнированные документы в вашей базе имеют реквизит "Контрагент".
14. svoiludi.8 23.09.16 10:14 Сейчас в теме
Добрый день!
Для 1С 8.3 есть такое приложение?
15. sonic112 14 24.09.16 16:54 Сейчас в теме
16. N2 3 13.11.17 12:07 Сейчас в теме
(15) Вадим, добрый день!

Подскажите пожалуйста, можно ли данной обработкой разбивать заказы по поставщикам?
И чем отличаются обработки Инфо_ПланированиеЗакупок.ert и Инфо_ПланированиеЗакупок1.ert ?
17. sonic112 14 13.11.17 18:17 Сейчас в теме
Добрый день!
Да, разбивка заказов по поставщикам идет. Поставщик определяется как последний поставщик данной номенклатуры.
В последней обработке добавлена возможность заполнения таблицы в основных единицах.
18. N2 3 14.11.17 13:27 Сейчас в теме
(17) Вадим, а есть возможность сформировать заказ не от номенклатуры, а от поставщика? Т.е. помимо отбора по продажам, делать отбор по приходам за определенный период, либо где-то хранить, что Номенклатура1 может приходить от Контрагент1 и Контрагент2, а уже при формировании заказа выбирать, что заказ формируется для Контрагента1? Или данный вопрос уже за пределами Вашего решения и требует доработки штатных механизмов ТиСа? Т.е. нужно где-то хранить прайс-листы например для Контрагента1 с определенным реестром номенклатуры и уже с этим реестром делать отбор по продажам за период. Не подскажите, такие механизмы в ТиСе есть?

p.s. Понимаю, что вопросы немного глупые, т.к. не очень сильно знаком с ТиСом.
19. sonic112 14 14.11.17 18:32 Сейчас в теме
Отбор есть по последнему поставщику, по свойствам номенклатуры, по основному свойству номенклатуры, и т.д. - полный список отбора можно посмотреть на странице "Множественный фильтр". Можно присвоить свойству номенклатуры наименование контрагента и проводить отбор по этим свойствам, т.е. Номенклатура может иметь свойство Контрагент1 и Контрагент2, при выборе этих свойств в таблице останется номенклатура, у которой есть такие свойства. Если нужен отбор, не упомянутый в списке, - нужно дорабатывать программу.
Сделать один заказ можно при установке флага "Объединить заказы поставщикам в один заказ".
20. N2 3 15.11.17 12:44 Сейчас в теме
(19) Вадим, подскажите пожалуйста, я правильно понял, что у номенклатуры может быть несколько свойств? Т.е. "Номенклатура1", может иметь два свойства "Контрагент1" и "Контрагент2"? Т.е. если не реализовывать прайс-листы, то можно при поступлении "Номенклатуры1" допустим от "Контрагента3", добавлять ещё одно свойство "Контрагент3". Подведу итог: у номенклатуры в ТиСе может быть несколько свойств?
21. sonic112 14 15.11.17 18:29 Сейчас в теме
Да, свойств может быть много, основное свойство одно.
22. N2 3 16.11.17 10:21 Сейчас в теме
23. stas919 15.09.18 19:20 Сейчас в теме
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\DOWN\1С77027\БАЗА\EXTFORMS\ИНФО_ПЛАНИРОВАНИЕЗАКУПОК1.ERT(1841)}: Регистр.Продажи.ТекущийДокумент.Сторно. <<?>> Контрагент,
Запрос[20] : Неверно заданный путь 'Контрагент'
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\DOWN\1С77027\БАЗА\EXTFORMS\ИНФО_ПЛАНИРОВАНИЕЗАКУПОК1.ERT(1841)}: Условие (Фирма в ВыбРазделитель1 <<?>> );Условие (Номенклатура в ВыбТМЦ);
Запрос[38] : Ошибка в условии
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
{C:\DOWN\1С77027\БАЗА\EXTFORMS\ИНФО_ПЛАНИРОВАНИЕЗАКУПОК1.ERT(1841)}: Условие (Фирма в ВыбРазделитель1);Условие (Номенклатура в ВыбТМЦ <<?>> );
Запрос[38] : Ошибка в условии
24. sonic112 14 16.09.18 05:38 Сейчас в теме
Здравствуйте!
Это обсуждалось в сообщении №4:
1. Действительно, в стандартной конфигурации реквизит "Контрагент" в документе "Сторно" не предусмотрен, так же как и реквизиты "ДвижениеДенежныхСредств", "Договор", "Склад". Использование документа "Сторно" в этом случае приводит к искажению данных, так как в документе сторно теряется информация о том, данные по какому контрагенту, складу, договору сторнируются. Это не всегда нужно, но в данном случае нужно, так как при отборе по контрагенту выпадут документы сторнирования. Если вы не используете документы сторнирования, уберите строку ошибки в запросе. Можно использовать конструкцию
Регистр.Продажи.ТекущийДокумент.Сторно.СторнируемыйДокумент.Контрагент, но нужно проверить, возможно, что не все сторнированные документы в вашей базе имеют реквизит "Контрагент".
Остальные ошибки, по-видимому, наведенные, так как являются стандартными для ТиС.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Нижний Новгород
зарплата от 120 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 120 000 руб.
Полный день

Программист 1С
Новосибирск
зарплата от 80 000 руб. до 100 000 руб.
Полный день

Системный аналитик
Новосибирск
зарплата от 80 000 руб. до 100 000 руб.
Полный день

Программист 1С
Салехард
зарплата от 80 000 руб. до 200 000 руб.
Полный день