Access - Cómo visualizar campos calculados en un Formulario?

 
Vista:
sin imagen de perfil

Cómo visualizar campos calculados en un Formulario?

Publicado por Mario Andrés (22 intervenciones) el 26/11/2021 19:19:27
Hola:

Tengo un formulario que contiene 2 subformularios.

El Formulario Principal contiene datos generales de un cliente y en los 2 subformularios se especifican los productos que desea comprar el Cliente. y en el Pie de cada Subformulario tengo un campo que calcula la sumatoria de los Productos de cada uno de ellos.

En cada subformulario tengo 2 campos que calculan la suma total de los regustros agregados en cada uno de ellos.

En el Primer Subformulario siempre existen registros, por lo que la suma de ellos nunca será igual a cero o nula.

En el segundo Subformulario la captura de registros es opcional, por lo que el campo de sumatoria puede ser igual a cero o ser nulo.

Una vez capturados los conceptos en los 2 subformularios, le asigno el valor de cada sumatoria a otros campos que tengo en el Formulario principal para hacer una sumatoria de conceptos, después calculo el impuesto y, finalmente, calculo el total de la venta.

Cuando las sumatorias de ambos formularios son diferentes de Cero, los campos calculados para obtener el total se despliegan sin problema. El problema aparece cuando en el segundo Subformulario no tengo ningún registro capturado, ya que a partir del campo al que le he asignado el valor de la sumatoria del segundo subformulario, no se depliega nada en los campos de sumatoria de conceptos del formulario principal, no se muestra el Impuesto y no se ve el Total de la Venta.

Podrían ayudarme a resolver esto por favor?
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

Cómo visualizar campos calculados en un Formulario?

Publicado por Anonimo (2574 intervenciones) el 26/11/2021 19:57:24
Un clásico ....

Dos opciones:

La función NZ (el segundo parámetro: un cero que es lo que se espera como alternativa para sumar 'nada')

Si no funciona NZ (no suele funcionar si no hay datos que evaluar, lo habitual en un formulario vacío) se tendrá que utilizar una que soporte esos problemas bien IsError o también -para evaluar un campo en el que se espera un valor numerico- la función IsNumeric.

Esotos últimos se tendrán que utilizar con la función IIF para emular a Nz
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
sin imagen de perfil

Cómo visualizar campos calculados en un Formulario?

Publicado por Mario Andr{es García (22 intervenciones) el 28/11/2021 01:01:10
Gracias por la respuesta, lo voy a probar con If isNumeric

Saludos desde México.
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
sin imagen de perfil

Cómo visualizar campos calculados en un Formulario?

Publicado por Mario Andrés García (22 intervenciones) el 28/11/2021 02:02:40
Gracias nuevamente por la respuesta a mi pregunta. Lo solucioné aplicando Nz de la forma siguiente:

=Nz([FDetalleCotizObraOtros].[Formulario]![SumaSubOtros])+0

Esto lo escribí en el Origen del Control.

Saludos desde la Ciudad de México.
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
sin imagen de perfil

Cómo visualizar campos calculados en un Formulario?

Publicado por Mario Andrés García (22 intervenciones) el 28/11/2021 04:43:35
Tengo otra pregunta:

El despliegue del valor ya aparece en el Formulario, sin embargo, cuando genero el Informe con los mismos campos que los del Formulario, ahora me despliega el el Campo denominado Otros el texto: #¡Tamaño!, a pesar de que también utilicé la misma Función Nz de la forma siguiente: =Nz([InfDetalleCotizObraOtros].[Informe]![SumaSubtotalOtros])+0

Cómo podría corregir esto?

Gracias por su respuesta.
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

Cómo visualizar campos calculados en un Formulario?

Publicado por Anonimo (2574 intervenciones) el 28/11/2021 11:08:19
La metodología que se utiliza en los formularos (datos dinámicos) y en los informes (datos estáticos) es diferente, los informes tiene sus propios métodos para contar, agrupar, filtrar .... si los formularios y los informes fuesen el mismo tipo de objeto seria 'un objeto repetido' algo que no tiene mucha lógica.

Aunque funcione, la aplicación de la función NZ no es correcta:

Oiginal >>>> =Nz([FDetalleCotizObraOtros].[Formulario]![SumaSubOtros])+0

La adecuada >>>> =Nz([FDetalleCotizObraOtros].[Formulario]![SumaSubOtros], 0)

Y si en lugar de sumar o poner un cero quiero un texto como resultado >>>>
=Nz([FDetalleCotizObraOtros].[Formulario]![SumaSubOtros], "no hay datos")

Tengo la impresión que se esta dando un rodeo para llegar al mismo resultado, probablemente sea mas eficaz generar los resultados y cálculos mediante una consulta, consulta que sin variar nada podrá ser utilizada para el formulario y para el informe.
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
sin imagen de perfil

Cómo visualizar campos calculados en un Formulario?

Publicado por Mario Andrés García (22 intervenciones) el 30/11/2021 16:31:42
Gracias a tu respuesta y haciendo pruebas, lo pude resolvar poniendo en el campo de "Otros" la siguiente expresiòn:

=SiInm((EsNum([InfDetalleCotizObraOtros].[Informe]![SumaSuibOtros])),[InfDetalleCotizObraOtros].[Informe]![SumaSuibOtros],0)

Con esto ya se imprime el Informe sin problemas.

Saludos desde México.
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