Важно! | Если вы пользуетесь СУБД PostgreSQL, то необходимо зарегистрировать функции-описатели в метаданных конвертера PPC. Для этого необходимо выполнить например, такой блок: 01do$$
02declare
03 nfunction numeric;
04begin
05
06select coalesce(max(idx), -1) + 1 into nfunction from ppc$cnv$functions;
07
08insert into ppc$cnv$functions(
09 idx,ppc$name,ppc$packagename,ppc$typename,ppc$functionindex,ppc$triggerindex,
10 ppc$signatureindex,ppc$resultdatatype,ppc$over100parameters,
11 ppc$autonomous,ppc$stable,ppc$dynamic,ppc$standard,ppc$public,ppc$frompackagebody,
12 ppc$current_user,ppc$lostbody,ppc$member,ppc$definition)
13values(nfunction, 'F_ATTR_DESCRIPTOR','','',-1,-1,0,'varchar2',0,0,1,0,0,0,0,0,0,0,'f_attr_descriptor(numeric)');
14-- имя функции тип результата описатель функции postgres
15
16
17--для первого параметра
18insert into ppc$cnv$parameters(idx,ppc$functionidx,ppc$cursoridx,ppc$name,ppc$datatype,
19ppc$inout,ppc$localcontext,ppc$hasdefault,ppc$defaultnode)
20values(0,nfunction,-1,'nCOMPANY ', 'number',0,0,0,'');
21--- имя параметра тип параметра
22
23/*если параметров два, то необходим оператор insert для второго параметра: */
24insert into ppc$cnv$parameters(idx,ppc$functionidx,ppc$cursoridx,ppc$name,ppc$datatype,
25ppc$inout,ppc$localcontext,ppc$hasdefault,ppc$defaultnode)
26values(1,nfunction,-1,'nRN', 'number',0,0,0,'');
27--- номер имя параметра тип параметра
28
29end;$$ После регистрации всех функций-описателей необходимо выполнить команду командной строки ppcrebuild Пользователь/пароль@[Хост[:Порт]/]БазаДанных или, если у вас установлено соответствующее расширение, вызвать функцию SQL: select ppc$cnv$rebuild() |