|
v7: Кривой регистр, который не может закрыться по определению... | ☑ | ||
---|---|---|---|---|
0
MWWRuza
гуру
12.10.20
✎
10:33
|
Добрый день!
Тут к теме замены измерений в регистре прямым запросом, отношения не имеет, только косвенно, там хорошо все, и даже Злопчинский подвел итог: (27) галактеко вздохнуло с облегчением. темный император повержен Но... Попробовал обработку в действии, и в "процессе эксплуатации" вылез другой косяк, на который раньше просто не обращал внимания... Я так рассчитывал, что достаточно поменять задвоенную номенклатуру в RA, и выполнить пересчет итогов, час работы с перекурами... Все так, но пересчет итогов в этой "подопытной базе" затягивается на долгие часы... Стал разбираться - оказалось, есть регистр, никакого отношения не имеющий к моим "экспериментам", "СкидкиКлиентам". Регистр остатков. Не знаю, есть ли он в типовой ТиС, думаю нет, во всяком случае в таком виде. Сразу хочу сказать - не кидайтесь тапочками, это не мое поделие, это "тяжелое наследство" от ККС... Какой му**к это делал, руки бы ему отшибить... Куча измерений в регистре, ни одного реквизита, и два документа, которые двигают его. Один документ - ОтчетПоСкидкам, второй документ - "СписаниеНакопленныхСкидок"... Куча косяков. Например, первый док двигает регистр по измерению "Номенклатура", во втором документе даже упоминания о ней нет, и таких еще несколько... Естественно, регистр не закрывается. RA его - 35 мб, RG - 360 мб!!! Это за год от последней свертки... Вот и пересчитывает он его "до посинения". В принципе, с этим регистром работают всего два документа и один отчет. Возникла идея, исправить это недоразумение. Если эти измерения, по которым нельзя "собрать все в кучу", перенести в реквизиты, а измерения удалить? Ну, соответственно отчет поправить. Должно это исправить положение? Или все равно толку будет мало, т.к. движения прихода по этому регистру происходят каждый день(вместе с закрытием смены ОтчетПоСкидкам формируется), а расход делается раз в год, а то и вообще не делается(у кого как - кто-то копит скидки по жизни, кто-то раз в год обнуляет и начинает с нуля), он так и так в течении этого периода будет не закрытым - ? Нужен совет - стоит ли заморачиваться, или оставить как есть(гимороя много, а есть ли смысл?), просто свертку делать периодически(можно в принципе по этому регистру конкретно, если полную не охота) - ? |
|||
1
Холст
12.10.20
✎
10:51
|
можно переписать отчет так чтобы он обращался к документам напрямую, а не к кривому регистру , после того как увидишь что отчет верно заработал, можно перестать документами писать в него движения, а после свертки грохнуть регистр совсем,
|
|||
2
MWWRuza
гуру
12.10.20
✎
10:54
|
(1) Тоже вариант... Надо подумать. Спасибо за идею!
|
|||
3
MWWRuza
гуру
12.10.20
✎
11:08
|
+(2) А где тогда хранить суммы накопленных клиентом покупок? Каждый раз считать? Они используются не только для отчетов, а в фронт выгружается процент скидки для клиента, в зависимости от того, сколько он накопил... С регистра это получается мгновенно, а с докуметов будет пересчитывать по каждому клиенту при выгрузке каждый раз... Так не пойдет.
|
|||
4
zenik
12.10.20
✎
11:13
|
(3) Оборотный регистр - его закрывать не надо.
|
|||
5
MWWRuza
гуру
12.10.20
✎
11:28
|
(4) Получать оборот за период "с испокон веков" до текущего времени? Насколько это будет быстро работать? Период, я так понимаю, придется "день" делать. Итоги накоплений по клиенту, могут при каждом закрытии смены меняться.
|
|||
6
Mikeware
12.10.20
✎
11:34
|
(5) ну и посчитай "с испокон веков" - у тебя там "испокон" лет пять, при одном итоге на клиента - будет суммирование значений 60 строк.
считай прямым запросом прямо по итогам, без виртуальных таблиц |
|||
7
Mikeware
12.10.20
✎
11:35
|
(0) "ККС" - это кто/что?
|
|||
8
zenik
12.10.20
✎
11:38
|
(5) зачем день? месяц, год... Да и обычно для скидок применяется система, которая берет некие обороты за определенный период. Оборот 5 лет для расчета "скидки сейчас" - по моему не нужен.
|
|||
9
Kigo_Kigo
12.10.20
✎
11:38
|
Я думаю так, завести новыйрегистр оборотов, переписать все на него, сделать ввод отатков на основании старого регистра, старый грохнуть, для этих целей доки каждый раз пересчитывать - не вариант
|
|||
10
Kigo_Kigo
12.10.20
✎
11:39
|
по крайней мере у меня шкальная система скидок сделана так, за 10 лет нароботки все летает
|
|||
11
Lazy Stranger
12.10.20
✎
11:39
|
а зачем там все эти измерения? может их все выкинуть кроме клиента?
|
|||
12
Андрей_Андреич
naïve
12.10.20
✎
11:45
|
(11) Сначала надо разобраться с принципом скидки. И поговорить с манагерами - оно может им сто лет не надо или надо уже другое.
|
|||
13
MWWRuza
гуру
12.10.20
✎
12:08
|
(7) https://ccrs.ru/ Производители ККТ "Спарк". Так получилось, что их клиенты отошли с программами на 7.7 ко мне. со всеми косяками и гимороями.
(11) Вот и я так подумал. Изначально в теме была такая мысль. Достаточно одного измерения - "Клиент". Ну, можно "Фирму" оставить, она все равно у меня в большинстве случаев одна. Все остальное - "Номенклатура", "Склад", "ККМ", можно перенести в реквизиты. На всякий случай, может в отчете пригодятся. Должны накапливаться суммы по клиентам, от списания до списания накопленного, все остальное - значения не имеет, эсли только для какого-то, никому не нужного анализа. Отдельная песня со "СхемаСкидок". Тут, надо анализировать этот реквизит доков, и двигать регистр остатков только если схема имеет тип накопительная. Всякие "праздничные", "временнЫе" и т.п. "без клиентские", вообще не должны двигать этот регистр. В принципе, для их анализа, при желании можно оборотный регистр прикрутить, с периодом месяц, и если скидка такого типа, то двигать его... |
|||
14
Kigo_Kigo
12.10.20
✎
12:10
|
(13) Тогда у тебя получается балловая система? тогда оборотный тут не канает
|
|||
15
MWWRuza
гуру
12.10.20
✎
12:16
|
(14) Ну, типа того. Есть шкала, в строках которой суммы накоплений от и до, и привязанные к ним проценты. Раз в год накопления обнуляются, и все идет "с нуля". Но, есть клиенты, у которых обороты маленькие, они не обнуляют накопления по покупателям. Там они копятся и копятся, и всем пофик...
|
|||
16
MWWRuza
гуру
12.10.20
✎
12:30
|
(11) Вопрос собственно в том, что если оставить только одно измерение "Клиенты", и обнулять накопленные суммы раз в год... Или совсем не обнулять. Будет ли RG так пухнуть, и безобразно тормозить при пересчете итогов?
|
|||
17
Lazy Stranger
12.10.20
✎
12:32
|
мне кажется таблица остатков регистра с одним измерением не должна заметно отличаться по размеру от таблицы соответствующего справочника (в данном случае контрагентов)
|
|||
18
Mikeware
12.10.20
✎
12:39
|
(13) понял
(14) оборотный вполне вписывается. (17) закрываемого, либо оборотного - будет даже меньше. (15)(16) не парь мозг, напиши запрос, достающий из итогов оборотного регистра, измени тип на оборотный, пересчитай этот регистр - и забей на остальное. на серверной базе это, на файловой может пару часов... |
|||
19
MWWRuza
гуру
12.10.20
✎
12:41
|
(17) Понятно.
Теперь с реквизитами... Ну, "Склад" и "ККМ" - с ними все понятно. Один документ, одна строка движения - сумма по чеку, эти реквизиты не помешают. А вот "Номенклатура" - ? В чеке может быть несколько строк, с одинаковым измерением, но разными реквизитами "Номенклатура"... Как это может повлиять? Совсем убирать "Номенклатуру" не хочется, вдруг хозяин магаза захочет посмотреть, что "Вася Пупкин" чаще всего покупает... |
|||
20
MWWRuza
гуру
12.10.20
✎
12:41
|
(18) Попробую...
|
|||
21
Андрей_Андреич
naïve
12.10.20
✎
12:42
|
(19) Отчета о продажах в разрезе покупателей-товароы ы конфе нет?
|
|||
22
Mikeware
12.10.20
✎
12:45
|
(19) изменив на оборотный - ты сможешь получить и в разрезе номенклатуры, и в разрезе складов, и как угодно. Только иногда чуть дольше, чем с регистром остатков
|
|||
23
Андрей_Андреич
naïve
12.10.20
✎
12:48
|
(22) У меня один разрез учета просто в табличку скульную закинут - показалось проще и быстрее как по быстродействию, так и по написанию. Роди это не комильфо?
|
|||
24
Ёпрст
12.10.20
✎
12:50
|
Регстр в 35 метров, если он закрывается, персчитается в дбф за минуту, ну максимум 1,5 минуты или быстрее
|
|||
25
MWWRuza
гуру
12.10.20
✎
13:01
|
(21) Если и есть что-то такое, то типовое из ТиС. Этот регистр только в этом одном отчете: https://cloud.mail.ru/public/4HZC/2AyDpMYmf используется, ну и самое главное - при выгрузке на кассы, вот это используется - Рег.СводныйОстаток(,,,ТекКл,,,"Сумма"); где "Рег", это регистр "СкидкиКлиентам".
(24) "если он закрывается" В том то и дело, что не закрывается. |
|||
26
MWWRuza
гуру
12.10.20
✎
13:02
|
Тьфу блин, в облако вместо фоток картинку засунул...
|
|||
27
Ёпрст
12.10.20
✎
13:04
|
(25) исправить такой мелкий регистр..еще минута.
Короче, на все..3 минуты |
|||
28
Ёпрст
12.10.20
✎
13:09
|
Если не нужна какая то аналитика в остатках, ее кинуть в реквизит регистра. Можно даже не апдейтить ra потом, а просто поменять мд и словарик, в котором измерения станут реквизитами. Грохнуть rg и пересчитать итоги только по одному этому регистру
|
|||
29
MWWRuza
гуру
12.10.20
✎
13:14
|
(27) Исправить - не проблема. Тем более, с прямыми запросами, благодаря тебе, я более-менее разобрался, по крайней мере, в том объеме, который для этого может понадобится.
Но, дальше то что? Как правильнее переделать учет по нему, что-бы он или закрывался, или все-таки переделать на оборотный? (29) Во!!! Понятно. А если списывать накопленные суммы продаж со скидками, будут раз в год, или вообще не будут... Это ведь все равно приведет к тому, что RG распухнет? Или с одним-двумя измерениями, на таком объеме будет не критично? |
|||
30
Ёпрст
12.10.20
✎
13:16
|
(29) если период хранения месяц, то не критично
|
|||
31
Ёпрст
12.10.20
✎
13:17
|
Да и для 5 дней тоже. Всегда можно замерить
|
|||
32
Ёпрст
12.10.20
✎
13:19
|
Да, в той поделке..непонятно, почему реквищиты шапки и тч меняются не прямым запромом, как и все остальное. Да и есои переписать запросы на соответствие индексам, будет быстрее
|
|||
33
MWWRuza
гуру
12.10.20
✎
13:32
|
(30) Да, месяц.
(32) Я это скопировал из обработки под SQL, как есть, не меняя. В принципе, и так работает мгновенно, куда уже быстрее. Если переделывать, то только ради "тренировки". А как инструмент для исправления косяков клиента, меня более чем устраивает. |
|||
34
Злопчинский
13.10.20
✎
23:39
|
(5) а вы не задумывались что лежит в табличке ИТОГОВ по оборотному регистру?
я вот задавл вопрос. но никто из гуру так и не смог внятно и однозначно ответить. . я вот например тупо считаю что в регистре итогов по оборотному регистру лежит ИТОГ по ОБОРОТАМ за период. соотвнетсвенно если отчет по итогам кратно месяцам - тупо воберет итоги по оборотам из итого. если некратно - доберет движениями (в плюс или минус) от ближайшего итгога... |
|||
35
Mikeware
14.10.20
✎
07:25
|
(34) именно так.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |