1С и Агент+ #805484


#0 by gamar20
Привет, ребята. Вопрос в работе 1С и Агента + (мобильная торговля). Смотрите какая у нас ситуация. Имеется 1С сервер, на достаточно мощном сервере, с SSD дисками. Торговля 8.3, конфигурация 10.3 Имеется 35 торговых представителей. С утра менеджеры ставят на выгрузку и этот процесс идет очень долго. на одного торгового уходит около 10 мин. тормозит именно на этапе "номенклатуры". в настройках показывает, что 95 папок(номенклатуры). на сервере папки выгрузки весят от 1.3 мб до 2 мб. У вас как происходит обмен данными? так же долго? просто мне один 1с_ник сказал, что у них оптимизирован этот процесс и выгрузка на одного торгового уходит ДО 40 секунд.
#1 by Лефмихалыч
позовите 1Сника, чтобы он опитмизировал
#2 by MSOliver
там запрос(ы) в цикле
#3 by MSOliver
Если всем выгружать одинаковые данные, то можно сократить выгрузку в разы (кратное количеству агентов)
#4 by УспешныйЧел
я даже знаю этого человека, его зовут Mikeware, я угадал?
#5 by gamar20
ну давайте по делу, пожалуйста. выгрузка у всех одно и тоже. все остатки товара, по многим позициям. У нас сейчас все с первого до последнего по очереди выгружает и в это время 1С можно сказать зависает по пользователя, ничего нельзя делать, пока не закончится. а этот процесс длится около 4-5 часов.
#6 by Лефмихалыч
мм, а база файловая, да?
#7 by gamar20
> мм, а база файловая, да? нет, база SQL, держится на MSSQL2016
#8 by УспешныйЧел
сделайте выгрузку для одного агента, а потом тупо скопируйте результат другим, делов то. я бы переделал выгрузку в хр процедуры скуля, но это нарушение лицензии 1С, зато быстро :)
#9 by Cyberhawk
1. Сколько тебе платят за решение вопроса? 2. А ты там кем?
#10 by Лефмихалыч
Надо пройти всего три простых шага, которые на форуме за тебя ни кто не пройдет (ну - бесплатно так уж точно): 1. отладчик в зубы и выясняй, что именно тормозит. 2. Потом думай - почему. 3. Потом думай - что с этим делать.
#11 by Лефмихалыч
сюда имеет смысл ходить с конкретными вопросами: "оно тормозит вот тут, вот так, потому-то, чо с этим делать, чтобы не тормозило". С сабжем - пустая трата времени
#12 by gamar20
Лефмихалыч, я же написал, что тормозит формирование номенклатуры.
#13 by nicxxx
"Формирование номенклатуры" - это не абстрактный процесс, а вполне конкретный, который можно разбить на какие-то шаги и выяснить, какой именно шаг тормозит.
#14 by gamar20
Ну а у вас то как? какой обьем и за какое время выгружается? Я хочу выяснить все же это норма или нет? как у вас происходит?
#15 by opus70
сделайте в выгрузке кеш остатков номенклатуры и берите от туда данные а не рассчитывайте их каждый раз как делает штатная выгрузка от Агента (все равно погрешность остатков не ильно обычно важна если торговля идет не с колес )
#16 by opus70
можно пойти дальше перед выгрузкой один раз все остатки скинуть в какйнибуть регистр сведений и от туда брать, так же поступить с взаиморасчетами (которые обычно дольше выгружаются чем остатки) вариантов как оптимизировать много
#17 by gamar20
я бы не сказал, что так уж много. в номенклатурах около 95 папок, там все наши бренды/категории товаров, которые нужны всем. день один раз точно надо делать полную выгрузку, чтоб у торговых были все остатки. А бывает, что после обеда еще ставим на выгрузку, когда получаем новый товар. Ну второй раз можно как то кастомизировать адачу, сделать выборочный каталог (бренд), по приходнику. Но а основная задача остается.
#18 by d4rkmesa
Надо переписывать, там почти все запросы неоптимальны. Кроме запроса там еще повсюду чтение реквизитов через ссылку. У нас максимум 1,5 минуты - если на клиенте, в ручном режиме. Фоновое задание шарашит не дольше 1-й минуты - это если полная выгрузка. Если ответ на запрос какой-нибудь, то порядка 20 секунд.
#19 by d4rkmesa
Можете на первом этапе как раз убрать обращения через ссылку к значениям реквизитов (номенклатуры). Добавляете свой запрос для чтения реквизитов, выгружаете в таблицу значений, индексированную по ссылкам, при выгрузке через НайтиСтроки читаете нужные реквизиты. У меня в свое время в 1,5-2 раза только этот момент ускорил процедуру. А так, через замер посмотрите, на что время уходит.
#20 by Fram
ты бы сразу писал, что ты не программист 1с и тебя интересует решается ли проблема "расставлением галочек".. сэкономил бы время людям
#21 by MSOliver
Костыль в - но работает
#22 by VladZ
С Агент+ не работал. А вот Мобильную Торговлю от Систехов оптимизировал. 1Сй код переписал, логику поправил. В итоге полная выгрузка занимала в пределах 2х минут.
#23 by big
"... Имеется 1С сервер, на достаточно мощном сервере, с SSD дисками. Торговля 8.3, конфигурация 10.3. MSSQL2016..." Всё новое, всё современное, а ***ть всё равно не работает. Убиться об это всё и уже не мучиться
#24 by Мелифаро
Перепиши запросы. Они там корявые. Натыкался уже на эти грабли.
#25 by УспешныйЧел
зато хомячкам нравится, про юзабилити на кпк вообще молчу.
#26 by Мелифаро
С юзабилити все в порядке. Щаз опять реклама агентоида начнется, да?
#27 by УспешныйЧел
а смысл? когда народ на ломанном а+ сидит.
#28 by Dmitrith
Ставьте полную выгрузку на ночь регламентным заданием. В течении дня выгружайте только остатки/цены
#29 by gamar20
да, я не программист 1С и не занимаюсь этим делом. Меня первый очередь интересует момент истины - это нормально или нет? чтоб знать кому обратится, тех.поддержку агент+, или программистам 1С? они у нас на аутсорсе просто, в штате нет таких специалистов. Уже понял, что поставлением галочками не решать задачу. Но хочу выяснить вообще это решаемая задача или нет? У нас всего 35 торговых, на выгрузку уходит 5 часов. Получается если будет 60 клиентов, то за один рабочий день не сможем выгрузить, а на следующий день эти данные уже не актуальны - соответственно работа будет парализована.
#30 by Mankubus
нет нерешаемой задачи, были бы деньги. уже способы решения описаны в ветке - . что еще нужно?
#31 by d4rkmesa
Ну дык займите ваших аутсорсников, 3-4 запроса переписать и оптимизировать код - это максимум 1 человекомесяц.
#32 by d4rkmesa
Задача решаемая. Если грамотно подойти, то выгрузка будет работать быстрее на порядок, без преувеличения.
#33 by VladZ
"это нормально или нет?" Тут вопрос нужно ставить по-другому: Устраивает ли это вашу компанию? Тормознуто работать неоптимальному коду - это нормально. По поводу "к кому обращаться". Сначала - в тех.поддержку Агент+. Вполне возможно, часть проблем можно на этом этапе решить. Если не поможет - подтягивать программистов.
#34 by vde69
>>>У нас всего 35 торговых, на выгрузку уходит 5 часов сделайте выгрузка параллельно... для каждого узла отдельное регламентное задание, узел передавайте через параметр... доработок на первый взгляд на 1 час работы... правда во время выгрузки сервер может просесть, по этому запускайте партиями и пробуйте
#35 by gamar20
Mankubus - 8 вариант не устраивает, так как ручной надо все перекидывать. Это уже не дело. 10 - я уже сказал какой процесс тормозит. 24 - какие запросы? где они находятся?
#36 by Mankubus
Включите замер производительности и все увидите. А лучше пригласите программиста, все равно не разберетесь
#37 by rozer76
+ 100 сделан кеш для выгрузки номенклатуры, ежедневная выгрузка около 200 торговых в три потока около 5 часов, без кеша было часов 12 (
#38 by Лефмихалыч
когда узнаешь, какой конкретно код занимает больше всего времени, тогда приходи за советами.
#39 by Лефмихалыч
да, это решается. Проблема не в Агентплюсе, а в коде выгрузки из 1С. Для этого нужен программист. Обращаться надо к тем, кто 1С у вас поддерживает.
#40 by vde69
для таких систем можно делать двухступенчатый обмен, создаем 10 РИБ узлов и настраиваем полный обмен с центром каждые 10 мин, и от каждого узла делаем по 20 выгрузок в конечные точки....
#41 by УспешныйЧел
мощно!
#42 by Мелифаро
Бугыгы. Великолепная идея %)
#43 by gamar20
Лефмихалыч , а вы сможете это исправить? после ваших манипуляций за какое время будет выгружаться?
#44 by opus70
тут практический все могут это исправить, и обычно спрашивают тут в каком направлении капать или не копать
#45 by VladZ
Странный ты. Никто заранее результат не скажет.
#46 by УспешныйЧел
сможет, но вашей компании придется взять кредит для оплаты его услуг :)
#47 by opus70
самый правильный вариант , найти программиста на месте объяснить ему что выгрузка не оптимальна нужно переделать ии вот не забыть хорошо заплатить гораздо дороже чем стоил сам агент+ , т.е. коробочные решения ни когда быстро не работают они не для этого
#48 by gamar20
почему странный ? ребята, у меня задача, описал входные данные. Вы говорите, что можно делать, дело 1С программиста. Вот и я хочу понять что в итоге получу. сейчас на 1 торговую уходит 10 мин. если после оптимизации станет 7-8 мин, это не считаю решением.
#49 by opus70
а то как в нашей жизни купили у дяди заплатили хх рублей круто мы много отдали будет все зашибись, но реальность такова что если не переписывать то что купили и потом еще и не сопровождать это то (платить за переделки в случаее базового изменения или от 1с или от Агент+) тогда остается только ждать часами пока пройдет выгрузка
#50 by opus70
в идеале должно быть 2-3 минуты и не более на точку и идеал этот достижим
#51 by opus70
решение из коробки хорошо тем что оно работает и не зависит от конкретного васи или пети который что то перепишет, но пройдет время все забудут что сделал этот вася накатят штатное обновление и снова начинай сначала
#52 by d4rkmesa
В 2 минуты должно получиться уложить. Если количество SKU исчисляется десятками тысяч, придется дополнительно что-то вроде кэша делать.
#53 by ProxyInspector
Ты сначала напиши количество номенклатуры, количество цен. Какая информация выгружается. Взаиморасчеты грузятся.    У нас порядка 25 агентов 120 позиций номенклатуры. 100 клиентов на агента. У каждого клиента свои цены. Размер файла выгрузки около 2 мб в несжатом виде.   На оченььь плохом сервере время выгрузки около 5 мин, на хорошем в районе 1 мин.   На УТ10 время выгрузки должно быть < 1 мин на агента. Уж больно логика простая в УТ10.
#54 by gamar20
У нас 95 номенклатур, наименование около 15 тыс. Все клиенты получают одно и тоже.
#55 by УспешныйЧел
15 тыщ позиций в а+? да там пустые формы еле открываются..жесть.
#56 by kovalev_oleg
выгружай только изменения.
#57 by gamar20
>выгружай только изменения. А как это делать? в 1С надо настроить или в модули 1С ?
#58 by rozer76
это ему на до добавить план обмена и зафигачить кучу кода. По дефолту для номенклатуры передается KILLALL = 1 в а+
#59 by kovalev_oleg
кому сейчас легко?
#60 by kovalev_oleg
тут надо смотреть не только выгрузку , (как выше заметили нужен план обмена) но и загрузку.
#61 by ProxyInspector
Если все клиенты получают одно и тоже, тогда делай одну выгрузку для всех. Надо программно немного немного подправить код в модуле выгрузки.
#62 by Лефмихалыч
если готов переходить к каким-то конкретным предложениям, то перестань, ибо я этим заниматься не буду. Не интересно. Помимо этого, вакансии на Мисте платные, по этому развитие темы в этом ключе приведет к закрытию оной темы.
#63 by Лефмихалыч
пардон, китель забыл натянуть
#64 by opus70
полностью согласен работы на пару часов медленно попивая кофе
#65 by Мелифаро
Меньше. По сути, в случае ТС там достаточно поправить несколько строк, чтобы исключить индивидуальную выгрузку для каждого агента, а также (по крайней мере, год назад так было) исправить рукож@пный запрос выборки номенклатуры с остатками.
#66 by УспешныйЧел
пишут, что там (а+) 80 человек работает, чем они там занимаются?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С