Cuando eres programador de SAP, creas un reporte o una nueva funcionalidad
    para hacer "x" tarea, y al tiempo quieres re-utilizarla en otra empresa, o
    bien optimizar el código para mejorar lo que ya sabes, o bien has cometido
    algún error que tú mismo lo solucionarás con el tiempo al leer el código de
    nuevo.
  
  
    Esto de reciclar código lo hacemos todos los programadores, en todos los
    lenguajes de programación.
  
  Con SAP, no habrá excepciones.. salvo por el hecho de que SAP es una empresa
  con licencia, entonces su código no es libre o...Wait... ¿y si trabajo en un proyecto Open Source con ABAP?
Y así empezó todo... con el boom del open-source.
Hace años, SAP también empezó a participar de proyectos de código abierto.
Qué es SAPLink
      SAPlink es un proyecto que pretende facilitar la compartición de
      desarrollos ABAP entre programadores. 
    
    
    Proporciona la capacidad de distribuir y empaquetar fácilmente objetos
    personalizados.
  
  
      SAPlink ha tenido un papel muy importante que desempeñar al permitir a los
      desarrolladores compartir código ABAP fuera de las restricciones de las
      herramientas de gestión de cambios de SAP. Cuando SAPlink apareció por
      primera vez y ganó el primer DemoJam de SAP abrió un mundo de
      nuevas posibilidades para ABAPers -y un mundo de miedo para un gran
      proveedor de software.
    
  
      No era sólo que pudiéramos versionar nuestro código ABAP y compartirlo con
      otros, aunque esta capacidad resalta en abapGit es un descendiente
      directo de SAPlink. Lo que SAPlink hizo fue traer el mundo del código
      abierto al desarrollador de ABAP de dos maneras importantes. 
    
    
      En primer lugar, SAPlink era un proyecto ABAP de código abierto en sí
      mismo -esto era inaudito en ese momento. En segundo lugar, SAPlink
      habilitó el tipo de colaboración de código compartido que es la base de
      todos los proyectos de código abierto.
    
  
      Hoy, en el año 2017 es fácil olvidarse de cómo asustaba el "open source"
       a los grandes vendedores de software hace una década. Todavía asusta
      de muchas maneras, y para muchas personas, pero está aquí para quedarse y
      organizaciones como SAP son ahora grandes contribuyentes por derecho
      propio.
    
  SAPLink revolucionó todo
      SAPlink fue una herramienta clave que ayudó a darnos cuenta de que
      hay un gran mundo de desarrolladores maravilloso e interesante fuera
        del jardín amurallado de SAP. Nos ayudó a reunirse y colaborar con nuestros compañeros. 
    
    
      Elimina las limitaciones artificiales de lo que podemos hacer. Nos mostró
      cómo funcionan otros desarrolladores. Qué herramientas utilizan. Cómo
      mejorar la productividad. Cómo escribir código mejor. En muchos sentidos
      nos abrió los ojos. Nos motivó a ser mejores. Motivó a abapGit.
    
  Qué es ABAPgit y cómo se usa
      De acuerdo a SAP, definen ABAPgit como la siguiente generación al SAPLink.
    
  
    Pero para ser más simples...  abapGit es un cliente de Git escrito en ABAP para ABAP.
  
  ¿Estás pensando "¿Qué es Git?"?
      Si eres desarrollador y aún no sabes qué es GIT, estás algo fuera de
      moda... cualquier desarrollador contemporáneo debe usar o al menos saber
      qué es y cómo se usa git.
    
    
      No está en el alcance de este artículo, pero te pido por favor ahora mismo
      le des una leída al
      ebook oficial en español.
    
  ¿Conocerás GitHub, y su competidor GitLab?
Ambos sitios web son repositorios en línea.
      Es decir, sitios web que ofrecen poder versionar código con la herramienta
      GIT, y hacer que la programación sea una tarea social por así
      decirlo. 
    
  
      Con el boom del open-source, estos sitios estallaron y hoy en día alojan
      millones de proyectos de código abierto. Por ejemplo: AMP-project,
      Discourse, AbapGit, y nuestro
      repositorio de código ABAP
      se encuentran todos alojados bajo github.
    
  Volvamos al tema de este artículo...
  
    AbapGit es un proyecto Open-source iniciado por Lars Hvam bajo
    una Licencia MIT.
  
  Instalación de AbapGit
    En el proyecto resaltan la facilidad de instalación! No hay transportes. No
    hay pasos múltiples. No hay pre-instalación de otras cosas. No hay subidas
    de archivos. No se requieren parches. No se necesitan complementos.
    Simplemente copie y pegue código en un programa en su sistema de desarrollo
    ABAP y active.
  
  
    Lo primero que puede hacer después de la instalación es conectarse a
    GitHub para que pueda mantener actualizado su código abapGit. 
  
  Concepto increíble ¿no?
Podemos derribar la última versión del proyecto abapGit cuando lo desee.
    AbapGit también tiene un "modo de fondo" para que pueda automatizar esta
    tarea.
  
  Usar TLS
    Para que abapGit se conecte con GitHub desde SAP tenemos que usar TLS. 
  
  
      Esto significa que tenemos que instalar algunos certificados raíz en
      nuestro sistema ABAP utilizando la transacción STRUST. La
      documentación de instalación de abapGit le explica cómo obtener
      estos certificados e instalarlos. Y también hay un
      programa de prueba simple para que pueda asegurar la conexión a
      GitHub funciona.
    
  
      Si desea conectar abapGit a otros servidores Git, es posible que también
      le obligue a utilizar TLS y por lo tanto, puede que tenga que instalar
      otros certificados raíz.
    
    Cómo podemos enlazar con el repositorio abapGit en GitHub
      Hay un asistente para ayudarle a hacer esto en unos pocos clics.
    
    
      Cuando abapGit se ejecuta por primera vez, lo llevará a la página de
      tutorial de abapGit. 
    
    
      También puede encontrar esto a través del menú Ayuda
      >>
      Tutorial. 
    
    
      Simplemente haga clic en el enlace "install abapGit repo" para iniciar el
      proceso. 
    
    
      Se le pedirá que confirme que desea instalarlo en el paquete $ABAPGIT. 
    
    AbapGit enlaza repositorios Git (repos) a paquetes ABAP. 
    
      Así que necesitamos almacenar abapGit en un paquete local propio -en este
      caso $ABAPGIT. 
    
    
        También se le preguntará si desea sobrescribir el programa ZABAPGIT que
        acaba de crear. R
      
    esponda "Ok" a esto. Active todos los artefactos abapGit y listo.
Ejemplo con abapGit
Para ir terminando este artículo dejemos un video de ejemplo de cómo clonar un repositorio para que lleves el código a donde sea, cuando quieras.
      ¿Ves que fácil fue eso? Unos pocos clics aquí y allá y tengo todo lo que
      el código ABAP bajó de GitHub en un paquete que pude crear desde dentro de
      la interfaz de usuario de abapGit incluyendo activado todo. 
    
    Ayuda SAP
    Si necesitas más ayuda sobre este tema, en nuestra comunidad estamos
    compartiendo código y conocimientos sobre el lenguaje de programación de
    SAP. Te esperamos!
  
  
Gran aporte, una consulta el guardado de los programas es navegable? me refiero a los includes que se creen en el programa, se llega a formal un árbol?
ResponderBorrarHola Jimmy, cómo andas? Gracias por tu consulta, pero no entiendo a lo que te refieres. ¿Puedes brindar más detalle a lo que te refieres?
BorrarHola Wall, mi pregunta era cuando se crea un programa que tiene includes, cuando se desea visualizar en el repositorio web de git se crean subcarpetas? o todos los archivos van a un mismo directorio?
BorrarAh Jimmy, en eso no puedo ayudarte, no soy ABAPer. Pero, si tú puedes crear el abapgit en tu entorno SAP, seguramente podrás probar cómo funciona., es gratis.
BorrarSaludos!
¿Es posible mover DDIC?
ResponderBorrarHola David, por favor realiza esta consulta en nuestro foro de Ayuda SAP.
BorrarSaludos
Buenas tardes comunidad.
ResponderBorrarActualmente estoy probando ese codigo, pero me arroja un problema en una linea it_postdata TYPE cnht_post_data_tab OPTIONAL
El código lo estoy copiando de aqui h_tps://raw.githubusercontent.com/abapGit/build/master/zabapgit.abap
Alguien puede ayudarme.
Hola Ignacio, ¿cómo estás? Muy interesante el código que estás queriendo probar... para este problema te pido por favor ingreses a nuestro foro de Ayuda SAP y publiques un nuevo tema con el contenido y el detalle (puedes poner el enlace a github.com desde dónde sacas el código, así otros lo ven, y lo depuramos con otros programadores ABAP.
BorrarTe espero ahí.
Saludos!