|   |   | 
| 
 | РИБ ОтправкаНазад | ☑ | ||
|---|---|---|---|---|
| 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) Всё правильно написано в СП. Первое предложение говорит о том, что никаких специальных действий при получении данных не будет сделано, кроме стандартных. Второе предложение описывает суть специальных  действий вместо стандартных. Третье предложение конкретизирует как именно это будет сделано.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |