Имя: Пароль:
1C
1С v8
Регистрация изменений регистра накоплений
,
0 newbling
 
24.03.16
11:49
Доброго времени суток.
Появилась задача регистрировать изменение остатков, цен и пр. с целью их актуализации на сайте в режиме "практически реального времени". Т.е. каждые 2-4 секунды. Быстродействие критично.

Пока думаю вести упрощённый регистр сведений, в котором будет записан объект и вид изменения. Например, было поступление Номенклатуры1 не важно в каком количестве - пишем в регистр:
Объект - Номенклатура1, Вид изменения - остаток.

Если в течении этих 2-4 секунд опять были какие-то движения по данному объекту с видом остатки, то либо записываем поверх просто, либо проверяем, что уже есть и не пишем - не знаю как быстрее пока.

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

Так вот, попробовал я организовать запись подпиской на событие. ПриЗаписи регистра накоплений товаров на складах. А там всей информации - отбор, в котором регистратор. Да, если происходит проведение регистратора, на 2-й итерации выдаётся табличка движений. Но как быть с распроведением? Выходит, что мне нужно смотреть по типу регистратора, в зависимости от типа брать определённую таблицу, из которой всю номенклатуру писать, а там пускай грузит?

Может есть способ попроще? Можно ли как-нибудь отследить просто строки изменённые в регистре без ковыряния в регистраторе - будь то их добавление или удаление?
1 ObjectRelation Model
 
24.03.16
11:52
учти, что при проведении будут два события ПриЗаписи у регистра:
сначала он очистится, потом запишется
2 newbling
 
24.03.16
11:54
(1) ага, это я понял уже
3 newbling
 
24.03.16
12:00
Конечно, есть ещё вариант при записи регистра остатков сразу же высчитывать конечный остаток и писать уже его вместе со складом, но тогда замедлится работа пользователей, да и нужно будет либо кучу регистров сделать, ведь там не только остатки - и у всего свои специфичные данные нужны на сайте, либо недо-рауз пилить, что вообещ будет ужасно.

Надеюсь, что со всеми запросами и записями, будет укладываться в 2-4 секунды. Если не будет, что ж, пользователи будут страдать чуть больше.
4 Cyberhawk
 
24.03.16
12:03
КАк-то "регистрировать изменение остатков, цен и пр. с целью их актуализации на сайте" не вяжется с "каждые 2-4 секунды"
Ты или расписание выбери, или по событию...
5 newbling
 
24.03.16
12:06
По событию, это мы сами себя за-ddos-им.
6 END
 
24.03.16
12:07
(1) А зачем такая оперативность? Хочется "On line" надо интегрировать саму 1С в сайт.
7 AceVi
 
24.03.16
12:52
(6) Что значит интегрировать?
Использование веб сервисов? налаженный обмен xml-ками.
или поднятие 1С на веб сервере и заходить в 1С через сайт? (5) Слишком мало информации - что за сайт - как сайт и 1С обмениваются данными.
Ну например - 1С готовит файл xml - потом кидает на фтп - сайт потом от туда читает хмл по запросу(когда пользователь сайта нажал кнопку). и вот обновление это xml из 1С точно не будет ддосом считается.
8 Злопчинский
 
24.03.16
13:11
А не проще - с сайта стучаться в 1С и тянуть ТОЛЬКО нужное для "сделки" которая конкретно сейчас?
9 newbling
 
24.03.16
13:26
(7) Используются внешние источники данных
10 aleks_default
 
24.03.16
13:51
У набора записей есть еще событие ПередЗаписью, в котором можно сверять то что было до записи с тем что сейчас записывается и так найти измененные позиции.
11 newbling
 
24.03.16
13:53
(10) А Перед Записью происходит уже после всех проверок в модуле самого регистра?
12 aleks_default
 
24.03.16
14:01
(11)Каких проверок?
13 Serg_1960
 
24.03.16
14:02
Мне только одному кажется что автор уже сам ответил на свой вопрос? :) Как зарегистрировать? Как, как... использовать план обмена, в состав которого включён искомый регистр накопления. Регистрация изменений - бесплатный бонус :))
14 newbling
 
24.03.16
14:04
(13) Да вот тоже думал про план обмена - можно покурить это.
15 Serg_1960
 
24.03.16
14:04
PS: РИБ - регистрация изменений документа и его движений -автономны и независимы друг от друга.
16 aleks_default
 
24.03.16
14:07
А где говорится что регистр включен в состав плана обмена?
17 hhhh
 
24.03.16
14:07
(14) а зачем регистр здесь? Можно перед записью документа зарегистрировать все товары из ТЧ. Старое содержимое ТЧ и новое содержимое ТЧ.
18 Serg_1960
 
24.03.16
14:08
Имхо, обмен через каждые 3-4 секунды - перебор. Достаточно раз в минуту. У юзверей формы в 1С:Предприятие обновляются раз в минуту - и ничего, работают, живы и здоровы.
19 Serg_1960
 
24.03.16
14:09
(17) Ну как бы заголовок темы намекает :)
20 hhhh
 
24.03.16
14:11
(19) можно зарегистрировать товары тч документа и не париться.
21 newbling
 
24.03.16
14:12
Что-то тормозные планы обмена очень. ВыбратьИзменения() супер долго отрабатывает.
22 Aprobator
 
24.03.16
14:14
Озвереть, да и только. Кому это такая потребность только в голову пришла?
23 AceVi
 
24.03.16
16:34
(9) т.е. у тебя 1С напрямую подключена к sql базе сайта. так? ну и в чем проблема? Этот объект метаданных позволяет записывать во внешние источники данных. почему ты про ддос говоришь?
24 newbling
 
28.03.16
09:50
Сейчас сделал запись изменений в регистр подписками на события - отрабатывают живенько, но код специфичный под каждый регистр писать пришлось.
25 newbling
 
28.03.16
09:53
(23) А как с надёжностью и возможно нестабильным интернет соединением? Есть разница?