![]() |
![]() |
![]() |
|
Нужны идеи по интерактивному отбору в базе OLE | ☑ | ||
---|---|---|---|---|
0
Alex-VVO
13.12.12
✎
09:52
|
Есть обработка для загрузки документов из базы, подлюченной по OLE (COM), в локальную базу. Есть несколько типов объектов в удалённой базе (склады, контрагенты, организации, подразделения, номенклатура и т.п.), которые хотелось бы использовать для отбора документов для загрузки. Но нет идей, как организовать интерактивный выбор пользователем этих самых объектов для задания условий отбора документов для загрузки. Хочется обойтись только одной обработкой, а не двумя (выгрузка+загрузка данных).
Думали сделать в удалённой базе какую-нибудь процедуру, которая при задании определённых параметров (тип метаданных, список возвращаемых полей и т.п.) возвращала бы некое дерево значений, которое мы могли бы использовать для формирования формы выбора, и вызывать её удалённо, ну или как-то так. Но что-то всё равно нормально не получается этот механизм реализовать. Может, есть какие-нибудь наработки-мысли по этому поводу? |
|||
1
MaxS
13.12.12
✎
09:56
|
Если справочникив обоих базах идентичны, то можно сделать выбор параметра в текущей базе и поиск такого же там.
|
|||
2
Галахад
гуру
13.12.12
✎
10:02
|
(0) А в чем проблема? Кроме кода и наименования хотят видеть, что-то еще?
|
|||
3
Alex-VVO
13.12.12
✎
10:17
|
Нет, базы совершенно разные, например УПП-БП. Типы данных, используемые в отборах, могут быть тоже совершенно разными (и перечисления, и иерархические справочники, и справочники без иерархии, и регистры сведений). Попытка сделать универсальный механизм крутится, но реализация пробуксовывает.
|
|||
4
DrShad
13.12.12
✎
10:28
|
(3) КД Вам в помощь
|
|||
5
MaxS
13.12.12
✎
11:25
|
Не знаю можно ли так. Нажимаем кнопку отбор, открывается модальная форма OLE базы. Результат отбора запоминается где-нибудь.
|
|||
6
ProxyInspector
13.12.12
✎
11:44
|
Возможны разные варианты.
Самый простой - считываешь по ОЛЕ в текущую базу, строишь дерево (таблицу значений) один из реквизитов Тип=строка Значение=ЗначениеВСтроку. В текущей базе выбираешь, что надо и импортируешь. Если имеешь возможность изменять конфигурацию в базе ОЛЕ, тогда можно и развернтуться. Известная проблема с 8-кой - передача параметров запросов по ОЛЕ и запросы в базе ОЛЕ. |
|||
7
Alex-VVO
14.12.12
✎
02:35
|
(4) Текущие обработки этот механизм и используют. Хочется избавиться от двух обработок в двух базах, работать только в одной базе.
(6) Достаточно проблематично считать по OLE весь справочник номенклатуры, например. Небыстрое это дело. Поэтому были мысли как раз делать это через вызов процедуры в удалённой базе, которая бы выполняла локальную выборку данных и возвращала результат в базу, в которой выполняется обработка. А на месте уже построить форму выбора элементов. (5) Насколько я знаю, 1С так не умеет. |
|||
8
Aleksey
14.12.12
✎
03:00
|
(7) Хранаить в РС локальную копию с ссылками (гуид). Обновлять вручную по кнопке на обработке
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |