[RESUELTO]valor de campo de tabla a variable

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
fedevi
Mensajes: 33
Registrado: Lun Oct 26, 2015 9:01 pm

[RESUELTO]valor de campo de tabla a variable

Mensaje por fedevi »

Hola comunidad, quiero realizar la copia del valor de un campo de un registro de una tabla a una variable de una macro pero no puedo lograrlo, me sale el siguiente error
Type: com.sun.star.container.NoSuchElementException
el codigo es el siguiente

Código: Seleccionar todo

	
	sBaseDatos = "carteles"
    oDBC = createUnoService("com.sun.star.sdb.DatabaseContext")
      
      
    If oDBC.hasByName( sBaseDatos ) Then
			oBD = oDBC.getByName( sBaseDatos )
			oConexion = oBD.getConnection("","")
			oDeclaracion = oConexion.createStatement()
			sSQL = "DELETE FROM AUX_DOSCOLUMNAS"
			oDeclaracion.executeUpdate( sSQL)	
	End If	
	
	
	oFormulario = Evento.Source.Model.Parent
	oFormulario.first()
	sEANIzq = oFormulario.GetByName("EAN")
encontré varios ejemplos en el foro pero ninguno funcionó, siempre me sale este error en la linea

Código: Seleccionar todo

sEANIzq = oFormulario.GetByName("EAN")
mi intención aqui es asignar el valor del campo EAN de la tabla a la variabl esEANIzq, por lo que creo que hay algo que ignoro y me sería muy grato poder avanzar.
La base se compone de dos tablas una con datos y la otra que utilizo de auxiliar para generar un informe para imprimir segun elija el usuario el tipo de informe desde un formulario al cual le asigné la tabla de datos, por lo que tomo el dato de la tabla y lo quiero asignar a una variable para trabajarlo y luego asignar esa variable a un campo de la tabla auxiliar para generar el informe, espero haber sido claro con mis intenciones, muchas gracias

Federico
Última edición por fedevi el Jue Ene 21, 2016 10:31 pm, editado 1 vez en total.
OpenOffice 4.1.2 - Windows 7
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: valor de campo de tabla a variable

Mensaje por mauricio »

El mensaje de error es claro, no tiene un elemento que se llame EAN, esto quiere decir que realmente NO estas en el formulario, por lo que la linea

Código: Seleccionar todo

   oFormulario = Evento.Source.Model.Parent
debe estar mal, asegurate de obtener realmente el formulario, MRI debe ser tu amigo para siempre: http://aoo-extensions.sourceforge.net/e ... ction-tool

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
fedevi
Mensajes: 33
Registrado: Lun Oct 26, 2015 9:01 pm

Re: valor de campo de tabla a variable

Mensaje por fedevi »

waauuu!!! Impresionante la información que te tira MRI, realmente fabuloso, muchisimas gracias por el dato. Bueno ahora tengo mas solidez para realizar la consulta.
Resulta que efectivamente no existe el elemento "EAN" en el formulario, en realidad "EAN" es el nombre de uno de los campos de la tabla que muestro mediante un control de tablas que pertenece al formulario, este control tiene una columna llamada "CEAN" que muestra los valores del campo "EAN" de la tabla, pero mi intencion es leer el valor del campo EAN de la tabla, registro por registro, y copiarlo a una variable, y hasta aqui llegué; no logro "ver" o "encontrar", ahora con MRI, dicho valor, ya que realmente me apabulló tanta info que me tiró MRI y nuevamente estoy empantanado, necesitaría una ayuda o empujoncito para poder seguir. Espero haber sido claro, saludos a todos.
OpenOffice 4.1.2 - Windows 7
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: valor de campo de tabla a variable

Mensaje por mauricio »

Obtendrás mejores respuestas, si agregas un archivo de ejemplo donde se vea claramente lo que quieres obtener...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
fedevi
Mensajes: 33
Registrado: Lun Oct 26, 2015 9:01 pm

Re: valor de campo de tabla a variable

Mensaje por fedevi »

ok, ahi subo la base y explico un poco la idea. En la tabla llamada carteles estan los datos a imprimir, y los botones indican como se van a imprimir estos datos; para imprimir en el formato un cuarto es un cuarto de la hoja A4, entonces quiero copiar los registros de la tabla carteles a la tabla aux_doscolumnas con la macro informe_uncuarto, y hasta ahi llegué, saludos
Adjuntos
carteles.rar
(20.59 KiB) Descargado 187 veces
OpenOffice 4.1.2 - Windows 7
RMG
Mensajes: 3879
Registrado: Mar Nov 17, 2009 6:59 am
Ubicación: Valencia - España

Re: valor de campo de tabla a variable

Mensaje por RMG »

Hola,

Mira el ejemplo si te sirve. Acostúmbrate a ir paso a paso, primero que todo la básico que funcione bien, después lo difícil.

Las tablas no permitían agregar registros, no tenían campo clave, el formulario no se podía cerrar, las columnas para obtener los valores, deben tener el mismo nombre que el campo, faltaban campos en el formulario, y alguna cosa más que no me acuerdo.

Saludos
Adjuntos
carteles1.rar
(79.16 KiB) Descargado 273 veces
OpenOffice 4.1.15 y LibreOffice 6.2.4.2 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
fedevi
Mensajes: 33
Registrado: Lun Oct 26, 2015 9:01 pm

Re: valor de campo de tabla a variable

Mensaje por fedevi »

Muchisimas gracias!!!! realmente esta ayuda es inmensa, estoy muy entusiasmado de poder seguir, funcionó a la perfección lo que estaba buscando, esta fue la solución
, las columnas para obtener los valores, deben tener el mismo nombre que el campo,
con respecto todo las otras torpezas son producto de la frustración de probar, probar y probar mil veces y no dar con la tecla, igualmente es una crítica constructiva para tener en cuenta de aquí en mas, bueno doy por solucionado el tema, saludos a todos

Federico
OpenOffice 4.1.2 - Windows 7
Responder