Cambio en el diseño de dl_cambio_plan no me muestra el texto del motivo completo

Hola, estoy realizando unos cambios en el mensaje que devuelven los controles que se realizan antes de cambiar de plan a un alumno, cuando se encuentra en actas de cursados de materias que no estan en el nuevo plan ademas de que muestre la materia le agrego el acta, el año y el periodo lectivo. Al ejecutar el stored lo muestra bien al mensaje pero en el Power Builder tengo problemas porque a pesar de que agrando el campo motivo me muestra cortado el mensaje, que puede estar pasando??? Desde ya muchas gracias. Saludos!

Hola Lorena, como estas?
Cuantos caracteres tiene el texto que ingresaste?? Porque fijate que en la dw el campo Motivo es un char de 91 caracteres.
Avisame,
Gracias.
Saludos.

Hola! si, el mensaje tiene mas caracteres por eso yo queria modificar el diseño para que ese campo tenga mas longitud, de hecho lo modifique y se ve mas extenso pero al momento de ejecutar por Power Builder sale cortado. Seguramente tengo que cambiar alguna otra cosa pero no se cual.

Lorena, te adjunto un pequeño instructivo para que sepas como realizar el cambio, espero que se entienda… Avisame como te fue…
Saludos,
Melisa


dl_cambio_plan.doc (242 KB)

Hola Melisa, muchas gracias. Sabes que eso ya lo habia hecho pero sigue sin funcionar. Quizas tiene que ver con que agrego varias variables al mensaje original que solo tenia una (materia), ahora además tiene Acta de Regularidad, Año y Periodo Lectivo.
Seguiremos investigando…si se te ocurre algo mas te agradezco la ayuda. Saludos!

Dale Lorena… Decime cuantos caracteres queres que salgan??
Saludos
Melisa

Hola

El control lo hace el sp_tiene_ins_actcp que devuelve un varchar(255).
Pero ese sp es llamado desde sp_cambioplan que toma el retorno anterior en un varchar(100)
Y lo devuelve a este último como una excepcion.

Es este el camino que se está siguiendo?

Emilio

Hola Emilio, en el sp_tiene_ins_actcp modifique el mensaje original y quedo asi: RETURN -1, ’ En actas de cursado de materias que no estan en el nuevo plan (‘|| vcmateria ||’ , Acta ’ || vcacta || ’ , Año y Periodo ’ || vcanio || ’ - ’ || vcperiodo|| ’ ). ';

En el sp_cambioplan modifique el retorno para que sea un varchar de 255 pero el mensaje me sigue saliendo cortado, sale asi:

En actas de cursado de materias que no estan en el nuevo plan (0471

¿Que podra ser? Gracias!

no tengo en mente ni forma de probar en este momento si un raise exception te permite un mensaje de mas de 76 caracteres.
la otra es el llamado al procedure mme_muestramensaje.

Te diría que debuguees la ventana de la operacion a ver donde trunca el mensaje o si ya lo trae truncado desde la base de datos.

Emilio

Gracias, la ventana de la operacion es la que trunca el mensaje si yo ejecute el stored me muestra bien el mensaje. Voy a ver si puedo hacer que devuelva el mensaje en dos partes.
Saludos!

La otra puede ser armar un mensaje con una máscara y bajar la cantidad de caracteres que retorna desde el procedure.

Emilio

fijate el procedure adjunto a ver que te devuelve.


raise_exception.sql (196 Bytes)

Emilio, me devuelve 7 secuencias +1 es decir 71 caracteres. No sale la secuencia completa

Hola

ese es el que te trunca el mensaje.
o sea no podes pasar mas de 71 caracteres con ese llamado.

Emilio