|
РИБ ОтправкаНазад | ☑ | ||
---|---|---|---|---|
0
ЛучшийПрограммер1С
14.03.16
✎
10:15
|
Не могу понять в процедуре
ПриПолученииДанныхОтГлавного что значит параметр <ОтправкаНазад> Тип: Булево. При вызове обработчика данный параметр имеет значение Ложь, что означает, что никаких действий предпринято не будет. Если же обработчик присвоит параметру значение Истина, то это означает, что состояние элемента данных в этом узле распределенной информационной базы должно быть передано узлу-отправителю обрабатываемого сообщения. Таким образом, если изменения элемента данных для узла-отправителя уже зарегистрированы, то никаких действий не производится, а если не зарегистрированы, то производится регистрация изменений. Из этого описания СП ну не пойму ... |
|||
1
Cyberhawk
14.03.16
✎
10:16
|
Прилетевший из источника в приемник объект регистрируется в приемнике на узле, с которого отправляются данные в источник...
|
|||
2
Cyberhawk
14.03.16
✎
10:17
|
Обычно так не делают, ибо это вызывает нежелательную волну миграции данных
|
|||
3
Cyberhawk
14.03.16
✎
10:18
|
Но если, например, с объектом в приемнике при записи / проведении происходят изменения, которые нужно обратно передать в источник, то ставь "Истина"
|
|||
4
ЛучшийПрограммер1С
14.03.16
✎
10:19
|
Я вот чего не пойму:
Вот на главном узле делается изменение документа, это изменение передается на подчиненный. Зачем его обратно передавать на главный? |
|||
5
ЛучшийПрограммер1С
14.03.16
✎
10:19
|
Ведь он с главного пришел такой, зачем его такой же снова назад гонять
|
|||
6
ЛучшийПрограммер1С
14.03.16
✎
10:21
|
(3) Если потом изменения произойдут, то это уже будут изменения и они же итак будут передаваться как изменения, зачем эта отправканазад?
|
|||
7
Serg_1960
14.03.16
✎
10:22
|
Имхо, это управление приоритетом изменения данных. Если данные между сеансами обмена изменили в обеих узлах, то остаться должно только одно изменение. Вопрос: какое именно? :)
|
|||
8
ЛучшийПрограммер1С
14.03.16
✎
10:22
|
У нас же есть план обмена в нем есть состав документов
|
|||
9
ЛучшийПрограммер1С
14.03.16
✎
10:23
|
(7) Но я не понимаю смысл этого "ОтправкаНазад"
|
|||
10
ЛучшийПрограммер1С
14.03.16
✎
10:24
|
Не понимаю разницы, что оно дает
|
|||
11
Cyberhawk
14.03.16
✎
10:25
|
Не потом, а сразу - при записи объекта в приемнике (при проведении документа, допустим, у него появляются проводки с какой-нибудь итоговой суммой и тебе сумму эту надо обратно передать). Впоследствии объект может больше никогда и не измениться в приемнике и поэтому не передаться
|
|||
12
Cyberhawk
14.03.16
✎
10:26
|
Либо статус документа в приемнике передать в источник - тоже годный сценарий
|
|||
13
ЛучшийПрограммер1С
14.03.16
✎
10:28
|
(11) что значит сразу - если мы допустим обмениваемся XML-файлом, мы из XML, который сформирован на отправителе берем данные для обновления - куда мы обратно будем отправлять - в XML?
|
|||
14
Serg_1960
14.03.16
✎
10:28
|
При помощи этого обработчика можно изменить обмен так, как вам хочется. Хоть как Бог черепаху.
|
|||
15
ЛучшийПрограммер1С
14.03.16
✎
10:30
|
(11) При получении нового документа у него и все тогда события по записи срабатывают? Тогда отправку назад надо делать и для регистров накопления?
|
|||
16
ЛучшийПрограммер1С
14.03.16
✎
10:31
|
(14) Наверное, но непонятен этот флаг ОтправкаНазад - что он меняет
|
|||
17
Cyberhawk
14.03.16
✎
10:31
|
(13) (15) Я вроде бы все рассказал. Если есть вопросы - задавай с указанием фразы, тебе непонятной
|
|||
18
Serg_1960
14.03.16
✎
10:32
|
(13) Предполагается что обмена данными у вас двунаправленный. При однонаправленом обмене "ОтправкаНазад" не имеет смысла (за отсутствием оного).
|
|||
19
ЛучшийПрограммер1С
14.03.16
✎
10:32
|
(11) Если сумма итоговая поменялась, значит и документ поменялся, а значит он должен быть передан согласно плану обмена или как?
|
|||
20
ЛучшийПрограммер1С
14.03.16
✎
10:34
|
(19) Вне зависимости от этого ОтправкаНазад
|
|||
21
ЛучшийПрограммер1С
14.03.16
✎
10:37
|
(0) Таким образом, если изменения элемента данных для узла-отправителя уже зарегистрированы, то никаких действий не производится, а если не зарегистрированы, то производится регистрация изменений
Эта фраза вообще непонятна |
|||
22
ЛучшийПрограммер1С
14.03.16
✎
10:41
|
(11) Я вот тут не понял, документ назад передается или проводки? Или проводки передадутся как измененные, или их не надо передавать?
|
|||
23
ЛучшийПрограммер1С
14.03.16
✎
10:43
|
(12) Не пойму зачем статус передавать назад, если у нас есть основная база и есть основной статус, заменять его на статус оттуда?
|
|||
24
aleks_default
14.03.16
✎
10:47
|
В режиме ОбменДанными.Загрузка = истина регистрация в таблице изменений вроде бы не делается.
|
|||
25
ЛучшийПрограммер1С
14.03.16
✎
10:50
|
(24) это к чему было сказано?
|
|||
26
aleks_default
14.03.16
✎
10:54
|
К тому что изменения с объектом в приемнике (в процедуре ПередЗаписью, например, или по подписке) происходят в этом режиме и соответственно не регистрируются в таблице изменений для отправки обратно.
|
|||
27
ЛучшийПрограммер1С
14.03.16
✎
10:58
|
(26) Ну уже что-то понятно, но непонятна фраза из СП (21)
|
|||
28
Aceforg
14.03.16
✎
11:01
|
(22) Емнип, проводки никогда отдельно не передаются, только вместе с объектом
|
|||
29
aleks_default
14.03.16
✎
11:03
|
(27) А че непонятного. К моменту загрузки изменений из файла обмена объект в базе приемнике уже может быть изменен пользователем и соответсвенно уже зарегистрирован в таблице изменений и значит его не надо еще раз регистрировать.
|
|||
30
Aceforg
14.03.16
✎
11:05
|
(29) Это уже другая ситуация, коллизия называется
|
|||
31
ЛучшийПрограммер1С
14.03.16
✎
11:05
|
(29) Не пойму там написано про отправитель, Вы пишете про приемник ...
|
|||
32
ЛучшийПрограммер1С
14.03.16
✎
11:07
|
(28) А что здесь под проводками понимается?
|
|||
33
ЛучшийПрограммер1С
14.03.16
✎
11:11
|
(32) Записи в регистрах, они же могут не передаваться XML, а формироваться на приемнике при проведении
|
|||
34
aleks_default
14.03.16
✎
11:12
|
(30)Почему другая? Коллизия не влияет на порядок отрабатываемых процедур регистрации в планах обмена. Обработку коллизий можно тоже сделать как тебе нужно, например не принимать изменения от базы-отправителя если в базе-приемнике объект был изменен.
(29) перечитай вдумчиво еще раз, вроде все понятно написал. |
|||
35
ЛучшийПрограммер1С
14.03.16
✎
11:13
|
(33) Вообще интересно, если и документ и регистр накопления по нему или регистр бухгалтерии в плане обмена, то какие проводки сформируются - из источника или проведение в приемнике?
|
|||
36
ЛучшийПрограммер1С
14.03.16
✎
11:17
|
(29) (34) Да Ваша запись понятна, если флажок поставлен что данные изменились то повторная установка флажка ничего не дает, вопрос не в том, мне непонятна формулировка - последнее предложение в описании параметра в СП (0), особенно "Таким образом" и вообще о чем это последнее предложение?
|
|||
37
Cyberhawk
14.03.16
✎
11:19
|
(36) В последнем предложении описывается происходящий в базе процесс
|
|||
38
ЛучшийПрограммер1С
14.03.16
✎
11:22
|
(37) То есть надо читать так его: "Таким образом в базе происходит процесс типа черный ящик"
|
|||
39
aleks_default
14.03.16
✎
11:22
|
Речь об изменениях, которые до начала обмена сделал с объектом в базе-приемнике ПОЛЬЗОВАТЕЛЬ, а не о прищедших сейчас с обменом.
|
|||
40
ЛучшийПрограммер1С
14.03.16
✎
11:23
|
(39) нет в этом предложении слов о базе-приемнике, там написано про узлел-отправитель
|
|||
41
Aceforg
14.03.16
✎
11:23
|
(32) Ясно же, движения подчиненные регистратору не передаются независимо от регистратора. Если на узле приемнике формируется движения отличные от движений на узле источнике и эти изменения необходимо передать обратно на узел источник, то надо оперировать с этим флагом.
|
|||
42
Cyberhawk
14.03.16
✎
11:25
|
(40) Т.е. тебе не ясно, в какой базе описывается происходящий процесс?
|
|||
43
aleks_default
14.03.16
✎
11:26
|
Т.е. в обоих базах уже есть некий документ РТиУ. В базе отправителе он был кем-то изменен и попал в файл обмена. Я сижу в базе-приемнике и тоже изменил этот же документ(он уже зарегистрирован в таблице изменений плана обмена), и в этот момент в мою бахзу загружается файл обмена из базы отправителя.
|
|||
44
ЛучшийПрограммер1С
14.03.16
✎
11:27
|
(41) (42) Хорошо, в базе-приемнике, просто по обмену от источника. Но тогда непонятно, почему они пишут "Таким образом"
|
|||
45
Cyberhawk
14.03.16
✎
11:28
|
||||
46
ЛучшийПрограммер1С
14.03.16
✎
11:29
|
(43) И как это относится к описываемому параметру "ОтправкаНазад" ?
|
|||
47
Aceforg
14.03.16
✎
11:38
|
(44) Еще раз объясняю.
По умолчанию В РИБ движения документа передаются вместе с регистратором. Объект по умолчанию в узле-приемнике не проводится, все движения получены из XML. Ну нет смысла проводить тысячи документов в узле приемнике. Тебе может понадобиться перепроведение документа в обработчике, соответственно перепроведение может формировать другие движения. По умолчанию измененные движения не зарегистрируются как измененные, если требуется передать измененные обратно, оперируй с этим флагом |
|||
48
ЛучшийПрограммер1С
14.03.16
✎
11:41
|
(46) То есть если мы установили "ОтправкаНазад", то пришедшие данные не будут восприняты в коллизии, а назад отправятся данные из приемника?
|
|||
49
ЛучшийПрограммер1С
14.03.16
✎
11:46
|
(48) То есть ОтправкаНазад меняет поведение по умолчанию и при коллизии делает данные подчиненного документа более приоритетными?
|
|||
50
Aceforg
14.03.16
✎
11:57
|
(48) Коллизия тут совершенно не причем, вообще это параллельная ситуация. Конкретно ничего могу сказать, надо смотреть в зависимости от ситуации.
(49) "То есть ОтправкаНазад меняет поведение по умолчанию и при коллизии делает данные подчиненного документа более приоритетными?" Не путай причину и следствие. Флаг "ОтправкаНазад" в обработчике лишь влияет зарегистрируется ли объект (с новыми проводками или нет - не важно ) как измененный после обработчика. Обычно им не пользуются, используют "ОбменДанными.Загрузка = истина" |
|||
51
ЛучшийПрограммер1С
14.03.16
✎
12:00
|
(50) А по моему Вы путаете с параметром
<ПолучениеЭлемента> Тип: ПолучениеЭлементаДанных. Значение данного параметра может быть переприсвоено в обработчике. Оно определяет, будет ли прочитанный элемент данных записан в базу данных или нет. |
|||
52
Aceforg
14.03.16
✎
13:06
|
(51) "Я тебе про лысого, а ты мне про седого"
|
|||
53
ЛучшийПрограммер1С
14.03.16
✎
13:17
|
(52) Не понял
|
|||
54
ЛучшийПрограммер1С
14.03.16
✎
13:28
|
Кто-нибудь, разъясните, где правда?
|
|||
55
Cyberhawk
14.03.16
✎
13:34
|
Я вроде все ответил уже.
Если остались вопросы по теме - задавай. |
|||
56
ЛучшийПрограммер1С
14.03.16
✎
13:35
|
(48) и (49) верно?
|
|||
57
Cyberhawk
14.03.16
✎
13:39
|
(56) Без понятия - коллизия к теме не относится и лично мне неясно, что под этим подразумевается.
Еще вопросы, относящиеся к теме, есть? |
|||
58
ЛучшийПрограммер1С
14.03.16
✎
13:44
|
(57) коллизия в данном случае (ПриПолученииДанныхОтГлавного) это когда в приемнике (подчиненном) передаваемый элемент уже изменен пользователем приемника
|
|||
59
ЛучшийПрограммер1С
14.03.16
✎
13:54
|
(57) У меня вопрос - при коллизии (58) документ изменится в приемнике при такой передаче или же наоборот передача не состоится, а состоится потом передача назад при обмене?
|
|||
60
Cyberhawk
14.03.16
✎
13:57
|
Недостаточно описания, ибо все это управляется прикладным кодом
|
|||
61
ЛучшийПрограммер1С
14.03.16
✎
14:15
|
(60) Ну я так расшифровал это последнее предложение
|
|||
62
ЛучшийПрограммер1С
14.03.16
✎
14:18
|
ЖКК почитал, там вообще ничего не понял
|
|||
63
ЛучшийПрограммер1С
14.03.16
✎
14:34
|
Там такая штука рассмотрена - что документ может быть удален из одного филиала и помещен в другой филиал. Так вот, в другой филиал он попадает по стандартной схеме ПриОтправкеДанныхПодчиненному по равенству атрибута, а по неравенству отправляется удаление этого документа из старого филиала. Так вот там описан пример использования "ПриПолученииДанныхОтПодчиненного" и при неравенстве артибута (то есть когда в филиале изменили уже атрибут) мы делаем отправку назад с тем, чтобы удалить в старом месте и поставить в новом. Вот, щас написал и понял использование в ЖКК. Теперь надо понять мой случай.
|
|||
64
ЛучшийПрограммер1С
14.03.16
✎
14:37
|
точнее говоря удалить в старом, ведь в новом уже поставлено
|
|||
65
ЛучшийПрограммер1С
14.03.16
✎
14:39
|
то есть мой случай это некое мифическое распространение документа от корней к дереву
|
|||
66
ЛучшийПрограммер1С
14.03.16
✎
14:43
|
В общем ОтправкаНазад это просто установка после принятия изменений признака для отсылки его назад, а то, что написано в СП одному богу известно.
|
|||
67
Serg_1960
14.03.16
✎
23:07
|
(66) Всё правильно написано в СП. Первое предложение говорит о том, что никаких специальных действий при получении данных не будет сделано, кроме стандартных. Второе предложение описывает суть специальных действий вместо стандартных. Третье предложение конкретизирует как именно это будет сделано.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |