Заменить представление во всем коде БД на представление из другой БД

  • Автор темы azzzza
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

azzzza

Гость
#1
В базе было представление v_names. Во всех элементах базы в коде использовалось это название. Но теперь данные нужно брать из такого же представления, но другой базы. Можно ли как-нибуть авторизовать этот процес, чтобы открывать каждый элемент, вводить в поиск "v_names" и исправлять? Может можно какой-то утилитой вывести места, где встречается обращение к даному представлению?
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
#2
Можно ли как-нибуть авторизовать этот процес
Авторизовать? Поосторожнее в терминологии :)

Можно в другой БД в представлении добавить еще алиас, тогда в коде не придется ничего менять.
Если представление имеет имя и алиас (View1Name|View1Alias1), то новый алиас следует добавить между ними (View1Name|View1Alias2|View1Alias1).
Если было только имя, то просто добавляем алиас.
 

Omh

Well-Known Member
Lotus team
04.07.2007
2 210
1
#3
azzzza
1. Можно "авторизировать" с помощью Teamstudio Configurator - это платно.
2. Можно вывести синопсис и поисследовать - это бесплатно.
3. Ещё можно выкинуть весь дизайн в DXL и поисследовать там - это надо немного покодить и бесплатно

Чуз йо дестини :)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
#4
Что касается поиска мест, то можно использовать database synopsis (это встроенный инструмент, см справку дизайнера). Или коммерческие, например, Teamstudio Configurator
 

TIA

:-)
Lotus team
15.05.2009
790
2
#6
>Но теперь данные нужно брать из такого же представления, но другой базы.
При чём тут исправление имени представления? Надо менять способ получения БД.
 
A

azzzza

Гость
#9
Omh, Akupaka
За подсказку в сторону database synopsis спасибо, упрастит задачу по нахождению v_names в коде.
kizarek, Zeka
Попробую поставить утилиты и попробовать.
При чём тут исправление имени представления? Надо менять способ получения БД.
Если Вы про название темы, то да, смысл был передан не правильно. :) Отредактировал тему.
Нужно поменять код примерно с такого:
Код:
Set db = session.CurrentDatabase	
Set view = db.GetView( "v_names")
На что-то такое:
Код:
Set db = session.CurrentDatabase	
Set db2 = ...
Set view = db2.GetView( "v_new_names")
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
#10
неужели самый простой вариант (алиас виду дать) не подходит?
 

Omh

Well-Known Member
Lotus team
04.07.2007
2 210
1
#11
Akupaka
Ну так надо же вызов из другой базы сделать.
Тут алиасом делу не поможешь :unsure:
 
Статус
Закрыто для дальнейших ответов.