Generar código mediante una función

Hola,
me gustaría que me ayudaras a autogenerar un código en este caso mi tabla se llama estudiante y el campo a generar se llama código.,.,
lo que deseo hacer es mediante funciones pasando como parámetro el nombre de la tabla y el campo y que la función me retorne el máximo y para asignarlo a una variable.,, yo si pude generarlo mediante sentencias sql en la misma ventana pero mediante función también pero sin pasar lo parámetros osea sin nombre de la tabla, ni del campo, solo en la misma función pongo los nombre de la tabla(estudiante) y el campo (código),.,.. Y cuando lo hice pasando el parámetro no me sale error pero el código máximo que me arroja es cero y si tengo registros en mi tabla.,.,
Espero me puedas ayudar te quedaría muy agradecido.

1 respuesta

Respuesta
1
f_retorna_codigo(string campo1,string tabla) returns int
ls_cadena = "select max("+campo1+") from "+tabla
declare cur_select DYNAMIC CURSOR FOR SQLSA ;
prepare SQLSA from :ls_cadena USING atr_transacc ;
open dynamic cur_select;
fetch cur_select INTO :li_valor ;
close cur_select;
li_valor += 1
return li_valor
y para llamar a la funcion:
Long ll_codigo
ll_codigo = f_retorna_codigo("codigo","estudiante")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas