Skip to content

Este proyecto automatiza la integración de datos entre SAP y Siclo (base de datos SQL) usando scripts en Python. Descarga datos de SAP, los cruza con información de despacho, y actualiza una hoja de cálculo en Google Sheets. Esta hoja alimenta un dashboard en Looker Studio, que se actualiza automáticamente para visualizaciones en tiempo real.

Notifications You must be signed in to change notification settings

jacostae/SAP-SQLFlowSync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Integración de Datos SAP-SQL con Dashboard en Looker Studio

Descripción del Proyecto:

Este proyecto automatiza el proceso de integración de datos entre SAP y Siclo (una base de datos SQL), utilizando scripts en Python para descargar información desde una transacción específica en SAP, cruzar esta información con datos de despacho, y actualizar una hoja de cálculo en Google Sheets. Posteriormente, esta hoja de cálculo alimenta un dashboard en Looker Studio, que se actualiza automáticamente para proporcionar visualizaciones en tiempo real.

Objetivo del Proyecto:

El objetivo principal de este proyecto es optimizar y automatizar el flujo de trabajo que involucra la extracción de datos desde SAP, su integración con datos almacenados en Siclo, y la actualización de un dashboard en Looker Studio. Esto permite a los usuarios acceder a informes actualizados y visualizaciones de datos en tiempo real sin intervención manual, mejorando la eficiencia y la precisión del proceso.

Paso a paso para su ejecución

1. Configuración proyecto en Google Cloud Platform

Esto se realiza con el fin de obtener las credenciales necesarias para acceder a la hoja de cálculo, en la que se actualizará la información obtenida por el script.

En el siguiente vídeo se observa como se obtiene el archivo:

  • credentials.json

Tener en cuenta que el "robot" creado en este paso debe tener acceso al archivo o archivos de Google Sheets a actualizar.

tempsnip

2. Revisión usuarios y contraseñas en scripts

En el archivo scripts.py se deben modificar los siguientes campos:

  • sap_user (Usuario de SAP que tenga acceso a la transacción Y_CSD_80000073).
  • sap_password (Contraseña respectiva).
  • server, database, username y password para poder acceder a Siclo.

Esto con el fin de poder acceder a SAP y Siclo y obtener la información de cada uno.

3. Creación spreadsheet

La spreadsheet debe contar con el nombre que tiene en el código así como las hojas para que el código no genere error al no encontrar dónde guardar los datos.

hoja_de_calculo

4. Creación dashboard en Looker Studio

Teniendo la spreadsheet con los datos podemos crear el dashboard para mejorar la visualización de la información.

En el siguiente link se puede observar como se realiza la conexión Conexión hoja de cálculo - Looker Studio

A continuación un ejemplo de lo que se puede realizar con los datos en Looker Studio:

Tablero_1 Tablero_2

Este dashboard se envía periodicamente al terminar turno mediante la opción de Programar envío de Looker Studio.

4. Ejecución del main.py con Programador de tareas

Con el fin de evitar la intervención manual en el proceso de actualización del dashboard y los datos, el código se ejecuta de la siguiente manera en Acciones:

image

También se puede utilizar el siguinte código xml, guardarlo e importar la tarea:

Ver código XML
<Task xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task" version="1.2">
  <RegistrationInfo>
    <Date>2024-03-01T13:48:05.6705751</Date>
    <Author>CO\jacostae</Author>
    <Description>Código para actualizar información SAP y Siclo</Description>
    <URI>\Código_actualización</URI>
  </RegistrationInfo>
  <Triggers>
    <TimeTrigger>
      <Repetition>
        <Interval>PT4H</Interval>
        <StopAtDurationEnd>false</StopAtDurationEnd>
      </Repetition>
      <StartBoundary>2024-03-27T10:59:00-05:00</StartBoundary>
      <Enabled>true</Enabled>
    </TimeTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-21-4221797372-3623916711-2686236536-24058</UserId>
      <LogonType>InteractiveToken</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>true</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT0S</ExecutionTimeLimit>
    <Priority>7</Priority>
    <RestartOnFailure>
      <Interval>PT1M</Interval>
      <Count>2</Count>
    </RestartOnFailure>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>C:\ProgramData\anaconda3\python.exe</Command>
      <Arguments>main.py</Arguments>
      <WorkingDirectory>C:\Users\jacostae\Desktop\Daily_update</WorkingDirectory>
    </Exec>
  </Actions>
</Task>

Proceso Automatizado: Estado Actual

Proceso

Contact Me

LinkedIn Email

About

Este proyecto automatiza la integración de datos entre SAP y Siclo (base de datos SQL) usando scripts en Python. Descarga datos de SAP, los cruza con información de despacho, y actualiza una hoja de cálculo en Google Sheets. Esta hoja alimenta un dashboard en Looker Studio, que se actualiza automáticamente para visualizaciones en tiempo real.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages