ipprmt020: aviso de item repetido a prueba de valores nulos (el texto salia en blanco)
Arma el mensaje por partes, omitiendo las vacias, y usa ASCII 10 para los saltos. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -509,8 +509,7 @@ FUNCTION entradas()
|
|||||||
IF descRepetido IS NOT NULL THEN
|
IF descRepetido IS NOT NULL THEN
|
||||||
CALL fgl_winmessage(
|
CALL fgl_winmessage(
|
||||||
"Item repetido",
|
"Item repetido",
|
||||||
"No se puede repetir el item:
|
"No se puede repetir el item:" || ASCII 10 || descRepetido CLIPPED,
|
||||||
" || descRepetido CLIPPED,
|
|
||||||
"stop")
|
"stop")
|
||||||
CONTINUE DIALOG
|
CONTINUE DIALOG
|
||||||
END IF
|
END IF
|
||||||
@@ -795,23 +794,33 @@ END FUNCTION
|
|||||||
# Aviso corto de item repetido (codigo y descripcion recortada).
|
# Aviso corto de item repetido (codigo y descripcion recortada).
|
||||||
FUNCTION avisoRepetido(p)
|
FUNCTION avisoRepetido(p)
|
||||||
DEFINE p INT
|
DEFINE p INT
|
||||||
DEFINE texto, desc STRING
|
DEFINE texto, descr, msj STRING
|
||||||
|
|
||||||
LET desc = arr_iptb58[p].descripcion CLIPPED
|
LET descr = arr_iptb58[p].descripcion CLIPPED
|
||||||
IF desc.getLength() > 35 THEN
|
IF descr IS NULL THEN
|
||||||
LET desc = desc.subString(1, 35)
|
LET descr = ""
|
||||||
END IF
|
END IF
|
||||||
LET texto = arr_iptb58[p].cod_n USING "&&&&", "-",
|
IF descr.getLength() > 35 THEN
|
||||||
arr_iptb58[p].cod_grupo USING "&&&&", "-",
|
LET descr = descr.subString(1, 35)
|
||||||
arr_iptb58[p].cod_tipo USING "&&&&", "-",
|
END IF
|
||||||
arr_iptb58[p].cod_sec USING "&&&&&&"
|
LET texto = ""
|
||||||
CALL fgl_winmessage(
|
IF arr_iptb58[p].cod_n IS NOT NULL THEN
|
||||||
"Item repetido",
|
LET texto = texto || (arr_iptb58[p].cod_n USING "&&&&")
|
||||||
"Este item ya esta en el detalle:
|
END IF
|
||||||
" || texto || "
|
IF arr_iptb58[p].cod_grupo IS NOT NULL THEN
|
||||||
"
|
LET texto = texto || "-" || (arr_iptb58[p].cod_grupo USING "&&&&")
|
||||||
|| desc,
|
END IF
|
||||||
"stop")
|
IF arr_iptb58[p].cod_tipo IS NOT NULL THEN
|
||||||
|
LET texto = texto || "-" || (arr_iptb58[p].cod_tipo USING "&&&&")
|
||||||
|
END IF
|
||||||
|
IF arr_iptb58[p].cod_sec IS NOT NULL THEN
|
||||||
|
LET texto = texto || "-" || (arr_iptb58[p].cod_sec USING "&&&&&&")
|
||||||
|
END IF
|
||||||
|
LET msj = "Este item ya esta en el detalle:" || ASCII 10 || texto
|
||||||
|
IF descr.getLength() > 0 THEN
|
||||||
|
LET msj = msj || ASCII 10 || descr
|
||||||
|
END IF
|
||||||
|
CALL fgl_winmessage("Item repetido", msj, "stop")
|
||||||
END FUNCTION
|
END FUNCTION
|
||||||
|
|
||||||
# Deja la fila p sin item para volver a escribirlo.
|
# Deja la fila p sin item para volver a escribirlo.
|
||||||
|
|||||||
Reference in New Issue
Block a user