Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Cocina Casera > Cocina PowerCOBOL
Cocina PowerCOBOL Rutinas y ejemplos codificados por nuestros foreros.
Noticias y Avisos
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Manejo OCX impresora Fiscal Epson nueva generación fastpho PowerCOBOL (ActiveX, v4 - v11) 82 28 de agosto de 2019 06:46
[Sintaxis] Ordenar CmListView Breew PowerCOBOL (ActiveX, v4 - v11) 5 20 de marzo de 2017 13:24
[Información] Error al pasar un GRID a EXCEL Josber PowerCOBOL y COM/OLE 3 10 de septiembre de 2015 17:04
[Aporte] Exportar CmListview en Excel Rapinto Cocina PowerCOBOL + COM/OLE 0 25 de febrero de 2015 23:31
Respuesta
 
Herramientas

  #21
Antiguo 10 de noviembre de 2019, 08:21
IDENTIFICATION DIVISION
Josber
Super Moderador
ENVIRONMENT DIVISION
Avatar de Josber
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónAlicante
Última Actividad12.12.2019 08:45
PROCEDURE DIVISION
PostsPosts: 469
Ha dicho GraciasEnviado: 191
Ha recibido agradecimientosRecibido: 205
Mejores respuestasSoluiones: 31
Medallas recibidas: 1Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por muchos agradecimientos 
ReputaciónReputación: 19
Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road
Predeterminado

Cita del post de Socavi Ver Mensaje
supongamos que pretendo listar desde la posición 153 a la 350 y he de desplazarme scroll para localizarlo
Perdona, igual es que ando algo "espeso", pero no te he entendido muy bien lo que quieres hacer, lo siento.

Un saludo.-
Josber no ha iniciado sesión   Responder Con Cita
  #22
Antiguo 10 de noviembre de 2019, 11:06
IDENTIFICATION DIVISION
Socavi
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de Socavi
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónEsplugues De Llobregat ( Barcelona )
Edad76 años
Última Actividad24.11.2019 19:12
PROCEDURE DIVISION
PostsPosts: 12
Ha dicho GraciasEnviado: 24
Ha recibido agradecimientosRecibido: 3
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
Socavi is on a distinguished road
Predeterminado

Concretamente se trata de un fichero indexado de los Municipios de España. Si los listo en su totalidad en un ListView, salen sin problema, ahora bien si deseo limitar el listado a una provincia concreta, tambien sale pero en su lugar, es decir si anteriormente hay X provincias que en ése momento no interesa listar, pues en el listado se suceden los espacios en blasnco, hasta llegar a la provincia que se desea.

Espero haberme expresado mejor, gracias por tu atención.
Socavi no ha iniciado sesión   Responder Con Cita
  #23
Antiguo 16 de noviembre de 2019, 18:56
IDENTIFICATION DIVISION
Josber
Super Moderador
ENVIRONMENT DIVISION
Avatar de Josber
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónAlicante
Última Actividad12.12.2019 08:45
PROCEDURE DIVISION
PostsPosts: 469
Ha dicho GraciasEnviado: 191
Ha recibido agradecimientosRecibido: 205
Mejores respuestasSoluiones: 31
Medallas recibidas: 1Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por muchos agradecimientos 
ReputaciónReputación: 19
Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road
Predeterminado

Socavi,

Perdona la tardanza en contestar pero, por desgracia, otros "problemas" me tienen copado todo el tiempo que tengo.

A ver lo primero que entiendo es que te salen más lineas de las que necesitas, y que éstas, se quedan en blanco. ¿Inicializas el control ListView antes de empezar a llenarlo?, (lo que correspondería a la instrucción INITIALIZE en COBOL), por ejemplo:

Código COBOL:
  1. INVOKE View2 "Clear".

Luego parece que si tienes, por ejemplo, 300 líneas en el ListView, quieres "posicionarte" en la 250. Si es así, yo no he conseguido hacerlo, no sé si Kuk o algún otro forero lo ha conseguido, pero yo no desde luego.

Si no es ese tu problema, dínoslo, porfa.

Un saludo.-
Josber no ha iniciado sesión   Responder Con Cita
  #24
Antiguo 16 de noviembre de 2019, 19:06
IDENTIFICATION DIVISION
Socavi
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de Socavi
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónEsplugues De Llobregat ( Barcelona )
Edad76 años
Última Actividad24.11.2019 19:12
PROCEDURE DIVISION
PostsPosts: 12
Ha dicho GraciasEnviado: 24
Ha recibido agradecimientosRecibido: 3
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
Socavi is on a distinguished road
Predeterminado

Buenas tardes Josber, así llamo al listado
Código COBOL:
  1.      move 0 to TOTMUNIPOB TOTMUNISUP
  2.      close munici.
  3.      open input MUNICI.
  4.      INITIALIZE REGMUNI.
  5.      invoke Lista 'Clear'
  6.      move ' ' to finfic move 0 to cuantos
  7.      perform until finfic = 's'
  8.         read MUNICI next record at end move 's' to finfic
  9.            not at end
  10.            INVOKE Lista 'Add' USING 1 1 RETURNING RETORNO
  11.            MOVE 'ListItems'(RETORNO) OF Lista TO LINEA
  12.            IF MUNIPRO = V-COD
  13.               MOVE MUNICOD TO 'Text'(1) OF LINEA
  14.               MOVE MUNICP  TO 'Text'(2) OF LINEA
  15.               move MUNINOM to 'Text'(3) of linea
  16.               move MUNIGEN TO 'Text'(4) of linea
  17.               move MUNIPOB to 'Text'(5) of linea
  18.               move MUNISUP to 'Text'(6) of linea
  19.               perform calcul thru fi-calcul
  20.               move MUNIKM  TO 'Text'(8) of linea
  21.               add 1 to cuantos
  22.             END-IF
  23.         end-read
  24.      end-perform.
  25.  
  26.      close MUNICI.
Como dije anteriormente, el fichero indexado es de casi 10.000 regístros, bien si el que pretendo listar empieza en la linea 300, me deja 300 lineas en blanco, hasta que llega el primero de los que pido y entonces los lísta todos. No sé si queda claro lo que me sucede.

Gracias y perdona "la paliza"
Socavi no ha iniciado sesión   Responder Con Cita
  #25
Antiguo 17 de noviembre de 2019, 11:00
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 12:58
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Cita del post de Josber Ver Mensaje
si tienes, por ejemplo, 300 líneas en el ListView, quieres "posicionarte" en la 250
Código COBOL:
  1.     MOVE 250 TO "SelItemIndex" OF CmListView1      
  2.     INVOKE "SelItem" OF CmListView1 "EnsureVisible"    



NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Josber (18 de noviembre de 2019)
  #26
Antiguo 17 de noviembre de 2019, 17:38
IDENTIFICATION DIVISION
Socavi
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de Socavi
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónEsplugues De Llobregat ( Barcelona )
Edad76 años
Última Actividad24.11.2019 19:12
PROCEDURE DIVISION
PostsPosts: 12
Ha dicho GraciasEnviado: 24
Ha recibido agradecimientosRecibido: 3
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
Socavi is on a distinguished road
Predeterminado

Agradecido Kuk, es una solución, pero esto me obligaria a averiguar el código en el que empieza cada una de las 52 provincias y tambien los respectivos codigos de las últimas de cada provincia, a primera vísta es un poco complicado aunque si no hay otro remedio, pues que le vamos hacer.

Mi ilusión sería la de solicitar el listado por el número de la provincia, por ejemplo 08 Barcelona y que empezara a listar en el primer Municipio de la província 08 y que cuando se superara el 08, pues dejara de listar, pero no hace falta que deje los espacios en blanco correspondientes a las Provincias anteriores, porque en el caso de solicitar los Municipios de la província 50, pues ya te lo puedes imaginar, un desastre.

Muchas gracias por dedicarme vuestra atención.
Socavi no ha iniciado sesión   Responder Con Cita
  #27
Antiguo 17 de noviembre de 2019, 21:52
IDENTIFICATION DIVISION
Kuk
Administrador
ENVIRONMENT DIVISION
Avatar de Kuk
DATA DIVISION
Forero desde (Registrado)enero 2015
España
UbicaciónMadrid
Edad34 años
Última Actividad12.12.2019 12:58
PROCEDURE DIVISION
PostsPosts: 1.428
Ha dicho GraciasEnviado: 319
Ha recibido agradecimientosRecibido: 547
Mejores respuestasSoluiones: 87
ReputaciónReputación: 10
Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road Kuk is on a distinguished road
Predeterminado

Socavi, lo que tienes es un problema de algoritmo. Es decir, haces

Código COBOL:
  1.            INVOKE Lista 'Add' USING 1 1 RETURNING RETORNO
  2.            MOVE 'ListItems'(RETORNO) OF Lista TO LINEA

fuera del IF, así que por cada registro se crea un nuevo ListItem.

Hazlo así:

Código COBOL:
  1.          move 0 to TOTMUNIPOB TOTMUNISUP
  2.          close munici.
  3.          open input MUNICI.
  4.          INITIALIZE REGMUNI.
  5.          invoke Lista 'Clear'
  6.          move ' ' to finfic move 0 to cuantos
  7.          perform until finfic = 's'
  8.             read MUNICI next record at end move 's' to finfic
  9.                not at end
  10.                IF MUNIPRO = V-COD
  11.                   INVOKE Lista 'Add' USING 1 1 RETURNING RETORNO *> modivo
  12.                   MOVE 'ListItems'(RETORNO) OF Lista TO LINEA *> dentro del IF
  13.                   MOVE MUNICOD TO 'Text'(1) OF LINEA
  14.                   MOVE MUNICP  TO 'Text'(2) OF LINEA
  15.                   move MUNINOM to 'Text'(3) of linea
  16.                   move MUNIGEN TO 'Text'(4) of linea
  17.                   move MUNIPOB to 'Text'(5) of linea
  18.                   move MUNISUP to 'Text'(6) of linea
  19.                   perform calcul thru fi-calcul
  20.                   move MUNIKM  TO 'Text'(8) of linea
  21.                   add 1 to cuantos
  22.                 END-IF
  23.             end-read
  24.          end-perform.
  25.      
  26.          close MUNICI.


NORMAS DEL FORO - obligatorias de conocer para TODOS.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale Pinchando en su Nick:

Kuk no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Socavi (18 de noviembre de 2019)
  #28
Antiguo 18 de noviembre de 2019, 09:16
IDENTIFICATION DIVISION
Socavi
Acabo de llegar...
ENVIRONMENT DIVISION
Avatar de Socavi
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónEsplugues De Llobregat ( Barcelona )
Edad76 años
Última Actividad24.11.2019 19:12
PROCEDURE DIVISION
PostsPosts: 12
Ha dicho GraciasEnviado: 24
Ha recibido agradecimientosRecibido: 3
Mejores respuestasSoluiones: 0
ReputaciónReputación: 0
Socavi is on a distinguished road
Predeterminado

Es verdad !!!, perfecto, no lo hubiera vísto, problema resuelto. Muchas gracias Kuk.
Socavi no ha iniciado sesión   Responder Con Cita
Respuesta

Tags
checkbox , grid , gridlines , listview


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

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



La franja horaria es GMT +1. Ahora son las 14:31.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2019, Jelsoft Enterprises Ltd.