[RESUELTO] Especific del formato del rótulo de eje gráficos

Discute el uso de extensiones desarrolladas por terceros dentro de Apache OpenOffice
Responder
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

[RESUELTO] Especific del formato del rótulo de eje gráficos

Mensaje por valenteres »

Buenas tardes:

Trabajando en código con gráficos, podemos especificar el formato del rótulo del eje mediante un código numérico
En https://forum.openoffice.org/es/forum/v ... 140#p51140 vimos que para controlar el formato del rótulo de gráfico, es necesario desactiva la opción LinkNumberFormatToSource.

El código que se detalla a continuación consigue este control:

Código: Seleccionar todo

  axis = chart.getDiagram().getXAxis()

With axis

   .Visible=true

'Escala
   .CrossoverPosition = -3
   .Min = 37074
   .Max = 37075
   .LinkNumberFormatToSource=False
   .NumberFormat = 75

End With
Lo que planteo en este caso es si es posible especificar el formato como strig. Por ejemplo:

En lugar de
.NumberFormat = 75
'Poder expedificarlo como
.???Format = D "de" MMM "de" AAAA
o similar

Muchas gracias y un saludo
Última edición por mauricio el Mié Ene 20, 2016 11:12 pm, editado 3 veces en total.
Razón: Usar icono de RESUELTO
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por mauricio »

Como puedes ver aquí: https://wiki.openoffice.org/wiki/Docume ... er_Formats

el tema de los formato no es un tema menor... cuando tu estableces un formato personalizado, AOO/LibO le asigna un código numérico, que es el que se tiene que establecer en la propiedad NumerFormat.

Hago unas pruebas y les cuento.

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por valenteres »

Muchas gracias.
Espero noticias
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por mauricio »

He agregado en la rama develop, soporte para esto, en vez de agregar una nueva propiedad, se usa la misma...

Código: Seleccionar todo

.NumberFormat = "D \d\e MMM \d\e AAAA"
Nota la forma de escapar los caracteres para que los tome tal cual, por supuesto se pueden seguir usando valores enteros si se conoce el valor del formato...

Favor de validar... y... esto no estuvo tan evidente, se te están acumulando las comidas...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por valenteres »

¿Debo actualizar antes de la validación?
Si es así ¿Como?

Un saludo
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por mauricio »

Mi amigo, a estas alturas esa pregunta ya no deberías de hacerla...

Si, debes de actualizar, pero cuidado, es la versión de desarrollo, por lo que te recomiendo probar en otro equipo... debes de aprender a distinguir las diferentes ramas de desarrollo en Github: https://github.com/UniversoLibreMexicoA ... ee/develop

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por valenteres »

Buenas noches:

Creo que he hecho las cosas correctamente.
El resultado: Bien con algunas incidencias que comento.

Respecto a la versión, he entrado en la dirección que me indicabas. He llegado hasta https://github.com/UniversoLibreMexicoA ... elop/files y he bajado el archivo EasyDev_v2.5.0.oxt. He desinstalado la versión anterior y he instalado esta.

He probado dos formatos para las fechas, tanto su forma numérica como String.
Los códigos utilizados son:

Código: Seleccionar todo

	axis = chart.getDiagram().getXAxis()

With axis

'...

'	.LinkNumberFormatToSource=False
'	.NumberFormat = 33
'	.NumberFormat = "DD/MMM"
'	.NumberFormat = 75
'	.NumberFormat = "D \d\e MMM \d\e AAAA"
End With

'	properties = Array(   _
'		Array("LinkNumberFormatToSource", False), _
'		Array("NumberFormat", 33), _
'		)
'	properties = Array(   _
'		Array("LinkNumberFormatToSource", False), _
'		Array("NumberFormat", "DD/MMM"), _
'		)
'	properties = Array(   _
'		Array("LinkNumberFormatToSource", False), _
'		Array("NumberFormat", 75), _
'		)
	properties = Array(   _
		Array("LinkNumberFormatToSource", False), _
		Array("NumberFormat", "D \d\e MMM \d\e AAAA"), _
		)
	util.imageFormat(axis, properties)     
Todas las líneas están comentadas, excepto la opción testada en este caso. Evidentemente en cada caso se ha activado una sola opción

Los resultados obtenidos han sido los siguientes:
REsultados de pruebas de entrada de formatos de fechas para eje de gráfico
REsultados de pruebas de entrada de formatos de fechas para eje de gráfico
ResultadoFormatos.png (4.16 KiB) Visto 8307 veces
Con objeto de ver que pasaba, he activado puntos de interrupción justo antes de la instrucción de formato.
Cuando el formato se indicaba por su código numérico, el valor asignado a .NumberFormat es el que se ha indicado
Cuando el formato se indica por la String, ocurre lo siguiente:
- En la opción .NumberFormat, el valor de .NumberFormat toma el valor 0 y no funciona. Tampoco da error
- En la opción Properties el programa para y da el siguiente mensaje de error:
Mensaje de error
Mensaje de error
En el caso de que el punto de interrupción se coloque después de la instrucción de formato, el comportamiento es el indicado en la tabla de más arriba.

Adjunto el archivo con el código completo. Corresponde a la rutina Matriz01
PruebaGraficosEasyDev15.ods
Pruebas EasyDev 2.5.0
(66.09 KiB) Descargado 327 veces
Espero haber proporcionado suficiente información

Un saludo
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por mauricio »

Hola...

El error que obtienes al depurar, es que el documento no tiene la propiedad NumerFormats, esto es normal por que el IDE no lo tiene, dado que se requiere acceder al documento actual para obtener esta propiedad, se hace de forma interna, pero desde Python el IDE puede ser muy bien el documento actual, por eso, para este caso, no funciona la depuración...

Como puedes ver en las imágenes que anexo, en mi configuración funciona correctamente.
foro1.png
Otra.
foro2.png
Intenta usar los formato en ingles, y si no, en el idioma predeterminado de tu interfaz...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por valenteres »

Entiendo entonces que el resultado de la tabla detallada anteriormente es definitivo. Es decir, utilizando la opción Properties (IDE Python) el formato del eje se puede especificar el formato por su código o como string indistintamente.
Por la vía de .NumberFormat el formato del eje se puede especificar por su código pero no como strign.

¿Es correcta esta conclusión?

En caso afirmativo, podemos dar la validación por buena.

Muchas gracias y un saludo
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por mauricio »

Con las prisas no vi claramente tu cuadro... el cual es correcto... y lógico...

Si usas .NumberFormat estas usando directamente las propiedades del objeto, algo que solo se puede modificar en el código fuente del programa, al cual recordemos tenemos acceso, pero, al menos para mi, queda fuera de mis conocimientos y de mi interes, por ahora..

Si usas EasyDev, podemos hacer que haga lo que queramos.

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
valenteres
Mensajes: 81
Registrado: Mié Jun 17, 2015 6:04 pm

Re: Especificación del formato del rótulo de eje en gráficos

Mensaje por valenteres »

Entonces damos por valida la modificación.

Muchas gracias
-------------------------------------------------------------
"Como no sabían que era imposible, lo hicieron"

Open Office 4.1.1
Libre Office 5.0
Windows 10
-------------------------------------------------------------
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: [Resuelto] Especific del formato del rótulo de eje gráfi

Mensaje por mauricio »

Lo agrego a producción este viernes...

Saludos

P.D. Toma nota de la forma correcta de marcar como [RESUELTO] un tema, con todo he icono verde, gracias...
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder