|
Обмен по плану обмена без регистрации (без смс и бесплатно) Как? | ☑ | ||
---|---|---|---|---|
0
bolobol
23.11.17
✎
17:55
|
Добрый день!
Подскажите, пожалуйста, такой вопрос: ЗУП 2.5 СОМ соединение с другой базой ЗУП 2.5 обработкой ОбменДаннымиХМЛ. Тянем оттуда документ ПриемНаРаботуВОрганизацию, по правилам, где необходимые к выгрузке документы выбираются запросом, затем от команды: ВыгрузитьПоПравилу(ВыбЗапрос.Ссылка,,,,"ПриемНаРаботуВОрганизацию",,,,,); - ожидается полноценная выгрузка со всеми ссылками, использованными в документах. Однако... При ручном обмене через УниверсальныйОбменДаннымиХМЛ - всё происходит успешно. При автообмене - Сотрудники не создаются, должности создаются, но с пустыми наименованиями. В Сотрудниках и должностях поиск установлен по идентификатору, без продолжения поиска по реквизитам поиска. Из реквизитов поиска: у Сотрудников отмечено только: ЭтоГруппа у должности: Код. Вот поэтому-то - должность и создаётся и Код-таки заполняется, но другие реквизиты пусты, а Сотрудники - вообще не создаются. Это нормальное поведение? Чем-то это объясняется? Как-то пользоваться полноценно обменом возможно? Спасибо! |
|||
1
Ёпрст
23.11.17
✎
17:57
|
нормальное, ошибка в правилах
|
|||
2
bolobol
23.11.17
✎
18:05
|
(1) В плане обмена используются те же правила.
|
|||
3
Ёпрст
23.11.17
✎
18:06
|
(2) там есть различие, например, источник в одном случае - ссылка, в другом случае - объект
|
|||
4
Ёпрст
23.11.17
✎
18:07
|
ну и и ногда, в обработчиках, приходится втыкать проверку на это
Если Источник.ССылка = Источник Тогда |
|||
5
Ёпрст
23.11.17
✎
18:08
|
например, так:
Запрос = Новый Запрос(" |ВЫБРАТЬ | * |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Объект = &Объект"); Если Источник.ССылка = Источник Тогда Запрос.УстановитьПараметр("Объект", Источник); Иначе Запрос.УстановитьПараметр("Объект", Источник.ССылка); КонецЕсли; Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ВыгрузитьПоПравилу(,,Выборка, , "КонтактнаяИнформация"); КонецЦикла; |
|||
6
Ёпрст
23.11.17
✎
18:15
|
+ сама обработка ОбменДаннымиXML, та, что встроенна в конфу, отличается от УниверсальныйОбменДаннымиХМЛ , она например, затирает движения дока и пытается его провести.
Это в ней нужно править. |
|||
7
bolobol
23.11.17
✎
18:22
|
(6) Насчёт "провести" - нас не проведёшь! Ну, т.е. - нет там такого, тупо - перезаписывает документ, и если сам не проведёшь - так и останется со старыми проводками.
Но проблема не в этом, проблема в том, что ссылки, использованные в документе, переносятся с созданием и заполнением только полей поиска, что, кагбэ, намекает, что все поля нужно определять как поля поиска... Вот и думается мне, закрыть эту беду таким образом или дополнительной принудительной упреждающей выгрузкой всех ссылок, что использованы в выгружаемых документах. |
|||
8
bolobol
23.11.17
✎
18:23
|
или ещё как-то, типа: поправить ОбменДаннымиХМЛ в какой-то его части.
|
|||
9
Ёпрст
23.11.17
✎
18:30
|
(7) ты не понял.
Если обмен по правилам через планобмена, то обработка ОбменДаннымиХМЛ удаляет после загрузки все движения документа и дальше идет Провести. Универсальная, переносит документ вместе с движениями как есть. в ОбменДаннымиХМЛ этот момент нужно исправлять. На счет ссылок, что не переносится, нужна конкретика. |
|||
10
bolobol
23.11.17
✎
18:36
|
(9) Позволяет переносить так - да. Но исправлений в данном поведении не требуется, есть РежимЗаписи, который, вроде как, успешно с этим справляется и там и там. Но и такой подход не используем, т.к. пользователю не приходят сообщения о проблемах проведения. Ди не суть, вопрос-то не в этом, а в этом - пока вопросов нет.
|
|||
11
MaxS
23.11.17
✎
18:43
|
УниверсальныйОбменДаннымиХМЛ переносит все связанные ссылки, обмен через планы обмена переносит зарегистрированные объекты. Вроде так. Нужно всё регистрировать к обмену, и переедет.
|
|||
12
ГдеСобака Зарыта
23.11.17
✎
18:44
|
||||
13
bolobol
23.11.17
✎
18:45
|
С установленными галками на все реквизиты - Сотрудник создался, но в документе, в реквизит Работники записалось "<Объект н.н.", т.е. на этапе создания документа - ссылка в базе не существовала. Похоже - да, схема использования данной обработки предусматривает лишь последовательное создание объектов, без каких-то вычислений необходимых зависимостей.
|
|||
14
Ёпрст
23.11.17
✎
19:09
|
(11) неа.
переносит по ссылкам все связанные объекты. У меня план обмена регит только документ. В другую базу летит всё связанное само и справочники и движуха, вообще всё. |
|||
15
Ёпрст
23.11.17
✎
19:11
|
(13) нифига подобного :)
|
|||
16
Cyberhawk
23.11.17
✎
19:12
|
(14) Все это зависит от прикладного кода (кода конфигурации)
|
|||
17
Ёпрст
23.11.17
✎
19:12
|
Посмотри в ПКО. ввозможно у тя там галка стоит - негружать свойства источника по ссылкам
|
|||
18
Ёпрст
23.11.17
✎
19:14
|
(16) я спецом проверял поделку ОбменДаннымиХМЛ из последних конф.
Никаких существенных изменений по сравнению с древним релизом упп. Единственное, (9). |
|||
19
MaxS
23.11.17
✎
19:14
|
(14) Ну это же нетиповое поведение?
Допустим есть 10 документов с 100500 строк номенклатуры. В каждом доументе одна и та же номенклатура. За сеанс передаётся один документ Зачем 10 раз передавать всю номенклатуру? (17) Эта настройка принудительно в типовом коде отключается при обмене через планы обмена. |
|||
20
Ёпрст
23.11.17
✎
19:16
|
(19) за это отвечает галка в свойствах ПКО
|
|||
21
Cyberhawk
23.11.17
✎
19:17
|
(18) Плохо проверял. В типовых обмен через планы обмена не выгружает объекты по ссылкам независимо от галочки, как верно пишет (19)
|
|||
22
Cyberhawk
23.11.17
✎
19:18
|
+(21) Если у тебя это не так - у тебя нетиповое поведение
|
|||
23
bolobol
23.11.17
✎
19:20
|
(19) Прав. Проверил по (12) - точно так, если написать пред выгрузкой, что Ложь (ТолькоПолучитьУзелСсылки = Ложь;) - исправно грузит и последовательность нормальная.
Спасибо!! Однако, не разобрал, где в обработке эта галки в истину становится - везде Ложь в коде... |
|||
24
Ёпрст
23.11.17
✎
19:20
|
(22) у меня типовая обработка ОбменДаннымиXML с последней версии УПП, переделана только в части (9).
выгружает всё по ссылкам при использовании плана обмена. могу выложить. |
|||
25
Ёпрст
23.11.17
✎
19:23
|
(19) и если че, он 10 раз не будет передавать всю номенклатуру, он передаст её 1 раз.
Там по-умолчанию выгруженные объекты запоминаются |
|||
26
Ёпрст
23.11.17
✎
19:24
|
если только спецом галку не воткнуть - не запоминать выгруженные объекты
|
|||
27
Ёпрст
23.11.17
✎
19:26
|
И еще, возможно, у тебя поиск всех объектов идёт по внутреннему идентификатору, и там да , может быть, для оптимизации всегда только ссылка летит.
У меня все объекты ищутся по полям поиска, там нет ссылки вообще. :) |
|||
28
bolobol
23.11.17
✎
19:32
|
О, это тоже пища для изысканий в обработке. Благодарю-благодарю!
|
|||
29
Cyberhawk
23.11.17
✎
20:17
|
(24) А при чем тут переделка обработки в части загрузки, когда речь о выгрузке?
|
|||
30
Cyberhawk
23.11.17
✎
20:23
|
Я к тому, что уверен ли ты, что при выгрузке из базы-источника используется эта твоя обработка, которую ты допиливал в базе-приемнике (для загрузки)?
|
|||
31
Ёпрст
24.11.17
✎
10:28
|
(30) конечно уверен, отладка же есть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |