Единый семинар «1С» для бухгалтеров и руководителей

Список заказов поставщикам (новая форма) + два ноу-хау для разработчиков

Обработки - Рабочее место

Представлена внешняя обработка - "Список заказов поставщикам (новая форма)". Удобство заключается в том, что в одном окне списка отображается структура всех связанных документов с указанием контрагента (заказ поставщику - поступление товаров - заказ покупателя - реализация товаров - оплата товара покупателем). В этом же окне отображается список товаров с заказанным количеством и ценами. Имеется возможность видеть статусы заказов по цветам (исполнен, выполняется, черновик). Форму легко встроить в типовую конфигурацию.

Основное преимущество в сравнении с типовой формой списка (УТ 10.3 и КА 1.1) -

1) в типовой форме списка нет отображения Контрагентов в структуре подчиненности документов.

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

3) в типовой форме списка заказов не видно заказанные товары - для просмотра товаров надо открыть заказ.

4) в типовой форме нет градации заказов по статусам - оплачен/не оплачен, поступил/не поступил товар на склад.

Основное удобство в сравнении с типовой формой списка -

1) в одном окне видны связанные документы в структуре подчиненности - проведен документ или нет, на какую сумму проведен и по какому контрагенту,

2) в этом же окне видно - какие товары указаны в заказе,

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

Интерес представляет пользователям, работающим в программе по заказам поставщикам - менеджерам по закупкам, кладовщикам, менеджерам проектов, руководителям, администраторам и другим. Разработчикам (программистам, внедренцам) данная форма заказов также будет интересна тем, что форму легко встроить в типовую конфигурацию и сопровождать в дальнейшем.

Тестирование и отладка формы производились на типовых демо-программах УТ 10.3 ("Управление торговлей", редакция 10.3 (10.3.42.1)) и КА 1.1 (Комплексная автоматизация, редакция 1.1 (1.1.82.2)).

На рис.1 представлена новая форма списка заказов "без характеристик" в демо-КА 1.1. "Без характеристик" означает, что данное окно заказов следует использовать при настройках ведения учета остатков и движений товаров без разреза по характеристикам. В таком случае для идентификации товара в программе 1С используется либо код товара, либо артикул - что в свою очередь выведено в панель Товары. При ведении учета товаров по характеристикам идентификацией продаваемого товара является связка "номенклатура + характеристика" (ниже рис. 2).

Рис. 1. Список заказов поставщикам (без характеристик) с выделением статуса заказа

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

На рис. 2 предстален список заказов без выделения по статусам. Но решена принципиально другая задача: интересно, кто-нибудь из разработчиков решал когда-нибудь такую задачу (ноу-хау №1)? в типовых конфигурациях на обычных формах такого решения я не встречал. Задача звучит так - как без внесения изменений в конфигурацию получить возможность выделения документов в динамическом списке (рис. 2)?

Рис. 2. Список заказов с групповым выделением и дальнейшим сохранением заявок в Эксель

После выделения заказов вы можете их обработать по своему алгоритму - к примеру, передо мной стояла задача объединить их по Поставщикам и сформировать файл-заявку в формате Эксель с сохранением в определенную папку. На видео 1 ниже вы можете увидеть конечную реализацию данного механизма - каталог для хранения заявок Эксель указывается в параметрах пользователя, в данном каталоге создаются папки с названием Поставщика. Обратите внимание, что в одном файле-заявке Эксель объединяются разные заказы покупателей - заявка разделена по каждому заказу покупателя - как по отдельным договорам с клиентами (видео 1).

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

Ноу-хау №2, разработанный в данном проекте такой: заявку по Поставщику надо сохранять по определенному макету - как этот макет хранить во внешней обработке, и как получить макет во внешней обработке, если основной реквизит внешней обработки - динамический список (рис. 3)?

Рис. 3. Как получить макет во внешней обработке, если основной реквизит - динамический список?

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

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

Часто задаваемые вопросы.

1. Почему не видно панели или раздела Услуги, которые могут быть заказаны у поставщиков?

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

2. Мы используем серии совместно с характеристиками. Будет ли нам полезна ваша доработка?

Ответ: да, будет – вам следует дополнительно добавить колонку "Серии" в панель Товаров. Работа с таким списком заказов ускорит работу с заказами втрое.

3. Как скажется внедрение доработки на обновлениях на типовые релизы?

Ответ: форму «Список заказов» необходимо внедрить как отдельную дополнительную форму у объекта метаданных «ЗаказыПоставщиков» - не нужно заменять типовую форму списка. Вызов формы достаточно указать в карточке объекта метаданных  в качестве основной формы списка. Предварительно надо разрешить редактирование объекта метаданных «ЗаказыПоставщиков».  При таком подходе обновление на типовые релизы потребует минимального вмешательства программиста.

4. Мне нужно в типовой форме списка заказов изменить алгоритм цветовой раскраски статусов: учесть оплату по заказам покупателей - хотел бы выделять такие заказы поставщикам оранжевым. Как сделать?

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

5. Нам нужно, чтобы менеджеры по закупкам не видели связанные заказы покупателей в структуре подчиненности, не видели по какой цене и кому мы продаем. Можно ли доработать обработку, не затрагивая типовую конфигруацию УТ 10.3 ( или КА 1.1)?

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

6. Что дешевле - доработать форму списка заказов самим или купить ее на Инфостарте?

Ответ: на разработку новой формы ушло 14 человеко-часов с учетом предыдущего 8-летнего опыта разработки подобных решений - на прорисовку, на отладку алгоритмов, на придумывание обхода ограничений платформы 1С (для механизма выделения заказов в динамическом списке и сохранения заявок в Эксель по определенному макету) тестирование всех комбинаций учета (учет по характеристикам и без). На обучение пользователей и анализ ошибок по статусам заказов - более 4 чел.-часов.

7. Как добавить отбор по номенклатуре в список заказов?

Ответ: отсылаю вас к вопросу 8 публикации Список заказов покупателей (новый взгляд)

 

Пишите комментарии, ставьте лайки, подписывайтесь.

С пользой для клиентов, RustIG

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

Наименование Файл Версия Размер
Список заказов поставщикам (разукрашка + без характеристик)
.epf 23,35Kb
31.08.17
2
.epf 23,35Kb 2 Скачать
Список заказов поставщикам (без разукрашки статусов + групповое выделение заказов + сохранение заявок в Эксель)
.epf 28,59Kb
31.08.17
1
.epf 28,59Kb 1 Скачать
Список заказов поставщикам (без разукрашки статусов + групповое выделение заказов + без сохранения в Эксель)
.epf 27,24Kb
31.08.17
0
.epf 27,24Kb Скачать

См. также

Комментарии
1. Игорь Герман (German_Tagil) 6 31.08.17 14:28 Сейчас в теме
Понял - забавно
Я немного в другом направлении сделал доработку
сделал возможность редактирования заказа на лету
если надо поменять количество или номенклатуру
5. г. Казань Рустем Гумеров (Rustig) 837 31.08.17 15:18 Сейчас в теме
(1) я бы так не делал - не проверяется механизм запрета редактирования данных, не проверяется механизм на ограничение максимальной скидки, которая может быть предусмотрена в зависимости от кол-ва, не проверяется заданная цена на номенклатуру - достаточно много механизмов, которые могут воспрепятствовать проведению заказа - рекомендую изменять заказ внутри открытого документа
6. Игорь Герман (German_Tagil) 6 07.09.17 13:35 Сейчас в теме
(5) Хорошо - это было так сказать проба пера
И все-таки правильнее было бы перерисовывать формы в зависимости от типа документа
а не рисовать каждый раз новую обработку - может я не прав
об этом уже говорилось:
https://forum.infostart.ru/forum9/topic176352/
Вадим Никонов (V.Nikonov) 115 23.08.17 13:14
Уточняющий вопрос: К какому из документов Структуры подчиненности выводится Товарный состав? Как быть с ситуациями, когда товарный состав Реализации/ЗаказПоставщику/Поступление различаются (например, к Заказу покупателя организуется поставка от нескольких поставщиков)?
7. г. Казань Рустем Гумеров (Rustig) 837 07.09.17 15:37 Сейчас в теме
(6)
Уточняющий вопрос: К какому из документов Структуры подчиненности выводится Товарный состав?

ответ - к выделенному заказу поставщику

(6)
Как быть с ситуациями, когда товарный состав Реализации/ЗаказПоставщику/Поступление различаются

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

Пользователь сразу видит в одном окне какие товары отгружены, какие поступили от поставщика в этой структуре подчиненности документов.
Принцип доработки простой - что хотите видеть в окне, то и программируете. В процессе эксплуатации поймете "удобно или нет" и "чего не хватает"
8. г. Казань Рустем Гумеров (Rustig) 837 07.09.17 15:52 Сейчас в теме
(6) добавлю: если вывести еще две таблицы товаров по поступлению и реализации (заказа покупателя), можно добавить выделение одинаковых номенклатур слабым фоновым цветом - чтобы пользователь видел что такие -то товары совпадают и поступили в нужном кол-ве, остальные товары еще не поступили, тогда по ним нужна дальнейшая проработка - дозаказать у другого поставщика или что-то еще.

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

или другой запрос на доработку - в структуре подчиненности добавить итоговую строку Прибыль , равную "Сумма отгрузки" - "Сумма всех поступлений", чтобы видеть в плюсе или в минусе заказ
2. Вячеслав Голев (Goleff74) 34 31.08.17 14:35 Сейчас в теме
И как оно будет работать при количестве документов хотя бы тысяч по 100?
3. Игорь Герман (German_Tagil) 6 31.08.17 14:36 Сейчас в теме
Правильнее все таки было перерисовывать формы в зависимости от типа документа
иначе получается как-то не айс
4. Игорь Герман (German_Tagil) 6 31.08.17 14:36 Сейчас в теме
тысяч по 100 в одном документе?
9. Вадим Никонов (V.Nikonov) 116 07.09.17 17:31 Сейчас в теме
Несколько вопросов по раскраске:
красный - "не оплачен совсем (поступление не важно)"

При проведении ЗаказаПоставщику (до отправки Поставщику) - он автоматически Краснеет? А многие организации работают со своими поставщиками без ПредОплаты... Нафига им такой Красный Заказ?
белый - по умолчанию новый созданный заказ (не проведенный еще)

на Скринах показаны Заказы с галкой проведения, но с белым фоном...

Вопрос к дереву на Рис.1. Почему ЗаказПокупателя подчинен ЗаказуПоставщику? Документы попадающие в Структуру подчиненности регулируются в коде данной обработки (возможно ли отбирать по интересующим типам)?
10. г. Казань Рустем Гумеров (Rustig) 837 07.09.17 23:24 Сейчас в теме
(9)
про белый цвет - это цвет по умолчанию, затем идет проверка на поступление и оплату - у меня две проверки стоят - есть первая проверка на проведенность документа, и в то же время есть цвет по умолчанию следующей строкой кода для всех случаев.
я совершенно случайно оставил оба варианта, естественно - так не корректно, на что вы и обратили внимание. Код открыт - можно поправить.


(9)
При проведении ЗаказаПоставщику (до отправки Поставщику) - он автоматически Краснеет? А многие организации работают со своими поставщиками без ПредОплаты

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

(9)
Вопрос к дереву на Рис.1. Почему ЗаказПокупателя подчинен ЗаказуПоставщику? Документы попадающие в Структуру подчиненности регулируются в коде данной обработки (возможно ли отбирать по интересующим типам)?


ответ: все возможно - я же писал об этом в этой публикации, и в подобной - про список заказов покупателей - все алгоритмы внутри одной формы. можете задавать любую свою логику.
11. Игорь Герман (German_Tagil) 6 08.09.17 06:40 Сейчас в теме
(10) мда по моему вы лукавите - вы пользуетесь стандартной структурой подчиненности
если в заказе покупателя указать в табличном поле заказ поставщику
в этом случае структура уже должна быть несколько иная
поэтому Вам вопрос и задается
Вопрос к дереву на Рис.1. Почему ЗаказПокупателя подчинен ЗаказуПоставщику? Документы попадающие в Структуру подчиненности регулируются в коде данной обработки (возможно ли отбирать по интересующим типам)?
можно пойти дальше - есть два заказа покупателя - одна номенклатурная еденица
заказываем одному поставщику - как правильно распределить что кому надо
позиция номенклатуры одна. Я над этим голову ломал - так ни к чему и не пришел
а механизм такой нужен в основном в 1С от одного ко многим по нисходящей
но для нормальной работы нужна и обрятная ситуация - от одного ко многим по воходящей
тогда бы многое проще решалось
не много сумбурно -не раз поднимал этот вопрос - но он очивиден.....
12. г. Казань Рустем Гумеров (Rustig) 837 08.09.17 08:59 Сейчас в теме
(11)
(11)
возможно ли отбирать по интересующим типам

при выводе строки дерева используйте условие

Если ТипЗнч(Документ)=Тип("ВашТип") Тогда
не выводить
КонецЕсли

вот вам и отбор по значению

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

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

добавил графу Контрагент, поскольку мне это надо

по поводу иерархии - кто сверху, а кто снизу - я над этим не задумывался.

вашу постановку задачи пока не понял - "зачем" это надо?
13. Игорь Герман (German_Tagil) 6 08.09.17 09:53 Сейчас в теме
(12) Мы работаем по спецификациям - технологи принесли или занесли спецификацию в документ заявка . При заказе поставщику однотипных позиций из разных спецификаций каким образом отследить к какой заявке данная позиция принадлежит.
дополнительно ввели поле проект ( по номенклатурным группам) и поле заявка
если у меня к примеру заказаны три двигателя по трем заявкам то тогда в табличной части заказа поставщику я вынужден буду продублировать все три двигателя - а хотелось иметь одну записать
(итак глаза газбегаются) . Система находится в опытной эксплуатации
вот гоняю что можно сделать
14. г. Казань Рустем Гумеров (Rustig) 837 08.09.17 12:28 Сейчас в теме
(13) много есть способов, я не знаю что вам лучше подойдет
чтобы мне вас проконсультировать, надо видеть базу, знать нюансы бизнес процесса, представить себя в роли пользователя, посидеть с ним денек другой рядом....

в УТ и в КА есть тпиовой механизм "внутренних заказов", можно попробовать использовать "заказы покупателей" - не нужно создавать документ "Заявка". Для внутренних заказов и заказов покупателей придуман в УТ и КА механизм резервирования и размещения. Как раз позволяет отвечать на ваш вопрос - заказанный у поставщика товар к какой заявке относится?

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

ознакомьтесь с опытом Олега М.
https://infostart.ru/public/168569/
https://infostart.ru/public/90683/
https://infostart.ru/public/84784/
https://infostart.ru/public/84557/
https://infostart.ru/public/84204/

ваша задача - это учет уникальной продукции - по сути работаете под заказ - в остатках не остается почти ничего: сделали - отгрузили. Повторяющихся продукций нет - каждая спецификация уникальна. я могу ошибаться.
15. г. Казань Рустем Гумеров (Rustig) 837 08.09.17 12:37 Сейчас в теме
(13) то, что вы добавили Проект и Заявку - мне не по душе
лучше обыграть через Характеристику товара
и все равно остаются три строки Двигателя с разными Характеристиками = "СПецификация 1", "Спецификация 2", "Спецификация 3", в поле Заказ покупателя = указываются три разных Заказа покупателя.
В структуре подчиненности под одним Заказом поставщику будут три Заказа покупателя.
Остальные типы документов просто не выводите - это излишняя информация для пользователей.

Вместо графы Контрагент выводите графу Товар, Спецификация и Кол-во по товару
То есть, это будет больше чем структура подчиненности - вот пример - посмотрите вывод товаров в дерево структуры подчиненности здесь - прямо на первой картинке
https://infostart.ru/public/120169/

я таких деревьев много рисовал - выводил товары в виде дерева под каждым документов Заказ покупателя, Реализация, сравнивал кол-во, показывал отклонения. Возможно у вас что-то полезное получится.
16. Игорь Герман (German_Tagil) 6 08.09.17 12:52 Сейчас в теме
Повторяющихся продукций нет - каждая спецификация уникальна. я могу ошибаться.

так оно и есть

в УТ и в КА есть тпиовой механизм "внутренних заказов", можно попробовать использовать "заказы покупателей" - не нужно создавать документ "Заявка". Для внутренних заказов и заказов покупателей придуман в УТ и КА механизм резервирования и размещения. Как раз позволяет отвечать на ваш вопрос - заказанный у поставщика товар к какой заявке относится?


думали не подошло - люди которые работают с внутренними заказами просто не справятся
все идет через техбюро, снабжение,склад


И дрязги начинаются именно в тот момент когда забыли что-то заказать
Оставьте свое сообщение