powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / оракл функция
2 сообщений из 2, страница 1 из 1
оракл функция
    #35142315
ajrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в оракле есть функция:newkart
return number is
idd number;
begin
select max(extract(year from d_reg)) into idd from pg.karta;
if idd = extract(year from sysdate) then
select max(r_n) into idd from pg.karta WHERE extract(year from d_reg)= extract(year from sysdate);
insert into pg.karta(r_n,d_reg) values (idd+1,sysdate);
else insert into pg.karta(r_n,d_reg) values (1,sysdate);
end if;
select ks.currval into idd from dual;
return idd;
end;

как ее в фоксе запустить и получить результат?
пробовал так:
?SQLEXEC(t,'declare k number;begin k:=newkart end;')
?SQLEXEC(t,'declare k number;begin k:=newkart;return k; end;')
?SQLEXEC(t,'var k number;exec :k:=newkart;')
?SQLEXEC(t,'exec :k:=newkart;')
?SQLEXEC(t,'exec @k:=newkart;')
?SQLEXEC(t,'exec ?@k:=newkart;')
?SQLEXEC(t,'exec newkart;')
?SQLEXEC(t,'exec newkart();')

не работает,
в SQL+ работает:

SQL> exec :k:=newkart();

Ïðîöåäóðà PL/SQL óñïåøíî çàâåðøåíà.

SQL> print k

K
----------
2902
работает....
...
Рейтинг: 0 / 0
оракл функция
    #35142568
ajrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо раскопал....
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / оракл функция
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]