Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/12: Рейтинг темы: голосов - 12, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 23.07.2008
Сообщений: 44

Отчёты на ref cursor'ах

08.12.2009, 18:09. Показов 2317. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Столкнулся с такой проблемой (см. ниже), ничего не нашёл по ней, нашёл только вот это описание в другом форуме, оставшееся без ответа. Может быть здесь кто-нибудь подскажет?

'Есть две базы данных ora1 и ora2, абсолютно идентичные.
Есть отчет на ref cursor'e (курсор возвращается хранимой процедурой).
Проблема: Если компилирую отчет (создание .rep), когда соединен с ora1, то отчет работает только с ora1, а при попытке запустить в ora2 выдается ошибка :
'REP-1437: Ошибка выполнения в среде разработки PL/SQL(DE)
PDE-PSD001 Не могу обработать ссылку на <Неизвестная программная единица> при загрузке <Неизвестно><Неизвестно>'
Соответственно и наоборот если компилирую для ora2, то работает только в ora2, а в ora1 выдается ошибка.
В билдере отчет отлично работает и для ora1, и для ora2.
У нас Oracle 8i, Reports 6i (patch 6.0.8)...'

У меня таже самая версия...

Спасибо.

r-ivan
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.12.2009, 18:09
Ответы с готовыми решениями:

Полиморфизм: ошибка преобразование типа из "ref cl_child" в "ref cl_proto" невозможно
Создал класс предок cl_proto, объявил класс потомок cl_child : cl_proto. Написал отдельную функцию с параметром-типом ref cl_proto - на...

Ошибка Cannot convert from 'ref decimal' to 'ref decimal?
Здравствуйте подскажите пожалуйста почему в строке this.allTuriPoCeneTableAdapter.FillBy(this.turfirmaDataSet.AllTuriPoCene, ref Cena); ...

Отчеты, ох эти отчеты
Добрый день пользователи форума, у меня дано задание с БД,с запросами вроде бы все получается, но никак не получается с отчетами, мануалы я...

3
0 / 0 / 2
Регистрация: 08.04.2009
Сообщений: 271
09.12.2009, 17:04
Проверка REF курсора выполняется несмотря на всю
его мобильость на этапе раннего связывания, то есть
при компиляции. Если ли смысл упираться в REF курсоры ?
Если Вы действительно хотите обеспечить мобильность
используйте штатные запросы Reports, в которые
можно с помощью переменных лексической замены
(SELECT ... FROM &P_QUERY) подсунуть хоть в черта в
ступе на этапе выполения, так как запрос стряпается
динамически. И вообще, в связи с тем, что диамический
SQL теперь в 8i и 9i работает весьма недурственно,
REF курсоры не так уж и круто. Нет ?
0
0 / 0 / 0
Регистрация: 23.07.2008
Сообщений: 44
10.12.2009, 13:15  [ТС]
Мы используем ref курсоры не для динамики, а для других целей - прозрачность кода, повторное использование (один курсор может использоваться в нескольких отчётах) и (главное) для анализа зависимостей. У нас периодически изменяется что-нибудь в структуре БД, и найти, где используются изменённые таблички гораздо проще, если обращение к ним будет в хранимом объекте, а не в отчёте.
Это так, к слову...

А по существу, видимо, проблема подпадает под понятие удалённых зависимостей между объектами PL/SQL. Вычитал, что в Oracle есть два способа анализа удалённых зависимотей - по Timestamp (времени последней компиляции) и по сигнатуре (имени процедуры и типам её параметров).
И, похоже, что reporter использует первый метод, т.е. если timestamp хранимого объекта при выполнении отчёта отличается от его же timestamp в момент копиляции отчёта, то и возникает ошибка.

Может можно как-то переключить его на сигнатурный метод?
Установка серверного параметра REMOTE_DEPENDENCIES_MODE = SIGNATURE на reporter похоже не влиеят.
Может у него есть какой-то свой (клиентский) аналогичный параметр?
Где его установливать?
Может, кто-то знает?

Спасибо.

r-ivan
0
0 / 0 / 0
Регистрация: 23.07.2008
Сообщений: 44
15.12.2009, 18:40  [ТС]
Как выяснилось, задача решается просто.
Надо просто Runtime'у подсовывать не rep-файл, а rdf. Он его прекрасно хавает и компилит каждый раз при запуске. так что никаких проблем не возникает. Вот.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.12.2009, 18:40
Помогаю со студенческими работами здесь

Ref в C#
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace...

Ref на Out
Нужно переписать с Ref на Out, понятия не имею как class Program { static Random rnd = new Random(); public static void...

ref
есть на С# такая штука как ref (Reference) (вот статейка http://msdn.microsoft.com/ru-ru/library/14akc2c7.aspx, если кому интерестно). Ее...

$ref
Подскажите пожалуйста как поменять $REF не меняя тип данных?

Модификаторы out и ref
Эта функция : private void correctFMas0(ref List&lt;string&gt; FData, out double TimeADC, out double FreqADC, out int FramesADC, ref...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru