PDA

Ver la Versión Completa : [Duda] Traspaso de Excel a ListView


Socavi
2 de abril de 2020, 11:40
No consigo encontrar más información, que la descrita en el ejemplo de "Excel Connection Control" y aquí en el Foro, no he sabido encontrar una solución a mi problema que es el siguiente:
Al intentar transferir datos de Excel a mi programa pocas veces me ha traspasado los datos de la hoja excel completamente, son más las veces que se para en cada traspaso, es decir que los pasa de uno en uno mediante hacer 'click' con el mouse, en la ventana que me 'dice' The property array index is invalid, seguida de otra que 'dice' Error ocurred: The object is not set or an invalid object pointer is set.
Aunque pueda parecer una tontería, para mi es un problemon, que ni hablo inglés, aunque utilizando el traductor Google, la verdad es que tampoco me soluciona nada, y que por más pruebas que hago no consigo solucionarlo.
Agradezco de antemano cualquier sugerencia que se me haga al respecto, para conseguir mi objetivo.
Con gracias anticipadas. Un saludo.:hi:


01 SET-DATA PIC X(35).
01 PEP PIC 999.
PROCEDURE DIVISION.
PERFORM MAIN-PRC VARYING ROW-NUM FROM 1 BY 1 UNTIL ROW-NUM > PLIN.
MAIN-PRC SECTION.
PROVA.
MOVE 0 TO PEP.
COMENSA.
ADD 1 TO PEP.
************************************************** *******
* Obtenga los datos de "Texto" (Nombre) y muévalos a la tabla *
************************************************** *******
MOVE "Text"(ROW-NUM PEP) OF CmExcel1 TO TABLE-NAME.
MOVE TABLE-NAME TO "Text" OF "TableCells"(ROW-NUM PEP) OF CmTable1.
************************************************** ****************
*Obtenga los datos de "Texto" (puntaje, total y promedio) y muévalo *
* a la mesa. * *
************************************************** ****************
ADD 1 TO PEP.
MOVE "Text"(ROW-NUM PEP) OF CmExcel1 TO SET-DATA.
MOVE SET-DATA TO "Text" OF "TableCells"(ROW-NUM PEP) OF CmTable1.
ADD 1 TO PEP.
MOVE "Text"(ROW-NUM PEP) OF CmExcel1 TO SET-DATA.
MOVE SET-DATA TO "Text" OF "TableCells"(ROW-NUM PEP) OF CmTable1.
ADD 1 TO PEP.
MOVE POW-TEXT(ROW-NUM PEP) OF CmExcel1 TO SET-DATA.
MOVE SET-DATA TO "Text" OF "TableCells"(ROW-NUM PEP) OF CmTable1.
ADD 1 TO PEP.
MOVE "Text"(ROW-NUM PEP) OF CmExcel1 TO SET-DATA.
MOVE SET-DATA TO "Text" OF "TableCells"(ROW-NUM PEP) OF CmTable1.
ADD 1 TO PEP.

Kuk
2 de abril de 2020, 14:16
Socavi, por lo pronto, pon un DISPLAY después de cada ADD 1 TO PEP. luego mira en qué columna te lo hace.

Socavi
2 de abril de 2020, 17:14
Buenas Tardes Kuk, despues del primer ADD 1 TO Pep, de la linea 9, de la 19 y de la 22, la respuesta es
001
002
003
pero cuando ejecuto el programa sólo me muestra la primera línea y se para

Fito
2 de abril de 2020, 17:47
Hola:

La propiedad "Text" del control Excel, es para datos alfanuméricos, y ahi, si no entiendo mal, estás trabajando con numéricos, para eso utilizá la propiedad "Numeric".

Para ayudarte mejor deberíamos saber qué contiene el excel y que tipos de datos tenés definido en el control Table...

Saludos.

Fito...

Socavi
2 de abril de 2020, 22:04
Hola Fito:

Los datos, son alfabéticos, numericos y coordenadas geográficas con seis decimales, por cierto lei tu fórmula, con dos valores w-texto, w-numero, pero no lo consegui, si no es mucha molestia, te agradeceria un ejemplo practico.

He 'captado' dos imagenes de los excel, pero no sé adherirlos aqui, por lo que también agradeceria instrucciones, para poder corresponder a tu solicitud.

Fito
3 de abril de 2020, 03:17
Hola:

Fiajte en este ejemplo que te paso.

Saludos.

Fito.

Kuk
3 de abril de 2020, 09:03
Socavi, [Información] "No sé dónde y cómo publicar posts..." - COBOL Foro (https://www.cobolforo.es/showthread.php?t=561)

Le das a "modo avanzado" y luego haces clic en el botón https://www.cobolforo.es/images/editor/insertimage.gif

Socavi
3 de abril de 2020, 13:35
Fito:

Are pruebas y te informaré, muchas gracias



---------- Post añadido : 13:00 ---------- Post anterior : 12:47 ----------

Kuk

Creo que he enviado las dos imagenes, aunque no las veo, de momento en mi respuesta

---------- Post añadido : 13:13 ---------- Post anterior : 13:00 ----------

he reducido las medidas, para ver si es eso, pues no sé si esta bien, ya me diras

---------- Post añadido : 13:35 ---------- Post anterior : 13:13 ----------

Fito:

El problema es que manejo un Excel de 8.300 lineas y de 4 a 8 columnas dependiendo de la información solicitada, como son Municipios, comarcas, población, superficie, coordinadas geograficas de latitud, longitud, altitud, etc. me viene bien el ejemplo de Fujitsu para con las modificaciones pertinentes conseguir en seis 'pasadas' captar los datos necesarios y ahi es donde tengo el problema, que no sé donde he de hacer las modificaciones y lo máximo que he conseguido es que me traspasa la primera línea y despues se para, pero voy insistiendo, espero conseguirlo.

Te pediria, si te es posible, lo de los 6 decimales, que llegado el momento, tambien tendre de resolver para las anotaciones geogaficas.

Muchas gracias por tu ayuda.-

Kuk
3 de abril de 2020, 16:07
Socavi, no, no has subido nada.

Aquí abajo donde respondes en el hilo, haz clic en "Modo avanzado", se te redirigirá a una una página con un editor grande, que entre otras cosas tiene 2 botones :

https://www.cobolforo.es/images/editor/insertimage.gif - este es para colgar una imagen que está en otra WEB
https://www.cobolforo.es/images/editor/attach.gif - este es para subir cualquier fichero a nuestro foro.

Si tienes los pantallazos en tu PC, utiliza el botón del clip

---------- Post añadido : 16:07 ---------- Post anterior : 15:25 ----------

Buenas Tardes Kuk, despues del primer ADD 1 TO Pep, de la linea 9, de la 19 y de la 22, la respuesta es
001
002
003
pero cuando ejecuto el programa sólo me muestra la primera línea y se para
A loq ue me refería es que con estos displays sepas en qué momento, entre qué comando te salta el error y cuantas veces para determinar en qué línea/comando te lo da.

Socavi
3 de abril de 2020, 19:31
Kuk

ahora espero que si. Muchas Gracias

Socavi
3 de abril de 2020, 19:41
antes he pasado 2 pero solo veo uno, ahora paso el otro:fiesta:

---------- Post añadido : 19:41 ---------- Post anterior : 19:39 ----------

antes he pasado 2 pero solo veo uno, ahora paso el otro haber si es que estoy 'gafado' :fiesta:

De cualquier modo, Muchas gracias

Kuk
3 de abril de 2020, 20:11
Socavi, :sis: :bien:

Eso sí, te recomiendo no usar formato BMP, es mucho mejor JPG o PNG. ;)

Socavi
3 de abril de 2020, 22:58
Kuk:

El que faltaba y en *.jpg, sabes la maxima cantidad de lineas que pueden 'pasarse' en cada transmisión ?, el Excel-2 tiene 8.128 lineas y creo que tendre que hacer de 4 a 5 pases verdad

Kuk
4 de abril de 2020, 11:59
Socavi, sincermanete el control de Excel de Power me parece demasiado pobre. Así que nunca lo he usado. No sé si te gustará mi proposición, pero no prefieres pasarte a COM/OLE2 y así dejarte de líos con el control ese?

Lo "malo" de COM/OLE2 es que hay más código, además orientado a objetos. Pero lo bueno es que no es complicado, es interesante, y sobre todo te da control 100% sobre el archivo. Puedes dar formato, jugar con uniones de celdas etc. Además, tenemos varios ejemplos en la cocina, entre los cuales unos muy buenos de Rui.

Piensatelo ;)

Socavi
4 de abril de 2020, 14:04
Hola Kuk:

Sinceramente también, te diré que se me ocurrió hacer éste programa, para pasar el rato ya que a mi edad solamente aspiro a tener la mente en ejercicio para retrasar si acaso cualquier otro tipo de achaque, jajaja. y como no soy deportísta, pues eso.

No se yo si sería capaz de manejar el citado COM/OLE2 con lo que me costó iniciarme en Cobol Power además no tengo ni idea de donde obtenerlo para despues de chafardearlo, decidir si me arriesgo a éste cambio que sugieres y que agradezco, pero ahora mísmo se me antoja un desafio demasiado 'fuerte' para mi.

Desde que iniciasteis tu y Josber éste portal he ido siguiendo en silencio todos los posts y problemas planteados por los seguidores de entre los cuales porque destacaba las aportaciones y/o posibles soluciones que planteaba con su generosidad habitual, el malogrado RUI q.e.p.d. y su recuerdo me podría animar a olfatear la novedad propuesta, pero nunca me he atrevido a participar, porque no se ni para mi, (como para atreverse a decir a nadie lo que tiene que hacer, menudos lios iba a propiciar), aunque las cosas que he hecho sigan funcionando a pesar de los años, al ser autodidacta, no me atrevo.

Muchas gracias por tu generosidad y tiempo. Saludos cordiales a todos.

Kuk
6 de abril de 2020, 11:08
Socavi, me entristece que pienses que no puedas opinar o proponer cosas, aunque no sean ciertas. Esto es un foro, no un enciclopedia. Además, aunque propongas cosas que al final no resulten ideales, esto también ayudaría a la gente porque alguien explicará por qué tu proposición no es la mejor etc.

Lo que no queremos Josber y yo es que precisamente os quedéis en silencio.

Este foro es vuestro, no tengáis miedo a opinar, proponer, compartir o simplemente decir "hola".

Lo único que os pedimos, es que sea en el apartado que corresponde, para mantener esto agradable de ver. Pero vamos, incluso si os equivocáis, nos encargaremos Josber y yo de mover el tema donde corresponda etc.

Así que animo ;)

Josber
7 de abril de 2020, 19:39
Socavi,

Como dice Kuk, aquí se puede opinar de lo que sea y cuando sea, con las limitaciones lógicas de la buena educación y el respeto, por supuesto.

Por otro lado, he leído varias veces éste hilo y, como ahora con la crisis, lo que nos sobra es tiempo, he hecho un ejemplo de traspaso de datos desde Excel a PWC. La hoja que traspaso, tiene más de 14.500 registros y, lo hace sin ningún tipo de problema o error de los que tu comentas, bájate el ejemplo que he hecho Desde éste enlace (https://www.cobolforo.es/showthread.php?t=1096), y le das un vistazo a ver que es lo que te puede estar pasando a ti y, si necesitas ayuda, no dudes en pedirla, que estamos para ésto.

Un saludo.-