Módulos de función RFC de SAP
Introducción
El módulo de función RFC certificado /DABEXP/RFC_SAPCONNECTOR es necesario para conectar un SAP System con las soluciones de extracción SAP de dab. La solución de extracción SAP de dab Add-On se instala en el SAP System.
También se requiere una cuenta de usuario SAP, a la cual se le asigna un perfil de autorización correspondiente. Los siguientes capítulos describen la instalación del módulo de función y la estructura del perfil de autorización requerido.
Para la instalación inicial del módulo RFC en su SAP, utilice el archivo AOI-SAR. Si desea actualizar el módulo RFC existente, utilice el archivo AOU-SAR.
Requisitos
Soluciones compatibles
La solución de extracción SAP de dab se puede utilizar con las siguientes soluciones SAP:
- SAP NetWeaver - 7.50 (SAP_BASIS 750) o superior
- SAP ERP - 6.0 (ECC 6.0)
- SAP CRM - 7.0
- SAP SRM - 7.0
- SAP SCM - 7.0
- SAP EWM - 7.0
- Esta lista no es exclusiva, otras soluciones basadas en SAP NetWeaver con ABAP-Stack y conectividad RFC también son compatibles
- SAP S/4HANA - 1610 o superior
- SAP S/4HANA Cloud, Extended Edition - todas las versiones
- SAP Cloud ERP Private o SAP S/4HANA Cloud, Private Edition - todas las versiones
- RISE with SAP Ready: Nuestra Add-On de SAP está oficialmente soportada y certificada para su uso en entornos RISE with SAP (Private Cloud Edition)
SAP Cloud ERP o SAP S4/HANA Cloud, Public Edition no soporta la importación de Add-Ons y, por lo tanto, no es compatible.
Transacciones necesarias
Para instalar el Add-On, usted o su área de SAP Basis deberían tener acceso a las siguientes transacciones (versión 0053 o superior):
- SAINT - herramienta de instalación de Add-On de SAP
- SPAM - Support Package Manager
Instalación y actualización
Instalación
Para la instalación en SAP Basis 740 o superior, se requiere la versión 1.61 o superior. Puede descargarla en el portal del cliente Portal.
Para la instalación en SAP Basis 731 o inferior, se necesita el archivo dabexp-sapconn-aoi-140.sar. Puede descargarlo aquí.
Para esto se requieren autorizaciones especiales. Para configurar el Add-On se utiliza la transacción SAINT.
Después de abrir la transacción SAINT, puede instalar el archivo SAR del paquete de instalación (AOI) mediante el menú.
En la barra de menús haga clic en Paquete de instalación > Cargar paquetes > Desde frontend y seleccione el archivo SAR.

Si no aparece el paquete DABEXP, debe desactivar los filtros:

Si aparece un mensaje relacionado con solicitudes abiertas de extracción de datos, puede omitirlo, ya que Add-On no modifica ninguna estructura de datos en el sistema SAP.
Si aparece un mensaje indicando que el paquete no está firmado, puede ignorarlo. Solo los paquetes propios de SAP están firmados, los Add-Ons de terceros no reciben una firma.

Actualización
Si el Add-On ya está instalado en su SAP System, puede actualizar el Add-On a una nueva versión utilizando el paquete de actualización (AOU). El procedimiento de actualización es igual que el de instalación.
Para la actualización en sistemas SAP con Basis 740 o superior, se necesita el archivo dabexp-sapconn-aou-161.sar. Puede descargarlo en el portal del cliente Portal.
Para actualizar sistemas SAP con Basis 731 o inferior se necesita el archivo dabexp-sapconn-aou-140.sar. Puede descargar el archivo aquí.
Autorizaciones
Las soluciones de extracción SAP de dab se basan en los mecanismos de seguridad y el concepto de autorización del SAP System. Además, el acceso a las tablas es siempre de solo lectura. Para conectar la solución de extracción SAP de dab al SAP System, se requiere un usuario al que se le haya asignado un rol de autorización con los siguientes objetos de autorización.
El usuario SAP necesario para la conexión puede ser de uno de los siguientes tipos:
- Diálogo
- Sistema
- Comunicación
- Servicio
Para crear o modificar un usuario correspondiente, usted necesita autorizaciones para las siguientes transacciones:
- PFCG: mantener o crear rol de autorización
- SU01: mantener o crear usuarios
Autorizaciones para ejecutar el módulo RFC
Aquí puede elegir entre dos opciones: autorización a nivel de grupo de funciones o a nivel de módulo de función.
El objeto de autorización S_RFC se utiliza para la autorización: Lo encontrará bajo la clase de autorización AAAB - objetos de autorización multiaplicación > objeto de autorización S_RFC - comprobación de autorización para acceso RFC.
Autorización a nivel de grupo de funciones
La primera opción es autorizar los grupos de funciones correspondientes mediante RFC_TYPE en FUGR (grupo de funciones).
Consulte la siguiente tabla para los campos y valores correspondientes para el objeto de autorización S_RFC.
| Campo | Valor |
|---|---|
| ACTVT (actividad) | 16 (ejecutar) |
| RFC_NAME (nombre del objeto RFC a proteger) | /SDF/RI_CRM CMON RFC1 SYST /DABEXP/DAB_FUGR |
| RFC_TYPE (tipo de objeto RFC a proteger) | FUGR (grupo de funciones) |
Autorización a nivel de módulo de función
Como alternativa, desde SAP NW 7.0 EHP 2 (SAP_BASIS 702) el RFC_TYPE se puede establecer en FUNC (módulo de función).
Consulte la siguiente tabla para los campos y valores correspondientes para el objeto de autorización S_RFC.
| Campo | Valor |
|---|---|
| ACTVT (actividad) | 16 (ejecutar) |
| RFC_NAME (nombre del objeto RFC a proteger) | /SDF/CMO_GET_INSTNO CMO_GET_INSTNO DDIF_FIELDINFO_GET RFC_GET_FUNCTION_INTERFACE RFC_GET_NAMETAB RFCPING /DABEXP/RFC_SAPCONNECTOR |
| RFC_TYPE (tipo de objeto RFC a proteger) | FUNC (grupo de funciones) |
Otros módulos de función requeridos
Además del módulo de función /DABEXP/RFC_SAPCONNECTOR, se requieren otros módulos para el funcionamiento sin problemas.
La siguiente tabla muestra el grupo de funciones, los módulos respectivos y el uso previsto:
| Grupo de funciones | Módulo de función | Propósito |
|---|---|---|
| /SDF/RI_CRM | /SDF/CMO_GET_INSTNO | Consultar el número de instalación bajo S4/HANA |
| CMON | CMO_GET_INSTNO | Consultar el número de instalación |
| RFC1 | RFC_GET_FUNCTION_INTERFACE RFC_GET_NAMETAB | Revisar la estructura y existencia de módulos RFC |
| SYST | RFCPING | Probar la conectividad RFC |
| /DABEXP/DAB_FUGR | /DABEXP/RFC_SAPCONNECTOR | Consultar el contenido de la tabla |
Autorizaciones a nivel de tabla
Las tablas solo pueden ser autorizadas completamente o no autorizadas. Una restricción por contenido de tabla, p. ej. sociedades, no es posible.
Puede utilizar estos objetos de autorización para conceder permisos de acceso al contenido de las tablas a exportar. La validación se realiza utilizando el módulo de función VIEW_AUTHORITY_CHECK.
Existen dos formas diferentes de autorizar las tablas – bien a través del grupo de autorización o por nombre de tabla.
Si la autorización de tablas se realiza utilizando ambos objetos de autorización, primero se verifica la autorización con S_TABU_DIS (grupo de autorización de tabla). Si esta verificación falla, la autorización se valida con S_TABU_NAM (nombre de tabla).
Si va a autorizar a nivel de tabla, asegúrese de que las siguientes tablas también estén autorizadas.
| Tabla | Grupo de autorización | Propósito |
|---|---|---|
| T000 | SS | Clientes - tabla estándar para la prueba de conectividad |
| T001 | FC01 | Sociedades - tabla de respaldo para prueba de conectividad |
| DD02L | Diccionario de datos ABAP - tablas disponibles en el sistema | |
| DD02T | Diccionario de datos ABAP - textos descriptivos para tablas | |
| DD02V | Diccionario de datos ABAP - búsqueda de tablas en dab Nexus Package Studio | |
| DD03L | Diccionario de datos ABAP - campos disponibles en el sistema | |
| DD03T | Diccionario de datos ABAP - textos descriptivos disponibles para campos |
Autorización vía grupos de autorización de tabla
Clase de autorización BC_A Basis - administración → objeto de autorización S_TABU_DIS
Esto se usa para definir a nivel de grupo de autorización de tabla a qué tabla se puede acceder y cómo. Los grupos de autorización se ingresan en el parámetro DICBERCLS y el tipo de acceso se define mediante ACTVT. La asignación de una tabla a un grupo de autorización o viceversa puede encontrarse en la tabla TDDAT.
| Campo | Valor |
|---|---|
| ACTVT (Actividad) | 03 (Visualizar) |
| DICBERCLS (Grupo de autorización) | * |
Autorización vía nombres de tabla
Clase de autorización BC_A Basis - administración > objeto de autorización S_TABU_NAM
Esto se utiliza para definir a nivel de nombre de tabla a qué tabla se puede acceder y cómo. Las tablas se ingresan en el parámetro TABLE y el tipo de acceso se define mediante ACTVT.
| Campo | Valor |
|---|---|
| ACTVT (Actividad) | 03 (Visualizar) |
| TABLE (Grupo de autorización) | * |
Pruebas
Probar el módulo de función
Una vez instalado el módulo de función como se describe arriba, se puede realizar una prueba de funcionamiento inicial con la transacción SE37 del módulo de función utilizando el botón Test/Execute o la tecla F8.
Los parámetros de importación se pueden ingresar en el primer diálogo. En nuestro ejemplo, utilizamos la tabla de sociedades T001 en el campo QUERY_TABLE. Se puede usar cualquier tabla a la que el usuario conectado actualmente tenga derechos de acceso. No se requieren más entradas para la primera prueba. Para iniciar la prueba, haga clic en el botón Ejecutar o pulse la tecla F8.

Si el módulo de función se ha ejecutado sin errores, recibirá tablas de resultados. Puede consultar el resultado haciendo clic en el ícono de vista detallada junto al número de entradas para TABL_FIELDS o DATA.

TABL_FIELDS contiene la estructura de los campos en la tabla consultada:

DATA contiene los registros de datos de la tabla consultada:

Prueba de la conexión RFC
Puede utilizar el dab FunctionModuleTester para comprobar si la conexión puede establecerse correctamente mediante RFC. Puede encontrar más instrucciones aquí.
Desinstalación
- abra la transacción SAINT
- haga clic en la pestaña Componentes desinstalables, elija el componente DABEXT y haga clic en Iniciar
- después de confirmar la desinstalación, el componente se elimina del SAP System



Certificaciones de SAP
SAP ya no certifica Add-Ons para sistemas ECC. Esto significa que SAP ya no puede (re)certificar el propio módulo de función de dab para sistemas ECC. Puede encontrar más información al respecto en esta entrada de blog de SAP.
El Add-On dispone de certificaciones para las siguientes versiones; las certificaciones actuales pueden consultarse en cualquier momento en el Directorio de soluciones certificadas por SAP.
Notas de la versión
Versión 1.71
- Ajustes para SAP Clean Core Level B, lo que significa que solo se utilizan APIs aprobadas por SAP
- Ajustes en las condiciones de importación: el Add-On puede instalarse en SAP ECC, SAP S4/HANA y SAP BW/4HANA
- Extensiones para la extracción de vistas con claves primarias no únicas (por ejemplo, FAGLFLEXT): se requiere una actualización adicional de la aplicación para esta funcionalidad
Versión 1.61
- al desinstalar el Add-On, no todos los objetos podían eliminarse debido a información incorrecta de los objetos. Esto provocaba que la desinstalación se aborte.
Versión 1.60
- además de la corrección efectuada en la versión 110, ahora también se admite la resolución de .INCLUDES anidados con sufijos. En concreto, existían problemas en la tabla ACDOCA donde el include .INCLU-_PA contiene un sufijo y también se amplía con .APPEND. Con esta corrección, el sufijo ahora también se aplica a los campos en el .APPEND.
Versión 1.50
- el módulo de función ha sido preparado para soportar la exportación de textos largos desde la columna CLUSTD de la tabla STXL
Versión 1.40
- última versión de SAP Add-On compatible con SAP Basis 731 y versiones inferiores
- cumplimiento de los niveles de seguridad requeridos para S/4 Cloud EX
Versión 1.30
- la lectura de la información DDIC proporcionaba un valor incorrecto de OUTPUTLEN para el tipo de dato RAW para el GUID en las tablas CGPL_TASK o DPR_TASK. Como resultado, los GUID afectados se exportaban de forma truncada. Para los campos de tipo de dato RAW con INTLEN 16 y OUTPUTLEN menor de 32, ahora se fija el OUTPUTLEN en 32.
Versión 1.20
- al construir la lista de campos para la consulta SQL, **<table>~<fieldname>** se truncaba después de 30 caracteres durante su composición, lo que causaba errores en la consulta SQL.
Versión 1.10
- ocurrían errores en sistemas S4/HANA con ciertas tablas (BKPF, BSEG, MATDOC, ACDOCA, MHNK). Se ha ajustado la resolución de las estructuras INCLUDE dentro de estas tablas con los nombres
- .INCLU-_PN
- .INCLU-_A1
- .INCLU-LO Se ha modificado la estructura de la lista de campos para la consulta SQL de solo el nombre del campo a **<table>~<fieldname>** para evitar excepciones con ciertos nombres de campo que utilizan nombres protegidos de SQL (por ejemplo, tabla TOAM - campo Connection).
SAP Legacy RFC Function Modules
Si usted está utilizando un módulo de función diferente a /DABEXP/RFC_SAPCONNECTOR, ¡le recomendamos encarecidamente actualizar a este módulo RFC! dab no actualizará ni ofrecerá soporte para otros módulos de función. Estos módulos tampoco están certificados por SAP.
Además de /DABEXP/RFC_SAPCONNECTOR, en el pasado también se han soportado otros módulos en el namespace Z que provienen de instalaciones antiguas de dab:Exporter o personalizaciones individuales de clientes.
La siguiente tabla compara el alcance funcional de los respectivos módulos:
- Máx. caracteres por registro de datos: define el número máximo de caracteres que pueden extraerse por registro de datos (particularmente relevante en tablas con muchas columnas)
- S_DEVELOP requerido: los módulos Z requieren el objeto de autorización S_DEVELOP para poder ejecutarse
- Textos largos: los textos largos se almacenan en las tablas STXH y STXL; las versiones más recientes del módulo pueden decodificar y extraer el contenido de estas tablas
- Tipos de dato FLT y RAW: admite la extracción en columnas con tipos de dato FLT y RAW
- Actualización vía SAINT: los módulos Z deben mantenerse mediante las transacciones SE37 y SE80 (el módulo certificado debe instalarse y actualizarse mediante la transacción SAINT)
| Módulo de función | Máx. caracteres por registro de datos | S_DEVELOP requerido | Textos largos | Tipos de dato FLT y RAW | Actualización vía SAINT | Certificación SAP |
|---|---|---|---|---|---|---|
| Z_RFC_READ_TABLE (Versión 2.0) | 8000 | sí | no | sí | no | no |
| Z_RFC_READ_TABLE (Versión 1.7) | 2048 | sí | no | sí | no | no |
| Z_RFC_READ_TABLE (Versión 1.6 o anterior) | 2048 | sí | no | no | no | no |