Extraer lista de materiales a Excel vía RFC

sap-abap
Etiquetas: #<Tag:0x00007fb8d9ac4970>

#1

He visto muchos artículos mostrando como conectar Excel con SAP usando RFC. He tratado de entenderlos o en su defecto corrrer el código propuesto y no he tenido éxito. Creo que he logrado la conexión pero no he llegado al punto de extraer algún tipo de información de SAP lo cual consideraría yo un buen comienzo.

Mi meta es importar a Excel listas de materiales desde SAP (de las transacciones CO03 o CS11). Lo quiero hacer usando RFC ya que requiero una conexión silenciosa. Espero me puedan guiar:

Requiero saber si necesito algún tipo de privilegio en SAP.
Como verificar que mi cuenta tiene los privilegios necesarios. Tal vez el no tener una cuenta adecuada sea la razón de no haber podido hasta ahora extraer información desde SAP.
Espero sus comentarios.


#2

Vamos por partes Arturo.

Si hasta el momento no has podido usar RFC para extraer info, deberías leer más temas al respecto y hacer una conexión que te permita eso. Si hay errores de permisos, se analizarán. Tienes acceso a Basis?

No veo tu tema de presentación, así que no sé si eres desarrollador, usuario o técnico. Podrías presentarte?

Por otro lado.
A qué te refieres con esto:

“Conexión silenciosa” :neutral_face: ?

Para hacer importación de materiales, usado por lo general en migraciones, siempre SAP recomienda usar el Legacy System Migration Workbench (LSMW).

Por qué usar un RFC cuando podrías usar LSMW ?


#3

Hola @SidV salvo correccion de @armape, creo que mas bien quiere exportar informacion.
@armape, para poder ayudarte, por favor ayudanos a entender tu consulta, tengo la misma duda que @SidV , ¿a que te refieres con “Conexion silenciosa”?, en otros ambitos, el termino se usa al referirnos a que el usuario no se tenga que involucrar, pero para un RFC no se como se pueda aplicar.

Saludos!!


#4

Gracias por su respuesta a ambos (@SidV y @LDSDev). Soy un usuario (Ingeniero de Diseño Mecánico en una fábrica que corre miles de modelos diferentes) quien tiene que analizar información de SAP en “spreadsheets” de Excel. Lo que busco es extraer información de SAP sin tener que desplegar la interfase de SAP. Que mi procesamiento sea ejecutado “in the background”. He visto artículos recomendando hacer uso de una función que se llama RFC_READ_TABLE pero en todos los foros hacen referencia a información/tablas de SAP con las que no estoy familiarizado y no he logrado entender como aplicar esos mismos códigos para extraer información relevante para mi puesto de trabajo. Un ejemplo útil para mí sería extraer la lista de materiales de un modelo determinado en SAP. Espero tengan oportunidad de guiarme. Se algo de programación (soy graduado de Ingeniería en Electrónica). Si logro conectarme a SAP y extraer información relevante sin siquiera desplegar ventanas de SAP sería super útil para mi departamento. Podría crear rutinas que analicen información o creen résumenes diarios mientras trabajamos en otras tareas ajenas a SAP. Espero haberme explicado.


#5

Saludos @Armape

Considero que tienes que solicitar a tu Área de Sistemas lo siguiente.
Se puede generar un programa propio de la empresa ( una Interface Z ) .
Tipo de Archivo(s): CSV,TXT,XLS.
Medio Fisico de Ubicación de archivos: ruta en un FTP, ruta en el Serv.SAP.
Modo de Ejecución: Dialogo o Background.
Autorización: Al ser un programa de la empresa es según el objeto de autorización asignado

Personalmente optaría por una Interface Z, Archivo CSV,Medio Fisico: FTP, la ejecución en Background. Todas las mañanas se tiene los archivos necesarios para realizar el análisis respectivo.

Un RFC, por lo general es utilizado por un Sistema NO-SAP.


#6

Si buscas “extraer”… por qué el título de este tema dice “importar lista… a excel…” ? :neutral_face:


#7

Con “importar lista a Excel” me refiero a extraer/exportar información de SAP. En otras palabras leer información de SAP desde mi propio programa (digamos VB6 o VBA)

Sabes como trabaja la función rfc_read_table? Si logro ejecutar algún código de ejemplo usando esa función será un buen punto de partida. Es a lo que quiero llegar.


#8

Hola,

En este link hay un ejemplo de como leer datos de las tablas de sap desde visual studio 2010 y el connector sap 3.0.

h_tp://www.mundosap.com/foro/showthread.php?t=62539

Despues la funcion es sencilla, en QUERY_TABLE debes poner la tabla a leer, y (aparte de otros parámetros que sirven de filtros) lo mas importante es completar OPTIONS con el filtro de seleccion y FIELDS con los campos a extraer.

por ejemplo, para tomar datos de un cliente de la KNA1:

y ejecutas.

Saludos.


#9

Hola buen día.

Yo hice un proceso que te hace consultas a sap para extraer su información y darle tratamiento, ya sea para cargarlo a otra base de datos, enviar cierta información por email, crear excel,etc. Mediante una función RFC. Si lo único que quieres es extraer los datos de una tabla o conjuntarlos es útil, o de igual manera lo puedes hacer desde lenguaje PHP, para mostrar datos de manera gráfica o reporteo, o igual crear archivos.

Saludos


#10

Podrías usar la bapi BAPI_INTERNALORDER_GETLIST y asociarle un webservice con la TX se80 y publicando con TX SOAMANAGER es rápido y limpio, el webservice se puede consumir externamente sin problemas y sin conevtores extras. Es lo más transversal.


#11

Estaba leyendo este tema y me parecen interesantes las ideas, pero si es solo sacar un listado y pasarlo a excel no sale mas fácil hacer un Query y una vez ejecutado darle al botón de exportar como hoja de calculo?

creo que seria lo mas simple y puedes jugar con que columna colocar y que campos usar para filtrar la información

Saludos (:


#12

Hola amigo @Quintor he conseguido activar el SOAMANAGER, me refiero a poder entrar a su administración, me puedas brindar mas información sobre como como hacer esto:

Podrías usar la bapi BAPI_INTERNALORDER_GETLIST y asociarle un webservice con la TX se80 y publicando con TX SOAMANAGER es rápido y limpio, el webservice se puede consumir externamente sin problemas y sin conevtores extras. Es lo más transversal.

Lo que necesito es consultar la lista de materiales, es decir, mostrar la tabla MARA en un entorno Web.


#13

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.