Hola, quisiera poner un mensaje que se visualizara una vez se acciona un botón ( todo ello para advertir de una serie de pautas que hay que seguir) y que al darle a aceptar al mensaje del aviso se ejecutara la macro de ese botón para generar el informe definitivamente. Estoy pensando en un botón que ejecuta un informe como este código
Sub ImprimirInforme( Evento )
Dim oReporte As Object
Dim oConsulta As Object
Dim oCampoID As Object
Dim oForm As Object
'El formulario activo
oForm = Evento.Source.Model.Parent
'El campo con el Id
oCampoID = oForm.GetByName("Campoformateado")
'Debe ser mayor a cero
If oCampoID.BoundField.Int > 0 Then
'La consulta en la que se basa el reporte
oConsulta = ThisDatabaseDocument.DataSource.QueryDefinitions.getByName ("ConsultaSelectiva")
'Modificamos la consulta de modo que tome le registro actual
oConsulta.Command = "SELECT ""ID"",""NOMBRE"",""DOMICILIO"",""FECHA"",""TELEFONO"" FROM ""BASEDEDATOS"" WHERE ""ID"" = " & oCampoID.BoundField.Int
'El informe a mostrar
oReporte = ThisDatabaseDocument.ReportDocuments.getByName ("INFORME")
'Mostramos el reporte
oReporte.Open
End If
End Sub
Gracias por vuestra ayuda.
Un saludo.
[RESUELTO] AVISO ASOCIADO A UN BOTÓN
[RESUELTO] AVISO ASOCIADO A UN BOTÓN
Última edición por James07 el Vie Dic 31, 2021 9:31 pm, editado 2 veces en total.
Libre Office 6.4 en Windows 10
Re: AVISO ASOCIADO A UN BOTÓN
Eso no es nada difícil, te recomiendo revisar el libro de Mauricio, en el capítulo "4.2 Instrucciones y funciones en OOo Basic" Mauricio explica las diferentes opciones del comando MsgBox.
https://forum.openoffice.org/es/forum/v ... =50&t=1545
Si el comando MsgBox no es lo que estás buscando, sé más específico sobre lo que quieres que haga el mensaje y cómo debería verse.
https://forum.openoffice.org/es/forum/v ... =50&t=1545
Si el comando MsgBox no es lo que estás buscando, sé más específico sobre lo que quieres que haga el mensaje y cómo debería verse.
LibreOffice 7.2.6.2 | Windows 7 Ultimate
Re: AVISO ASOCIADO A UN BOTÓN
Sí no tienes el libro o el link no sirve (que la verdad no sé), vale la pena recordad que SLV-es volcó el libro de Maurico en la Wiki en español en 2013, aquí está el link para el articulo que habla justo de eso.
https://wiki.openoffice.org/wiki/ES/Man ... sFunciones
https://wiki.openoffice.org/wiki/ES/Man ... sFunciones
LibreOffice 7.2.6.2 | Windows 7 Ultimate
Re: AVISO ASOCIADO A UN BOTÓN
Gracias Neftali R por tu respuesta. Efectivamente, he revisado algo del tema MsgBox y comprendo la mecánica pero no logro hacer que avise por un lado (msgBox) y que una vez dado al botón de aceptar ejecute la macro que dejé anotada arriba. En otras palabras, la macro que puse "ImprimirInforme" debería ejecutarse cuando se diera a aceptar del Msgbox.
Espero haberlo explicado suficientemente.
Un saludo
Espero haberlo explicado suficientemente.
Un saludo
Libre Office 6.4 en Windows 10
Re: AVISO ASOCIADO A UN BOTÓN
Código: Seleccionar todo
Sub ImprimirInforme( Evento )
Dim oReporte As Object
Dim oConsulta As Object
Dim oCampoID As Object
Dim oForm As Object
Dim continuar As Integer
continuar = MsgBox ("texto", 64+1,"título de aviso")
If continuar = 1 Then
'El formulario activo
oForm = Evento.Source.Model.Parent
'El campo con el Id
oCampoID = oForm.GetByName("Campoformateado")
'Debe ser mayor a cero
If oCampoID.BoundField.Int > 0 Then
'La consulta en la que se basa el reporte
oConsulta = ThisDatabaseDocument.DataSource.QueryDefinitions.getByName ("ConsultaSelectiva")
'Modificamos la consulta de modo que tome le registro actual
oConsulta.Command = "SELECT ""ID"",""NOMBRE"",""DOMICILIO"",""FECHA"",""TELEFONO"" FROM ""BASEDEDATOS"" WHERE ""ID"" = " & oCampoID.BoundField.Int
'El informe a mostrar
oReporte = ThisDatabaseDocument.ReportDocuments.getByName ("INFORME")
'Mostramos el reporte
oReporte.Open
End If
End If
End Sub
LibreOffice 7.2.6.2 | Windows 7 Ultimate
Re: AVISO ASOCIADO A UN BOTÓN
Gracias Neftali R. Impecable código. Funciona correctamente y has añadido un IF que me faltaba y por eso me daba error en las pruebas que yo hacía con mi código.
Gracias nuevamente!. Un saludo.
Gracias nuevamente!. Un saludo.
Libre Office 6.4 en Windows 10