Hi,
I made a procedure that builds up a dynamic select.
The procedure works fine with 7.5.xx, but produces an error on version
7.6.00.32.
CREATE DBPROC PROC_STAT_ABGL (IN NUTZERID INT, IN SANR INT, IN SA_KF
CHAR(2),
IN TAG DATE, IN SCHULEN VARCHAR(1000))AS
VAR
SCHUL_SEL1 VARCHAR(1200); SEL_STM VARCHAR(5000);
....
/* Here I set values depending on parameter SCHULEN.
SCHULEN can be a list of numbers (as string) that are keys in table
T_SCHULE or can be an empty string if all keys from T_SCHULE for a
specific SCHULAMT_NR are wished */
IF LENGTH(SCHULEN) > 1 THEN
/* case 1*/
SET SCHUL_SEL1 = SCHULEN
ELSE
/* case 2 */
SET SCHUL_SEL1 = 'SELECT S.SCHUL_ID FROM DBA.T_SCHULE S WHERE
S.SCHULAMT_NR=' || SANR;
/* now the statement is build */
SET SEL_STM =
'INSERT INTO DBA.T_STAT_ABG' ||
'(NUTZER_ID, AB, PERS_NR, NNAME, VORNAME, AU_STD, URL_STD,
EINS_STD,' ||
'ABW_GRUND_SL, ABW_GRUND, SCHUL_ID, SCHUL_NR, SCHULNAME, ORT)
'||
'SELECT ' || CHR(NUTZERID) || ' AS NUTZER_ID,' ||
'''A'' AS AB,' ||
'P.PERS_NR +(10+' || CHR(SANR) || ')*1000000 AS PERS_NR,' ||
'P.NNAME, P.VORNAME, ' ||
'VALUE(A.STUNDEN,0) AS AU_STD,' ||
'VALUE(B.STUNDEN,0) AS URL_STD,' ||
'VALUE(E.STUNDEN,0) AS EINS_STD,' ||
'VALUE(ABWES.ABW_GRUND_SL,-1) AS ABW_GRUND_SL, ABWES.ABW_GRUND,
' ||
'P.SCHUL_ID, P.SCHUL_NR, P.SCHULNAME, P.ORT ' ||
'FROM DBA.VT_PERS_AND_DBV_' || SA_KF || ' P ' ||
*.
'WHERE P.BEGINN <= ' || STICHTAG || ' AND ' || STICHTAG || ' <= P.ENDE
' ||
'AND P.SCHUL_ID IN (' || SCHUL_SEL1 || ')';
TRY
EXECUTE SEL_STM;
CATCH
STOP ($RC, 'SEL1 ' & $ERRMSG );
In case 1 everything works perfect, case 2 produces only on version
7.6.00.32
The error
General error;-9206 POS(1) SEL1 System error: AK Duplicate catalog
information:FF000010021200200
Any help ?
Elke
--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]