MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Matchcode download (foro/showthread.php?t=63294)

SAPING 27/06/12 13:34:44

Matchcode download
 
Buenas.
Necesito descargar un txt en el servidor y necesito un matchcode para esto...
Actualemente estoy usando este codigo:

lf_location = 'A'.

* obtengo los servidores
CALL FUNCTION 'RFC_GET_LOCAL_SERVERS'
TABLES
hosts = lt_host
EXCEPTIONS
not_available = 1
OTHERS = 2.

IF sy-subrc IS INITIAL.

* Nombre del servidor a la estructura
CLEAR lw_host.
READ TABLE lt_host INTO lw_host INDEX 1.
IF sy-subrc <> 0.

CLEAR lw_host.

ENDIF.

ENDIF.

* abro la ayuda de busqueda segun corresponda pc o servidor
CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
EXPORTING
i_location_flag = lf_location
i_server = lw_host-name
IMPORTING
o_path = pa_path2
EXCEPTIONS
rfc_error = 1
error_with_gui = 2
OTHERS = 3.
IF sy-subrc IS NOT INITIAL.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

El tema es que si o si me pide seleccionar un archivo, y yo lo que quiero es la carpeta...
Alguien sabe que funcion me permite hacer esto?.

Gracias.

crounly 27/06/12 13:39:41

Prueba con la clase CL_GUI_FRONTEND_SERVICES=>DIRECTORY_BROWSE


SAPING 27/06/12 14:29:47

Gracias, pero esa funcion la estoy usando para descargas locales... no me trae una pantalla como la del codigo que puse de ejemplo donde me muestre los directorios del server SAP.

Me muestra solo las carpetas locales y compartidas de red.
Por ejemplo, el otro codigo mostraba los archivos de una carpeta del tipo "/home/bztecc/Globalsis"

crounly 27/06/12 15:40:08

Ok, lo siento.

He encontrado este hilo en el SCN de SAP:
-

Igual te sirve, suerte

SAPING 27/06/12 15:53:43


BUENISIMO !!!!...

Era lo que buscaba...
Gracias !!!!!!!

SAPING 20/03/13 14:50:15

No se porque, esta funcion que me sirvio en su momento, ahora me esta dando un Dump.

Si paso la funcion asi, me da el Dump:

CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
EXPORTING
directory = ' '
filemask = ' '
IMPORTING
serverfile = lv_file
EXCEPTIONS
canceled_by_user = 1
OTHERS = 2.

Pero si la uso asi me da ok:
CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
EXPORTING
directory = 'D:\usr\sap\'
filemask = ' '
IMPORTING
serverfile = lv_file
EXCEPTIONS
canceled_by_user = 1
OTHERS = 2.

No se porque ahora me pide que le pase el "Directory" si cuando la use anteriormente no me lo pedia.

Igualmente, si no le paso ese parametro, el Dump me lo da en el EXIT del código, luego del mensaje:

IF G_OK = NO.
MESSAGE E019(/SAPDMC/LSMW).
EXIT.
ENDIF.

Y la descripción dice:
Texto breve
Screen: Illegal message


??????????????????????

ballan 20/03/13 16:48:14

Probad a utilizar esta

F4_DXFILENAME_TOPRECURSION

SAPING 20/03/13 17:36:10

Ya use esa, pero da un error cuando el usr se pone a recorrer distintos paths del pop up que muestra para elegir la ruta, por eso uso la otra funcion.


Husos Horarios son GMT. La hora en este momento es 15:47:48.

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