[ОБУЧАЛОВКА] Про сети (Ашан, Метро) и их заморочки...

30.06.09

Учетные задачи - Розничная торговля

Демонстрируется подход к относительно безболезненному исправлению конфигурации ТиС для реализации сетевых заморочек (код сети в печатной форме ТОРГ12)
ВНИМАНИЕ!!! Данный материал носит спорный характер (читайте комментарии!) и не может служить непреложным руководстовм к действию. Рассматривается всего лишь один (не самый лучший) вариант решения задачи...
 
Клиент попросил в ТОРГ12 в графу "Код" вставлять для определенных клиентов определенный код. "Определенными клиентами" является ряд сетей: Ашан, Перекресток, Мосмарт и т.д. "Определенным кодом" является артикул товара в учете этих сетей, т.е. у Ашана - свой артикул для нашего товара, у Мосмарта - свой и т.д.

Итак, задача ясна. Как говорил Петька: "Чапай думать будет!"
По хорошему, конечно, надо навернуть кучу изменений для реализации ввода в карточку номенклатуры артикулов для сетей. Возможных вариантов три (если по быстрому):
1. для номенклатуры артикул сети пихаем в подчиненный справочник Аналоги;
2. артикулы пишем в свойства номенклатуры;
3. аналоги делаем доп.реквизитами в карточке товара.

Вариант 1 - самый "правильный", но неудобный для ручного ввода (товаров не сильно много, клиент согласился вводить ручками), + к этому - достаточно "непрозрачное" решение для клиента, особенно когда понадобится отображать артикулы в карточке клиента (доп.код придется писать) и в формах накладных(тоже придется писать доп.код) - уже будет труднее с обновлениями в последующем;
Вариант 2 - похуже, чем вариант 1, но тоже можно использовать. Трудности - аналогичные предыдущему варианту, + нужна дисциплина "манипуляции" с такими свойствами (что выльется в дополнительный код работы со свойствами);
Вариант 3 - самый легкий, конечно, но... негламурненький... ;-) основная проблема - необходимость править структуру данных конфигурации при появлении новых "сетей", + не забывать при обновлениях.

Подумали - и выбрали вариант 3. С учетом того, что это ПРОЩЕ всего, займет минимум времени у меня и недорого обойдется клиенту. Итак, делаем - как в варианте 3 (т.е. добавляем под каждую сеть отдельный реквизит для артикула сети, благо сетей немного - у клиента их всего 4 штуки...).
Тем более, что внятных 1Сников, которые умеют НОРМАЛЬНО РАБОТАТЬ на программном и идейном уровне со справочниками свойств и аналогов - я давненько не встречал... (плюс к этому попутно: франч, обновлявший конфигу клиенту, умудрился "потерять" внесенный по другой доработке новый код в глобальный модуль - хотя ему был перед добавлением выдан "протокол" изменений - что уж тут говорить о более серьезных доработках кода... - при очередном обновлении - все рухнет... франчи - они такие...)

Для тех, кто начал уже плевать в мою сторону - отвечаю просто - на себя посмотри, собака бешенная! ;-)

Под каждыую сеть сделаем отдельный реквизит для артикула сети. Реквизит будем именовать по такому шаблону: ПРЕФИКС_АртикулNN, где
ПРЕФИКС - отличительный признак добавленного реквизита;
NN - числовой код клиента в справочнике контрагентов.


Для тех, кто начал плевать в мою сторону во второй раз - отвечаю просто - ничего не знаю, клиент - мой, как хочу - так и делаю! ;-)

Итак получились следующие реквизиты (строка, 10):
БВК_Артикул19, БВК_Артикул35, БВК_Артикул58...

Да, привязываться к коду контрагента в наименованиях реквизитов конфигуратора может показаться на первый взгляд некомильфово... Но тут есть ряд соображений, которые мне помогут обойти матюги так называемых "специалистов 1С" в мой адрес:
1. Это всяко лучше, чем называть БВК_АртикулАшан или БВК_АртикулМосмарт (такие названия - исключительно для удобства специалистов с короткой памятью, более никакого функционала полезного такие наименования В ДАННОМ СЛУЧАЕ не несут... а я, не то чтобы злопамятный, просто я злой и память у меня хорошая.. ;-) ...тем более что оправданность наименования реквизитов в ивде БВК_АртикулNN будет показана дальше).
2. Что произойдет, например, если коды клиентов в справочнике изменятся? А ничего страшного не произойдет - при первой же сделке на сеть - отсутствие(или неверный артикул) в колонке "код" в ТОРГ12 нужного артикула будет отловлен сразу же... Если не самим продавцом (моим клиентом), то как минимум - сеть заругается... А если сеть не заругается - так ничего страшного, значит, и не произошло... А если какой-то код В ТОРГ12 будет печататься для совершенно другого покупателя - тоже ничего страшного... даже полезно, так покупателю и скажем - мы тут вам заодно еще артикулы сети печатаем, чтоб вам в своем городе легче с сетями работать было... $-)

Итак, выше показано совершенно оправданное применение для каждой сети отдельного реквизита с наименованием по особому правилу. Сортировку и отбор на артикулы сетей ставить не будем - неактуально.

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

Итак, в форму добавляем один слой с идентификатором "ДопАртикулы", в модуль элемента добавляем следующую строчку кода:
Форма.ИспользоватьЗакладки(1);
Форма.Закладки.ДобавитьЗначение("Общий, Основной, Кнопки", "Основные");
Форма.Закладки.ДобавитьЗначение("Общий, Дополнительный, Кнопки", "Дополнительные");
//ДОБАВЛЕНО НЕТИПОВОЕ
Форма.Закладки.ДобавитьЗначение("Общий, ДопАртикулы, Кнопки", "Артикулы сетей");	
//КОНЕЦ ДОБАВЛЕНО НЕТИПОВОЕ

На форме на слой "ДопАртикулы" кидаем наши дополнительные реквизиты (артикулы сетей) как поля ввода с соответствующими текстовыми заголовками - что тривиально, так что обойдемся без картинки...

Теперь лезем во все печатные формы ТОРГ12 (а их у нас может быть несколько - встроенная таблица, внешние печатные формы) и в колонку код (под номером 3 в типовой форме) вписываем ПечКод (тип = Выражение).

В модуле печати ищем где у нас определяется ПечЕдиница и вставляем там определение выводимой на печать переменной ПечКод:
ПечЕдиница = СокрЛП(Докум.Единица.ОКЕИ.Наименование);
ПечОКЕИ = СокрЛП(Докум.Единица.ОКЕИ.Код);
//ДОБАВЛЕНО НЕТИПОВОЕ
Попытка 	ПечКод = Докум.Номенклатура.ПолучитьАтрибут("БВК_Артикул"+Число(Докум.Контрагент));
Исключение 	ПечКод = "";
КонецПопытки;
//КОНЕЦ ДОБАВЛЕНО НЕТИПОВОЕ

Вот, собственно, и вся доработка (для встроенной печатной формы префикс докум. должен быть опущен в приведенном выше программном коде). Вся фишка - в имени реквизита для артикула сети и использовании конструкции ПОПЫТКА. При этом - мы нигде не привязываемся ни к каким наименованиям, никаких доп.проверок и всякого ненужного программно-мусорного кода...
По времени заняло порядка 20 минут, клиент - удовлетворен...

Кому сия история понравилась - плюсуем рейтинг и оставляем комменты, а то обижусь!
На очереди - сага о быстром подсчете мест и коробок в ТОРГ12 у "замороченных" клиентов - оставляйте в комментах заявки!

См. также

SALE! 20%

Автоматический заказ поставщику в 1С: загрузка прайсов и анализ цен поставщиков для УТ 10.3, УТ 11, КА2, УНФ, УПП, ERP, Розница 2

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

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

28500 22800 руб.

21.04.2017    90172    105    39    

190

АИС: Онлайн-кассы для 1С 7.7 (с поддержкой маркировки ЕГАИС, ТАБАКА, ОБУВИ, ЛЕКАРСТВ, ШИН, ОДЕЖДЫ, МОЛОКА, ВОДЫ и пр.) и Обмен с 1С 7.7 "Честный ЗНАК" (ГИСМТ, ЦРПТ, ЭДО)

Оптовая торговля Розничная торговля ККМ ЭДО и ОФД Обмен с ГосИС Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

Подключение фискального регистратора к 1С 7.7 в режиме онлайн-кассы (в соответствии с 54-ФЗ). Поддержка крайних версий драйверов ККТ: ДТО 10 и ДТО 8 для Атол, 4.15, 5.16 для Штрих-М. Поддержка протоколов ФФД 1.0, 1.05, 1.1 и 1.2, развитые настройки для применения частичных оплат и авансов в оптовой и розничной торговле. Поддержка чеков коррекции всех версий. Поддержка розничной продажи маркированной продукции (ЕГАИС, табак, обувь, лекарства, шины, одежда, белье, парфюмерия, молочная продукция, вода и пр.). Вывод электронного чека (на е-майл, телефон) по требованию покупателя, поддерживаются комбинированные типы оплаты, режим эмуляции печати чека на ФР. **** Полный цикл работы из 1С 7.7 с маркировкой "Честный ЗНАК" (ГИСМТ, ЦРПТ) из 1С 7.7. ЭДО (табак, обувь, шины, одежда, молочная продукция, вода и прочие группы товаров) для розницы и опта (приемка и оптовая отгрузка маркированной продукции). Поддерживается как объемно-сортовой учет (ОСУ) так и поштучный (поэкземплярный) учет.

2000 руб.

28.03.2017    457805    4256    3461    

2428

АИС: Обмен с ФГИС Меркурий (Ветис.API) для всех* конфигураций 1С 7.7

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Обмен с ГосИС Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 1С:Упрощенное налогообложение 7.7 Сельское хозяйство и рыболовство Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия Бухгалтерский учет Управленческий учет Платные (руб)

Полностью автоматизированный обмен между конфигурациями 1С 7.7 и ФГИС Меркурий через Ветис.API для всех видов деятельности (Опт, Розница, Производство). Для организации обмена с ФГИС Меркурий требуется минимальная доработка конфигураций (поддерживается "из коробки" 1С: "Торговля и склад ред. 9.2", 1С: "Комплексная ред. 4.5", 1С: "Бухгалтерия 7.7", 1С: "УСН 7.7", 1С Предприниматель, другие конфигурации по заказу, включая нетиповые и самописные). Модуль разработан таким образом, чтобы минимизировать затраты по внедрению в произвольную конфигурацию на базе 1С 7.7. Вы можете БЕСПЛАТНО скачать демо-версию без ограничения по функционалу и опробовать решение в полном объеме перед покупкой. В данном программном продукте реализованы все технические требования Россельхознадзора по обмену в формате 2.0 и 2.1. Решение прошло опытную эксплуатацию и тестирование на крупных объектах всех видов деятельности: Производство, Опт, Розница.

10000 руб.

21.11.2018    52703    139    105    

67

АИС: Обмен с ЕГАИС 4.0 для конфигураций 1С 7.7

Оптовая торговля Розничная торговля Обмен с ГосИС Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полностью автоматизированный обмен между конфигурациями 1С 7.7 и универсальным транспортным модулем (УТМ) ЕГАИС для всех видов деятельности (Опт, Розница, Производство, Импорт). Для организации обмена с ЕГАИС требуется минимальная доработка конфигураций (поддерживается 1С: "Торговля и склад ред. 9.2", 1С: "Бухгалтерия 7.7", 1С: "УСН 7.7", другие конфигурации по заказу, включая нетиповые). В данном программном продукте реализованы все технические требования ФСРАР по обмену с УТМ ЕГАИС (включая отправку чеков розничных продаж в ЕГАИС - требование с 01.07.16). Поддержана фиксация чеков ЕГАИС на онлайн-кассах (в соответствии с 54-ФЗ). Поддержана версия 3 документооборота и поштучный (помарочный) учет. Поддержан эксперимент Татарстана по маркировке нефасованного (кегового) пива.

3000 руб.

13.12.2015    134698    159    400    

146

Обмен с ЕГАИС из 1С V7.7

Оптовая торговля Розничная торговля Обмен с ГосИС Оперативный учет 7.7 1С:Торговля и склад 7.7 Бухгалтерский учет Акцизы Платные (руб)

Дорогие друзья! Предлагаю Вашему вниманию обработку, предназначенную для обмена данными из Вашей учетной системы с ЕГАИС, через универсальный транспортный модуль (УТМ). В обработке реализован весь функционал обмена: - загрузка справочных данных по контрагентам, производителям, импортерам алкогольной продукции; - загрузка справочных данных по номенклатуре алкогольной продукции; - загрузка остатков; - помощник сопоставления справочных данных и запись их в базу данных; - загрузка приходных ТТН и справок Б от поставщиков, отправка по ним актов всех типов, создание по ним приходных документов; - выгрузка расходных ТТН покупателям; - управление Марками и ведение Регистра 3; Обработку возможно использовать автономно, не внося изменений в Вашу Учетную систему. Код открыт.

6000 руб.

13.11.2015    121208    169    2528    

232

Конфигурация "Информационный киоск". Обработки выгрузки товаров для ТиС 9.2, УТ 10.3, УТ 11 (обмен данными с любой конфигурацией 1С 7.7, 8.х)

Оптовая торговля Розничная торговля Обмен между базами 1C Сканер штрих-кода Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Управленческий учет Платные (руб)

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

1800 руб.

21.12.2014    59233    8    21    

20

Выгрузка товаров из 1С:Предприятия 7.7 "Торговля и Склад 9.2" в файл CSV для онлайн кассы МТС

Кассовые операции Оптовая торговля Розничная торговля Загрузка и выгрузка в Excel Оперативный учет 7.7 1С:Торговля и склад 7.7 Бухгалтерский учет Управленческий учет Абонемент ($m)

Данная обработка предназначена для выгрузки файла из программы 1С: Предприятие 7.7 Конфигурации «Торговля и Склад 9.2» в файл CSV для загрузки в кассу МТС. Тестирование проводилось на релизах 937 и 998. В теории должна работать на всех типовых релизах конфигурации «Торговля и Склад 9.2».

1 стартмани

07.02.2021    9929    5    Kuzya_brаtsk    1    

7
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. CheBurator 3119 21.06.07 14:40 Сейчас в теме
2. d.snissarenko 152 21.06.07 21:34 Сейчас в теме
прикольно, 570 бачей за 20 минут, ай малаца
26. poppy 02.07.07 04:05 Сейчас в теме
> Да, привязываться к коду контрагента в наименованиях реквизитов
> конфигуратора может показаться на первый взгляд некомильфово

Продожение.

Я бы предложила другое решение:
В справочнике контрагентов добавить реквизит: "КодСети" (типа строка(2)). В справочнике Номенклатура, нужно добавить реквизиты "БВК_АртикулХХ", где ХХ = от 00 до 15 (или 20, или другое число).

В коде пишем:

Код
ПечКод = "";
ИмяРеквизита = "БВК_Артикул"+Докум.Контрагент.КодСети;
Если глЕстьРеквизитШапки(ИмяРеквизита, Докум.Вид()) = 1 Тогда ПечКод = Докум.Номенклатура.ПолучитьАтрибут(ИмяРеквизита);
КонецЕсли;
Показать полностью

В рассмотренном варианте мы можем "привязать" несколько контрагентов к одному коду номенклатуры.
3. d.snissarenko 152 21.06.07 21:35 Сейчас в теме
4. CheBurator 3119 21.06.07 23:25 Сейчас в теме
Тьфу, блин... 1500 руб.. конечно...
5. alexdum12 22.06.07 09:42 Сейчас в теме
Я думаю продуктивность сотрудничества между твоим клиентом и его клиентами значительно бы возросла, предложи ты им обмен данными в электронном виде - это первое. Второе - а что будет когда количество подобных клиентов станет расти? Итог - решение на коленке долго не проживет, грамотный подход принес бы тебе больше презренных бумажек, а клиентам больше сервиса
6. Snus71 233 22.06.07 12:16 Сейчас в теме
Че, ты чему народ учишь ? Исходно был выбран идеолгически неверный путь в данной задаче. Завтра появится 5, 6, 7 я сетка у клиента и что ?
Низачод короче
7. Snus71 233 22.06.07 12:17 Сейчас в теме
"NN - числовой код клиента в справочнике контрагентов"

ужас !!! ужас !!!!
kachestvod; +1 Ответить
8. CheBurator 3119 22.06.07 12:47 Сейчас в теме
Тьфу на вас всех, собаки бешеные! ;-)
Вероятность появления у клиента новых сетей в течение года - весьма мала... так что
NN - числовой код клиента в справочнике контрагентов - В ДАННОМ СЛУЧАЕ - практически оптимальное решение... особенно, если клиенту завтра припрет вставить колонку артикула Ашана в ТЧ документа реализации - это я смогу и по телефону разрулить... а вот при выборе идеологически верного Варианта 1 - придется телепаться на другой конец москвы...
Естественно, к выбору варианта решения надо подходить обоснованно... Ясен пень, что при первой же возможности следует переделать под Вариант 1, но работы там будет - раз в пять больше... потому что внешне для клиента - все должно быть максимально просто...
.
> а что будет когда количество подобных клиентов станет расти?
сразу видно, что народу лень думать... БОЛЬШИНСТВО клиентов, которые работают с сетями - имеют СВОЕГО программиста 1С. Поэтому - ничего не будет...
..
> решение на коленке долго не проживет
Согласен... Только предложенное выше как выразились "решение на коленке" - встраивается в систему за 15 минут... и уж поверьте - грамотные "коленчатые" решения - живут вполне себе успешно...
9. CheBurator 3119 22.06.07 12:51 Сейчас в теме
> продуктивность сотрудничества между твоим клиентом и его клиентами значительно бы возросла, предложи ты им обмен данными в электронном виде...
Сапсем больной, да? ;-)
Обмен в электронном виде не исключает необходимости предоставления твердых копий документов. Пока я еще не встречал, чтобы налоговая принимала для проверки логи/электронные документы.
Низачот.
-1
10. imaster 7 22.06.07 14:37 Сейчас в теме
Ужос н@х... Такого изврата я ещё не видел.
Особенно "необходимость править структуру данных конфигурации при появлении новых "сетей", + не забывать при обновлениях."
kachestvod; +1 Ответить
11. CheBurator 3119 22.06.07 14:49 Сейчас в теме
Ок, Специалисты.
Ставим задачу:
- решить сабж
- уложиться в общем случае в 10 строк кода.
- избежать программирования при вставке артикула сети в табличную часть документа.
...
критиканские высказывания без обоснования будут приравниваться к флуду... ;-)

imaster'у: а ты, что, никогда структуру данных конфиги не модифицировал?
42. CheBurator 3119 24.07.07 19:10 Сейчас в теме
Кстати, задача, изложенная в (11) все еще актуальна...
12. Вадимко 214 23.06.07 02:28 Сейчас в теме
>>обойти матюги так называемых "специалистов 1С"
Бугоганах, ну-ну, пиши еще!
13. support 4484 23.06.07 12:17 Сейчас в теме
Не обжайте Чебурашку, он хороший. И его решение, более чем грамотное.
Сам работал с сетями, и знаю, что это такое, более придирчивого покупателя не найти, но это сеть, и она диктует условия.
Добавления нового реквизита в карточку номенклатуры самое простое и грамотное решение. Многие программисты не понимают, что 1С дала прекрасный инструмент, чтобы решать именно такие задачи. Создал реквизит, добавил на форму и все. Больше ничего делать не надо. А создание сложных систем по вводу дополнительных артикулов только усложняет процесс ввода, вывода и т.д. Потом научить оператора создавать такой артикул сложнее, чем научить создавать дополнительный реквизит в справочнике. :)
И еще, сетей, которые кодируют сами, в России можно пересчитать по пальцам, все остальные используют коды поставщиков. Создавать сложную систему для максимум десяти клиентов просто глупо.
Плюсы данное решения.
- Дополнительный артикул легко выводится в форму списка справочника (опять же заложено 1С), соответственно оператор может искать по нему.
- В любом универсальном отчете можно легко вывести код сети, т.к. это просто реквизит справочника.
- Добавить реквизит в табличную часть документа так же просто, как в форму списка.
- Можно осуществлять упорядочивание 1С запроса по данному реквизиту.
- Можно осуществлять поиск по реквизиту, отбор и т.д.
14. poppy 24.06.07 01:47 Сейчас в теме
Я бы обошлась без попытки:

Код
ПечКод = "";
Если глЕстьРеквизитШапки("БВК_Артикул"+Число(Докум.Контрагент.Код), Докум.Вид()) = 1 Тогда   
   ПечКод = Докум.Номенклатура.ПолучитьАтрибут("БВК_Артикул"+Число(Докум.Контрагент.Код));
КонецЕсли;
Показать полностью
15. Ioann 47 27.06.07 11:32 Сейчас в теме
Что-то много всего намутил. Конфа, насколько я понимаю имеет типовой функционал с аналогами и каталогами. в этом случае вообще ничего не надо в структуре менять. У меня код (артикул) покупателя хранится в реквизите "ИдентификаторВКаталоге" справочника "Аналоги". При печати документов используется глобальная функция, которая возвращает код покупателя, в случае наличия аналога из каталога данного контрагента. В некоторых случаях используется не только код, но наименование товара, принятое у клиента (хранится в реквизите "Наименование" справочника "Аналоги") - есть и такие клиенты...
16. artbear 1448 27.06.07 13:03 Сейчас в теме
При условиях, которые заданы в задаче
Цитата
"(плюс к этому попутно: франч, обновлявший конфигу клиенту, умудрился "потерять" внесенный по другой доработке новый код в глобальный модуль - хотя ему был перед добавлением выдан "протокол" изменений - что уж тут говорить о более серьезных доработках кода... - при очередном обновлении - все рухнет... франчи - они такие...)"
ни один из способов не является оптимальным.

Реализованный вариант 3 при подобном обновлении пострадает также, как и остальные варианты!!

Наиболее правилен все-таки вариант 1, пусть он клиенту и обойдется дороже :)
Только я бы не использовал встроенный справочник Аналоги, а сделал бы спец. подчиненный справочник, который не пострадает. Объем клиентского кода, в принципе, примерно тот же :) Необходимо только написать пару методов для работы с подчиненным справочником :)

При "плохом" обновлении/объединении в этом случае по крайней мере данные клиента (коды) не будут потеряны, как при использовании варианта 3 :(

Также 100% твой доп. слой будет потерян :)

ЗЫ а вообще подобная схема у меня лично давно реализована с помощью классов 1С++.
И подобные фичи легко добавляются в спец. подчиненный справочник, в котором соответствие один-один к справочнику-хозяину.
Для клиентского кода все прозрачно, только вместо
Спр = СоздатьОбъект("Справочник.Номенклатура");
используется
Спр = СоздатьОбъект("Общие.СправочникСДополнительнымиРеквизитами");
Спр.НазначитьВид("Номенклатура");
17. Ioann 47 28.06.07 11:47 Сейчас в теме
Про франча... С какой стати он обновляет конфу, которой занимается сторонний спец? Я бы на его месте не стал её сопровождать. Сопровождение типовой или не типовой совсем разные вещи, деньги и специалисты. Да и сопровождать то, за что ты отвечать не можешь на кой фиг?
18. CheBurator 3119 28.06.07 12:55 Сейчас в теме
2 artbear: > Только я бы не использовал встроенный справочник Аналоги, а сделал бы спец. подчиненный справочник,
Хотелось бы узнать - чем неустроил справочник "Аналоги" - чисто интересно.
То, что при обновлении потеряется доп.слой - это да... но его по тлф. "внедрить" легче, чем большой кусок программного кода по вар.1. Понятно, что по варианту 3 код тоже потеряется - но его всего вообщем-то 3 строчки ;-)
...
> При "плохом" обновлении/объединении в этом случае по крайней мере данные клиента (коды) не будут потеряны,
// ну это надо так постараться, чтобы доп.реквизиты убить - это только если загрузить обновление.... ;-) хотя и такое могут отчудить... ;-)
..
> с помощью классов 1С++.
... отдавая дань возможностям 1С++ на широкое масштабное применение 1С++ не иду ввиду отсутствия внятной целной документации - и не надо давать ссылки на "обрывки", которые лежат на известных ресурсах... - это нельзя назвать документацией... ну и не надо экскаватором копать ямки для заборныз столбиков... ;-)
19. CheBurator 3119 28.06.07 12:59 Сейчас в теме
2 Ioann: совершенно верно, согласен. у сеьбя в конторе сделано так же. Но при "внедрении" к клиенту требуется соотноситься с "возможностями" клиента. Как я писал ниже - такой вариант ДЛЯ КЛИЕНТА непрозрачен. Для нормальной работы требуется "прописать" фишку для заполнения аналогов. Вариант типовой работы с заполнением подчиненого справочника - весьма неудобен с практической точки зрения...
20. CheBurator 3119 28.06.07 12:59 Сейчас в теме
2 poppy: ок. код только длиннее получается ;-)
21. Sancha 184 01.07.07 14:29 Сейчас в теме
Я, все сделал бы на свойствах номенклатуры. Сделал бы сервисную обработку на подобии обработки группового изменения св-в справочника, это для тех, кто должен отслеживать артикулы сетей. И внешнюю печ.форму torg12.ert подправил бы по своему усмотрению.
Нет геммора с обновлением и с печ.формой.
22. CheBurator 3119 01.07.07 16:32 Сейчас в теме
Угум.. а a бы сделал на аналогах, ибо по сути это и есть аналоги...
23. poppy 02.07.07 02:48 Сейчас в теме
> 2 poppy: ок. код только длиннее получается ;-)

Букавак больше, но строчек = меньше. ;)

Использование конструкции "Попытка" для определения наличия атрибута смахивает на почерк программистов из Раруса. Не буду разводить здесь антирекламу, но такой почерк вызывает у меня рвотные рефлексы.

Ты сам утверждал, что учился кодить у одноэсовых программистов ( http://infostart.ru/forum/read.php?25,4076,5928,ref=4246#msg-5928 ). Видать, плохо учился...
24. poppy 02.07.07 03:41 Сейчас в теме
Не хочу обсуждать, на сколько решение = обосновано. Считаю, что Саппорт его обосновал.

Немного покритикую.
По вопросу обновления и франчей.
Не думаю, что мы доживем до 950 релиза. Если и доживем, то не скоро.
ИМХО очередные релизы пишут какие-то "студенты". Они вносят больше ошибок, чем исправляют. Поэтому, новый релиз + неумелый франч = взрывная смесь.

Если уж "решение" создает Че, то клиенту выгоднее обратиться к нему же за обновлением. Другое дело, что мотаться по Москве, выпоняя обновления = неблагодарное дело.
Как вариант: автор решения готовит очередное обновление, но обновление конкретной базы выполняет ближайший франч.
25. poppy 02.07.07 03:52 Сейчас в теме
> Да, привязываться к коду контрагента в наименованиях реквизитов
> конфигуратора может показаться на первый взгляд некомильфово

Не то слово. Очень большое ФИ по этому вопросу.

В восьмерке, например, есть преопределенные элементы, но в серемерке, иногда, приходится принимать непопулярные решения.
27. CheBurator 3119 03.07.07 02:42 Сейчас в теме
> нужно добавить реквизиты "БВК_АртикулХХ", где ХХ = от 00 до 15 (или 20, или другое число).
ну это - ваще отстой...
лучше уж как сделано в статье.. или на налогах/свойствах...
а вот почему Попытка - рвет на родину - непонятно...
Я считаю использование такой конструкции РАЗУМНО ТАМ где срабатывание по ветке "исключение" - не приводит к каким-либо траблам - как в примере вывода печатной формы... Другое дело, что при вычислительном каком-нить алгоритме применение Попытки не есть хорошо - так как БЕЗ ДОЛЖНОЙ ОТРАБОТКИ ИСКЛЮЧЕНИЯ приводит к иллюзии что все есть гуд...
28. CheBurator 3119 03.07.07 02:44 Сейчас в теме
В любом случае - все предложенные решения (кроме описанного в статье) являются существенно БОЛЕЕ ЗАТРАТНЫМИ.. имхо...
А то, что 950 релиза ххз когда дождемся - это да... я у себя в конторе до сих пор на 933 сижу (книги продаж/покупок только из 941 подтянулл в всое время...)
29. topasha 23 03.07.07 07:54 Сейчас в теме
Автор видимо мало работал с крупными розничными сетями. Многие из них еще требуют, чтобы в Торг-12 были ИХ НАЗВАНИЯ ТОВАРОВ, их артикул, их отпускные цены, их цены для промоакций , их штрих код. (Остальное добавьте после внимательного прочтения договора) Помимо Торг-12 могут потребовать еще кучу документов типа протокола согласования цен, разные формы для ввода новых товаров и прочее. Плюс практически все сети требуют отдельно ведения списка товаров, поставляемых им. Некоторые трепетно относятся даже к порядку следования строк с товарами! Добавление новых товаров в их базу почти всегда платное (от 50 до 300 евриков за строку). Рекомендую очень внимательно читать договор с торговыми сетями. Я бы сделал справочник "Товарная матрица", подчиненный справочнику "Контрагенты", в котором для каждой розничной сети вёл бы свой список товаров с их названиями, артикулами, возможно ценами и проч. реквизитами. Решение автора простое, в лоб, но не универсальное.
30. angro 03.07.07 08:12 Сейчас в теме
ИМХО: такое публиковать нельзя, решение простое и работающее, но ничего из себя не представляет.
31. topasha 23 03.07.07 08:22 Сейчас в теме
Подход к решению задачи в корне не правильный! Все три предложенных варианта - не правильные!
32. CheBurator 3119 03.07.07 11:40 Сейчас в теме
2 topasha: все верно. в данной конторе, которая описана выше - необходимости в реализации полной схемы "работы с сетями" как описано тобой ниже - необходимости нет... в другой конторе - там, все посложнее и по полной программе, как грится...
> решение автора простое, но не универсальное...
именно, речь ведь не шла о написании мегаконфиги для работы с сетями...
> Я бы сделал справочник "Товарная матрица", подчиненный справочнику "Контрагенты", в котором для каждой розничной сети вёл бы свой список товаров с их названиями, артикулами, возможно ценами и проч. реквизитами.
я бы не стал плодить излишеств и по максимум воспользовался бы "Аналогами" - тем боле что туда вполне можно впихнуть и артикул, и наименования, цены для каждой сети свои - тоже нормально реализуется штатными возможностями... доп.реквизиты - в свойства - все это, конечно, если работа с сетями не составляет ОСНОВНОЙ доли деятельности. Тогда имхо точить конфигу надо именно под автоматизацию работы с сетями...
33. CheBurator 3119 03.07.07 11:41 Сейчас в теме
2 angro: т.е. лучше публиковать навороченное решение с кучей ошибок...? ;-)
смысл именно такой и был - прсо, без заморочек... суть уловлена верно.
34. wolfsoft 2421 03.07.07 13:21 Сейчас в теме
Вот, блин, тоже сейчас начну статьи писать, как я разным клиентам реквизиты добавлял! Вот статьей-то наваяю... ;)
зы: Но минусовать не буду, потому что принципиально против минусов :)
35. topasha 23 03.07.07 14:22 Сейчас в теме
В моём решении как раз заморочек меньше всего, а наворотов нет вообще. Можно даже и интерфейсов не мутиит никаких. достаточно показать клиенту, как штатно открыть форму списка подчинённого справочника и всё! Можно даже типовые обновления ствить без боязни что-либо утерять. Просто предложенные решения задачи методологически не верны в принципе, даже для маленькой конторы!
36. poppy 05.07.07 02:23 Сейчас в теме
> > нужно добавить реквизиты "БВК_АртикулХХ", где ХХ = от 00 до 15 (или 20, или другое число).
> ну это - ваще отстой...

Не отстойнее, чем исходное решение... ИМХО ;)
Я даже не осуждаю то, что автор в своей статье многочисленно оправдывается за принятое решение.

> В любом случае - все предложенные решения (кроме описанного в статье) являются
> существенно БОЛЕЕ ЗАТРАТНЫМИ.. имхо...

Не существенно и не БОЛЕЕ.
Бюджет моего решения соизмерим с исходным. А если учесть перспективу "разруливания" ситуации по телефону, то значительно ниже как для заказчика так и для исполнителя.

Мое решение является более универсальным. В частности:
- у разных магазинов одной сети могут быть разные реквизиты. В этом случае разным контрагентам можно назначить одинаковые коды товаров;
- при появлении новых магазинов (сетей) пользователь добавляет данные в привычном для него интефейсе в т.ч. и без консультации по телефону.

В развитии решения можно добавить следующее.
Создать справочник "Сети". Тип реквизита КодСети справочника Контргаенты установить этот справочник. В форме элемента справочника Номенклатура показывать только те реквизиты, ХХ которых совпадает с кодом одного из элементов справочника Сети. Надписи для них брать из нового справочника.

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

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

Единственный плюс исходного решения отмечаю использование иднтификаторов реквизитов ПРЕФИКС_АртикулNN вместо БВК_АртикулАшан.
mdzen; support; +2 Ответить
37. poppy 05.07.07 02:25 Сейчас в теме
> а вот почему Попытка - рвет на родину - непонятно...

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

Складывается впечатление, что свои решения они создают на "коленках", распостраняя их потом на всю страну. Вот и рвет на родину.

Я не против использования конструкции Попытка в целом и в рассматриваемой ситуации в частности.

Кстати, если бы такое решение (Вариант 3) предложил какой-нибудь новичок, что Чебур первый бы его зачморил ИМХО.
38. Трактор 1246 07.07.07 13:16 Сейчас в теме
Ух! :-)
Как я понял автор хочет защититься от дурака-обновляльщика.
Думаю что добавленный реквизит с точки зрения обновляльщика мало отличается от добавленного справочника.
Можно использовать префиксы для добавляемых объектов матаданных. Например, реквизит назвать ЧЕБУР_КодыСетей или назвать справочник ЧЕБУР_АналогиСетей.
Вариант2 наиболее защищён от дурака-обновляльщика, поскольку на первый взгляд требует меньше изменений в коде.

Вариант1 vs Вариант3
Трудоёмкость написания кода для разбора строк не меньше чем трудоёмкость написания кода для работы с подчинённым справочником. Кроме того для облегчения обновления форму элемента лучше трогать поменьше. Я бы навесил на неё только кнопку с вызовом справочника аналогов или формы обработки по заполнению аналогов. Получается что разница в объёме кода между первым и третьим вариантом исчезающе мала, а вот разница в ссылочной целостности и лёгкости доработки - значительная.

Вариант2 vs Вариант3 vs Вариант1
До сраки как сделать, главное чтобы работало и чтобы пришедший после тебя не сильно матюкался.

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

Касательно комментариев. Лучше писатьтак
а так
//(( Чебурашка 07.07.2007
//)) Чебурашка 07.07.2007

Автору плюс за поднятую тему.
39. CheBurator 3119 08.07.07 00:36 Сейчас в теме
спасибо Трактору за комент. единственное с чем не соглашусь
> то разница в объёме кода между первым и третьим вариантом исчезающе мала,
- на мой взгляд разница в коде - весьма существенна... хотя кто как считает...
> ЧЕБУР_КодыСетей
ну так и названо - БВК_Артикул...
40. GROOVY 2505 10.07.07 03:13 Сейчас в теме
Зачетная статейка. Конечно про "правильность" подхода мы тут говорить не будем, ведь для определенного решения это есть гуд.
das; support; +2 Ответить
41. CheBurator 3119 10.07.07 03:16 Сейчас в теме
Вот слова истинного Дао!
das; support; +2 Ответить
43. Alesya 25.07.07 12:53 Сейчас в теме
Программистам может и не нравится, что ж их мнение...
Но ведь нравится пользователю. Мне как пользователю - это удобно. Это комфортно.
Мало того, я знаю, что если вдруг возникнет проблема, мне её сразу решат. Серёжа, спасибо, с тобой очень комфортно работать!
44. das 232 22.09.07 04:47 Сейчас в теме
43) Полностью присоединяюсь!
Спасибо за статью - ваше зерно опыта в нашу копилку!!!
45. XLstarter 08.07.08 15:49 Сейчас в теме
в комментах товара ввел для клиента правило на заполнение первых символов типа !М3253!А5643! и создал отдельные печатные формы расходных, счетов, ттн (пришлось повозиться с группировкой товара по их единому коду), от !Мдо! - Метро, от !А до ! Ашан ... в печ.форм. подставлял кода - печ.ф. М - метро, А - ашан..
46. v.l. 434 26.08.09 16:32 Сейчас в теме
МЕТРОимся и АШАНимся... захитали... особенно МЕТРО...
+
47. Иваныч 23 19.04.21 17:07 Сейчас в теме
Хоть и старая публикация, у меня похожий подчиненный справочник номенклатуры КодПоставщика, в котором 2 поля: Поставщик и Код. Сделана проверка на дублирование кода и все прекрасно работает примерно 10 лет.
Оставьте свое сообщение