[TUTORIAL] SAP Scripting: Automatizando exportación de reportes

Поділитися
Вставка
  • Опубліковано 7 лис 2024

КОМЕНТАРІ • 112

  • @janos7807
    @janos7807 Рік тому +2

    Muy buen tutorial. Gracias a él pude automatizar la actualización de reportes de SAP para el seguimiento de gestiones de compra de materiales desde excel. Gracias!!!

    • @alefranzoni
      @alefranzoni  Рік тому

      Me alegro mucho de que te haya sido útil! Saludos.

  • @hernanramos3077
    @hernanramos3077 Рік тому +1

    Muy buen video! Mi consulta es, cómo puedo indicarle que lo haga cada cierta cantidad de horas a ese reporte? Porque en el script se ve que el filtro es para un día específico

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola Hernán, primero que nada para que tome la fecha del momento en que se está ejecutando y no que quede estática, como bien vos observaste, vas a tener que cambiar la línea en donde se setea la misma y poner el código correspondiente. Es decir, si vos querés que te traiga el día de la fecha, podrías usar, por ejemplo, el código *Format(Now, "dd.MM.yy")* en lugar de la fecha hardcodeada y listo. Pero eso lo vas a tener que ver vos según tus necesidades.
      En cuanto a tu consulta de como hacer para automatizar su ejecución cada cierto tiempo, tenes varias alternativas. Dos de ellas serían:
      1. Usar *Timers* (tengo videos sobre este tema en mi canal)
      2. Crear un script para abrir el Excel pasándole parámetros (también tengo un tutorial sobre ello) y luego, programar este script (*.vbs) para que se ejecute los días/horas que vos quieras desde el programador de tareas de Windows.
      Cualquiera de las dos alternativas son viables, aunque yo me inclinaría más por la segunda, ya que no dependes de tener el archivo siempre abierto.
      Saludos.

  • @carlosaguilar7418
    @carlosaguilar7418 11 місяців тому

    Excelente video hermano! Saludos desde Perú!

    • @alefranzoni
      @alefranzoni  11 місяців тому

      Gracias, me alegro de que te haya servido, saludos!

  • @Edison_mm
    @Edison_mm 2 роки тому +1

    Muchas gracias Ale..desde Colombia.
    ¿Con estos procesos no se necesita ningún tipo de Credenciales de usuario?....¿Tampoco se indica ninguna ruta de servidor?

    • @alefranzoni
      @alefranzoni  2 роки тому

      Hola Edison, cómo estás? Primero que nada, muchas gracias a vos por comentar. En cuanto a tu consulta, paso a responderte.
      Sobre las credenciales, si utilizas el método de scripting tal y como se muestra en este video, es decir, con una sesión de SAP ya abierta, no es necesario indicar ni credenciales ni tampoco ruta/nombre de ningún servidor, ya que tomará los datos de la sesión activa. Pero, por el contrario, si quieres poder ejecutar el script aunque el SAP esté cerrado, si necesitaras abrirlo y loguearte de alguna manera (SSO o con user/password) indicándole el nombre del servidor al cuál estás deseando conectarte.
      Todo esto lo explico en un video específico del canal, te invito a pasarte por el mismo, y cualquier duda que te surja, me podés dejar un comentario para poder darte una mano.
      Saludos.

  • @cristianlopezescanilla597
    @cristianlopezescanilla597 Рік тому +1

    Buen video! una consulta ¿cómo lograr que en el campo fecha vaya completando con la fecha en la que se ejecuta el script? es decir, todos los días va cambiando.

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola Cristian, cómo estás? Depende donde lo estés ejecutando, en un archivo VBS o dentro de Excel, es decir, VBA. Te dejo ambos ejemplos:
      ⬇ *VBS*
      d = Day(Date())
      m = Month(Date())
      y = Year(Date())
      fecha = d & "." & m & "." & y
      ⬇ *VBA*
      fecha = Format(Now(), "dd.mm.yyyy")
      Espero que te sirva,
      Saludos.

  • @danielguzman3390
    @danielguzman3390 7 місяців тому

    Excelente tutorial. Consulta, para iniciar SAP, solo tenemos que copiar y pegar el codigo para realizar el logon ??

    • @alefranzoni
      @alefranzoni  7 місяців тому

      Hola Daniel, cómo estás? A qué te refieres específicamente con tu pregunta? Este video trata de otra cosa, el referido a como iniciar tanto el programa como la sesión, es este: ua-cam.com/video/cvDxz05Og6E/v-deo.htmlsi=34AtzFzaxnAvMEhY donde efectivamente explico todo el código necesario para iniciar tanto el SAP como la sesión en él. Saludos.

  • @rojolocura7661
    @rojolocura7661 Рік тому

    Genioo!! estaba buscando esto justamente. Hubiese sido mejor aún, si se pudiera (esto ya es una maravilla de todos modos) convertir directamente en (.XLSX). Ya que La TX de SAP "CJE0" (presupuestos) me tira la información muy desordenada. Por lo que hice una macro en Excel para armar la planilla. Podría automatizar todo si se convirtiera directamente en (.xlsx) . Por lo pronto tengo una macro que abre y cierra grabando con esa extensión. Muchas gracias por todos tus aportes. Ya me suscribí y ahí va otro 👍

    • @alefranzoni
      @alefranzoni  Рік тому

      Me alegro de que te haya servido Rojo y muchas gracias por el apoyo. En cuanto a lo que comentas, sí, lo mejor para todas las exportaciones es poder bajarlas en formato XLSX, lo que pasa que para eso hay que interactuar con una ventana de Windows que Scripting no graba, como seguramente ya hayas podido comprobar. Se puede hacer, por supuesto, pero lleva la integración de otras cositas. Si tengo tiempo en algún momento más adelante, tengo pendiente traerles ese video. Mientras tanto, luego de la ejecución y descarga del archivo, sirve como decís tener una macro que acomode el archivo a lo que necesitas y lo guarde como *.xlsx. Eso lo podrías integrar a esta automatización y no tener la necesidad de correrlo manualmente. Saludos.

    • @rojolocura7661
      @rojolocura7661 Рік тому +1

      @@alefranzoni Buenísimo Ale. Muchas gracias . No te imaginas cuanto me sirvieron tus videos. Sos un capo total.
      Con lo que vos enseñas y con un poco de ayuda de ChatGPT, estoy como un pibe de 20 años, jaja (tengo 51). Pero siempre quise aprender a programar y nunca me decidí. Hoy con la ayuda de gente como vos y la IA, estoy haciendo algo, al menos.
      Por el momento ando con bastante trabajo, pero ya voy a sentarme a ver el curso tuyo completo.
      No dudes en hacer el código para pasar de xls a xlsx. Hay mucha gente que lo necesita. Te lo digo porque en TECO (TELECOM) usamos mucho SAP y los reportes salen en .XLS. Yo me hice una macro que levanta el archivo y lo graba en .xlsx
      Pero si sale de una ya convertido, sería un golazo!!
      Un gran abrazo!

    • @alefranzoni
      @alefranzoni  Рік тому +1

      @@rojolocura7661 Me alegra mucho saber que te están sirviendo los videos porque básicamente esa fue (y la va a seguir siendo siempre) la idea desde un principio. Ánimos y suerte con todo ese aprendizaje, felicitarte por animarte y decirte que claramente no hay edad para empezar a aprender, y mucho menos hoy con la facilidad a todas estar herramientas que tenemos. Te agradezco también por tus comentarios y el apoyo, es lo que a mí me sirve para saber si es útil o no y motivarme a poder seguir haciendo el esfuerzo de crear, compartirles y disponibilizar más contenido. Me llevo anotado el pedido y espero pronto poder realizarlo. 🙌🏻
      Saludos.

    • @rojolocura7661
      @rojolocura7661 Рік тому

      💪😃

  • @germain369
    @germain369 Рік тому

    Muy buen tutorial. Gracias por compartir.
    Una consulta… yo utilizo la tx REPBASIC para la extracción de datos, tengo que descargar 350 bases diferentes, a veces unas, a veces otras, las he descargado 1 x 1 de acuerdo a lo que necesito y de esa forma, al descargar cada archivo y abrir el Excel, cada archivo tiene 205 columnas, que es lo que necesito, pero al visualizarse como lo muestra en su video y luego descargar, tengo mucho menos columnas.
    Podría orientarme para poder hacer la descarga en 2do plano y que se visualicen las 205 columnas y que el número de unidad sea las que tengo en un listado?
    Agradezco la atención y ojalá pudiera orientarme.
    Gracias por leer mi mensaje.

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola, ¿cómo estás? Puede ser que con el formato se estén perdiendo columnas, aunque es un poco raro, hay casos que suele pasar.
      Lamentablemente, no tengo acceso a dicha transacción para poder orientarte mejor, pero te podría sugerir que pruebes con algún otro formato de exportación y ver si soluciona tu inconveniente.
      Otra cosa que podrías hacer, es exportarlo como Excel, pero en este caso tendrías que solucionar el problema de la ventana para guardar el archivo que Scripting no graba (ya que es una ventana de Windows). Para esto último te podés apoyar en las librerías FindWindow, ShowWindow y SetForegroundWindow para solucionar dicho inconveniente en VBA 😉.
      Cualquier otra inquietud, no dudes en consultarme. Saludos.

  • @itatigomez8602
    @itatigomez8602 4 місяці тому

    Muchas gracias por el video, consulta: como puedo exportar a excel una reserva desde la transacción MB23?

    • @alefranzoni
      @alefranzoni  4 місяці тому

      Hola, ¿cómo estás? Si no me falla la memoria, la MB23 te sirve para visualizar una reserva, pero no tiene una manera legacy, es decir, ofrecida por SAP para exportar la misma, por lo tanto, no vas a poder realizarlo.
      Como alternativa, lo que podrías hacer es, si tenés que exportar datos de una (o varias) reserva, crear un script que entre a la que necesites y luego extraiga los datos que desees a un Excel. Eso sí se podría hacer, pero es un proceso más "a medida" aunque no muy complicado.
      Saludos.

  • @andresdavidrodriguezzamero2086
    @andresdavidrodriguezzamero2086 8 місяців тому

    Hola Ale! como estas??muchas gracias por el video! la verdad que ha sido uno de los mejores que he visto!! me surge una pregunta a ver si me puedes ayudar: "Al momento de extraer un fichero de ventas he de añadir el año y el mes, en este caso el año siempre es el mismo, es decir, 2024, pero para los meses tengo que modificarlos según sea el mes que quiero extraer la información, es decir, si quiero las ventas del mes de enero he de indicar 1 y así sucesivamente"
    Existe alguna manera de indicarle al Script que indique el mes actual en esa celda del SAP?
    Muchas gracias de antemano
    Saludos

    • @alefranzoni
      @alefranzoni  8 місяців тому +1

      Me alegro de que te haya servido y gustado, trato de explicar todo de la mejor manera posible siempre.
      Sobre tu consulta, sí, por supuesto que puedes. Solo tienes que modificar la línea de código donde quieres cambiar la fecha, en este caso el mes y ponerle que lo tome dinámicamente. Por ejemplo, en el video se ve que uso las fechas "17.8.22", por lo tanto, esa línea debería cambiarla por:
      = "17." & Month(Now) & ".22"
      De esta manera, *Month(Now)* nos traerá el mes actual y listo! Puedes hacer lo mismo con el año o el día si lo necesitases.
      Saludos.

    • @andresdavidrodriguezzamero2086
      @andresdavidrodriguezzamero2086 8 місяців тому

      @@alefranzoni GENIAL!!! eres un crack!! muchas gracias!

    • @andresdavidrodriguezzamero2086
      @andresdavidrodriguezzamero2086 7 місяців тому

      Ale! perdona las molestias pero me surge una duda! al momento de hacer el script me aparece la ventana de guardar como de windows y el scrip no registra esos pasos, sin embargo para que no me modifique el formato entre el SAP y el excel, lo he de descargar de esa manera, dando guardar como al fichero. Hace unos días logre dar con el código para la macro que lo hacía pero ahora no lo encuentro, sabrás como hacer que mi macro continúe y guarde el fichero?

    • @alefranzoni
      @alefranzoni  7 місяців тому +1

      @@andresdavidrodriguezzamero2086 Tal como dices, la ventana que te sale pertenece a Windows y no al ecosistema SAP, por eso es que el scripting no puede parametrizarla ni grabar ninguna acción que realices sobre ella. Si necesitas si o si utilizar esta ventana para exportar el reporte, tendrás que implementar algún método externo como utilizar librerías de windows (como FindWindow) para detectar la ventana en cuestión y luego con la ayuda de SendKeys puedes mandar el texto que necesites (nombre del reporte) y luego presionar sobre guardar. Parece complejo, pero usando esta combinación de cosas que te nombre puedes llegar a una solución relativamente sencilla.
      Espero que te sea de ayuda,
      Saludos.

    • @andresdavidrodriguezzamero2086
      @andresdavidrodriguezzamero2086 7 місяців тому

      @@alefranzoni Perfecto Ale!! ahora a ver si consigo otro vídeo que lo explique hahaha saludos!!

  • @fabiancamilopradamonsalve3078
    @fabiancamilopradamonsalve3078 9 місяців тому

    Hola Buenas, esta muy bueno el video. Tengo una consulta, por más que grabe la macro al principio en SAP y pegue todo en visual basic como decis en el video, cuando corro la macro me sale pero llega al popup de save y se queda sin hacer nada SAP como pensando, pero no se me pega la computadora solo no hace nada, como que no encuentra la ruta ni tampoco pone el nombre del archivo, no se si me falta activar algo en SAP o excel para que se finalice la macro guardandome el archivo tal como pasa en este video. Gracias

    • @alefranzoni
      @alefranzoni  9 місяців тому

      Hola Fabian, cómo estás? Te comento que por lo que me decís, el problema que tenés es que te estás topando con una ventana de selección de archivos que es de Windows, no es de SAP propiamente dicho. Por lo tanto, el script no puede grabar nada de su comportamiento y te quedas ahí. Tienes que seguir los mismos pasos del video para exportarlo para que esa ventana no aparezca o bien, buscar alternativas como utilizar las API de FindWindow para detectar dicha ventana y realizar las tareas que necesites sobre ella antes de continuar con la ejecución del script. Saludos.

  • @rojolocura7661
    @rojolocura7661 10 місяців тому

    Hola, Ale. Feliz año.
    Tenes algun tutorial para hacer lo siguiente ?(yo no lo vi, al menos)
    Necesito que la Transacción CJI3 me levante los proyectos de la columna A de un libro que está en: Escritorio/ "CJI3.xlsx" (ejemplo).
    Ya tengo como abrir SAP con usuario y Clave, y luego entra a CJI3. pero me falta automatizar esa parte que te comento... y no logro hacerlo.
    Espero no seguir jodiendote, jaja pero hay poca gente que hace estos tutorial tan bien explicados. Para que los que no somos expertos, podamos rebuscarnos de alguna manera.
    Desde ya muchas gracias, Ale.

    • @alefranzoni
      @alefranzoni  10 місяців тому

      Buenas, cómo estás? Efectivamente, no tengo ningún video sobre el caso, pero si lo que querés hacer es simplemente traer una lista de proyectos y ponerlos en la tx es muy sencillo. Te hice un ejemplo básico acá que corre el script desde el mismo Excel donde tengo los datos a pegar en la tx, pero si vos los tenés en otro libro, la diferencia es que vas a tener que abrirlo, buscar los datos y copiarlos, lo demás sería idéntico. Por supuesto, adaptalo a tus necesidades.
      Sub PasteProjects()
      Set SapGuiAuto = GetObject("SAPGUI")
      Set app = SapGuiAuto.GetScriptingEngine
      Set Connection = app.Children(0)
      Set session = Connection.Children(0)
      session.StartTransaction "cji3"
      'CJI3 entry data (if needed)
      session.findById("wnd[1]/usr/sub:SAPLSPO4:0300/ctxtSVALD-VALUE[0,21]").Text = "0001"
      session.findById("wnd[1]").sendVKey 0
      session.findById("wnd[1]/usr/ctxtTCNT-PROF_DB").Text = "000000000001"
      session.findById("wnd[1]").sendVKey 0
      'Multiple selection on projects
      session.findById("wnd[0]/usr/btn%_CN_PROJN_%_APP_%-VALU_PUSH").press
      'Copy values from our excel
      ThisWorkbook.Sheets(1).Range("A2:A4").Copy
      'Paste and accept
      session.findById("wnd[1]/tbar[0]/btn[24]").press
      session.findById("wnd[1]/tbar[0]/btn[8]").press
      Application.CutCopyMode = vbFalse
      MsgBox "done"
      End Sub

    • @rojolocura7661
      @rojolocura7661 9 місяців тому

      @@alefranzoni Sos un genio, Ale. Muchísimas gracias! Voy a mirarlo y ver como lo adapto a mi trabajo. Ahora lo estoy mierando por el celu, pero en la semana lo veo en la compu. Seguro que va a funcionar!!!
      Maestroooo 👏👏👏

  • @java9920
    @java9920 Рік тому

    Hola Ale, excelente video me ha ayudado mucho en automatizar la descarga de datos. Tengo una consulta, cuando necesito descargar en la transacción VA05 en alguna ocasiones aparece una ventana para colocar el centro, hay alguna forma forma de colocar un código If para que en el caso que aparezca la ventana digite el centro, caso contrario siga ejecutando el script. Muchas gracias por la orientación. Saludos desde Lima.

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola Carlos, me alegro de que te haya servido. En cuanto a lo que me mencionas, si hay una forma y es muy sencillo. Seguramente esta ventana la puedas identificar como *wnd[1]* siendo la principal *wnd[0]* (esto lo podés comprobar, por ejemplo, grabando un script para colocar el centro en la misma y vas a ver que hace referencia a esta ventana). Sabiendo esto, en la parte del código donde tienes que comprobar si "aparece o no" deberías colocar esta condición:
      If Not session.findById("wnd[1]", False) Is Nothing Then
      'Acá deberias realizar la acción necesaria para el caso en que aparezca la ventana
      'En tu caso sería colocar el centro y presionar ok (asumo)
      session.findById("wnd[1]").[...].Text = "centro"
      session.findById("wnd[1]").[...].press
      End If
      💡 _Cabe aclarar que el código que te puse dentro del condicional es de ejemplo, puede variar según la tarea que tengas que realizar con esta ventana_
      Saludos.

  • @alejandrobastosiglesias393
    @alejandrobastosiglesias393 11 місяців тому

    Tus videos son increíbles, ¿Hay alguna manera que el Scripting de SAP funcione en segundo plano?

    • @alefranzoni
      @alefranzoni  11 місяців тому

      Muchas gracias! Sobre tu consulta de funcionar en segundo plano, no, no es posible, ya que lo que estamos haciendo es una automatización manipulando la UI ya existente y para eso necesitamos que esté visible. Saludos!

  • @tomassukanec5895
    @tomassukanec5895 Рік тому

    Muy buen video como siempre 😊

  • @KarlaPatriciaMartínezPérez

    Hola, excelentes todos tus videos. Este creo que me funciona. Yo necesito usar la transacción lx01 para ubicaciones vacías y exportar a excel pero todavía hacerle unas variaciones y filtros. Si me puedes ayudar por favor

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Karla, ¿cómo estás? Muchas gracias por tu comentario. En cuanto a tu consulta, que es exactamente lo que necesitas/querés hacer que no estás pudiendo? Dame un poquito más de detalles y contexto para poder orientarte mejor. Saludos.

  • @luisalbertoalvarezayala3860
    @luisalbertoalvarezayala3860 2 роки тому

    Hola Ale, en el filtro de las fechas es posible que pregunte que fechas queremos descargar? Muy buen video! Saludos

    • @alefranzoni
      @alefranzoni  2 роки тому +1

      Hola Luis, muchas gracias por tu comentario. En cuanto a lo que me comentas, si, definitivamente es posible hacerlo. Las maneras son varias, tendrías que adaptarlo a lo que mejor te sirva según tu caso de uso, por ejemplo, podrías preguntarle al usuario mediante un InputBox, o directamente referenciar las fechas a celdas de tu libro y luego desde tu código obtenerlas y utilizarlas.
      Eso si, recordá que si vas a utilizar este método de fechas dinámicas, te recomiendo hacer una validación de las mismas antes de pasárselas al SAP, ya que si el usuario ingreso fechas inválidas te va a fallar la automatización.
      Cualquier duda podes consultarme,
      Saludos.

  • @MiguelArturoAsteteMedran-oi9xw
    @MiguelArturoAsteteMedran-oi9xw 5 місяців тому

    Excelente información.

  • @fernandoriosnavarro1722
    @fernandoriosnavarro1722 9 місяців тому

    Tengo una pregunta, es posible, utilizar los datos de una celda para incorporar por ejemplo al nombre del excel

    • @alefranzoni
      @alefranzoni  9 місяців тому

      Hola Fernando, sí, puedes hacer lo que me preguntas. Al momento de guardar el reporte solo vas a tener que buscar la referencia de la celda que indicas e incluirla/utilizarla para armar el nombre final. Saludos.

  • @alancharles7804
    @alancharles7804 2 роки тому

    Excelente información!

  • @xandros_74
    @xandros_74 2 роки тому

    Excelente! Una consulta.
    ¿Sabes si es posible exportar un reporte de SAP a un archivo csv sin la cabecera?
    Yo usualmente los reportes que bajo los proceso por Power Query para darle un mejor formato, pero no he encontrado la forma de que directamente SAP exporte en un CSV.

    • @alefranzoni
      @alefranzoni  2 роки тому +1

      Hola Alessandro, ¿cómo estás? Mira, ahora no tengo la posibilidad de probar y decirte con certeza, pero si no me falla la memoria una de estas opciones que se muestran en el video en realidad te lo exporta como CSV. Estoy casi seguro que era la opción _"Hoja cálculo coste"_ y te lo va a devolver con formato .xls, pero es un CSV. Podes probar con esa opción, si no luego lo chequeo bien y te digo 😉.

  • @angeluicab7502
    @angeluicab7502 Рік тому

    Hola, buen día tengas, soy algo nuevo en esto, mi pregunta es la siguiente, existe una manera de enlazar la transacción IW28 para avisos de Mantto y que cuando se de el cierre técnico (incluso si se genero una orden) se pueda actualizar un Excel que me indique la hora inicial a la que fue reportada la falla y la hora final en la que se entrego el equipo funcionando, lo que pasa es que me están pidiendo un Excel con indicadores kpi de Mantto y quería saber si es posible obtener los tiempos de inicio/final de las fallas correctivas desde SAP para poder usarlos en el Excel y generar los reportes con base a los indicadores, Saludos!

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola, cómo estás? No termine de entender bien tu caso de uso, pero si básicamente lo que necesitas es extraer información de cualquier tipo de una orden y llevarla a un Excel, por supuesto que podes hacerlo, siempre y cuando la info que necesites este disponible en la orden.
      Saludos.

  • @darwinbarbosa5433
    @darwinbarbosa5433 3 місяці тому

    Esos videos son para gente que conoce, y los que no sabemos sobre el tema ?

    • @alefranzoni
      @alefranzoni  2 місяці тому

      Tengo videos para principiantes, como el primero de este tema que explico la introducción a todo esto del scripting. Si te fijas en mi canal lo vas a poder encontrar, saludos.

  • @cristianpizarro9893
    @cristianpizarro9893 Рік тому

    Consulta videos de sap pm tendras necesito realizarte una consulta por donde podre??

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Cristian, podes contactarme por correo o LinkedIn, ambos datos puedes encontrarlos en mi página web, o en la parte de Información de mi canal. Saludos.

  • @joserodrigue5724
    @joserodrigue5724 2 роки тому

    Tengo una consulta, colocaste al script un comando indicando la fecha como texto, es decir cada reporte que llames vendrá por defecto la fecha colocada. como colcas un comando con la fecha actual

    • @alefranzoni
      @alefranzoni  2 роки тому

      Hola Jose, si, efectivamente cada reporte en el caso del ejemplo vendrá siempre con la misma fecha. Para hacer esto dinámico puedes optar por varias opciones, a continuación te dejo unos ejemplos:
      ➡️ *Con fecha actual*
      session.findById("wnd[0]/usr/ctxtDATUV").Text = Format(Now, "dd.mm.yy")
      ➡️ *Con referencia a una celda* _(A1 como ejemplo)_
      session.findById("wnd[0]/usr/ctxtDATUV").Text = ThisWorkbook.Sheets("Hoja1").Range("A1")
      Saludos.

  • @jhonnyj514
    @jhonnyj514 2 роки тому

    Hola Ale, un saludo, en mi caso trabajo con sap hana y cuando exporto un archivo excel, este se abre automaticamente, se puede evitar esto? ya que es incomodo ir cerrando libros cada que se exporta uno.

    • @alefranzoni
      @alefranzoni  2 роки тому

      Hola Jhonny, un saludo para vos también. Mira, te comento que, al menos en SAP, cuando exportas un archivo por primera vez a un directorio, este te pide dos permisos: primero uno de escritura y luego otro de lectura, este segundo permiso es el que hace que si volvemos a exportar un archivo al mismo directorio este corra unas reglas guardadas en la configuración de SAP y se abra automáticamente (siempre y cuando le hayamos dado el OK en el prompt).
      Te sugiero que te fijes si en SAP HANA podés encontrar un comportamiento similar o mirar entre las configuraciones si hay alguna sección donde se haya guardado la regla y de esa manera, evitar que se te abra cada archivo que exportes.
      Saludos.

  • @juanruzchamorro4196
    @juanruzchamorro4196 Рік тому

    Buenas tardes, cómo sería el código para indicarle que todos los campos estén en blanco antes de comenzar a rellenar los campos que se ocuparan. Saludos desde Valparaíso en Chile.

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Buenas, te referis a todos los campos de SAP supongo. Si es así, y hay alguno que no esté en blanco y que necesites que lo este, solo tenés que identificar su(s) ID y antes de comenzar con lo que vayas a rellenar simplemente le indicas que tome un valor vacío ( .Text = ""). Sería lo mismo que haces con los otros campos, pero en este caso en lugar de asignarle un texto le asignas un texto vacío ("" o vbNullString). Saludos.

    • @juanruzchamorro4196
      @juanruzchamorro4196 Рік тому

      @@alefranzoni gracias problema resuelto. Disculpa si mis preguntas son básicas, es que solo llevo una semana programando y solo me nutro de tu sabiduría. Gracias profesor.

    • @alefranzoni
      @alefranzoni  Рік тому

      @@juanruzchamorro4196 no hay problema Juan, no hay ninguna pregunta básica, éxitos!

  • @ivanchristianperaltamanriq6479

    Ese excel exportado quisiera usarlo en otro archivo de Excel de manera automática ¿ Cómo lo hago?

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Ivan, lo que puedes hacer es que luego de exportar el reporte, abrir desde el código el archivo Excel donde estás queriendo hacer uso del mismo y luego manipularlos como desees. Es decir, te quedaría todo el código centralizado en el archivo desde el cual generas el reporte de SAP automáticamente.
      Saludos.

  • @Zubelzo
    @Zubelzo 2 роки тому +1

    Muito bom, vou fazer para testar.

  • @BerthaAngelicaTorresMondragon

    Hola, me gustaria hacerlo con sap business one sabes donde puedo sacar este boton o donde dirigirme, te agradezco

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola Bertha, ¿cómo estás? Lamentablemente, tengo entendido que *SAP Business One* no soporta SAP Scripting 😔

    • @BerthaAngelicaTorresMondragon
      @BerthaAngelicaTorresMondragon Рік тому

      @@alefranzoni puff es una lastima seguiré en la búsqueda para poder automatizar la descarga

    • @alefranzoni
      @alefranzoni  Рік тому +1

      @@BerthaAngelicaTorresMondragon si cuentas con el entorno web de SAP podrías probar con UIVision RPA o si tienes algunos conocimientos de programación con UI Automation. Suerte y saludos.

    • @BerthaAngelicaTorresMondragon
      @BerthaAngelicaTorresMondragon Рік тому +1

      @@alefranzoni te agradezco lo voy a hacer como me indicas

  • @truongtieuphamvn
    @truongtieuphamvn Рік тому

    amazing.. thank for your sharing

  • @jmasisramirez
    @jmasisramirez Рік тому

    Buenas tardes Ale, muy bueno tu video, pero quisiera me ayudes con algo, estoy haciendo una macro muy similar pero en mi caso el usuario necesita seleccionar la opción Hoja de Cálculo. Lista --> Exportar--> Hoja de Cálculo, esto lo hace por el formato que genera la exportación, pero al hacerlo por este método SAP me abre la ventana de "Guardar Como" de Windows y allí es donde el script no hace nada hasta que no manipule la ventana. Te agradecería mucho si conoces alguna manera de solventar este problema. Saludos JM

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Gracias Jorge por tu comentario. En cuanto a tu consulta, sí, es como comentas. Scripting no puede grabar esa ventana porque pertenece a Windows y no al entorno de SAP, por lo que vas a tener que buscar alternativas para poder detectarla y hacer la operación que requieras (dar un nombre y presionar sobre aceptar, por ejemplo) para poder continuar con la ejecución del script. Tengo pensando en algún momento grabar un vídeo sobre esto, enseñándoles como realizarlo, pero mientras tanto te recomiendo que leas y busques sobre las APIs de FindWindow que te van a servir de ayuda para, en combinación por ejemplo con SendKeys, resolver tu problema. Es un tema quizá un poco más complejo, pero para nada imposible de resolver. Saludos.

    • @josuepalacios2732
      @josuepalacios2732 Рік тому +2

      Tengo el mismo problema, ojala pudieras ayudarnos con un video para solventar el problema,te lo agradeceríamos mucho crack

    • @taniamondaca8361
      @taniamondaca8361 Рік тому +1

      Estimadísimo@@alefranzoni ,
      Esperando que te encuentres bien, quería ver si ya habrás subido el video en cuestión ya que tengo el mismo problema y no he podido solucionarlo.
      De antemano muchas gracias!

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola @@taniamondaca8361 cómo estás? Si varios me lo están pidiendo, voy a ver si le puedo dar prioridad y hacer un video sobre atacar este dolor cuanto antes. Saludos.

  • @alexisgomezavalos9975
    @alexisgomezavalos9975 Рік тому

    Ale, cuando termino de descargar los reportes en excel , SAP me abre automáticamente el archivo, sabes si hay alguna manera de bloquearlo? Si se restringe desde seguridad , después me da una alerta de seguridad:(

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Alexis, ¿cómo estás? Por lo general, la primera vez que descargas un fichero desde SAP a una ubicación nueva, lo que hace es mostrarte un mensaje de Seguridad SAP preguntándote primero por escritura y luego para abrirlo. Ambos mensajes tienen una opción (checkbox) de "recordar decisión". Es probable que en algún momento hayas tildado la misma, entonces ahora te abre todos automáticamente, lo cual es bastante molesto. Lo que podes hacer es ir a tu *Sap Gui > Opciones > Seguridad > Configuraciones de Seguridad* y en el panel derecho presionar sobre el botón *Abrir configuración de seguridad* (o similar). Esto te va a abrir una ventana nueva con todas las reglas que has aceptado, fíjate si alguna de ellas corresponde al comportamiento que estás viendo y procede a eliminarla.
      Si pudiste con lo anterior, al volver a descargar un fichero desde sap te va a preguntar por lo mismo, si le das permisos para escribir el archivo y luego para abrirlo, el primero le pones que si y el segundo asegúrate de ponerle que no (y si quieres, que recuerde la decisión, así nunca se abrirá para ese directorio y no te aparece más la alerta de seguridad al finalizar la descarga).
      Espero que te sirva,
      Saludos.

  • @HeavenDoor
    @HeavenDoor Рік тому

    Buenaa Noches. Si quisiera sobre escribir el archivo ¿Como se haria para lo del nombre o que no ocasione error?

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola, ¿cómo estás? Para sobreescribir el archivo y que no se genere uno nuevo con cada ejecución, simplemente tenés que colocarle siempre el mismo nombre, es decir, uno estático en lugar de uno dinámico, como se muestra en el video. Por ejemplo, en este caso, deberías cambiar el valor de la variable *filename* y ponerle un nombre estático como _"export_file.xls"_ y siempre se sobreescribirá. Eso sí, recordá tener siempre el archivo cerrado porque si ejecutas el script y el archivo en cuestión está abierto no podrá sobreescribirlo.
      Saludos.

  • @llorenccanellascollados1873
    @llorenccanellascollados1873 Рік тому +2

    Buenas, podrías poner tutorial de como automatizar lanzar los pedidos, es decir crear un script que realice pedidos rellenando filtros de cada posición (precio, fecha de entrega, etc) y que al final de cada pedido se pueda adjuntar la oferta en el sistema que estará en una carpeta de ofertas.

    • @llorenccanellascollados1873
      @llorenccanellascollados1873 Рік тому

      Gracias por el tutorial muy bueno!!

    • @alefranzoni
      @alefranzoni  Рік тому +1

      @@llorenccanellascollados1873 Buenas tardes, primero que nada, gracias por el comentario, me alegro de que te haya gustado. En cuanto a tu solicitud, me podrías facilitar la transacción desde la cual haces está operatoria que me comentas? Así puedo revisarla y armar algo para un próximo video 😉.

    • @llorenccanellascollados1873
      @llorenccanellascollados1873 Рік тому +1

      @@alefranzoni Tienes un correo o teléfono de contacto y te paso lo que tengo a ver si te sirve??
      Gracias crack

    • @llorenccanellascollados1873
      @llorenccanellascollados1873 Рік тому +1

      No te lo pido de forma gratuita, me gustaría hablar contigo para negociar unos procesos a automatizar, me dices algo. Gracias

    • @llorenccanellascollados1873
      @llorenccanellascollados1873 Рік тому +1

      @@alefranzoni YPRPO es la función que utilizo yo en mi caso

  • @eltrinchetarodriguez
    @eltrinchetarodriguez 2 роки тому

    Usté es crá!!

    • @alefranzoni
      @alefranzoni  2 роки тому

      ¡Muchas gracias por tu comentario Enzio!

  • @luismagana3815
    @luismagana3815 Рік тому

    Hola Ale, Por que cuando se genera el archivo con el script lo abre sin que tu se lo indiques con el codigo? He intentado solucionarlo pero hasta ahora no he podido, tengo que cerrarlo manualmente. Te agradecería tu ayuda.

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Luis cómo estás? Eso generalmente suele pasar por el lugar donde lo estás guardando y las reglas del directorio configuradas en tu SAP. Puede ser que en algún momento hayas exportado un fichero a ese directorio y por regla le colocaste que siempre abriera sin preguntar. De todos modos, fíjate en la configuración de SAP GUI en el apartado de reglas y si está, borrala. Si no encontrás la sección a la cual hago referencia avísame y te indico. Saludos.

    • @luismagana3815
      @luismagana3815 Рік тому

      @@alefranzoni Te refieres al SAP GUI Option - SAP Logon? si es así no encuentro una sección que se llame reglas, mi SAP esta en Ingles busque una sección que se llame rules y no encontré algo parecido

    • @luismagana3815
      @luismagana3815 Рік тому

      Lo que te puedo decir es que un compañero de trabajo y yo tenemos ese mismo tema con nuestros Scripts, lo abre sin que se lo indiquemos con el código. trabajamos para la misma empresa.

    • @alefranzoni
      @alefranzoni  Рік тому +1

      @@luismagana3815 Si me refería a eso, hace lo siguiente:
      Anda a *SAP GUI Options > Security > Security Settings* y del lado derecho, dentro del apartado *Security Module* , hace clic sobre el botón *Open Security Configuration* y te va a abrir una ventana más. Ahí van a estar todas las reglas que ya no se preguntan al usuario. En la columna *Access Types* , vas a ver qué tipo de acceso tienen, las que vos estás buscando deberían decir *Execute* . Si hay alguna, selecciónala/s y le das a *Delete* para borrarla/s. Una vez realizado, guarda y cerra todo.
      Si encontraste alguna regla y la pudiste eliminar, no deberías tener más el inconveniente que me comentas. Confirmame si es así.
      Saludos.

    • @luismagana3815
      @luismagana3815 Рік тому

      @@alefranzoni Me salen solamente 5 filas de tipo 'directorio', 'linea de comando', 'SAP Shortcut', 'file', 'registry key', y todas tienen en el access type: Read, write, execute, Cual de esas es la que hace que se habra el
      archivo?. Nota esta habilitado la opciion de esconder las reglas de administrador y de SAP.

  • @derickmendivelso7173
    @derickmendivelso7173 Рік тому

    Hola amigo me sirvio mucho pero tengo un conflicto en el punto de la exportacion cuando abre el explorador de archivos se bloquea alli y no hace nada, podrias ayudarme?

    • @alefranzoni
      @alefranzoni  Рік тому

      Hola Derick, cómo estás? Me imagino por lo que me comentas que lo que te está sucediendo es que te está abriendo la ventana propietaria de Windows de explorador de archivos a la hora de seleccionar donde exportar el archivo, en lugar de la de SAP, no? Si esto es así, es normal que se “trabe” porque esta ventana al funcionar por fuera de SAP, scripting no puede acceder a la misma y, por lo tanto, no puede interactuar con ella tampoco.
      Te consulto, seguiste los pasos para exportar el archivo tal cual explico en el video? Porque generalmente si seguimos estos pasos nos abre la ventana de SAP y no la de Windows, que, por el contrario, la abre cuando entramos al menú de exportación desde otro lado o desde un botón dentro de la transacción.
      Saludos.

    • @derickmendivelso7173
      @derickmendivelso7173 Рік тому

      @@alefranzoni Hola amigo, buena tarde desde colombia, te agradezco mucho la respuesta, si en efecto tenia un error debido a que no lo hacia por medio del fichero si no por al exportacion directa a un excel, podria hacerte otra pregunta, ¿sabes como sobreescribir el archivo que exporto varias veces para que no se guarden varios archivos al tiempo?

    • @alefranzoni
      @alefranzoni  Рік тому

      @@derickmendivelso7173 Perfecto, me alegro de que hayas podido solucionarlo. En cuanto a lo de sobreescribir el archivo, si, tenes que pasarle siempre el mismo nombre. De esa manera, al crearse nuevamente se reemplazará en lugar de generar uno nuevo con cada ejecución. Si seguiste el ejemplo, en este caso deberíamos cambiar el valor de la variable *filename* y ponerle un valor fijo. Con eso ya estaría, saludos hacia Colombia 😉.

    • @derickmendivelso7173
      @derickmendivelso7173 Рік тому

      @@alefranzoni hola amigo te agradezco muchisimo la aclaracion, eres un Crack! amigo queria preguntar si no has pensado en hacer un video explicando como hacer un script pero fuera del sap para ejecutar proceso directamente con la interfaz de windows seria genial, saludos desde Colombia

    • @alefranzoni
      @alefranzoni  Рік тому

      @@derickmendivelso7173 Gracias a vos por el apoyo. ¿Vos te referís a hacer un programa/ejecutable que no sea un archivo de script o excel y que realice estas tareas de automatización? Saludos.

  • @eduardoordonez3444
    @eduardoordonez3444 Рік тому

    Buen día, podrías hacer un vídeo explicando cómo introducir variables de visualización de datos para que el SCRIPT siempre descarga los sets de datos con un layout específico?

    • @alefranzoni
      @alefranzoni  Рік тому +1

      Hola Eduardo, ¿cómo estás? Te comento que ya tengo un video donde explico como hacer eso, es decir, como seleccionar un layout especifico antes de descargar el archivo. Te dejo a continuación el enlace con el video en cuestión para que lo puedas ver 😉.
      ua-cam.com/video/5UF4NaE-ZJo/v-deo.html
      Saludos.

    • @eduardoordonez3444
      @eduardoordonez3444 Рік тому

      @@alefranzoniMuy bien gracias y tu?
      Muchas gracias por tu pronta respuesta! Me ayudo mucho el video.
      Tengo otra consultita, he logrado automatizar la descarga de datos de SAP de 3 transacciones distintas, abriendo 3 pestañas de trabajo y en cada una de ellas correr uno de estos scripts. Existe alguna manera crear un solo scrip que navegue entre las 3 pestañas de trabajo y ejecute lo que ya he creado por separado?
      De ante mano muchisimas gracias, tus videos son de gran gran ayuda.

    • @alefranzoni
      @alefranzoni  Рік тому

      ​@@eduardoordonez3444 Me alegro de que te haya servido. En cuanto a lo que me comentas, es posible, pero hay algunos detalles. Si lo que vos querés es que se ejecuten en paralelo, como lo estás haciendo ahora ejecutando a mano cada uno de tus scripts, no vas a poder porque necesitarías lanzar más de un hilo de ejecución (uno por proceso) y eso no te lo permite VBS, sino que termina de ejecutar un proceso y continua con el próximo.
      Como alternativa a esto, lo que si podrías hacer es una especie de archivo que sea tu «manager» u «orquestador» de todo el proceso y este archivo ejecute todos tus scripts, entonces desde este archivo estarías lanzando la ejecución de los demás, evitando solo la ejecución manual.
      La otra alternativa es que si no necesariamente los necesitas correr en paralelo a tus scripts, podrías nuclear todo en mismo archivo y hacer todos los procesos en una sola ventana, eso sí, tendrías que esperar que se termine uno para que comience el otro.
      Por último, si realmente quieres llevar esto un paso más adelante, podrías crear tu propio programa en .NET, que si soporta _multithreading_ y correr en cada hilo un proceso diferente.
      En fin, tendrás que evaluar cuáles son tus necesidades y elegir la mejor opción. Espero haberte podido ayudar a despejar las dudas.
      Saludos.