Обмен ссылок у баз РИБ оьработкой

1. antipod13 09.12.24 12:46 Сейчас в теме
База РИБ,. Самописная. Обмен данными есть через правила обмена и он сильно не стандартный.. Разбирается пока времени нет.
Задача: Если коротко (в одной подчиненной базе создаются "Реализации" - в корневой на их основе "Поступления"
Сейчас делаю обработку, пока. Через COM соединение. Через веб сервисы дольше писать.
Можно привязаться по кодам, но как показывает практика - не стоит на них пологатся.

В общем вопрос такой. Можно ли получив результат запросы по COM соединению, в котором есть ссылки как то с ними работать в обработке основной базы? Есть ли такая возможность вообще?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 09.12.24 12:55 Сейчас в теме
(1) Можно. В РИБ ссылки совпадают.
3. antipod13 09.12.24 13:14 Сейчас в теме
Ссылки то совпадают, на это и надеюсь.
Но, возвращенные сыылки из Com объекта стандартно не переводятся ни в строку ни в ГУИД, а простая подстановке в запрос новой базы выдает ошибку.
4. nomad_irk 80 09.12.24 14:02 Сейчас в теме
(3) что мешает выводить УИ в строковом виде и по нему проверять ссылку?
11. RustamZz 09.12.24 16:35 Сейчас в теме
(3)
ЗначениеВСтрокуВнутр
5. antipod13 09.12.24 14:04 Сейчас в теме
база работает в режиме 8,2 в пишет что нет такой функции УникальныйИдентификатор в тексте запроса
6. nomad_irk 80 09.12.24 14:05 Сейчас в теме
(5) Придется выполнять получение УИ построчно в результате запроса.
Я не проверял, возможно в колонку ТЗ с типом УникальныйИдентификатор можно загрузить массив строковых значений и преобразование выполнится автоматически.
7. antipod13 09.12.24 14:09 Сейчас в теме
пробовал. писал же выше.
После получения результатов запроса с COM объекта. никак не могу ничего ссылки сделать. пробовал ее в ГУИД преобразовать - Никак, просто ссылко1 вставлять не работает. Даже в XML кинуть попробовал функций. Никак не получается
8. nomad_irk 80 09.12.24 14:12 Сейчас в теме
(7) Это все нужно выполнять в базе, в которой выполняется запрос.
9. antipod13 09.12.24 14:14 Сейчас в теме
Только счас подумал. Для точности понимания
Это не запросы создавать на стороне обработки.
А на стороне обработки дергать функцию? из общего модуля.
10. nomad_irk 80 09.12.24 14:18 Сейчас в теме
(9) Типа того. Можно и в обработке, главное четко понимать, что и на какой стороне нужно выполнить.
12. tusv 212 13.12.24 15:34 Сейчас в теме
У меня так работает
УИД= Новый УникальныйИдентификатор(БазаСу.String(Выборка.ФизическоеЛицо.УникальныйИдентификатор()));
Ссылка = Справочники.ФизическиеЛица.ПолучитьСсылку(УИД);
13. antipod13 15.12.24 21:20 Сейчас в теме
(12) В том то и беда, что "Выборка.ФизическоеЛицо." Пишет что это ком объект и никакие операции с ним у меня не получается.
А это что "БазаСу.String"?
16. tusv 212 16.12.24 12:13 Сейчас в теме
(13) БазаСу это подключенная база по com
String это функция, которая возвращает данные com объекта в данном случает вернет строковой Уникальный идентификатор
19. antipod13 16.12.24 13:40 Сейчас в теме
(16) Ч попробовал, странно получилось.
В первый раз, все почти сработало - написало что нет функции String
При повторном запуске - сразу сбой. У запроса вдруг даже реквизиты на английском стали.
Сбой сразу на - РезультатЗапроса = Запрос.Выполнить();
Говорит "Выполнить" нет
14. antipod13 15.12.24 21:23 Сейчас в теме
В итоге я был вынужден через FTP сделать
Времени не хватило разобраться. Я возвращал массив - он тоже на стороне приема становился ком объектом и с ним ничего не сделать.
15. nomad_irk 80 16.12.24 08:43 Сейчас в теме
(14) нельзя "сложные" типы передавать по COM, т.к. удаленная сторона ничего не знает о них.
Нужно передавать ключевые значения в виде примитивных типов.
17. antipod13 16.12.24 13:04 Сейчас в теме
(15) Текстовый файл к примитивным не относится?
18. nomad_irk 80 16.12.24 13:05 Сейчас в теме
(17) файл как объект - не относится, содержимое файла - относится.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот