Quantcast
Channel: SAP archivos - Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap...
Viewing all 598 articles
Browse latest View live

Introducción al testeo unitario ABAP – ABAP UNIT TESTING

$
0
0

Con este artículo ponemos en relieve la importancia que tiene realizar pruebas sobre cualquier nuevo elemento desarrollado en ABAP y también, sobre cualquier modificación que realicemos en código existente. El testeo unitario nos proporciona tanto el entorno de pruebas como las herramientas de análisis necesarias para poder verificar el correcto funcionamiento de una unidad de desarrollo.

Y es que está claro que a estas alturas, muy pocos dudarán de la necesidad de realizar pruebas integradas pero… ¿cómo vamos a ser capaces de encontrar errores en un sistema complejo si previamente no se han probado de manera suficiente todas las piezas que lo componen? El testeo unitario se centra en esto: pruebas sobre cualquier pequeña nueva pieza que se pretenda integrar en un sistema.

Vamos a empezar resaltando las ventajas e inconvenientes de los dos tipos de pruebas.

Tests Integrados

Ventajas:

  • Se realizan en un entorno real

Desventajas:

  • Configuración compleja del entorno
  • Sólo se pueden realizar al finalizar el desarrollo
  • Son lentos
  • Análisis de errores complejo
  • Son frágiles
  • Necesitan un alto mantenimiento

Tests unitarios

Desventajas:

  • Se realizan en un entorno simulado

Ventajas:

  • Están aislados del entorno
  • Se pueden realizar paralelamente al desarrollo
  • Son rápidos
  • Los errores son fáciles de analizar
  • Son estables
  • Necesitan poco mantenimiento

Como se puede ver, ambos tipos de pruebas son necesarios y complementarios. Y lo que es más importante, la aplicación de ambos nos permite aislar más fácilmente los errores y solucionarlos usando una cantidad de tiempo considerablemente menor.

Vamos a comentar más en detalle cada uno de los aspectos mencionados.

Los tests unitarios se realizan en un entorno simulado, es decir, no están influidos por las variables globales del entorno ni del sistema, entendiendo como tales a resultados de consultas a base de datos, todas las variables recogidas por la estructura SY (SY-DDATUM, SY-UNAME…), autorizaciones asociadas a roles, etc. Tampoco van a estar influidos por la relación con otros objetos, transacciones, programas o funciones externas a nuestro código. Esto no quiere decir que el objeto de los tests no los tenga en cuenta, sino que si algún tipo de estas situaciones tiene influencia en el objeto de análisis, pasarán a ser parámetros de configuración del entorno de test, sin necesidad de cambiar el código.  Por lo tanto, el comportamiento del objeto en un entorno real no se va a conocer al 100%, pero si los tests están bien planteados, no supondrá mayor problema. Sabremos de antemano el comportamiento del objeto en cualquier situación. Esta desconexión del entorno nos permitiría, por ejemplo, hacer pruebas en un sistema en el que ciertas partes están rotas, en desarrollo o no funcionan de manera correcta. Toda relación externa está simulada y obedece a nuestra configuración. La filosofía es aislar el objeto a analizar para ver si funciona como se espera, sin interferencias del entorno. Y por ello, esta desventaja es a la vez una ventaja: aislamiento del entorno.

Como consecuencia, las pruebas se pueden hacer en paralelo al desarrollo, ya que no se necesita nada externo a nuestro objeto. Esto sólo va a tener consecuencias positivas, ya que los errores se detectan en una fase temprana y se corrigen. Además, el equipo de desarrollo se convierte a la vez en usuario durante las pruebas y se genera un código más limpio y legible, facilitando su uso e integración en el sistema.

Son rápidos porque durante las pruebas sólo se ejecuta el código que se quiere analizar y nada más. No es necesaria ni deseable la intervención de otros procesos y por eso las pruebas son muy ágiles.

Los errores son fáciles de analizar porque sólo hay que centrarse en el funcionamiento de un único elemento cuyo comportamiento es bastante predecible de antemano.  Si la respuesta no es la esperada, las herramientas de análisis nos dirán el valor/es que se ha/n obtenido, el que se esperaba y todos los pasos que ha dado la ejecución para llegar e ese resultado.

Son estables porque están eliminadas todas las interferencias externas. Si una batería de tests tiene un resultado positivo, volverá a tenerlo en el futuro, siempre que no se cambie el código. Y si algún cambio introduce errores, tendremos información al instante. Esto supone una gran diferencia con los test integrados.

Necesitan poco mantenimiento. Sólo necesitan una inversión extra en tiempo durante la fase de desarrollo, ya que hay que diseñarlos y programarlos en paralelo. Pero una vez terminados, no es necesario volver a revisarlos, a no ser que se dote al objeto de nuevas funcionalidades. Además, existen técnicas de desarrollo (el desarrollo orientado a testeo o test driven development) que facilitan la labor y no son complicadas de asumir. El tiempo extra invertido se ve notablemente recompensado durante fases posteriores del proyecto, ya que se va a partir siempre de un código revisado, probado y robusto.

Por ahora esto es todo. Esperamos haber despertado vuestra curiosidad e interés. Los próximos artículos relacionados con el tema serán más técnicos y enfocados a desarrolladores ABAP. Pero creemos que hay que insistir y poner de relevancia este tema sin demasiados tecnicismos para concienciar a clientes y responsables de proyectos que es mejor y más deseable invertir tiempo en calidad que en corrección de errores. El debugging no suele ser simple y siempre es más costoso que el partir de una base de desarrollo firme y sólida.

Puedes leer más sobre Best Practices de SAP aquí.


Construcción de un Workflow – Serie Workflows en SAP (1/5)

$
0
0

¿Qué es un workflow?

Un Workflow es un flujo de trabajo al que podemos incorporar actividades, operaciones, eventos, etc, dentro de nuestro entorno SAP, bastante útil para cuando se necesita la iteración de varios usuarios dentro de un proceso.

En este articulo vamos a centrarnos en la creación de un workflow simple, que nos servirá para ver los pasos básicos para su creación. También nos servirá de referencia para en posteriores artículos ir viendo algunas características que podemos profundizar y son interesantes.

1. Crear Workflow y atributos del mismo.

Para crear un Workflow deberemos ir a la transacción PFTC, donde nos definiremos una tarea de tipo ‘WS Modelo Workflow’, en nuestro caso el Workflow será el ZPRUEBAS.

2. Definir el workflow

Una vez definidas sus propiedades, vamos a diseñar el Workflow. Mediante la transacción SWDD, vamos construyendo, añadiendo las actividades que queremos que realice. Podemos acceder mediante el botón ‘Workflow Builder’, que encontraremos en la definición de las propiedades del Workflow.

Inicialmente nos propondrá un evento de inicio y un evento de finalización, que son el primer y ultimo paso del workflow. Entre estos dos eventos vamos a ir indicando las actividades.

Las actividades que podemos añadir son:

  • Actividad
  • Actividad Web
  • Enviar correo electrónico
  • Formulario
  • Decisión del usuario
  • Documento de modelo
  • Condición
  • Clausula condicional Múltiple
  • Programa generador de eventos
  • Espera (de evento)
  • Operación Container
  • Control de proceso
  • Loop (ciclo)
  • Vía de procesamiento paralelo
  • Ancla ad hoc.

Asignar tareas a las actividades del workflow

Las actividades que hemos definido van a necesitar una tarea (si bien que no todas necesitan una por obligación, pero la gran mayoría sí). En este caso vamos a crear una decisión de usuario. Para crear una actividad vamos a necesitar una tarea, en este caso será una tarea estandar. Nuestra tarea será la tarea estándar 8267, la cual tiene incorporado el objeto BOR ‘DECISION’, y ya viene con su workitem, container, eventos y demás características definidas por el estándar.

3. Ejecución en test del Workflow

Con el paso anterior realizado ya tendríamos nuestro workflow definido, por lo que solo quedaría activarlo. Una vez que ya lo tenemos listo, tendremos que probar que funciona correctamente ¿no? Pues bien, desde la propia transacción SWDD (Workflow Builder), dando click en F8, podemos ir a la ejecución en test del workflow.

En próximos artículos podremos ver como realizar seguimientos de un workflow, y temas más concretos como asignar a los responsables, realizar binding… y más cosas interesantes.

Esperamos que este artículo te haya resultado de utilidad. Si tienes cualquier duda puedes dejarnos un comentario en este mismo artículo.

La entrada Construcción de un Workflow – Serie Workflows en SAP (1/5) se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Libro de operaciones · Trascendencia tributaria – Cobros en metálico

$
0
0

La AEAT ha realizado un cambio de lo que antes era el “Libro Registro de Cobros en Metálico “renombrándolo como “Libro de registro de Operaciones de trascendencia tributaria con carácter anual” e incluye las “Operaciones en Metálico” y las “Operaciones de Seguro”.

Operaciones en Metálico

Este bloque se informará con carácter anual en el último período del año con los importes superiores a 6.000 € que se hubieran percibido en metálico de la misma persona o entidad por las operaciones realizadas durante el año natural. En él se debe consignar el NIF, el nombre o razón social y el importe total percibido en metálico.

Este libro no requiere parametrización adicional en las tablas de documentos e indicadores de IVA del SII.

Operaciones de Seguro:

Sólo se remitirá por compañías aseguradoras para los siguientes casos:

  • Cuando se trate de una operación por la que exista obligación de emitir factura (art. 3.2 RD 1619/2012).
  • En el caso de las operaciones a las que se refiere el artículo 33.1 RD 1065/2007, de 27 de julio (importe de las primas o contraprestaciones percibidas e indemnizaciones o prestaciones satisfechas).

Se debe distinguir entre:

  • Indemnizaciones o prestaciones satisfechas superiores a 3005,06 €
  • Primas o contraprestaciones percibidas superiores a 3005,06 €

Las “Operaciones de Seguro” se ha creado para que las empresas aseguradoras comuniquen lo que anteriormente informaban a través del 347 (indemnizaciones o prestaciones satisfechas superiores a 3005.06€ y las primas o contraprestaciones percibidas superiores a 3005.06€). Las empresas que anteriormente no comunicaban estos datos a través del 347 porque no son aseguradoras, ahora tampoco tienen que comunicarlos a través del SII.

Cómo realizar el envío de los cobros en metálico al SII

El último periodo del año tenemos que informar de todos los importes superiores a 6.000 € percibidos en metálico de una misma persona o entidad (webinar sobre sistema SII). Para ello, debemos realizar los siguientes pasos:

1. Creación del eDocuments

Para ello, accedemos a la transacción ESSII_EDOCINCASH “Creación de eDocument para Pagos en Metálico”.

Libro de operaciones - rascendencia tributaria - cobros en metálico - Transacción ESSII_EDOCINCASH

Los parámetros que tenemos que introducir obligatoriamente son Sociedad, Fecha de Contabilización y Cuenta de Mayor, siendo el resto opcionales.

Pulsamos Ejecutar Libro de operaciones - rascendencia tributaria - cobros en metálico - Ejecutar el proceso:

Libro de operaciones - rascendencia tributaria - cobros en metálico - Visualizar información

Nos da la información de todas las personas o entidades con las que se han percibido pagos en metálico durante el año natural. Para cada persona o entidad, totaliza los importes percibidos en metálico y aquellos superiores a 6.000 € los envía al SII creando un eDocument por cada uno de ellos.

En el Log se muestra los eDocument que se han creado y los que se han modificado.

Libro de operaciones - rascendencia tributaria - cobros en metálico - Log de eDocument

Esta relación la podemos ver desde el monitor accediendo a la transacción EDOC_COCKPIT donde vemos los documentos que acabamos de generar. Esto aparece en el apartado de “Cobros en Metálico” con status “Creado” y pendiente de enviarlo a la AEAT.

Libro de operaciones - rascendencia tributaria - cobros en metálico - Transacción EDOC_COCKPIT

Como se puede ver, se crea eDocument por cada persona o entidad, el cual costa de todas las facturas de este y de su importe total.

Libro de operaciones - rascendencia tributaria - cobros en metálico - Visualización del documento

2. Incluir los eDocument a las Listas de la AEAT

En este paso, hay que ejecutar la transacción ESSII_EDOCLIST “Creación de Listas”.

Libro de operaciones - rascendencia tributaria - cobros en metálico - Transacción ESSII_EDOCLIST

Los parámetros que tenemos que introducir obligatoriamente son Sociedad y Fecha de Creación, siendo el resto opcionales.

Pulsamos Ejecutar Libro de operaciones - rascendencia tributaria - cobros en metálico - Ejecutar  el proceso y se envían las listas.

Esperamos que te haya sido de ayuda este artículo. Si necesitas ayuda o soporte sobre el SII en SAP puedes ponerte en contacto con nuestro equipo de consultores especializados.

La entrada Libro de operaciones · Trascendencia tributaria – Cobros en metálico se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

SCP Portal, la evolución de SAP Enterprise Portal

$
0
0

Ya lo íbamos sospechando, pero tras el SAP Teched Barcelona 2018 no cabe duda sobre la fuerte apuesta de SAP por la tecnología cloud y el futuro inminente de las arquitecturas híbridas. Dentro de este escenario, podemos cuestionarnos bastantes cosas, una de ellas es, ¿cuál es el futuro de SAP Enterprise Portal?

Lo cierto es que según parece, SAP no tiene ninguna intención de dar continuidad a este producto y está centrando todos sus esfuerzos en su equivalente en la nube: SAP Cloud Platform Portal. De hecho, 2020 es la fecha fin para los SAP Enterprise Portal en versiones de SAP Netweaver 730 y 740, y 2024 para SAP Enterprise Portal 750.

De hecho, a diferencia de en otros productos de la plataforma Netweaver para los que sí va a haber alguna novedad a corto plazo, para el portal no se prevé ninguna y como comentaba, la recomendación es ir pensando en migrar a SAP Cloud Platform Portal.

¿Por qué SAP Cloud Platform Portal?

Al igual que hasta ahora SAP Enterprise Portal, SAP Cloud Platform Portal se presenta como el punto de acceso central para todo tipo de contenidos SAP y no SAP procedente de distintos sistemas: aplicaciones Fiori, SAP GUI para HTML, aplicaciones ABAP Web Dynpro, informes BEx, Lumira, etc.

De hecho, SAP Cloud Platform Portal se presenta como Content Consumer y ofrece además componentes estándar para publicar contenido de Content Providers como Success Factors, Concur, Ariba, y por supuesto el SAP Fiori Content que es el contenido Fiori para el portal en la nube que es posible instalar a partir de una determinada versión del backend tanto on premise como on cloud.

SCP Portal - Landscape overview in details

La configuración del contenido es más simple que en el caso de las iviews para las que cada vez hay que rellenar más y más propiedades.

Por supuesto es posible configurar Single Sign On (SSO) para no tener que autenticar al usuario más que una vez para todos los sistemas.

Uno de los puntos débiles de SAP Enterprise Portal era su muy limitada capacidad de diseño. Primero acostumbrados a layouts basados en masthead + top level navigation y luego ya algo más modernizado con el Portal Fiori Launchpad.

Con SAP Cloud Platform Portal es posible crear 3 tipos de layouts:

  • Fiori Launchpad: Layout basado en tiles equivalente al SAP Fiori Launchpad ABAP.
  • Freestyle: Layout totalmente personalizable para crear portales corporativos, usando widgets, miniaplicaciones, etc. Da mayor libertad a los diseñadores y sin ninguna duda se pueden conseguir resultados mucho más personalizados y corporativos.

SCP Portal - tipos de layout 1

  • Híbrido (Fiori Launchpad embebido en un portal freestyle)

Dentro del layout freestyle se proponen algunas plantillas de las que es posible partir para crear ciertos tipos de portal: portal de administradores, portal para proveedores, portal para ventas, incluso SAP trabaja en el EmployeeWorkplace totalmente integrado con SuccessFactors que permitirá configurar de una manera sencilla un portal del empleado. Es lo que podríamos considerar la evolución directa del Employee Self Service.

SCP Portal - Portal empleado

Por supuesto, SAP Cloud Platform Portal está basado en roles, sin embargo, su creación y configuración se aproxima más al concepto de roles ABAP, catálogos y grupos Fiori que ya conocemos, que a los roles de portal del SAP Enterprise Portal actual.

De cara a plantear una migración de un portal (EP) a la nube, debemos tener en cuenta los siguientes aspectos.

  • Las iviews de tipo Web Dynpro Java NO están soportadas en SAP Cloud Platform Portal, sin embargo, es posible utilizar SAP Enterprise Portal 750 como Content Provider de este tipo de contenidos mientras se migran a otra tecnología.
  • El KM (Knowledge Management) puede sustituirse con la solución en la nube SAP Document Center. Es posible usar la herramienta Egnyte Connect para migrar el contenido de un repositorio a otro.
  • Si se utiliza la UWL (Universal Work List) en EP, las tareas pasan a gestionarse desde la aplicación estándar Fiori My Inbox.
  • Para versiones SAP Netweaver 7.30 en adelante, hay una herramienta de migración de SAP Enterprise Portal.

Como comentaba al principio, SAP apuesta fuerte por las soluciones cloud, pero el camino es largo. Por esto, SAP Cloud Platform Portal puede ser un buen punto de partida para dar ese salto a la nube y aprovechar la potencia que ofrece como punto de acceso central tanto a nuestros sistemas de negocio on-premise (SAP ECC, S4HANA, SAP BW…) como a nuevas soluciones en la nube (SuccessFactors, Ariba…) que vayamos incorporando a la infraestructura de nuestros sistemas.

Esperamos que te haya resultado interesante este artículo. Si tienes cualquier consulta, puedes dejarnos un comentario o con nuestro equipo especializado de consultores.

La entrada SCP Portal, la evolución de SAP Enterprise Portal se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Formulario Workflow -Serie Workflows en SAP (2/5)

$
0
0

Como vimos en el artículo de creación de workflows, dentro de un workflow se pueden realizar una gran variedad de actividades, entre ellas, crear un formulario que el usuario deberá rellenar dentro del proceso Workflow. Pues bien, en este articulo vamos a ver cómo seria el proceso para construir un formulario en nuestro Workflow.

Lo primero de todo, es crear una estructura en la se11 con los campos que queremos mostrar en el formulario. Una vez creada la estructura, en el container del workflow debemos crear un nuevo objeto, cuyo tipo debe ser la estructura que hemos creado y le deberemos indicar como mínimo que va a tener parámetro import y export.

Ahora podemos empezar a crear el formulario en el workflow. Al definirlo deberemos indicar los siguientes parámetros:

Workflows - formularios 3

Indicaremos el tipo de formulario (siempre indicaremos DYNP_FORM) y en la acción deprenderá de si queremos visualizarlo, modificarlo, etc. Para crearlo SAP nos facilita un Wizard en el que se indicará el nombre del formulario y el elemento container (que será el objeto que hemos creado en el container del workflow). El mismo Wizard será el que se encargue de generar el formulario, (al final tendremos una dynpro donde disponemos del Screen Painter para poder adaptar el formulario a nuestro gusto) y también de generar el binding mediante el cual pasaremos los datos que necesitemos para completar la dynpro. En este caso la tarea estándar que nos proponer por defecto es la TS70008113.

Un ejemplo, de cómo nos quedaría completo la imagen anterior, una vez generado el formulario, sería la siguiente:

Workflows - formularios

En este caso hemos definido el formulario “4 Formulario” y nuestro objeto del container del workflow que hemos definido del tipo de nuestra estructura, se denomina “Form”.

En cuanto al binding de la tarea de esta actividad, quedaría de la siguiente manera:

Workflows - formularios 2

Como ya hemos dicho, de generar el binding se encargara el wizard, aun así le podemos ampliar a nuestro gusto siempre que no toquemos los parámetros que nos ha creado SAP, y no olvidar la asignación del responsable.

Más artículos sobre Workflows en SAP:

La entrada Formulario Workflow -Serie Workflows en SAP (2/5) se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Tareas de Workflow – Serie Workflows en SAP (3/5)

$
0
0

Ya vimos en artículos anteriores los pasos básicos para definir un workflow y crear formularios. Aun así, los workflows nos brindan un gran abanico de posibilidades, ¿qué pasa si esta tarea no se ajusta a nuestras necesidades (o más comúnmente, a las del cliente)?

En este articulo vamos a ver cómo nos definimos una tarea a medida.

  1. En primer lugar, tendríamos que ir a la transacción PFTC_INS, la misma que utilizamos para crear la tarea de tipo workflow, pero en este caso se da tipo “TS Tarea estándar”.
  1. Una vez hemos creado la tarea, y estemos dentro de ella vamos a realizar las siguientes acciones.

Datos Básicos:

En este paso vamos a definir el título de la tarea, su texto explicativo, el título de workflow etc. También indicaremos el tipo de objeto que se va a utilizar en esta tarea, y si esta tarea va a requerir iteración con el usuario o se va a procesar en fondo.

Descripción:

Aquí construiremos el workitem que se va a utilizar (pudiendo usar variables definidas en el Container de la Tarea).

Container:

Declararemos las variable, tabla u objetos que se van a utilizar en esta tarea, el estándar nos propone una serie de objetos que el workflow debe contener para funcionar correctamente, pero después podemos ampliarle.

Eventos desencadenantes:

No siempre las tareas, se tiene porque ejecutar dentro de un tipo actividad, también se pueden ejecutar al estar al escucha de un evento y este ejecutarse, pues bien, las tareas se le pueden asignar un evento para que este a la escucha de este.

Eventos finalizadores:

En este caso funcionaria con los anteriores, pero en este caso se finalizaría la tarea.

Reglas por defecto:

Nos permite ampliar las cualidades nuestra tarea con alguna funcionalidad extra

  1. Otro punto importante, es la de indicar un responsable. El responsable va a ser quien/es se encargue de la gestión de la tarea, receptor del workitem y decisor de su continuación. Para indicar al responsable, nos iríamos en la parte superior: Datos adicionales => Aisgn. Responsable => Actualizar. Podemos indicar el responsable de diferentes formas:
  • Puesto de trabajo
  • Rol
  • Función
  • U. Organizativa
  • Posición
  • Tarea
  • Usuario

Más artículos sobre la serie de workflows:

La entrada Tareas de Workflow – Serie Workflows en SAP (3/5) se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Introducción técnica al testeo unitario ABAP – ABAP UNIT TESTING

$
0
0

En el artículo anterior os hablaba de las ventajas de integrar el ABAP Unit Testing en un proceso de desarrollo. En este artículo y los siguientes nos vamos a meter en harina y empezar a ver todo desde el punto de vista técnico.

Cómo se crea el entorno de pruebas?

Para crear un entorno de pruebas unitario es necesario crear al menos una clase local de pruebas  (se pueden crear varias, ya que podemos necesitar varios entornos de pruebas diferentes). Si el elemento a testear es una clase, ésta ya dispone de un lugar específico al que se puede acceder desde el menú de opciones superior.

ABAP UNIT TESTING, Introducción técnica - Clases de test locales

Para cualquier otro elemento a testear, la clase se debe definir/implementar en los Includes correspondientes a las definiciones/implementaciones locales.

La clase local de pruebas es como cualquier otra clase habitual. Sólo presenta las siguientes particularidades en su definición:

CLASS ltc_nombre_de_la_clase DEFINITION FOR TESTING RISK LEVEL x DURATION y.

  • El nombre de la clase, al que es aconsejable añadirle el sufijo LTC_ (local test class).
  • FOR TESTING, que evita que la clase sea ejecutada por accidente en un entorno productivo. Esta clase es segura y sólo se puede ejecutar en modo de prueba.
  • RISK LEVEL, que declara el nivel de riesgo de la prueba. Hay tres valores posibles: HARMLESS (no tiene efecto sobre datos persistentes ni sobre ajustes del sistema), DANGEROUS (puede modificar datos persistentes) y CRITICAL (puede modificar ajustes del sistema y Customizing).
  • DURATION, establece la duración de los tests. También hay tres posibles valores: SHORT (menos de un minuto), MEDIUM (entre uno y cinco minutos) y LONG (más de cinco minutos).

Si cualquiera de nuestras pruebas se sale del entorno que hemos definido (en cuanto a duración o en cuanto a alteración de datos persistentes, etc.), su ejecución se detendrá (dependiendo de la modalidad de ejecución) y obtendremos el correspondiente mensaje de error en la ventana de resultados.

Una vez definida la clase, ya es detectada por la herramienta ABAP Unit Browser . Con esta herramienta podemos ejecutar y analizar los tests que definamos en la/s clase/s de pruebas. Para activar la herramienta, hay que ir a la transacción SE80->Utilidades->Opciones->Pestaña Workbench (general) y activar la casilla Browser de test unidad ABAP.

ABAP-UNIT-TESTING-Introducción-técnica-Activación-herramienta-ABAP-Unit-Browser

ABAP UNIT TESTING, Introducción técnica - ABAP UNIT TESTING, Introducción técnica - Activación herramienta ABAP Unit Browser 2

ABAP UNIT TESTING, Introducción técnica - Activación herramienta ABAP Unit Browser 3

El browser detectará todos los elementos que poseen clase de test y nos los mostrará filtrados por el criterio que escojamos (paquete, clase, función, autor, etc.). Desde el browser se podrán ejecutar las clases de test que queramos pulsando el botón derecho del ratón.

Creación de los casos de prueba

Cada una de las pruebas que queramos realizar, la debemos definir como método de la clase de pruebas y añadirle el prefijo FOR TESTING.

METHODS Nombre_Del_Método_de_Pruebas FOR TESTING.

Esto es debido a que dentro de la clase de pruebas podemos definir todos los métodos y miembros que necesitemos (sólo se admiten miembros y métodos PRIVADOS), aunque durante la ejecución de la clase de pruebas sólo se ejecutarán los métodos definidos FOR TESTING. El resto de métodos reciben el nombre de métodos de ayuda y tan sólo servirán para hacer nuestro código más legible y fácil de modificar.

Los métodos de prueba también presentan la particularidad de que no admiten parámetros de ningún tipo. Tienen que tener una estructura definida y ordenada en tres partes fundamentales que nunca deben faltar:

  • Datos de partida, donde se realizan las operaciones de configuración de la prueba (por ejemplo, si estamos probando una función, se almacenan en variables los parámetros de entrada que queremos probar).
  • Realización de la prueba, en donde el objeto de prueba es invocado (siguiendo el ejemplo, se hace una llamada a la función con los parámetros definidos en el paso anterior).
  • Contraste de los resultados, en donde se comparan los resultados obtenidos por el objeto de pruebas con los resultados que esperamos obtener a priori. Esto se hace a través de los métodos de la clase CL_ABAP_UNIT_ASSERT, que tiene los métodos suficientes (EQUALS, IS_INITIAL, IS_BOUND, DIFFERS, etc.) para contrastar los resultados obtenidos (parámetro ACT de los métodos) con los esperados (parámetro EXP de dichos métodos). Si alguno de ellos difiere, el test se considera fallido y el sistema nos proporciona toda la información necesaria para saber cuál ha sido el problema.

Además del prefijo FOR TESTING, hay 4 métodos concretos que podemos definir si los necesitamos: CLASS_SETUP, SETUP, TEARDOWN y CLASS_TEARDOWN. Estos métodos los comentaremos a continuación.

Una vez que tenemos definida la clase de pruebas y algún método de pruebas, podemos iniciar la ejecución. La ejecución es cíclica y tiene las siguientes fases:

  • Ejecución del método estático CLASS_SETUP. Se ejecuta una única vez por cada clase de prueba. Sirve fijar o establecer todos los datos que van a ser comunes a todas las pruebas que se van a realizar dentro de la clase de pruebas. De esta forma, eliminaremos duplicidades en código de asignación de parámetros comunes.
  • Ejecución del método SETUP. Se ejecuta siempre antes de cada método de prueba. Sirve para establecer un entorno seguro de prueba. Por ejemplo, si estamos testeando un objeto de una clase determinada, en este método se debe llamar al constructor del objeto y crearlo de nuevo. De esta forma, eliminamos la posibilidad de obtener falsos positivos (o negativos) debido al almacenamiento de datos de pruebas anteriores en el objeto.
  • Ejecución del método de prueba. En esta fase se ejecuta el método de prueba (FOR TESTING) propiamente dicho.
  • Ejecución del método TEARDOWN. Se ejecuta siempre después de cada método de prueba. Sirve para relaizar las operaciones de limpieza de memoria y datos necesarios para eliminar todo posible rastro dejado por el método de prueba.
  • Ejecución del método estático CLASS_TEARDOWN. Se ejecuta una única vez por cada clase de prueba tras el último método TEARDOWN. Sirve para realizar las operaciones de limpieza de memoria y datos necesarios para eliminar todo posible rastro dejado por la clase de prueba.

Los métodos de prueba siempre se van a ejecutar en un orden aleatorio, para que no haya posibilidad de enmascaramiento de fallos debido a un orden preestablecido.

Análisis de los resultados

Tras la ejecución de la/s clase/s de test, obtenemos los resultados. Los resultados están organizados en dos pestañas: ABAP Unit Results y Coverage Metrics.

La pestaña ABAP Unit Results nos informa de una manera sencilla, ordenada y muy visual del resultado de los diferentes tests. Luz verde indica resultado positivo y luz roja resultado negativo.

ABAP UNIT TESTING, Introducción técnica - ABAP Unit Results

Cuando hay un error, el sistema nos da toda la información necesaria para que podamos aislarlo y corregirlo.

La pestaña Coverage Metrics nos da información sobre qué porcentaje de código se ha probado, qué procedimientos se han testeado e incluso qué líneas de código se han utilizado.

ABAP UNIT TESTING, Introducción técnica - Coverage Metrics

El código sobre fondo verde indica código utilizado en los tests, mientras que el fondo rojo nos indica código no utilizado.

ABAP UNIT TESTING, Introducción ténica - Código usado vs no usado

De esta forma, podemos ver qué partes del código no se han testeado aún y diseñar más tests para cubrirlas.

Conclusión

Este artículo tan sólo pretende ser una breve introducción a un tema tan importante como apasionante (a nivel teórico y práctico) y profundo. Esperamos ir explicando cosas más concretas en futuras entregas, como ejemplos de tests, técnicas para convertir código existente en testeable, técnicas de desarrollo orientado al testeo, técnicas de inyección de suplantadores de dependencias, ejecución de Unit Tests multinivel, creación de objetos espía, automatización de la ejecución de tests….en fin, el tema da para mucho. Por ahora, esperamo que os haya servido para despertar vuestra curiosidad y mentalizaros de que realizar estos test “tempranos” es necesario y ahorra muchísimo tiempo en debugging. ¡Ahora, a convencer a vuestros responsables de desarrollo!

La entrada Introducción técnica al testeo unitario ABAP – ABAP UNIT TESTING se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Avisos y tipos de órdenes de SAP PM

$
0
0

En el módulo de SAP PM existen dos tipos de componentes para la gestión de mantenimiento; por un lado, están los avisos y por otro lado las órdenes.

Los avisos se utilizan en la gestión de mantenimiento en caso de se produzca una avería o una situación de excepción que:

  • Describen la condición técnica excepcional de un objeto.
  • Efectúan una solicitud en el departamento de mantenimiento para poder realizar una actividad concreta.
  • O inclusive, pueden informar sobre un trabajo ya realizado.

Para definir los diferentes tipos de avisos en Customizing, se puede realizar a través de la ruta siguiente:

Mantenimiento y servicio al cliente -> Gestión de mantenimiento y servicios -> Avisos de mantenimiento y de servicio -> Apertura de aviso -> Clases de aviso -> Definir clases de aviso

avisos y tipos de ordenes SAP PM

Una vez se realiza el aviso desde mantenimiento, es necesario crear una orden de mantenimiento, que no son más que objetos técnicos de PM, que indican los trabajos y los costes utilizados por cada actividad de mantenimiento (es decir, mano de obra interna, externa, materiales, repuestos, servicios propios o de terceros).  Además es el único objeto que se relaciona.

Para definir las diferentes clases de órdenes en customizing se realiza a través de la ruta siguiente:

Mantenimiento y servicio al cliente -> Gestión de mantenimiento y servicios -> Órdenes de mantenimiento y de servicios -> Funciones y parametrizaciones de clases de órdenes -> Parametrizar clases de órdenes

Esperamos que este artículo te haya sido de utilidad. Puedes dejarnos preguntas o dudas en comentarios o ponerte en contacto con nuestro equipo de consultores.

La entrada Avisos y tipos de órdenes de SAP PM se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....


Binding en Workflow – Serie Workflows en SAP (4/5)

$
0
0

Como ya hemos visto en los anteriores articulo sobre cómo crear un workflow, un formulario, o cómo crear tareas que se van a trabajar en las actividades del mismo, ahora tendríamos que pensar en cómo pasar valores entre el workflow ¿no? En este articulo vamos a ver cómo crear nuestros objetos en los respectivos containeres y crear el Binding.

Lo primero de todo será saber qué tipo de parámetro es el que queremos pasar (o bien algún parámetro del estándar). En este caso vamos a tratar una fecha en la tarea y queremos que esta llegue hasta el container del workflow.

Los tipos de dato que podemos crear en un container pueden ser bien de objetos BOR, clases ABAP, referencia a campos de tablas, tipos de datos de diccionario, etc. Estos parámetros podemos pueden tratarse como import (si solo va a recibir valores), export (si solo va a exportar valores) o bien en ambos sentidos. En caso de que se quieran mover más de un registro del objeto del tipo indicado, deberíamos marcas como ‘varias líneas’.

Binding en Workflow - Tipo de dato

Binding en workflow - Tipo de dato

Una vez tenemos los objetos creados en los containeres de partida y de destino, lo que debemos hacer será crear Binding en la actividad del workflow. Generalmente si tenemos dos objetos del mismo tipo, al generar el Binding ya no debería proponer la relación SAP automáticamente. En el caso de que SAP no la propusiera, podríamos créalo manualmente.

Binding en workflow - Construcción manual

En la izquierda tendremos los objetos del container del workflow, mientras que a la derecha tendremos el container de la tarea. En el primer Binding indicaremos los valores que queremos que pasen del container a la tarea, mientras que en el segundo irán aquellos parámetros cuyo valor queremos que pasen de la tarea al workflow.

Esperamos que os haya servido de ayuda en caso de que necesitéis configurar un worklow. Tienes más artículos de esta temática aquí:

Construcción de un workflow

Tareas en workflow

Formularios en workflow

La entrada Binding en Workflow – Serie Workflows en SAP (4/5) se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

¿Qué es una Ubicación técnica en SAP PM?

$
0
0

En este artículo, vamos a contarte muy brevemente qué es una ubicación técnica en SAP PM, cuando debería utilizarse y cómo crearlas. Se trata de un proceso muy sencillo como comprobarás en las siguientes líneas.

¿Qué es una ubicación técnica en SAP PM?

Las ubicaciones técnicas SAP PM, representan el lugar donde se debe efectuar una medida de mantenimiento.

Una estructura jerárquica que define los objetos de mantenimiento de varios niveles, se puede organizar de acuerdo a los siguientes criterios: Espaciales, Técnicos o funcionales.

Qué es una ubicación Técnica en SAP PM (1)

¿Cuándo se utiliza una Ubicación Técnica (UT)?

  • Hay que realizar Medidas de mantenimiento sobre un área funcional común.
  • Registro de medidas de mantenimiento de zonas homogéneas.
  • Se deben guardar datos para su posterior evaluación.
  • Control de costes para supervisar parte del sistema.

¿Cómo se crea una ubicación técnica en SAP?

Para crear una ubicación técnica en SAP es necesario acceder a la transacción IL01 o a través de la ruta siguiente:

Logística –> Mantenimiento –> Gestión de objetos técnicos –> Ubicación técnica –> Crear IL01.

Qué es una ubicación Técnica en SAP PM (2)

Esperamos que te haya sido de ayuda, y recuerda que puedes dejarnos cualquier duda o pregunta en comentarios y trataremos de ayudarte.

La entrada ¿Qué es una Ubicación técnica en SAP PM? se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Diez razones para migrar a SAP PO

$
0
0

En el anterior artículo hablábamos de SAP Process Orchestration (PO) y sus características básicas. Aquí hablaremos de las ventajas de una migración a SAP PO.

SAP PO es un paquete de instalación completo que incluye un ESB, un motor de reglas de negocio y un motor de procesos de negocio en una única solución integrada de software basada en una pila única Java.

Incluye SAP PI y SAP Composition Environment (CE) y, por lo tanto, encapsula el conjunto de funciones de ambos. Con SAP PO las organizaciones pueden comunicarse fácilmente a través de diferentes sistemas (internos y externos) mediante un set de estándares y protocolos de integración completo y bien establecido.Diez razones para migrar a SAP PO (2)

Además, SAP PO incluye todas las herramientas de desarrollo y administración de BPM y BRM para ayudar a las organizaciones a diseñar, modelar, ejecutar, monitorizar, gestionar y analizar procesos y reglas de negocio usando una única plataforma. Esta consolidación trae consigo una mejora del rendimiento y un aumento de la eficiencia a la vez que reduce el coste total de propiedad (TCO) de manera significativa.

Es importante destacar que, al ser SAP PO una instalación basada únicamente en Java, todas las funcionalidades ABAP han desaparecido y han sido sustituidas por alternativas equivalentes en Java.

Diez razones para migrar a SAP PO (1)

Razones para la migración a SAP PO:

  1. Se simplifica el escenario IT al estar basado en una única pila Java. Se evita el inconveniente de necesitar una arquitectura que soporte dos servidores diferentes, ya que la comunicación Java-ABAP tiene impacto negativo sobre el rendimiento y la sostenibilidad.
  2. La migración a una arquitectura Java aumenta el rendimiento a todos los niveles.
  3. Con PO tenemos acceso a BPM, que facilita la integración y los flujos de trabajo, automatizando donde sea posible y solicitando intervención del usuario en los pasos que necesitan aprobación o datos adicionales.
  4. Reglas de negocio nativas que permiten flexibilizar los procesos por parte de los usuarios de negocio con SAP BRM.
  5. Mejora de la experiencia de usuario – Gracias a la integración de Fiori, se pueden crear para PO interfaces de usuario en HTML5 para ser visualizadas desde ordenadores, tabletas o teléfonos.
  6. Proporciona todas las herramientas necesarias, lo que permite desarrollar soluciones completas con mayor facilidad y eficacia.
  7. Facilidad de configuración y monitorización. Al tener todas las herramientas en la misma plataforma solo hay que preocuparse de mantener y configurar un único servidor de aplicaciones.
  8. Java Gateway permite fácil integración con servicios de SAP Fiori.
  9. Preparado para la nube. Los iFlows usados en el sistema de PO utilizan artefactos compatibles con HANA Cloud Integration, lo que permite la reutilización del trabajo realizado para la definición de interfaces y mapeos.
  10. Preparado para HANA. SAP PO permite ejecutar el middleware directamente en HANA, proporcionando información en tiempo real del sistema y permitiendo la participación en los procesos y eventos de la integración.

Por último, recordemos que SAP PI 7.4 es la última versión de PI con doble pila y que el soporte para la misma termina en 2020. Al menos hasta 2022, la versión 7.5 soportará las pilas separadas, pero es importante dejar de usar ABAP en las nuevas integraciones de sistemas PI para ir adelantándose al proceso de la migración.

Esperamos que este artículo te haya sido de interés. Puedes dejarnos tus preguntas en comentarios o ponerte en contacto con nuestro departamento de desarrollo e integración.

Departamento de Desarrollo & Integración

La entrada Diez razones para migrar a SAP PO se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Financial Closing Cockpit ¿un desconocido?

$
0
0

Hablando con varios compañeros consultores, muchos de ellos desconocían la existencia del Financial Closing Cockpit. Entonces, ¿qué es exactamente? Esta herramienta de SAP es un monitor que permite llevar un cierre financiero ordenado y sistemático. Si tus cierres financieros consisten en varias transacciones, en las que unas dependen de otras o no, ejecutadas por diferentes usuarios y por ello tienes problemas en la organización de este, esta herramienta puede ayudarte a agilizarlo y ordenarlo.

Este monitor existe en cualquier versión de SAP, ya sea R3 o S4/HANA, de manera estándar en el módulo de FI. Pero ahora, SAP ha sacado un Add-on para S4/HANA, bastante mejorado y con más funcionalidades. Empecemos hablando de las funcionalidades básicas que ofrecen ambos.

En el cierre, ya sea mensual, quincenal o anual, se tienen que realizar varias operaciones en diferentes módulos como:

  • Contabilidad general (valoración de monedas, arrastres de saldos…)
  • Contabilidad de Activos (amortizaciones, cierres de ejercicio…)
  • Cuentas por pagar o cobrar (remesas de pagos, reclamaciones…)
  • Controlling (liquidaciones, repartos…)
  • Recursos Humanos (cálculo de nóminas, presentación de informes…)

Cada una de estas actividades se ejecuta en al menos una transacción diferente, puede que incluso se necesiten más. Lo que te permite el monitor, es agrupar las diferentes tareas en carpetas con el esquema que quiera el usuario. En estas carpetas se pueden meter diferentes tareas que permiten ejecutar transacciones, programas o procesos.

Financial Closing Cockpit

Estas tareas tienen una codificación de estatus, para conocer como está ese proceso en concreto. Además, es posible crear dependencias entre las diferentes tareas, para que una no pueda ser ejecutada hasta que no haya terminado una anterior. Configurando este esquema como se desee con sus dependencias y carpetas, se puede tener una visión global del estado del cierre.

Este es un breve resumen de lo que ofrece el Financial Closing Cockpit estándar. Entonces, ¿qué tiene de nuevo el Add-On creado para S4/HANA? Pues a parte de una pequeña mejora en la visualización del Cockpit, ofrece las siguientes funcionalidades:

  • Más tipos de tareas: A parte de transacciones y programas, también permite planificar Jobs, lanzar workflows o ejecutar aplicaciones web desde el propio cockpit.
  • Ejecuciones remotas: Es posible lanzar o ejecutar desde el propio monitor transacciones o programas de otros sistemas SAP o no SAP.
  • Notificaciones: Permite el envío de notificaciones vía mail automáticas tras la finalización de una tarea.
  • Autorizaciones: el Add-On proporciona objetos de autorización estándar para la visibilidad o ejecución de las diferentes tareas. En el estándar, el que tiene acceso al monitor puede ver y ejecutar cualquier tarea.
  • Tipos de Responsables: en el monitor estándar solo se pueden indicar usuarios del sistema como responsables de las tareas. En este, se puede indicar como tal a un rol, una posición o unidad organizativa de HR, una función…
  • Parametrización propia: se añade un punto a la imagen de SAP para la parametrización del monitor.
  • Informes: informes específicos para el monitor.

Como conclusión, cualquiera de las dos herramientas puede ser de gran ayuda en la organización de un cierre de periodo. Te permitirá tener un esquema organizado y ordenado para cualquier usuario, sin necesidad de conocer todas las transacciones. Además, se puede obtener de un vistazo rápido el estado del cierre y en qué tarea se encuentra.

Esperamos que este artículo te haya sido de utilidad. Si tienes cualquier duda o quieres ampliar la información, puedes ponerte en contacto con nuestro departamento de SAP Finanzas.

Área SAP Finanzas & Controlling

La entrada Financial Closing Cockpit ¿un desconocido? se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Gestión de objetivos en SuccessFactors · Goal & Performance Management

$
0
0

A día de hoy SAP SuccessFactors es uno de los softwares de gestión de empleados más populares en tecnología cloud del mercado. La clave de su éxito radica en la combinación del desarrollo de los empleados (gestión del talento y rendimiento) con los objetivos de la empresa.

Al igual que la mayoría de sistemas empresariales, SuccessFactors se compone de diversos módulos de gestión de los recursos humanos destacando el tándem Goal Management-Performance Management entre ellos. Performance and Goals es uno de los principales módulos del SSFF HCM suite en gestión de empleados ya que ayuda a las organizaciones a llevar  a cabo una mayor revisión del rendimiento del empleado y, a alinear los objetivos del empleado con los objetivos de la dirección.

Gestión de objetivos (Goal management):

El goal management se basa en los planes de objetivos o goal plans que son hojas de trabajo online usadas por el empleado y el manager para crear y acceder a objetivos de performance en un lugar central y, para rastrear el progreso que va haciendo el empleado a lo largo del año.

Los objetivos que aparecen en el plan de objetivos son fáciles de crear y editar por cualquier usuario, ya sea manager o empleado, siempre y cuando tenga los permisos apropiados. El plan de objetivos o goal plan se compone de los siguientes elementos:

  • Categorias de objetivos: Las categorias se usan para organizar los objetivos en el goal plan. Éstas pueden ser estándar o personalizables. Las primeras están basadas en la metodología Balance Scorecard y recoge las siguientes categorías: Cliente (Customer) , Finanzas (Finance) , Aprendizaje y Desarrollo (Learning & Growth) y Procesos Internos de Negocio (Internal Business Processes). Los usuarios también pueden crear categorías adicionales en base a sus necesidades a través del centro de administradores (Admin Center) o por medio de un editor XML para configurar el layout de la plantilla.
  • Align and Link: Esta herramienta del goal plan ayuda a mejorar la comunicación entre empleados de diferentes niveles jerárquicos ya que nos permite compartir y transferir objetivos entre usuarios independientemente de la posición que ocupen en la estructura organizativa, y así poder seguir un control más exhaustivo del cumplimiento de objetivos.
  • M.A.R.T Goal Wizard y Librerias de objetivos: S.M.A.R.T es un acrónimo para Específico (Specific), Medible (Measurable), Alcanzable (Attainable), Relevante (Relevant) & temporal (Time Bound). Gracias a ésta herramienta, el usuario dispone de una guía de creación de objetivos por lo que las metas corporativas se pueden estandarizar más facilmente. Además, para ayudar a los usuarios a asignar objetivos apropiados a los empleados y ‘transferirlos’ a otros usuarios o departamentos dentro de la empresa, la aplicación de PM & GM viene con una librería compuesta de más de 500 objetivos estándar.

Aunque PM & GM son 2 módulos separados dentro de SAP SSFF, trabajan mano a mano para apoyar los procesos de desarrollo de talento.

Gestión del desempeño (Performance management):

Debido a que los objetivos se establecen y se siguen, éstos se convierten en una parte fundamental del performance review process de PM. El performance review en PM ayuda a las empresas a medir el desempeño individual del empleado y a compararlo con los objetivos y compentencias de la empresa y del propio empleado. Esta información derivada de la integración de ambos módulos, influye directamente a los módulos de compensation management, succession planning, learning & career development. Además PM proporciona numerosas herramientas para que los participantes proporcionen el mejor feedback posible (gestión de itinerarios flexibe, asistentes de redacción, Coaching advisor, herramientas de solicitud de feedback…etc).

Finalmente, como conclusión, decir que GM y PM no sólo están integrados entre ellos, sino que se encuentran perfectamente integrados con los módulos de compensation & learning que, a su vez, gracias a la implantación de los escenarios de integración, se encuentran interrelacionados con sus respectivos módulos on-premise, reforzando de esta manera la principal ventaja de la solución cloud de SuccessFactors: ‘Su integración on-time’.

En artículos posteriores seguiremos abordando funcionalidades de SuccessFactors. Esperamos que este artículo te haya resultado de utilidad. Recuerda que puedes ponerte en contacto con nuestro equipos de consultores especializados en SAP HCM · Recursos Humanos.

Área SAP HCM · RRHH

La entrada Gestión de objetivos en SuccessFactors · Goal & Performance Management se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Manual Migration Cockpit – I

$
0
0

Esta serie de artículos, consta de dos partes en las que veremos que es, y como se puede utilizar el cockpit de migración de S/4 Hana.

S/4 Hana Migration Cockpit es una herramienta de migración de datos a sistemas S/4 Hana. Nos permite descargar hojas de Excel con un formato predefinido, donde podremos introducir los datos a migrar y utilizar ese mismo documento para la carga masiva de datos al sistema.

Transacción: LTMC

Esto abrirá un navegador web donde manejaremos el Migration Cockpit.

La primera pantalla nos permite crear nuevos proyectos de migración o utilizar los previamente creados. Si utilizamos un proyecto creado anteriormente, este contendrá los mapeos ya realizados y no hará falta volver a hacerlos.

Manual Migration Cockpit I - Crear nuevo proyecto de migración

En el ejemplo que realizaremos crearemos un nuevo proyecto a partir de 0. Pulsamos el botón CREAR.

Manual Migration Cockpit I - Ejemplo

Introducimos una denominación y pulsamos de nuevo crear.

Esto nos muestra una pantalla con todos los tipos de objetos que podemos migrar al sistema.

Manual Migration Cockpit I - Objetos que mirar al sistema

La versión S/4HANA 1610 FPS2 contiene los siguientes objetos de migración:

Denominación Área
Migration of Activity prices CO
Migration of Activity types CO
Migration of Banks FI
Migration of Batches QM
Migration of Bill of Materials PP
Migration of CPM projects CPM
Migration of Characteristics CA-CL
Migration of Classes CA-CL
Migration of Material Consumptions MM
Migration of Cost Centers CO
Migration of Customer Open Items FI
Migration of Customers LO
Migration of Equipment Task List PM
Migration of Equipments PM
Migration of Exchange Rates FI
Migration of Fixed Assets FI
Migration of Functional Locations PM
Migration of G/L Account Balances FI
Migration of G/L Account Open Items FI
Migration of Internal Order CO
Migration of Material Inventory Balances MM
Migration of Material Long Texts LO
Migration of Materials LO
Migration of Profit Centers FI
Migration of Purchase Orders (only open) MM
Migration of Purchasing Contracts MM
Migration of Purchasing Info Records MM
Migration of Routing PP
Migration of Sales Orders (only open) SD
Migration of Source Lists MM
Migration of Vendor Open Items FI
Migration of Vendor/Supplier LO
Migration of Work Center PP

Si accedemos al cockpit en idioma inglés, pulsando el botón visualizar podemos acceder a información adicional sobre el objeto.

Manual Migration Cockpit I - Información adicional de objeto

Seleccionamos el objeto que queremos cargar al sistema, en este caso materiales.

Manual Migration Cockpit I - Selección objetos

Esto nos lleva a la pantalla donde haremos la carga del objeto.

El primero paso es el descargarnos la plantilla donde introduciremos los datos.

Manual Migration Cockpit I - Plantilla

El Excel lo constituyen varias hojas, los campos asteriscados son obligatorios, si no queremos rellenar una de las hojas no es necesario rellenar sus campos obligatorios.

Manual Migration Cockpit I - Hoja excel

Como ejemplo, voy a cargar una materia prima llamada MAT-1:

Manual Migration Cockpit I - Carga materia prima

Teniendo el Excel cargado, pulsamos en Cargar el fichero.

Manual Migration Cockpit I - Cargar fichero

Introducimos el fichero y pulsamos Upload.

Seleccionamos el fichero y activamos.

Manual Migration Cockpit I - subida fichero

En este punto ya tenemos el archivo cargado en un punto intermedio, pero no en el sistema.

En la segunda parte del artículo, veremos como realizar el resto del proceso. Si tienes cualquier duda, puedes dejarnos un comentario o ponerte en contacto con nuestro equipo de consultores especializados.

Area SAP Logística

La entrada Manual Migration Cockpit – I se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Manual Migration Cockpit – II

$
0
0

En la primera parte del artículo vimos la funcionalidad del cockpit y sus diferentes objetos. También comenzamos un nuevo proyecto y dimos los primeros pasos para migrar. Nuestro último paso fue el de activar el objeto, una vez activado, podemos manipularlo:

Manual Migration Cockpit II - vista de objetos cargados

Seleccionando el objeto y pulsando el botón abrir, podemos ver lo que se ha cargado, además si pulsamos en Tratar se pueden modificar los datos antes de la migración.

Manual Migration Cockpit II - Tratamiento de objetos

Para iniciar la migración Iniciar transferencia.

Manual Migration Cockpit II - Iniciar trasnferencia

Cuando esté al 100% cerramos.

Manual Migration Cockpit II - Barra de progreso

En el cuadro de abajo se ven las advertencias y los errores que da el fichero, en este caso son errores de mapeo, los cuales se solucionan en el paso 2.

Manual Migration Cockpit II - Errores

Tenemos dos opciones de mapeo, masivo o individual:

Manual Migration Cockpit II - mapeo

  • Masivo: Seleccionamos todos los registros y pulsamos: Confirmar valores de asignación.Manual Migration Cockpit II - mapeo masivo
  • Individual: Podemos clickar sobre uno de ellos y nos mostrará la siguiente pantalla:Manual Migration Cockpit II - mapeo individual

El valor fuente es el valor que recoge del Excel y el valor destino, es el que tendrá en la máquina. Seleccionamos los campos, los validamos y le damos a Grabar.

Una vez esté todo mapeado, continuamos a la simulación, si en la simulación todo ha ido bien, no habrá mensajes de error en la parte inferior de cockpit. Si los ha habido tenemos que corregirlos y volver al primer paso de la migración.

Cuando todo esté bien pulsamos siguiente y esto hará que se carguen los datos de manera definitiva en el sistema.

Manual Migration Cockpit II - Carga definitiva

Con esto habríamos concluido el proceso de migración.

Ahora, desde la MM03 podemos ver el material que hemos creado con el Migration Cockpit.

Manual Migration Cockpit II - MM03

Esperamos que esta segunda parte te haya resultado de ayuda en el caso de tener que migrar datos a sistemas S/4 HANA. Si tienes cualquier duda puedes dejarnos un comentario o ponerte en contacto con nuestro equipo de consultores.

Área SAP Logística

La entrada Manual Migration Cockpit – II se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....


SII · Tratamiento error 1116/1117: Gestión del NIF en SAP

$
0
0

Debido al gran número de clientes y proveedores que pueden existir dentro de un sistema SAP, uno de los errores más habituales en el SII es:

1116 – El NIF no está identificado. NIF:XXXXX / 1117 – El NIF no está identificado. NIF:XXXXX. NOMBRE_RAZON:YYYYY

Esto genera el rechazo de la factura enviada al SII porque el NIF XXX  no está identificado en la AEAT.

Has diferentes motivos por los que se puede producir este error en el envío del SII por un NIF no identificado:

SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP - Error

  • El NIF debe de estar dado de alta en el censo de la AEAT
  • En personas físicas se debe mantener el orden de identificación indicado, es decir: Apellido1 Apellido2 Nombre.
  • El contenido del campo nombre debe figurar lo más completo posible para que la rutina de identificación pueda encontrar el titular.
  • Para las personas jurídicas el sistema de identificación no trata la razón social.

¿Cómo se debe enviar una factura emitida cuya identificación del NIF receptor no figura censado en la AEAT?

Tenemos una factura que la AEAT la ha rechazado con el error 1116 / 1117 por un NIF no identificado. Vamos al deudor del documento contable y comprobamos que, efectivamente, éste no tiene el NIF informado.

SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP - Comprobación de error

Para aquellos casos en que se haya rechazado una factura emitida, excepcionalmente, la AEAT habilita la opción de realizar el segundo envío e informar el NIF como “NIF no censado”.

La forma de proceder para enviar dicha factura se realizará a través del bloque IdOtro con los siguientes contenidos:

  • Código país: ES
  • Clave ID: 07. No censado
  • Número Id: NIF no censado del receptor de la factura
  • Apellidos y nombre: Nombre del no censado receptor de la factura.

Para ello, debemos de marcar el deudor como NO CENSADO en SAP, accediendo a los datos del cliente o proveedor e informando el campo Nº ident. Fis.2 con el valor ‘07’ de la siguiente manera:

SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP - Marcar como NO CENSADO

Una vez tengamos el deudor en SAP marcado como no censado, vamos a la factura que se ha quedado como rechazada desde el Cockpit y realizamos una modificación pinchando el botón SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP - Modificar estado  actualizando el Status del eDocument como Creado para poder generar de nuevo el envío de la lista ejecutando de nuevo la transacción ESSII_EDOCLIST “Creación de Listas”.

SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP Transacción ESSII_EDOCLIST

Para poder ver el estado del eDocument que hemos enviado a la AEAT, si accedemos al Cockpit podemos ver que ahora la factura queda como Registrada con Errores por parte de la Agencia mientras actualizamos los datos correctamente.

SII - TRATAMIENTO ERROR 11161117 GESTION DEL NIF EN SAP - Factura registrada con errores

De esta manera, conseguimos que el envío se realice dentro del rango de fechas evitando penalizaciones.

A través de esta vía, también se intentará su validación contra el censo, de manera que podría lograse su identificación, aunque la factura figurará como aceptada con errores.

En cualquier caso, un error de formato en el NIF supondrá un rechazo de la factura.

Esperamos que este artículo te haya resultado de interés. Si tienes alguna duda, puedes dejarnos un comentario o contactar con nuestro equipo de consultores especializados en el área de finanzas de SAP.

Área SAP Finanzas & Controlling

La entrada SII · Tratamiento error 1116/1117: Gestión del NIF en SAP se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Ejemplo de escenario usando SAP Process Orchestration

$
0
0

En esta entrada vamos a ver un ejemplo de proceso NW BPM para ver las aplicaciones que tiene SAP Process Orchestration. Los requerimientos incluyen la entrada de un mensaje con múltiples registros que hay que tratar de manera individual.

Usaremos índices para separar los registros y procesarlos uno a uno.

Para este escenario tendremos instalado y configurado el SAP NetWeaver Development Studio 7.5, con las conexiones con PI (Integration Directory y ESR) y los objetos necesarios definidos.

Se habrán creado las Service Interfaces y los Data Types necesarios para el proceso en el ESR e importado al proyecto en el NWDS.

El proceso completo, que no se tratará en su totalidad, es el siguiente. En este escenario, se trata un fichero de modificaciones de empleados enviado desde SAP HCM a NW BPM vía SAP PI y se procesan las contrataciones nuevas antes de actualizar todos los registros en SuccessFactors.

Ejemplo de escenario usando SAP Process Orchestration - Proceso

Proceso

Ahora vamos a mostrar el proceso de dividir el mensaje de entrada registro a registro para el tratamiento individual.

Definir los Data Objects

DO_TypeCount – se usará para contar el número de registros de la estructura de entrada.

Data type: integer

DO_LoopCount – usado para contar el número de iteraciones en el flujo del proceso.

Data type: integer

DO_Index – usado para el índice correspondiente a cada registro a evaluar

Data type: long

Se usará el tipo long para que sea compatible con la función get en el mapeo.

DO_HCM_Users –  mensaje con los registros de datos de empleados de la organización importado desde el ESR.

Data type: DT_HCM_Users

DO_User_Split – nuevo objeto al que se mapeará el registro individual para su mapeo y posterior tratamiento, importado desde el ESR.

Data type: DT_Users

Start

En este primer paso del proceso se recibe el mensaje de entrada mediante un trigger que lleva asociada la Service Interface definida e importada desde el ESR.

Ejemplo de escenario usando SAP Process Orchestration - TriggerEjemplo de escenario usando SAP Process Orchestration - Propiedades del trigger

En el evento Start, se realiza el mapeo inicial desde el mensaje de entrada al DO_HCM_Users y se inicializan los contadores.

DO_Index = 0.

DO_LoopCount = 0.

DO_TypeCount = count(DT_HCM_Users/user).

Uncontrolled Merge

Recoge el proceso después de procesar las opciones de la puerta definida en el siguiente paso.

Ejemplo de escenario usando SAP Process Orchestration - Uncontrolled merge

 

Exclusive choice Gateway

Se pone una condición para comprobar si ya se ha recorrido todo el mensaje de entrada o hay que seguir el proceso.

Numeric-equal(DO_TypeCount, DO_LoopCount)

 Ejemplo de escenario usando SAP Process Orchestration (5)

Subproceso SplitEjemplo de escenario usando SAP Process Orchestration - subproceso split

Actividad de mapeo

Se mapea del objeto DO_HCM_Users al objeto destino DO_User_Split usando la función get para seleccionar, mediante el índice, el registro a tratar.

Ejemplo de escenario usando SAP Process Orchestration (4)Ejemplo de escenario usando SAP Process Orchestration - Actividad de mapeo

Contadores

Se actualizan los contadores de índice e iteraciones sumándoles uno en el mapeo.

Ejemplo de escenario usando SAP Process Orchestration - contrador 1Ejemplo de escenario usando SAP Process Orchestration - contador 2

End

Final del proceso.

Monitorización

Una vez finalizado el proceso y, después de asegurarnos de que no tiene ningún error, solo queda hacer el build y deploy para empezar a probarlo.

A través del wsnavigator (https://<host>:<port>/wsnavigator) podemos configurar un mensaje de entrada y lanzarlo para monitorizar el proceso después en el SAP NetWeaver Administrator (http://<host>:<port>/nwa) .

Ejemplo de escenario usando SAP Process Orchestration - configuración de mensaje de entrada

Este escenario es una demostración de los procesos que se pueden implementar usando las herramientas y funcionalidades de SAP PI y SAP BPM englobadas dentro de SAP Process Orchestration.

Nota: La configuración de las conexiones entra SAP NW PI y NW BPM quedan fuera del ámbito del documento.

Esperamos que este artículo te haya servido de ayuda. Si lo deseas, puedes dejarnos un comentario o ponerte en contacto con nuestro departamento de User Experience & Integration

Contacta con nuestro departamento UX/I

La entrada Ejemplo de escenario usando SAP Process Orchestration se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Mapeos de escala en formularios de rendimiento en SuccessFactors

$
0
0

En artículos anteriores mencionábamos las características de la implantación del módulo de desarrollo en SuccessFactors.  Básicamente, gracias a desarrollo podemos realizar evaluaciones estandarizadas a nuestros equipos de trabajo mediante la creación de informes de rendimiento y el uso de escalas de calificación. Si bien es cierto que la solución nos ofrece plantillas y escalas estándar, es normal encontrarnos con situaciones en las que el cliente o nuestra propia empresa nos pida una escala y plantilla a la carta y que, nos veamos forzados a configurarlas:Mapeos de escala en formularios de rendimiento en SuccessFactors - Documento valoracion

Ante éstas situaciones, deberemos prestar atención a los requisitos exigidos y echar mano de las posibles parametrizaciones que tenemos disponibles en el admin center gracias a nuestro rol de administrador o, por otro lado, también deberemos configurar el XML de nuestra plantilla de desarrollo.

En este artículo abordamos la parametrización de escalas de rendimiento (o rating scales) y su configuración en XML para ajustarlas a nuestras necesidades y/o requisitos.

Imaginemos que queremos usar una escala de rendimiento de 5 valores (Mejorable, suficiente, bueno, muy bueno y excelente)  para calificar a nuestros empleados en base a 5 competencias básicas: Aplicación de conocimientos, Seguridad en la ejecución del trabajo, Eficacia en la forma de trabajo, Buena disposición y diligencia y, por último, espíritu de colaboración. Cada uno de los 5 valores descritos posee los siguientes puntos de rendimiento:

  1. Mejorable = 0 puntos.
  2. Suficiente = 5 puntos.
  3. Bueno = 10 puntos.
  4. Muy bueno = 15 puntos.
  5. Excelente = 20 puntos.

Con éstos primeros requisitos podríamos ya lanzarnos al admin center y a empezar a definir nuestras 5 competencias que se mapearían a posteriori con nuestra plantilla de formulario a utilizar. Una vez definidas, deberemos crear desde el centro de administradores nuestra escala de calificación y asignársela a nuestra plantilla de evaluación de empleados:

Mapeos de escala en formularios de rendimiento en SuccessFactors - Escala de valoracion

Con esta escala ya podríamos puntuar a nuestros empleados con una puntuación máxima de 20 puntos por competencia. Sin embargo, el sistema no sabría como se computan dichas calificaciones por lo que no nos quedaría más remedio que acceder a nuestro XML ( XMLPad Pro Edition) para establecer nuestros cálculos de escala.

Imaginemos que queremos mostrar una calificación final por formulario en base a la suma total de cada una de las 5 puntuaciones siendo la nota máxima 100 puntos ( 5 competencias x 20 puntos cada competencia) y la nota mínima 0 puntos en total. La fórmula a utilizar no podría ser mas sencilla, bastaría con decir en nuestro XML que queremos que se sumen las puntuaciones mediante el atributo rate-by-adding-values = ‘’true’’.

Para complicar aún más el asunto, decidimos que realmente esa escala no es la que queremos que aparezca en nuestro informe final de valoración, si no que deseamos que la puntuación final obtenida (0-100) se mapee con otra escala de valoración final A-B-C-D-E en base a nuestro total obtenido de la siguiente forma:

Nota Final

Puntuación

A

86-100

B

66-85

C

36-65

D

16-35

E

0-15

Es decir, que si obtenemos un total de 100 puntos (20 por cada competencia) se nos otorgue una calificación final de A (Matrícula). ¿Cómo conseguimos traducir nuestra escala? A  base de configuraciones en el XML. ‘Simplemente’ deberíamos definir nuestro trozo de código en la meta section de la siguiente forma:

Mapeos de escala en formularios de rendimiento en SuccessFactors - Configuracion meta sectionMapeos de escala en formularios de rendimiento en SuccessFactors - Configuracion meta section (2)

Una vez definida nuestra escala, solo tendríamos que validar nuestro XML y cargarlo a través del Admin Center en nuestra instancia.

Mapeos de escala en formularios de rendimiento en SuccessFactors - Carga admin centerMapeos de escala en formularios de rendimiento en SuccessFactors - Carga admin center 2

A partir de aquí sólo nos quedaría iniciar nuestro proceso de evaluación para poder obtener nuestros documentos de rendimiento finales.

Esperamos que este artículo te haya resultado de utilidad en caso de que necesites configurar tu propia escala de evaluación en SuccessFactors.

La entrada Mapeos de escala en formularios de rendimiento en SuccessFactors se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

SII – Régimen especial de criterio de caja (RECC)

$
0
0

Las operaciones acogidas al régimen especial de criterio de caja se harán constar con la clave de régimen especial “07”. Adicionalmente, en el momento de efectuarse los cobros / pagos correspondientes a las operaciones sometidas al RECC se deberán consignar los siguientes campos:

Cobros: fecha de cobro, importes cobrados, medio de cobro utilizado, cuenta bancaria o medio de cobro utilizado.

Pagos: fecha de pago, importes pagados, medio de pago utilizado, cuenta bancaria o medio de pago utilizado.

El medio de pago/cobro se consignará con alguno de los siguientes valores:

01: Transferencia

02: Cheque

03: No se cobra/paga (fecha límite de devengo / devengo forzoso en concurso de acreedores)

04: Otros medios de cobro / pago

05: Domiciliación bancaria (Novedad desde Julio de 2018 en la Versión 1.1. del SII).

La información de estas facturas debe notificarse a la agencia tributaria en el plazo de cuatro días naturales desde el cobro o pago independientemente de que la entidad esté o no acogida al criterio de caja.

Cómo realizar los envíos en el SII:

Por ejemplo, para dar de alta una factura remitida a un proveedor que aplica el RECC, tenemos que realizar los siguientes pasos:

  1. Debemos de notificar el alta de la factura A0 en el Libro de facturas recibidas creando el eDocument desde la transacción ESSII_EDOCCREATE.

SII - Régimen especial de criterio e caja - EDOCCREATE

Introducimos los datos y pulsamos Ejecutar SII - Régimen especial de criterio e caja - Ejecutar el proceso. De este modo, se crea un eDocument de Factura Recibida:

01, SII - Régimen especial de criterio e caja (2)

Lo incluimos en una lista mediante la transacción ESSII_EDOCLIST y lo enviamos al SII:

SII - Régimen especial de criterio e caja - E-document

SII - Régimen especial de criterio e caja - Envio lista

Como podemos ver en el fichero XML, se informa la Clave de Régimen Especial con el valor 07 y un tipo de comunicación A0 – Alta de Factura.

SII - Régimen especial de criterio e caja - fichero XML

  1. En el momento del pago se enviará una segunda notificación a la agencia tributaria con los detalles del pago, ejecutando de nuevo la transacción ESSII_EDOCCREATE para crear el eDocument.

Introducimos los datos y pulsamos Ejecutar SII - Régimen especial de criterio e caja - Ejecutar el proceso. De este modo, se crea un eDocument de Pago Recibido.

SII - Régimen especial de criterio e caja - Edocument pago recibido

Lo incluimos en una lista mediante la transacción ESSII_EDOCLIST y lo enviamos al SII. Podemos ver que se ha creado un alta de Pago Recibido RECC.

SII - Régimen especial de criterio e caja - Pago recibido Recc

Como podemos ver en el fichero XML, tenemos especificado el importe del pago y la vía de pago utilizada.

 

SII - Régimen especial de criterio e caja - XML pago

Esto es, el impuesto se devenga en el momento del pago de la factura.

Tratamiento de los errores registrales

En el caso de los libros registro de cobros y pagos, para los errores registrales no se utilizará el tipo de comunicación A1 (Modificación de facturas / registros), dado que no podemos identificar unívocamente el cobro o pago inicial. Las modificaciones se efectúan enviando el cobro o pago que queremos anular con importe negativo.

Los pasos a seguir son los siguientes:

  1. Creamos el eDocument del Documento de anulación desde la transacción ESSII_EDOCCREATE:

SII - Régimen especial de criterio e caja - Edocument pago recibido

2. Y posteriormente creamos y enviamos la lista desde la transacción ESSII_EDOCLIST.

SII - Régimen especial de criterio e caja - Pago recibido Recc

Esta anulación se trata como un alta (en lugar de como una baja como ocurre con el resto de las facturas)

En el fichero XML, tenemos que el importe que se envía al SII está con signo negativo, especificando así la baja de la factura.

SII - Régimen especial de criterio e caja - XML pago

Esperamos que hayas encontrado este artículo de utilidad. Puedes dejarnos tus preguntas o ponerte en contacto con nuestro departamento de SAP Finanzas & controlling.

Área SAP Finanzas & Controlling

La entrada SII – Régimen especial de criterio de caja (RECC) se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Manual Migration Cockpit III – Modificación

$
0
0

En este artículo veremos cómo modificar objetos de migración, para poder añadir campos que previamente no existían en el objeto.

Los primeros pasos se deben dar desde el Migration Cockpit (LTMC), donde deberán estar creados el proyecto y los objetos que se quieran modificar. (Manual Migration Cockpit – Parte I)

Para abrir el Migration Object Modeler se utiliza la transacción LTMOM.

Pulsamos en el botón desplegable que aparece en la próxima imagen.

Modificación Migration Cockpit - Transacción LTMOM

A continuación, aparecerá una pequeña pantalla la cual nos permitirá elegir el proyecto en el cual se encuentran los objetos que deseamos modificar.

Modificación Migration Cockpit - Elemento a modificar

Seleccionamos nuestro proyecto.

Con el proyecto seleccionado pulsamos el botón de aceptar.

Modificación Migration Cockpit - Proyecto a modificar

Esto hará que se abra otra pantalla con los objetos pertenecientes a ese proyecto, seleccionamos y aceptamos.

Modificación Migration Cockpit - Objetos

Esto nos abrirá el objeto a modificar.

Modificación Migration Cockpit - Objeto a modificar

Pulsamos el botón de modificar y la opción Source Structures.

Con esto se mostrarán dos nuevas columnas, la del medio contiene las estructuras del objeto de migración, que a su vez coincide con las hojas del Excel que el Migration Cockpit.

Y la columna de la derecha, que al seleccionar una de las estructuras nos muestra sus campos.

Modificación Migration Cockpit - Campos

Para añadir un campo a las estructuras podemos crear al final del todo o en un punto específico del Excel.

Modificación Migration Cockpit - Botón añadir campo

En el nuevo campo se deberá indicar si es campo clave, el nombre del campo, el tipo, así como su longitud, el nombre que tendrá su cabecera en el Excel y el grupo en el que quedará encuadrado en el Excel.

Modificación Migration Cockpit - Características de campo

GuardamosModificación Migration Cockpit - Guardar  y ejecutamos el botón Generate Runtime ObjectModificación Migration Cockpit - Generate Runtime Object

Pasamos al Target Structures.

Modificación Migration Cockpit - Target Structures

Este pasó nos va a facilitar la búsqueda del campo del sistema con el que vamos a mapear nuestro nuevo campo. Buscando la descripción del campo, la cual la podemos encontramos en la transacción original, en este caso la MM03 para encontrar el campo técnico:

Modificación Migration Cockpit - MM03-2

Con este dato apuntado, pasamos a Field Mapping.

Modificación Migration Cockpit - Field mapping

Como ayuda desde Settings pulsamos Techical names on, así veremos los campos técnicos y buscaremos el conseguido en el paso anterior.

Modificación Migration Cockpit - Technical names

Una vez encontrados arrastramos nuestro campo (el de la derecha) al campo de la izquierda.

Modificación Migration Cockpit - Trasladar campo

GuardamosModificación Migration Cockpit - Guardar  y ejecutamos el botón Generate Runtime Object Modificación Migration Cockpit - Generate Runtime Object

Modificación Migration Cockpit - Resultado

Si se genera correctamente podremos descargar la plantilla desde el Cockpit con los nuevos campos incorporados y con el mapeo realizado para que carguen en el sistema.

Esperamos que te haya sido de ayuda este artículo sobre el S/4HANA Migration Cocpkit.  

Recuerda que tienes disponible también la segunda parte de esta serie de artículos.

Manual Migration Cockpit – II

Puedes dejarnos cualquier pregunta en los comentarios o ponerte en contacto con nuestro departamento de Logística.

Área SAP Logística

La entrada Manual Migration Cockpit III – Modificación se publicó primero en Blog de SAP: Actualidad SAP, Business Intelligence, SAP HCM, Abap....

Viewing all 598 articles
Browse latest View live