Calculo en formulario

Discute sobre el procesador de textos

Calculo en formulario

Notapor manolochantada » Lun Sep 19, 2016 7:21 am

Saludos al grupo.
En un formulario tengo tres campos numéricos:
Cantidad
Precio
Total
Y deseo al introducir la cantidad y el precio, me aparezca rellenado de forma automática el campo Total.
No se si se pueden hacer campos calculados en Writer, ya que es la primera vez que intento hacer un formulario.

Un saludo y si me podéis echar una mano pues muy agradecida: Eva Rosa
Versi??n libreoffice 4.4.2
Windows 7
manolochantada
 
Mensajes: 6
Registrado: Mié May 27, 2015 9:53 am

Re: Calculo en formulario

Notapor PepeOooSevilla » Lun Sep 19, 2016 8:55 am

Hola.
Por favor, sube un archivo de ejemplo que tenga un formulario exactamente igual al que tienes en tu documento (sin datos personales).
Saludos cordiales.
LibreOffice 6.2.7 (64 bits, Still, Empresarial o Estable) en Windows 10. Java 9.0.4 (64 bits)
Por favor, utiliza el Foro para tus consultas, no los mensajes privados
Avatar de Usuario
PepeOooSevilla
 
Mensajes: 1099
Registrado: Sab Abr 04, 2009 6:10 pm
Ubicación: Sevilla (España)

Re: Calculo en formulario

Notapor manolochantada » Lun Sep 19, 2016 1:21 pm

Gracias por responder.
Adjunto archivo.

Saludos: Eva Rosa
Adjuntos
Ejemploformulario.odt
(13.47 KiB) 99 veces
Versi??n libreoffice 4.4.2
Windows 7
manolochantada
 
Mensajes: 6
Registrado: Mié May 27, 2015 9:53 am

Re: Calculo en formulario

Notapor PepeOooSevilla » Lun Sep 19, 2016 4:02 pm

Hola.

Observa las propiedades de los controles, así como, los sucesos asociados a los controles "cantidad" y "precio". Al suceso "Texto modificado" se le asigna la macro "CalcularPrecioTotal". Al control "total" se le modifica la propiedad "Solo lectura" a "Sí" para que no se pueda alterar el resultado de "cantidad * precio", que previamente ha calculado la macro.

Código: Seleccionar todo   Expandir vistaContraer vista
' Macro "CalcularPrecioTotal"
' OOoBasic
Option Explicit

Sub CalcularPrecioTotal
   Dim frmFormulario As Object
   Dim cmpCantidad As Object
   Dim cmpPrecio As Object
   Dim cmpTotal As Object
   
   On Error Goto TRATAERROR
   frmFormulario = Thiscomponent.DrawPage.Forms.getByName("Formulario")
   cmpCantidad = frmFormulario.getByName("cantidad")
   cmpPrecio = frmFormulario.getByName("precio")
   cmpTotal = frmFormulario.getByName("total")
   cmpTotal.Value = cmpCantidad.Value * cmpPrecio.Value
   Exit Sub
TRATAERROR:
   Msgbox "ERROR"
End Sub

Si quieres saber más, lee el capítulo 7 del libro Aprendiendo OOo Basic de nuestro compañero mauricio que trata el tema de los formularios (válido para Writer).

Saludos cordiales.
Adjuntos
Ejemploformulario v2.odt
LibreOffice Writer 5.2.1
(12.88 KiB) 111 veces
LibreOffice 6.2.7 (64 bits, Still, Empresarial o Estable) en Windows 10. Java 9.0.4 (64 bits)
Por favor, utiliza el Foro para tus consultas, no los mensajes privados
Avatar de Usuario
PepeOooSevilla
 
Mensajes: 1099
Registrado: Sab Abr 04, 2009 6:10 pm
Ubicación: Sevilla (España)

Re: Calculo en formulario

Notapor manolochantada » Lun Sep 19, 2016 4:53 pm

Gracias por tu respuesta PepeOooSevilla. Pero, no existe la posibilidad de campo calculado en Writer donde especificarle directamente la operación a un campo de cálculo sin necesidad de hacerlo a través de Macros?.

De todas, de nuevo muchas gracias: Eva Rosa
Versi??n libreoffice 4.4.2
Windows 7
manolochantada
 
Mensajes: 6
Registrado: Mié May 27, 2015 9:53 am

Re: Calculo en formulario

Notapor mauricio » Lun Sep 19, 2016 7:39 pm

Con controles no... no se para que usas esto, pero Writer no es la herramienta para hacer calculos, si aun deseas hacerlo, usa una tabla, donde si te permite introducir formulas...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5878
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX

Re: Calculo en formulario

Notapor manolochantada » Mar Sep 20, 2016 7:09 am

Gracias a todos por vuestra colaboración e información.
La verdad es que a nivel práctico no suelo usar demasiado los formularios. Hice la pregunta porque trataba de hacer la comparativa con Word, donde si se puede crear campos calculados dentro de un formulario.
De todas formas, aclarado y agradecida: Eva Rosa
Versi??n libreoffice 4.4.2
Windows 7
manolochantada
 
Mensajes: 6
Registrado: Mié May 27, 2015 9:53 am


Volver a Writer

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 14 invitados