|
сброс регистрации изменений для узла обмена | ☑ | ||
---|---|---|---|---|
0
AlexToo
30.07.14
✎
14:01
|
Привет, подскажите пожалуйста в РИБ в одном из узлов, смотрю какие были зарегистрированы изменения, в справочнике номенклатуры зарегистрировано свыше 50000 изменений, если я сброшу регистрацию и зарегистрирую по одному, никаких потерь в регистрации не будет?
|
|||
1
Fragster
гуру
30.07.14
✎
14:03
|
чо?
|
|||
2
bodri
30.07.14
✎
14:04
|
(0) Зачем? По одному элементу? Или имеете ввиду несколько изменений для одного элемента справочника?
|
|||
3
Один С
30.07.14
✎
14:05
|
кто здесь
|
|||
4
AlexToo
30.07.14
✎
14:10
|
(2) дело в том что при таком количестве изменений, при выгрузке данных 1С зависает и вылетает, вот я и хочу попробовать сбросить регистрацию изменений и заново перерегистрировать
|
|||
5
Галахад
гуру
30.07.14
✎
14:13
|
(0) А есть другие варианты?
|
|||
6
Fish
30.07.14
✎
14:14
|
(4) А как ты собираешься определять, какие именно элементы справочника регистрировать?
|
|||
7
YFedor
30.07.14
✎
14:14
|
(4) Если я правильно помню, регистрируется только сам факт изменения элемента и он будет выгружен целиком.
Раз 50 000 измененй, значи 50 000 элементов. И будешь ты их по одиночке выгружать или скопом нет никакой разницы |
|||
8
AlexToo
30.07.14
✎
14:19
|
(6) в мониторе обмена "Зарегистрировать изменения по одному"
|
|||
9
Галахад
гуру
30.07.14
✎
14:19
|
(6) Результат запроса выгрузить в массив и в строкувнутр.
(7) Есть. |
|||
10
anatoly
30.07.14
✎
14:20
|
(7) разница будет. очевидно, получается слишком большой ХМЛ-файл сообщения обмена, и тупо не хватает памяти. сталкивался с таким. можно попробовать порциями по 5-10 тыс выгружать.
|
|||
11
Холодильник
30.07.14
✎
14:20
|
ну.. регистрируй 50 000 изменений по одному, ок.
|
|||
12
AlexToo
30.07.14
✎
14:20
|
я к тому, что если сброшу регистрацию, а потом перерегистрирую, то изменений по какому-либо объекту потерять не должен?
|
|||
13
Холодильник
30.07.14
✎
14:20
|
+ вроде бы в типовой настройке обмена есть ограничение на количество выгружаемых объектов, попробуй в эту сторону покопать
|
|||
14
AlexToo
30.07.14
✎
14:21
|
(10) а можно подробнее объяснить, как по отдельности выгружать?
|
|||
15
Fragster
гуру
30.07.14
✎
14:22
|
(12) а нафига???
|
|||
16
Fish
30.07.14
✎
14:22
|
(8) Я не про то. У тебя сейчас зарегистрированы изменения 50000 объектов. Если справочник содержит больше элементов, как ты определишь, какие надо регистрировать по новой, а какие нет?
|
|||
17
YFedor
30.07.14
✎
14:22
|
(9) В чем разница, кроме (10)?
|
|||
18
Fragster
гуру
30.07.14
✎
14:23
|
(10) файл обмена читается последовательно, используемая память практически не зависит от размера файла. ну, конечно не надо его весь в одной транзакции загружать, да.
|
|||
19
hhhh
30.07.14
✎
14:24
|
(12) еще раз: выгружаются не изменения в объекте, а весь объект целиком.
|
|||
20
AlexToo
30.07.14
✎
14:28
|
(13) (10) попробую, спасибо
|
|||
21
anatoly
30.07.14
✎
14:30
|
(18) см. (4) вылетает при выгрузке. в этом случае файл сначала формируется в памяти потом целиком сохраняется.
|
|||
22
Fragster
гуру
30.07.14
✎
14:31
|
(21) нет. автор как-то не так выгружает. у меня всё работает и на 1 и на 50килообъектов без роста памяти на выгрузку. опять же, если не выгружать все в одной транзакции.
|
|||
23
bodri
30.07.14
✎
14:44
|
можно попробовать с количеством элементов в транзакции, памяти должно хватить (тем более при обмене не хватает оперативки, поэтому размер XML пофигу)
|
|||
24
Галахад
гуру
30.07.14
✎
14:50
|
(22) Гм. А в РИБ-е разве есть возможность выгружать не в одной транзакции?
|
|||
25
Fragster
гуру
30.07.14
✎
14:50
|
(24) ога
|
|||
26
Fragster
гуру
30.07.14
✎
14:52
|
ПланыОбменаМенеджер.ЗаписатьИзменения (ExchangePlansManager.WriteChanges)
ПланыОбменаМенеджер (ExchangePlansManager) ЗаписатьИзменения (WriteChanges) Синтаксис: ЗаписатьИзменения(<ЗаписьСообщенияОбмена>, <ЭлементовВТранзакции>) Параметры: <ЗаписьСообщенияОбмена> (обязательный) Тип: ЗаписьСообщенияОбмена. Объект, через который осуществляется запись сообщения обмена данными. У этого объекта должен быть выполнен метод НачатьЗапись, но еще не выполнен метод ЗакончитьЗапись. <ЭлементовВТранзакции> (необязательный) Тип: Число. Определяет максимальное число элементов данных, которые помещаются в сообщение в рамках одной транзакции базы данных. Если значение параметра равно 0 (значение по умолчанию), то все данные помещаются в рамках одной транзакции. Такой режим является рекомендуемым, так как гарантирует согласованность данных, помещаемых в сообщение. Но при создании сообщения в многопользовательском режиме могут быть конфликты блокировок между транзакцией, в которой данные помещаются в сообщение, и транзакциями, выполняемыми другими пользователями. Для снижения вероятности возникновения таких конфликтов можно задать значение этого параметра, отличное от значения по умолчанию. Чем меньше значение параметра, тем меньше вероятность конфликта блокировок, но выше вероятность помещения в сообщение несогласованных данных. Значение по умолчанию: 0 Описание: Предназначен для помещения в сообщение обмена данными всех изменений данных и конфигурации для отправки в другой узел распределенной информационной базы. Доступность: Сервер, толстый клиент, внешнее соединение. |
|||
27
Галахад
гуру
30.07.14
✎
15:00
|
(26) Спасибо.
|
|||
28
anatoly
30.07.14
✎
15:30
|
(26) это есть и в настройках обмена - и для интерактивного и для автоматического.
а вот в стандартной ВыгрузкеЗагрузкеХМЛ похоже нет - я именно при ее использовании сталкивался с забитием памяти... |
|||
29
Fragster
гуру
30.07.14
✎
15:33
|
(28) "стандартная выгрузка загрузка XML" никакого отношения к планам обмена не имеет. также "вылетать по памяти" она может только при выгрузке связанных объектов, когда оно всю базу по ссылкам вытягивает. а собственно с самим XML она работает также последовательно, без размещения всего файла в памяти.
|
|||
30
anatoly
30.07.14
✎
15:35
|
(29) понятно что не имеет, но сам механизм чтения-записи ХМЛ то одинаковый.
|
|||
31
AlexToo
30.07.14
✎
15:39
|
(22) как не так выгружаю? нажал на кнопку "выполнить обмен" вот и выгружается. Всем спасибо проблема решилась снятием регистрации и повторным регистрированием.
|
|||
32
Fragster
гуру
30.07.14
✎
15:41
|
(31) ну хз, видимо в одной транзакции. в типовых это значение вынесено в настройки обмена, автор же нам ничего про свою конфигурацию не рассказал.
|
|||
33
AlexToo
30.07.14
✎
17:22
|
(32) БигСофт управление ювелирной торговлей
|
|||
34
Fragster
гуру
30.07.14
✎
17:25
|
(33) ну я хз, поищи там в настройках обмена "Элементов в транзакции" или чего-нибудь подобное. там надо 1 поставить.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |