Имя: Пароль:
1C
1С v8
Как ускорить подбор товара?
0 oleg_prg
 
04.08.14
18:17
Уважаемые форумчане, добрый вечер. Подскажите пожалуйста как ускорить подбор товаров в 1С? Есть не типовая конфигурация, файловый вариант, в номенклатуре примерно 33000 элементов,  остатки в подборе считываются с РН ОстаткиТоваров и РС ЦеныПартии. Подскажите пожалуйста как ускорить подбор, сейчас подбор открывается за 1 сек, если пользователей 5, то открывается за 3 секунды, но есть юзеры на розничных кассах и для них эта скорость неприемлима. Рассматриваю не популярные варианты, как например использовать внешний источник данных, или dbf файл остатков, который будет обновляться при списании товара... Подскажите пожалуйста, может кто сталкивался с подобной задачей, буду рад любому совету. Заранее спасибо.
1 Злопчинский
 
04.08.14
18:20
для чего на розничных кассах окрывать СПИСОК? у вас на кассах - торгуют..?
2 acsent
 
04.08.14
18:20
файловая чтоли?
3 acsent
 
04.08.14
18:21
(1) например продажа обуви, посмотреть какие размеры есть
4 thezos
 
04.08.14
18:21
(0) Сперва надо оптимизировать код и запрос. А потом перейти на клиент-серверный вариант и нормальное железо. 33к номенклатуры это НЕ то значение, при котором должно тормозить.
5 Bober
 
04.08.14
18:22
(0) толстый клиент или упр формы?
6 Злопчинский
 
04.08.14
18:22
на кассах отказаться от остатков и цен. че принесли на кассу - то и пробить. цены - фиксированы (???) можно подумать о том, чтобы цены ПРОДАЖИ не хранить среди других цен, а записать в некое место мгновенноебыстроедля извлечения.
.
я не спец.. ща набегут умные
7 oleg_prg
 
04.08.14
18:23
(1) на кассах торгуют, это аптека
(2) - да, лицензия дорого
(4) - запрос пустяковый регистр остатков и цена
8 Злопчинский
 
04.08.14
18:24
(3) на кассе? или на РМ продавца-манагера зала?
9 acsent
 
04.08.14
18:24
Если 8.3 то для цен необходимо включить итоги. Скорее всего это и есть узкое место
10 Злопчинский
 
04.08.14
18:24
(7) терминалка!
11 Garykom
 
гуру
04.08.14
18:24
(0) Сделать веб клиента в файловом варианте )) на кассах...
12 thezos
 
04.08.14
18:25
(7) Хех, пусть тогда поумерят хотелки) если дорого
13 Garykom
 
гуру
04.08.14
18:25
(11) но встанет проблема ФР ))
14 thezos
 
04.08.14
18:25
(10) Сказали же - дорого!
15 oleg_prg
 
04.08.14
18:26
на кассе удаленный раб.стол, к компу подрублена касса
16 oleg_prg
 
04.08.14
18:26
(10) она самая )))
17 oleg_prg
 
04.08.14
18:27
(9) 1С 8.2
18 thezos
 
04.08.14
18:27
Оптимальный вариант в данной ситуации - переходить на таблицы опен офис) или ломанный эксель. Там сразу в табличке товаров цена показывается)
19 thezos
 
04.08.14
18:27
(18) + И главное бесплатно!
20 Garykom
 
гуру
04.08.14
18:28
Еще перепиши на ws
т.е. база крутится на "типа сервере", а остальные работают в своих базах в которых только номенклатура а остатки и цены берутся по запросу из "типа сервера" (для выбранного элемента) или периодически синхронизируются в момент простоя полностью
21 acsent
 
04.08.14
18:29
(20) так сказали же денег нет. А ты перепиши, перепиши
22 Garykom
 
гуру
04.08.14
18:30
(21) гыгыгы без денег чтобы само залетало ))

типа галочку там поставьте и все будет ок да?
23 Garykom
 
гуру
04.08.14
18:31
да КД бесплатна? если да то можно сделать ))
24 Злопчинский
 
04.08.14
18:33
ну.. представляя себе как пишутся конфы для лекарств.. я бы для начала посмотрел на адекватность данных требуемым задачам и правильность написания запросов/кода...
25 Garykom
 
гуру
04.08.14
18:34
(24) нуна нуна эти больные постоянно спрашивают если ли ЛС такое или аналог и скоко стоит ((
26 Михаил Козлов
 
04.08.14
18:35
Попробуйте организовать справочник номенклатуры, так чтобы в группах ("папках") было не слишком много товарных позиций: в старых версиях УТ определение остатков производилось по списку товаров в группе.
27 oleg_prg
 
04.08.14
18:37
Есть деньги только на разработку, на софт уже не выделят. Но на разработку времени нет
28 acsent
 
04.08.14
18:38
(27) переходи на 8.3
29 Злопчинский
 
04.08.14
18:38
нуссс с учетом того что аптеки редко когда держат большой складской запас в нсекольо партий - пихать цену партии в карточку товара...
30 oleg_prg
 
04.08.14
18:39
(24) Вам могу в личку отдельно скинуть эту грустную историю ))))
31 Злопчинский
 
04.08.14
18:39
(27) тогда пропить.. на оставшиеся в родной аптеке купить антипохмелин
32 Garykom
 
гуру
04.08.14
18:39
кстати еще одна "гениальная" идея заюзать фоновые задания ))

типа остатки и цена показываются только при бездействии n сек для выбранной позиции
33 Злопчинский
 
04.08.14
18:40
(30) [email protected]
кидай, интересно вспомнить молодость.
распространять не буду.
поржу м.б. только.
34 Злопчинский
 
04.08.14
18:42
(32) м.б. ну и открывать не весь список а подходящие позиции только..?
если спросили аспирин - то втаптываем "аспирин" и получаем список аспиринов и похожих на аспирины... и уже для них тянем остатки и цены..
35 oleg_prg
 
04.08.14
18:43
(30) как будет своб. минутка скину )))
36 Garykom
 
гуру
04.08.14
18:43
(34) ага и еще на линукс перейти )) там терминалка бесплатная есть ))
37 Злопчинский
 
04.08.14
18:44
перейти на клюшки и прямые запросы - еще не предлагали..? ;-)
38 oleg_prg
 
04.08.14
18:45
(32) сейчас так и сделано. Есть строка для ввода наименования, оно же для аналогов и прочего. Запрос выдает не весь справочник, а только (в 90% случаев) то что ПОДОБНО ХХХ%
39 Злопчинский
 
04.08.14
18:45
(35) не, ты давай ща кидай, а то потом от вас фиг дождешься...
40 Garykom
 
гуру
04.08.14
18:47
(38) понятно тогда или сервак или делим базу по кассам и обмен между ними и "типа сервером" периодически

ЗЫ придется забить на проблему одновременного пробития одной последней упаковки ЛС на двух кассах ))
41 BuHu
 
04.08.14
18:49
(0)>> Есть не типовая конфигурация...
надо в код смотреть , структуру регистров , индексы в конце концов (хотя вроде маленькая база)
42 Злопчинский
 
04.08.14
18:51
(40) какой сервер в аптеке на две-три кассы...? этож жлободромия сплошная...
.
раньше розница в принципе имела неплохую наценку, после того как г-в-о стало закручивать ценовую политику - хз во что это превратилось...
43 palpetrovich
 
04.08.14
18:51
конфа нетиповая, почему не сделать форму подбора с допТабличкойТолькоВыбранныхТоваров - и именно в ней показывать остатки  и цены?
44 oleg_prg
 
04.08.14
18:52
У меня идея такая, создать например dbf, при первом запуске или еще при какой ситуации туда слить все остатки с ценами, сериями и т.д. затем этот файл использовать для подбора, и при продаже менять в нем количество.
45 oleg_prg
 
04.08.14
18:54
(42) Core i5 4gb
46 BuHu
 
04.08.14
18:54
(44) а че не в экселе?
как часто итоги рассчитываются? регистры закрываются?
47 Фатих Ридванов
 
04.08.14
18:54
(0) Если конфига на УФ, то опубликовать базу на веб сервере, если нужно совсем быстро реализовать, то использовать для этого 1C Link, подключаться к ней через тонкий клиент, чтобы использовать торговое оборудование.
48 Garykom
 
гуру
04.08.14
18:54
(44) дык еще можно памяти побольше на кассы )) и в ТЗ хранить на форме эти ваши остатки ))
легче реализовать чем через внешнюю дбф ))
49 palpetrovich
 
04.08.14
18:56
(44) фиговая идея, лучше создай, к примеру, справочник или РС СерииЦеныОстатки и туда сбрасывай
50 Garykom
 
гуру
04.08.14
18:56
(48)+ хотя насчет памяти это я загнул 33 тыщ позиций это фигня но лучше посчитать (строка место Кб х 33 = ? Мб) или потестить
51 acsent
 
04.08.14
18:56
(44) лучше мускуль тогда
52 acsent
 
04.08.14
18:57
ибо дбф -это блокировки, битые индексы и прочий геморой
53 Garykom
 
гуру
04.08.14
18:58
(51) мускуль не надо он тормоз на больших запросах )) лучше постгри он расово верен по 1С ))
54 palpetrovich
 
04.08.14
18:58
+ (49)  хотя тоже фиговая, если нормально построены РС-ы + нормально заточен запрос + железо не прошлого века - все и так должно работать
а воообще - лучше см. (37) :)
55 acsent
 
04.08.14
18:59
(53) на чтение - мускуль зе бест. А транзакции тут и не нужны
56 Garykom
 
гуру
04.08.14
19:00
(55) а тип и длина primary key какая? ))
57 Garykom
 
гуру
04.08.14
19:01
(56)+ советую попробовать сделать гуид(36) или хотя бы код строковый в 12 символов и потестить...
неприятно удивитесь ))

из-за этого тормоза пришлось на постгри проект переводить
58 acsent
 
04.08.14
19:02
(56) тут вообще примари не нужен абсолютно
59 Garykom
 
гуру
04.08.14
19:03
(58) WTF?

а обновлять при включении? синхронизация с 1С то как?
60 Злопчинский
 
04.08.14
19:14
народ ну че там в может тормозить-то?
30 тыс позиций, макисмум 1 (редко 2 парптии на товар). чему там тормозить?
самим управляемым формам?
.
сделать самый простой терминал и работать.
61 глазковыколупыватель
 
04.08.14
19:28
(0) Цену хранить в РН. Платформу - последнюю стабильную. Показывать остатки только по товару. При активизации строки списка товаров - по сериям. http://i.imgur.com/dfIA51P.png
Ну и запрос покажи.
62 Pasha
 
04.08.14
19:31
(0) Оптимизировать алгоритм подбора не пробовали?
63 Torquader
 
04.08.14
23:44
Мне кажется, что 30тыс позиций вообще можно поднять в память в Т.З. и обновлять остатки фоновым заданием (у которого строго ограничить время) - тормозить не должно.
Только нужно понимать, что динамическое заполнение Т.З. на форме тормозит только из-за того, что поднимает в память все данные, причём, если форма закрывается и открывается, что всё начинается заново.
64 NS
 
04.08.14
23:47
Для начала - SQL Profiler и замер производительности.
65 NS
 
04.08.14
23:47
Файловая? Тогда просто замер производительности. Что он показывает?
66 Злопчинский
 
04.08.14
23:57
(65) наверное что с замером производительности тормозит еще больше...???
67 Torquader
 
05.08.14
00:13
Я бы ещё исключил иерархию как класс, так как на построение иерархии тратится очень много времени (рисование дерева в памяти).
68 Torquader
 
05.08.14
00:18
Потом также полезно понять, что ищут в справочнике - например - полнотекстовый поиск по строкам и т.п., а также грамотно "объединить" товары по группам, чтобы пользователям было проще найти то, что нужно.