Power Builder - Campos computados nulos

   
Vista:

Campos computados nulos

Publicado por Spass (18 intervenciones) el 21/08/2010 22:39:35
Tengo un campo computado que es una multiplicación de otros campos y que en el caso de que alguno de sus factores sea nulo, el resultado obviamente es nulo.
Pero ahora hice otro que tambien es una multiplicación de otros campos y me pone cero cuando alguno de sus factores es nulo. ¿Porque? Yo quisiera que sean nulos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Campos computados nulos

Publicado por JeinnerH (638 intervenciones) el 24/08/2010 18:58:59
Esto puede pasar porque tienes algún formato establecido para el campo calculado y lo que te muestra es esta, pero debiera ser nulo.

Generalmente es problemático manejar los campos cuando son nulos, yo en lo personal prefiero asegurar que siempre retornen valor 0. Por esto cree la siguiente función:

$PBExportHeader$nvl.srf
global type nvl from function_object
end type

forward prototypes
global function any nvl (any aa_valor, any aa_valor_default)
end prototypes

global function any nvl (any aa_valor, any aa_valor_default);
If IsNull(aa_valor) Then &
RETURN aa_valor_default

RETURN aa_valor
end function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos computados nulos

Publicado por Spass (18 intervenciones) el 24/08/2010 21:52:33
Gracias por contestar y publicar tu función.

En este caso, para mi es problemático que los nulos sean ceros. Frecuentemente tengo que sacar promedios y si hay ceros lo toma como dato y el promedio sale mal. A parte al graficar lineas por ejemplo, si el Value es cero me baja la linea hasta el eje horizontal y algunos casos esto desvirtúa la información.

Por lo demas, creo que el problema es el formato. Si alguno de los campos intervinientes en el calculo tienen formato, pasa lo de los ceros.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos computados nulos

Publicado por eduardo.v (34 intervenciones) el 25/08/2010 00:26:08
es muy extraño lo que pides, generalmente el problema es al reves pero si deseas hacer eso tendrias que usar la funcion IF usando expresiones de dw. Algo asi como:

if(columna_valor=0,columna_nulo,columna_valor)

donde columna_nulo seria un compute o una columna con valor nulo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Campos computados nulos

Publicado por Spass (18 intervenciones) el 25/08/2010 01:51:57
Si ya lo solucione,
justamente, algo asi es lo que hice. Pero no entendía porque a veces el computed me ponia nulos y a veces ceros. Mi conclusion es que tienen que ver el formato de los campos que intervienen en el calculo.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar