Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Cocina Casera Cocina PowerCOBOL
Cocina PowerCOBOL Rutinas y ejemplos codificados por nuestros foreros.
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Uso del ADO y JOIN en Power Cobol hbetancur PowerCOBOL (ActiveX, v4 - v11) 0 24 de mayo de 2023 00:16
[Componente] Graficos con Codejock y PW9 hbetancur PowerCOBOL (ActiveX, v4 - v11) 1 13 de julio de 2018 12:17
[Sintaxis] Uso del raton para ampliar un registro de CmList Breew PowerCOBOL (ActiveX, v4 - v11) 10 3 de junio de 2018 14:09
[Problema con el Foro] Uso del Foro... jasb Funcionamiento del Foro 13 7 de diciembre de 2017 10:15
[Sintaxis] Uso del control CmProgress Breew PowerCOBOL (ActiveX, v4 - v11) 17 25 de abril de 2016 07:55

Respuesta
 
Herramientas

  #1
Antiguo 28 de mayo de 2015, 20:47
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207
Idea Uso del ChartControl de Codejock
4 Inactivo Inactivo

El chart de Codejock es algo que me ha encantado. Para poder usarlo, lo principal es crear uno de los estilos visuales dinamicamente via COM, si no lo hacemos, no se visualiza nada. Para ello, tenemos que hacer:

En REPOSITORY:

Código COBOL:
  1.      CLASS COM AS "*COM"

Luego en donde sea necesario, por ejemplo en "Opened" del Form que va a mostrar el Chart.
Para crear un estilo (por ejemplo el ChartAreaSeriesStyle) del Chart via COM, hacemos lo siguiente (todos los estilos posibles los podeis ver en el ejemplo que se instala para VB) :

Código COBOL:
  1.  ENVIRONMENT     DIVISION.
  2.  DATA            DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01  TXT              PIC X(50).
  5.  01  CHART-STYLE     OBJECT REFERENCE COM.
  6.  01  COB-CAPA        OBJECT REFERENCE POW-COBJECT.
  7.  01  OBJ-CAPA        OBJECT REFERENCE COM.
  8.  PROCEDURE       DIVISION.
  9.    
  10.      *> CREAMOS ESTILO EN DINAMICO
  11.      MOVE "Codejock.ChartAreaSeriesStyle.15.0.1" TO TXT    
  12.      INVOKE COM "CREATE-OBJECT" USING TXT RETURNING CHART-STYLE
  13.  
  14.      *> AÑADIMOS PRIMERA CAPA DE CHART
  15.      INVOKE "Series" OF "Content" OF ChartControl1 "Add"
  16.       USING "CAPA1" RETURNING COB-CAPA
  17.  
  18.      *> CONVERTIMOS LA CAPA CREADA EN COM
  19.      CALL "POWERCONVTOCOM" USING COB-CAPA RETURNING OBJ-CAPA
  20.  
  21.      *> APLICAMOS ESTILO
  22.      INVOKE OBJ-CAPA "SET-STYLE" USING CHART-STYLE
  23.  
  24.      *> AÑADIMOS TEXTO DE ENCABEZADO DEL CHART
  25.      INVOKE "Titles" OF "Content" OF ChartControl1 "Add" USING "Datos del año"  
  26.  
  27.      *> SI QUEREMOS USAMOS PIEL OSCURA DEL ESTILO
  28.      INVOKE "Appearance" OF "Content" OF ChartControl1 "SetAppearance" USING "BLACK"
  29.  
  30.      *> AÑADIMOS DATOS EN LA CAPA (0 = CAPA1, SI AÑADIMOS OTRA SERIA "Item"(1) ETC)
  31.      INVOKE "Points" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1 "Add" USING "Dato Nº1" 1000
  32.      INVOKE "Points" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1 "Add" USING "Dato Nº2" 589
  33.      INVOKE "Points" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1 "Add" USING "Dato Nº3" 1544
  34.      INVOKE "Points" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1 "Add" USING "Dato Nº4" 879

Resultado aqui en la imagen 1. El resto son ejemplos de apariencias.

Los 6 y 7 son 3D, movibles en ejecucion por raton.

Miniatura de Adjuntos
Pulsar la imagen para la versión amplia
Nombre:  Chart.jpg
Vistas: 272
Tamaño:  49,5 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo1.jpg
Vistas: 277
Tamaño:  37,8 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo2.jpg
Vistas: 288
Tamaño:  68,4 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo3.jpg
Vistas: 255
Tamaño:  57,1 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo4.jpg
Vistas: 257
Tamaño:  59,5 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo5.jpg
Vistas: 242
Tamaño:  35,1 KB   Pulsar la imagen para la versión amplia
Nombre:  Ejemplo6.jpg
Vistas: 262
Tamaño:  47,2 KB  




NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #2
Antiguo 6 de julio de 2021, 18:03
Fito
Guardián del Foro
Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros Guardián del Foro: Guardián del espíritu y clima del Foro - Issue reason: Por el Avatar Activista del Foro: Activista del Foro - Issue reason: Por aportar ideas 
Última Actividad 19.09.2026 13:19
Posts Posts: 458
Likes enviados Enviados: 267
Likes recibidos Recibidos: 243

Holaaaa:

Estoy usando este chart para hacer unas estadísticas, y no logro poner las etiquetas del eje X en ángulo.

Alguien lo ha probado?

Saludos

Fito....
Fito is offline   Responder Con Cita
  #3
Antiguo 27 de diciembre de 2021, 15:05
Paulo
Forero Senior
Última Actividad 17.09.2026 16:22
Posts Posts: 101
Likes enviados Enviados: 25
Likes recibidos Recibidos: 33

Hola.

Estou a tentar alterar o tamanho da fonte do titulo ("Title"), mas não estou a conseguir.
Alguém sabe como o fazer?
Estou a usar a versão 18.6.0 do codejock.
Gracias
Paulo is offline   Responder Con Cita
  #4
Antiguo 27 de diciembre de 2023, 15:31
Paulo
Forero Senior
Última Actividad 17.09.2026 16:22
Posts Posts: 101
Likes enviados Enviados: 25
Likes recibidos Recibidos: 33

Hola a todos
Alguem sabe o codigo para não mostrar as labels ?
Gracias

[ATTACH=CONFIG]951[/ATTACH]

Miniatura de Adjuntos
Pulsar la imagen para la versión amplia
Nombre:  Untitled-1.jpg
Vistas: 72
Tamaño:  61,5 KB  
Paulo is offline   Responder Con Cita
  #5
Antiguo 28 de diciembre de 2023, 11:44
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@Paulo, se hace así:

Código COBOL:
  1.      move pow-false to "Visible" OF "Label" OF "Style" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #6
Antiguo 1 de enero de 2024, 01:56
Paulo
Forero Senior
Última Actividad 17.09.2026 16:22
Posts Posts: 101
Likes enviados Enviados: 25
Likes recibidos Recibidos: 33

Gracias Kuk
Paulo is offline   Responder Con Cita
  #7
Antiguo 11 de marzo de 2024, 13:45
Fito
Guardián del Foro
Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros Guardián del Foro: Guardián del espíritu y clima del Foro - Issue reason: Por el Avatar Activista del Foro: Activista del Foro - Issue reason: Por aportar ideas 
Última Actividad 19.09.2026 13:19
Posts Posts: 458
Likes enviados Enviados: 267
Likes recibidos Recibidos: 243

Hola Amigos:

Se puede hacer una gráfica más extensa que el tamaño de la ventana? que se pueda hacer scroll?

Saludos

Fito...
Fito is offline   Responder Con Cita
  #8
Antiguo 11 de marzo de 2024, 18:03
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@Fito, creo que lo hace automáticamente cuando ve que los datos ya no caben, pero no lo hacen todas las vistas sino solo en las del tipo Bar: https://forum.codejock.com/chartcont...opic17500.html

Código VB:
  1. Dim Diagram As ChartDiagram2D
  2. Set Diagram = ChartControl.Content.Series(0).Diagram
  3. Diagram.AllowScroll = True
  4. 'Diagram.AllowZoom = True 'Optional
  5. Diagram.AxisX.Range.ViewAutoRange = False
  6. Diagram.AxisX.Range.ViewMaxValue = 5 (number of bars visible in view)

En Cobol es así:

Código COBOL:
  1.  01  COB-DIAG        OBJECT REFERENCE POW-COBJECT.
  2.  01  OBJ-DIAG        OBJECT REFERENCE COM.
  3.  01  OBJ-AXIS        OBJECT REFERENCE COM.
  4.  01  OBJ-RANG        OBJECT REFERENCE COM.
  5.  
  6.  01  VERDAD          PIC X VALUE "1".
  7.  01  FALSO           PIC X VALUE "0".
  8.  01  numBars         PIC 9 value 3.
  9. ...
  10.  
  11.      *> Scrollable
  12.      move "Diagram" OF "Item"(0) OF "Series" OF "Content" OF chartcontrol1 to COB-DIAG
  13.      CALL "POWERCONVTOCOM" USING COB-DIAG RETURNING OBJ-DIAG
  14.      invoke OBJ-DIAG "get-AxisX" returning OBJ-AXIS
  15.      invoke OBJ-AXIS "get-Range" returning OBJ-RANG
  16.          
  17.      invoke OBJ-DIAG "set-AllowScroll" using VERDAD
  18.      invoke OBJ-RANG "set-ViewAutoRange" using FALSO
  19.      invoke OBJ-RANG "set-ViewMaxValue" using numBars
  20.      

En numBars hay que poner cuántas barras quieres que se vean, a partir de ahí habrá que usar el scroll.

Lo he probado y funciona.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #9
Antiguo 12 de marzo de 2024, 15:06
Fito
Guardián del Foro
Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros Guardián del Foro: Guardián del espíritu y clima del Foro - Issue reason: Por el Avatar Activista del Foro: Activista del Foro - Issue reason: Por aportar ideas 
Última Actividad 19.09.2026 13:19
Posts Posts: 458
Likes enviados Enviados: 267
Likes recibidos Recibidos: 243

Hola Carlos:

Lo voy a probar. Para zafar lo hice manualmente, metí el control adentro de un Frame y dos barras de scroll afuera, entonces mediante un cálculo agrando el control y después con las barras resto o sumo a las propiedades Top y Left. Bien casero

Otra cosa. No me puse a investigar, pero los valores sobre las barras, cuando son grandes los pone en notación científica, Me gustaría que salieran tal cual son. Ahora en la Argentina los importes son muy grandes debido a la inflación.

Muchas gracias

Saludos

Fito...
Fito is offline   Responder Con Cita
  #10
Antiguo 12 de marzo de 2024, 22:05
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@Fito, lo único que he encontrado es esto pero no hay respuestas: https://forum.codejock.com/display-b...opic24074.html

También he trasteado el Chart Builder que se instala con los OCX para ver las propiedades y no encuentro ninguna que hable de ello...

Se me ocurre que para el gráfico no necesitas demasiada precisión, así que puedes truncar/acortar las últimas 2 o 3 cifras y poner una "K" de kilo (miles), en plan en vez de 15.000.000 poner 15.000K o algo así.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
Respuesta



Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 12:10.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.