Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
FoxSla Участник
Вступление в Клуб: 26.01.2017
|
Пт Янв 27, 2017 10:14  Вызов пакетной процедуры в операции |
|
Полезность: Нет оценки
|
Добрый день.
Подскажите, как вызвать процедуру из пакета в операции?
В схеме TEST создан пакет и в нем процедура, например, TEST.TEST1.TST(a,b,c). Права на пакет TEST1 на основную схему даны. |
|
 |
yaffil Профи
Вступление в Клуб: 18.08.2011
|
Пт Янв 27, 2017 10:31   |
|
Полезность: Нет оценки
|
TEST.TEST1.TST(a,b,c)  |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 27, 2017 10:55   |
|
Полезность: Нет оценки
|
-- begin pl/sql
yaffil пишет: | TEST.TEST1.TST(a,b,c)  |
-- end pl/sql
+ на вкладке "Компиляция" включить [v] "Расширенный синтаксис" |
|
 |
Эмиралька Эксперт
Вступление в Клуб: 09.11.2015
|
Пт Янв 27, 2017 11:01   |
|
Полезность: Нет оценки
|
vtar пишет: | -- begin pl/sql
yaffil пишет: | TEST.TEST1.TST(a,b,c)  |
-- end pl/sql
|
begin pl/sql
пы-эль-вкладка совершенно лишняя.
-- end pl/sql
vtar пишет: |
+ на вкладке "Компиляция" включить [v] "Расширенный синтаксис"--
|
А вот это правильный совет! |
|
 |
FoxSla Участник
Вступление в Клуб: 26.01.2017
|
Пт Янв 27, 2017 12:09   |
|
Полезность: Нет оценки
|
на вкладке "Компиляция" включить [v] "Расширенный синтаксис"-- включил.
При компиляции выходит ошибка: PLP-NOT_CLASS_COMPONENT У типа [INTEGR_FORMS] нет реквизита или операции [TEST]
Операция в "Обязательной отчетности" |
|
 |
yaffil Профи
Вступление в Клуб: 18.08.2011
|
Пт Янв 27, 2017 12:13   |
|
Полезность: Нет оценки
|
FoxSla пишет: | на вкладке "Компиляция" включить [v] "Расширенный синтаксис"-- включил.
При компиляции выходит ошибка: PLP-NOT_CLASS_COMPONENT У типа [INTEGR_FORMS] нет реквизита или операции [TEST]
Операция в "Обязательной отчетности" |
Как она у вас в "Обязательной отчетности" если она у вас оракловая судя по первому посту?
Или вам всё таки надо PL+ вызов? Тогда так
::[INTEGR_FORMS].[test1].test(a,b,c) |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 27, 2017 12:44   |
|
Полезность: Нет оценки
|
FoxSla пишет: | на вкладке "Компиляция" включить [v] "Расширенный синтаксис"-- включил.
При компиляции выходит ошибка: PLP-NOT_CLASS_COMPONENT У типа [INTEGR_FORMS] нет реквизита или операции [TEST]
Операция в "Обязательной отчетности" |
-- begin pl/sql
....
-- end pl/sql
заголовок операции в PACKAGE надо объявить procedure/function xxx (zzz) ; , а не только описать в PACKAGE BODY
Последний раз редактировалось: vtar (Пт Янв 27, 2017 12:45), всего редактировалось 1 раз |
|
 |
FoxSla Участник
Вступление в Клуб: 26.01.2017
|
Пт Янв 27, 2017 12:45   |
|
Полезность: Нет оценки
|
Я хочу подключить в "Обязательную отчетность" новую операцию, в которой вызвать оракловую процедуру TEST.TEST1.TST(a,b,c). |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 27, 2017 12:47   |
|
Полезность: Нет оценки
|
FoxSla пишет: | Я хочу подключить в "Обязательную отчетность" новую операцию, в которой вызвать оракловую процедуру |
может, лучше не надо ? |
|
 |
FoxSla Участник
Вступление в Клуб: 26.01.2017
|
Пт Янв 27, 2017 13:03   |
|
Полезность: Нет оценки
|
-- begin pl/sql
....
-- end pl/sql
Предупреждение: PLP-TYPE_WRONG: Выражение "PL/SQL block" не может быть использовано в этом контексте. |
|
 |
yaffil Профи
Вступление в Клуб: 18.08.2011
|
Пт Янв 27, 2017 13:07   |
|
Полезность: 1
|
Я, когда спер пакет у инверсии по падежам прикрутил его так
Глобальные Описание
Код: | -- обертка для ораклового пакета ibs.padegi для использования в операциях PL+
function get_padegi(FIO varchar2(160), padeg varchar2(1) ) return varchar2(160); |
Локальные
Код: | function get_padegi(FIO varchar2(160), padeg varchar2(1) ) return varchar2(160)
is
rezult varchar2(160);
begin
-- begin pl/sql
rezult:=padegi.get_fio_case(FIO,padeg);
-- end pl/sql
return (rezult);
end; |
З.Ы. правдо потом ЦФТ походу спер у меня и внедрил склонение по падежам в дистрибутиве  |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Пт Янв 27, 2017 13:35   |
|
Полезность: 1
|
yaffil пишет: |
З.Ы. правдо потом ЦФТ походу спер у меня и внедрил склонение по падежам в дистрибутиве  |
ЦФТ по определению не может у тебя ничего спереть, так как весь набитый тобой в платформу код pl+ и так является ЕГО собственностью которой ОН милостиво дозволяет пользоваться тебе  |
|
 |
FoxSla Участник
Вступление в Клуб: 26.01.2017
|
Пн Янв 30, 2017 13:20   |
|
Полезность: Нет оценки
|
Спасибо огромное. Заработало! |
|
 |
|