MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Descargar Archivo según Variante de Visualización (foro/showthread.php?t=32490)

eljota 21/09/09 15:59:51

Descargar Archivo según Variante de Visualización
 
Hola,

Tengo un ALV Grid que maneja variantes de visualización y me gustaría poder bajar la info a un archivo de texto con algun separador ( |, *, - , ... )

Lo que me gustaría es que los campos a descargar sean dinámicos, según la disposición de columnas elegida por el usuario en pantalla (mediante alguna variante creada o movimiento d columnas)

Veo que las funciones standard del toolbar en el ALV para bajar ficheros hace esta seleccion dinámica, pero no me permite decir que use algún separador.

Espero que me ayuden en identificar en el user_command posiblemente qué columnas están actualmente visibles para poder bajar esa info

salu2

Atlas 21/09/09 16:09:14

Si bajas el listado como html, creo que si te pone separadores

eljota 21/09/09 16:18:32

Lo de HTML no ayudó
 
Gracias x la sugerencia, pero al bajarlo como HTML no me solicita algún separador para usar... a no ser q haya hecho algo mal.

Lo que necesito es una de dos:

1.- Utilizo de alguna manera la funcionalidad standard para bajar el contenido del alv a un texto usando un separador ( * , - , | , ... )

o

2.- Desarrollar una funcionalidad que haga esta descarga según los campos visibles en el reporte

Si tienen mas ideas, espero respuestas!!

salu2

Atlas 22/09/09 08:18:03

Perdona, pero no termino de entender lo que necesitas, ¿Es decirle tu el separador o te vale cualquiera? ya que si lo bajas en formato texto sin conversión te pone '|' como separador y si le da a hoja de calculo y seleccionas .txt te pone un tabulador como separador.

eljota 22/09/09 13:54:16

Bueno, lo que en realidad necesito es bajar la info separado por | pero no como lo presenta la funcion standard del alv ya que pone info extra en la cabecera.

Solo necesito que salga como lista, tal como si usaras el GUI_DOWNLOAD o funciones similares.

El plus que quiero que tenga la funcionalidad es que los campos que se descarguen sean los que actualmente se muestra en pantalla, es decir, luego que el usuario realice cambios en la disposición de los campos. Así que necesito una función que me devuelva la disposición actual (nuevo fieldcat) y con eso armar una lógica de descarga con un GUI_DOWNLOAD de los campos del nuevo fieldcat cuyo NO_OUT sea diferente de X. A no ser que haya funcionalidad que haga este trabajo

Espero ser claro en lo q intento hacer.

Gracias

Atlas 22/09/09 14:11:48

ok comprendido

una pregunta mas, el alv es por funciones u objetos???

eljota 22/09/09 14:14:47

El ALV es por funciones así que me gustaría terminar x ahi. Ahora, si ese camino no es el más facil, no tendría inconveniente en crear un ALV OO

gracias,

eljota 23/09/09 17:32:31

Solucionado
 
Bueno,

Les comento que conseguí hacer lo que quería, pero tuve que pasar mi ALV a OO

En la funcionalidad del nuevo botón, invoqué el método:

CALL METHOD GRID1->GET_FRONTEND_FIELDCATALOG
IMPORTING
ET_FIELDCATALOG = L_FIELDCATF.

De modo que en L_FIELDCATF tengo la disposición actual de pantalla, es decir, si el usuario modifica en algo las columnas, agrega / elimina, cambia d posición, etc.. se verá detallado en la variable L_FIELDCATF.

Con eso, agrego mi lógica para concatenar los campos de mi reporte con el separador que yo quiera y en el orden q aparece en pantalla. Les dejo ese codigo d referencia:


Me parece una funcionalidad muy util ya que permite bajar la disposición que quieras y ponerle el saparador deseado.

PD: No se si exista ya una funcionalidad standard q haga esto :confused: , si existe me avisan :)

salu2

Atlas 24/09/09 09:49:40

Gracias por la aclaración ^_^ y perdona por no haber contestado, estuve durante dos días ( en los ratos libres que me lo permitían ) intentado hacerlo por funciones y no fuí capaz


Husos Horarios son GMT. La hora en este momento es 09:14:46.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web