[TUTORIAL] Introducción a SAP Scripting: Comienza a automatizar tareas en SAP GUI
HTML-код
- Опубликовано: 9 фев 2025
- Te presento una útil y potente herramienta para que puedas comenzar a automatizar tareas dentro de SAP GUI. Se trata de SAP Scripting, funcionalidad mediante la cual podremos crear scripts personalizados y ahorrarnos mucho tiempo evitando realizar trabajos monótonos y repetitivos.
Si esto te suena interesante y querés aprender todo sobre SAP Scripting, no podés perderte este video introductorio donde te explico todo lo que necesitas saber para comenzar a utilizar esta potente herramienta.
🔹 Personal webpage:
www.alejandrof...
🔹 LinkedIn:
/ alejandrofranzonig
🔹 Github:
github.com/ale...
🔹 Twitter:
/ alefranzonidgk
🔹 Instagram:
/ alefranzoni
☕ ¿Estás disfrutando de este contenido? ¡Podés ayudarme mucho a seguir creando este tipo de contenido invitándome un cafecito! Si residís fuera de la Argentina, también podés apoyarme mediante PayPal.
cafecito.app/a...
www.paypal.com...
Encontré algo que buscaba, gracias. Saludos desde México.
¡Saludos desde Argentina! 😄 Me alegro de que te haya servido el video.
Mas videos de Automatizacion con Sap muy interesante lo felicito
¡Muchas gracias Luis! Me alegro que te hayan gustado, se viene más contenido en breve 🙌🏻
Muchas gracias por compartir, me sirvió mucho. Saludos desde Perú.
Con mucho gusto, saludos!
Excelente Explicacion e informacion
buen video, recomiendo hacer uno de carga de datos desde el script con macro desde excel, es muy practico cuando tienes que hacer carga de 1000 usuarios, o creaciones de roles.
¡Muchas gracias por tu comentario! Sí, tal cual, seguramente el próximo video ya trate de eso y de como iterar entre un listado de ítems en Excel y ejecutar una determinada acción (script) en SAP para cada una de ellas. Saludos.
Muy buena introducción a Scripting en SAP! Gracias me intereso mucho.Saludos.-
¡Muchas gracias por el apoyo!
Excelente! me encantó, ya con este video se me ocurren mil cosas para hacer.
Hola, tienes grandes y entendibles vídeos.
Felicitaciones y muchas gracias.
Una consulta, yo suelo usar script, pero tengo una consulta. En algunos casos sale error, por ejemplo esta buscando un anexo y si no encuentra anexo dentro del documento se interrumpe, luego se vuelve a correr el script. Como puedo hacer , para que si por A o B no encuentra anexo o sale algún tipo de error, guardar el mensaje de error y seguir con la siguiente línea.
Muchas gracias de antemano
Muchas gracias por tu comentario, Luis. En cuanto a tu consulta, lo que puedes hacer es el uso de la instrucción "On Error GoTo [line]". De esta manera, podrás capturar y manejar errores y enviarlo a donde desees, si efectivamente ocurre un error durante el procedimiento. Es bastante sencillo de utilizar, pero te dejo un enlace a la documentación oficial donde podrás investigar un poco más a fondo. Saludos!
learn.microsoft.com/es-es/office/vba/language/reference/user-interface-help/on-error-statement
@ muchas gracias por la pronta respuesta, voy a revisar lo comentado. Un par de consultas, yo trabajo sobre el mismo txt, no lo llevo a una macro en Excel, qué desventajas o problemas podría tener ? El código que me comentas funcionaría igual?. Y una última consulta, no sé si tienes una comunidad o alguna firma quizá de interactuar en caso de tenga preguntas.
Hola nuevamente Luis, en cuanto a tu duda, no hay problema con ejecutarlo en VBS, lo que si, va a cambiar un poco lo que te comente porque en dicho lenguaje no tenes la capacidad de hacer el "On Error GoTo ", pero si algo muy parecido manualmente, manejando los errores. Te dejo una porción de codigo que te escribi de ejemplo para que juegues y lo puedas adaptar a tu conveniencia.
🔰 *EJEMPLO ERROR HANDLING - VBS* 🔰
MsgBox "First line"
' Declaramos esto antes del lugar o porción de codigo que puede fallar
On Error Resume Next
ThisMethodDoesNotExtistAndWillFail(0)
' Chequear si hubo un error (justo después de todo el codigo que es susceptible de fallo)
If Err.Number 0 Then
' Ocurrio un error, aca deberas manejarlo como tu quieras
MsgBox "An error has occurred: " & Err.Description
' Limpiamos el error
Err.Clear
Else
' No hubo error, continuamos con el codigo deseado
MsgBox "I'm going to run only if there's no previous error"
End If
' Reiniciamos el error handling
On Error GoTo 0
MsgBox "Last line"
En cuanto a tu pregunta sobre la comunidad, no tengo nada, pero puedes ponerte en contacto conmigo vía correo o alguna de mis redes sociales que deje en la descripción de mis videos.
Espero te sirva,
Saludos.
@ Muchas gracias me sirvió mucho. Una consulta adicional, Hay alguna manera de hacer la ejecución de fondo? o que me permita poder usar SAP para otras consultas y otras acciones. Te agradezco de antemano
Si te refieres al script, no, no es posible. Ya que básicamente lo que estás haciendo con esta herramienta es automatizar la interacción real con la UI de SAP, por lo tanto, necesita realizarse en pantalla. Lo que sí podés hacer como alternativa es que el script se ejecute en una sesión/ventana aparte de la que estás trabajando (creada por el mismo script, tengo otros videos sobre eso). De esta manera podrás continuar con lo que estás haciendo en tu pantalla y, aparte, en otra nueva, se estará corriendo el mismo.
Saludos.
buena explicación...
si se hizo la 2da parte?
oies sabras tema de habilitarlo desde el Sever, consideraciones que hay que tener?
saludos...
Hola EdMerino, sí, para activarlo desde el servidor tienes que:
1. Ingresar con un usuario con privilegios y permisos de administrador
2. Ingresar a la transacción RZ11
3. En el recuadro de Param. Name (nombre de parámetro) ingresar *sapgui/user_scripting* y clic en Display (visualizar)
4. Se abrirá una ventana, donde los tres últimos parámetros son valores de TRUE/FALSE. Tienes que tener los 3 en TRUE. Para cambiarlos, te posicionas sobre el que querés cambiar y apretás el botón Change Value (cambiar valor).
Listo, ahora tienes que salir de tu sesión (SAP GUI) y volver a entrar y estará habilitado. Tenés que tener en cuenta que este cambio se borra, es decir, se vuelve a deshabilitar si el servidor de SAP es reiniciado.
Saludos.
Se podría autorizar la colocación de ordenes de compra?
Seguramente, aunque desconozco el procedimiento exacto. De todas maneras, todo lo que se haga dentro de SAP GUI, es factible de automatizar 😉
Hola, si tengo desactivada la opción de grabar y reproducir script como puedo activarla?
@@kimiovillalobosmartinez9404 tenés acceso a la RZ11? Si es así, podes hacerlo a través de la misma. De lo contrario, vas a tener que pedirle a tus administradores del sector IT/SAP si te lo pueden habilitar. Saludos.
Me interesa obtener mas info sobre esta funcionalidad y su interaccion con excel
En breve estaré publicando más información acerca de este tema. ¡Saludos!
muy bueno Ale !!
¡Muchas gracias Agus!
holaa tengo un problema tengo activado el scripting pero cuando grabo no me deja como puedo solucionarlo el error es "The proccess can not access the file because is being used by other proccess pero no tengo nada abierto que conecte este archivo script estoy muyy atenta gracias
Hola Laura, cómo estás? Este error te sale al querer iniciar o al detener la grabación? Es raro, probaste cambiando el nombre y directorio de donde vas a guardar el archivo vbs?
Muy buen video, pero aun no encuentro uno que explique subir datos de excel y colocarlos en una transaccion sap de forma automatizada con el script
me comentas
Te he contestado tu duda en un comment anterior. Saludos!
hola! ya pude interactuar con SAP usando Excel VB y Python. lo que no estoy pudiendo automatizar es el tema de una vez que estoy en la ventana de SAP Logon abrir la Conexión
me gustaría automatizar todo directamente... Gracias!!!
Hola Grichly, te invito a ver los demás videos que tengo en el canal sobre SAP Scripting, entre ellos vas a poder encontrar uno que trata todo el tema de como abrir las conexiones de manera automática. Saludos.
Hola muy buen video, como puedo cerrar las ventanas de SAP GUI?
Hola Jose, ¿cómo estás? Para cerrar la aplicación por completo, SAP no nos proporciona un método directo, pero dependiendo si estás trabajando directamente desde un Script (vbs) o Excel (VBA), podrías utilizar lo siguiente:
⬇️ *VBS*
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "taskkill /f /im saplogon.exe", 0, True
⬇️ *VBA*
Shell "taskkill /f /im saplogon.exe", vbHide
Colocando ese código al final de toda tu ejecución, cerrará por completo la aplicación. Recordá que si la cerras y tenías sesiones abiertas sin datos guardados, los perderás.
Espero haberte podido ayudar,
Saludos.
Hola, gracias por tus videos son muy útiles, duda: antes podia programar las descargas de algunos reportes de SAP con el Programador de Tareas de Windows pero en unas actualizaciones de enero 2024 a la fecha ya no ejecuta la tarea, tendrás una solución, gracias
Buenas Juan, cómo estás? Que raro que te haya dejado de ejecutar la tarea. ¿Probaste con la "típica" de borrarla y crearla de nuevo? O creando una nueva que haga algo sencillo para ver si se ejecuta y es tema de la tarea particular o del programa que no está funcionando correctamente.
Hola Ale, una pregunta es que estoy intentando desde exel hace cambios de textos a un documento con distintas posiciones
Hola Carlos, cómo estás? Podrías explicarme un poco mejor que es lo que estás queriendo hacer? Para así poder darte una mano.
Saludos.
Hola Ale! Muy bueno esto, me interesa aprender lo que comentaste al final, cómo conectar SAP con Excel, es decir, que SAP vaya buscando de las columnas de Excel la info que quiero insertar en SAP en una tx cualquiera, por ej, cargar un pago, cargar un pedido, etc, y que esto se repita tantas veces como filas cargué la info en Excel. Te mando un saludo, gracias!
Hola Sebastián, primero que nada muchas gracias por tu comentario, me sirve un montón para saber que tipo de contenido les interesa más e ir planificandolos. En cuanto al tema de integrarlo a Excel, te comento que seguramente el próximo video de este tipo se trate de esto, asique a estar atento a lo que se viene. Saludos.
Excelentes videos!!! Una consulta, tengo un script que le da click a una solapa dentro del módulo de Real Estate, que se encuentra en la posición 5 de las solapas, pero otro usuario que tiene más roles, dicha solapa se encuentra en la posición 8. Por lo que entiendo el findById está haciendo referencia a la solapa segun la posición, entonces el script presiona siempre la posición 5, ¿ hay forma de buscar dicha solapa no por la posición sino por otro atributo que inequivocamente de click sobre la solapa correcta? muchas gracias!!
¡Muchas gracias! En cuanto a tu consulta, la respuesta tiene dos respuestas.
En primer lugar, si las solapas que estás cliqueando son parte de un objeto GuiTabStrip, que es lo más probable, observa que cuando grabas el script cada Tab (solapa) tiene un nombre o id identificatorio único. Luego, el scripting hace uso de dicho id para seleccionar el tab, es decir, no hace uso de su posición. Por lo tanto, si esta solapa está presente siempre para todos los usuarios, no tendrías por qué preocuparte por la posición.
Ahora bien, si esta solapa realmente no sabes si está o no presente para todos los usuarios, entonces sí debes corroborar anteriormente que la misma exista para luego poder seleccionarla. ¿Cómo puedes lograrlo? Lo que vas a tener que hacer es recorrer el objeto GuiTabStrip consultando por cada uno de sus Tabs (hijos) y sus respectivos nombres, y cuando encuentres el que tú deseas, seleccionas dicho tab, de lo contrario, puedes optar por mostrarle un mensaje a tu usuario y no continuar con la ejecución del script.
Si me preguntas a mí, optaría siempre por la segunda opción, ya que es la más segura y flexible para todos los usuarios.
Espero haberte aclarado un poco más el panorama,
Saludos.
@@alefranzoni me aclaraste si, definí una variable donde almaceno el objeto tabbedpane y recorriendo los children, en su propiedad text puedo "leer" la solapa por el texto que aparece en SAP y me olvido en la posición que se encuentre. Muchas gracias por todo y espero puedas hacer más videos relacionados a SAP scripting!!!
@@sapisoftware1942 De nada, un gusto poder haberte podido ayudar. Por supuesto, pronto se viene mucho más contenido sobre Scripting.
Buenas tardes, gracias por excelente video. Quería consultar si es posible conectar SAP con excel? Estoy trabajando en un proyecto y necesito extraer ciertas columnas de SAP y agruparlas todas en un archivo excel. Espero su respuesta, gracias
Hola Julio, muchas gracias por tu comentario. Cuando decís conectar, te referís a conectarlo como una fuente externa y poder usarlo en PowerQuery, por ejemplo? O de tener un botón que ejecute SAP y corra lo que sea necesario, extraiga la info requerida y te la devuelva a tu archivo? Si esta última, se puede hacer tranquilamente y en el canal hay un montón de videos que te pueden ser de ayuda para lograrlo. Y si lo que querias era algo más como lo primero que te plantee se puede hacer, pero ya depende de tener acceso a HANA.
Saludos.
Hola sabes por qué los botones de stop y de grabar no están activos en mi sap? Como puedo activarlos?
Hola Ariadna, si ves los botones grisados es porque la opción de scripting está deshabilitada desde el lado del servidor. Lamentablemente, a menos que seas administrador del sistema, no podés activarlo vos misma. Si este es el caso, te recomiendo que hables con tu sector de IT para consultar si pueden activar esta función. No debería haber ningún inconveniente, ya que se trata de una característica “legacy” de SAP. ¡Saludos!
Hola, tengo un problema, me sale nombre del fichero no válido. Qué puedo hacer?
@@anyelaperedasanchez9289 Hola Anyela, en que momento te sale ese error? Y si estás cambiando el nombre del fichero, cual estás colocando?
muy grandes tus videos Ale, en el video dices que se puede llamar a una transaccion con StartTransaction ( "nombredetransaccion"), pero para rizar el rizo ¿como se puede llamar a una combinacion de transaccion y variante? muchas gracias por la ayuda que das a la comunidad
Muchas gracias por tu comentario David. Cuando hablas de variante te refieres a una variante de visualización de una transacción, no? Si es así, entonces te comento que SAP no nos ofrece ninguna manera directa desde un método, como en este caso, pero como siempre, hay solución. En uno de los videos del canal (ruclips.net/video/5UF4NaE-ZJo/видео.html) automaticé la selección de una variante de visualización. Te invito a revisarlo, a ver si sirve para tu caso, si no tendrás que automatizar tu procedimiento de selección.
Cualquier consulta, me comentas!
Saludos.
buenos dias en mi caso el grabar y reproducir script no esta activado, es de una lap top de la empresa dodne estoy...eso significa que no puedo usar script loq ue pasa es que solo quierdo autoimatizar la descaragr de unas tablas a excel..es todo que se podria hacer en ese caso
Hola Alvaro, cómo estás? Sí, lo más seguro es que tengan deshabilitada la opción de Scripting y por eso no lo podés utilizar. Lamentablemente, si no lo activan te va a ser imposible utilizar este método. Podrías hablar con tu sector de IT para que lo habiliten, ya que no creo que vos cuentes con los permisos para hacerlo. Suerte y saludos.
Buen video, yo estoy tratando de hacer que se automatizen los quality notificacións ya que hacemos muchos repetitivos
¡Muchas gracias! Y éxitos con esa automatización 💪🏻
Hola!! El codigo donde se puede ver?
Hola Juan, cómo estás? En este caso no he subido el código por ser demasiado sencillo y no tenía mucho sentido. Tendrás que hacer tal como muestro en el video y grabar algún tipo de operación para generar y poder ver su código correspondiente. Saludos.
Hola buen dia/tarde,
Tengo una duda para poder agregar mas texto en los campos como se le puede hacer o lo podrias explicar, ejemplo utilizando la IW32 (Transaccion SAP) quiero colocar mas datos o informacion en la opcion de Operacion mas alla del texto que muestra.
Saludos..
Hola Edgar, cómo estás? Te comento que lo que me estas planteando se puede hacer haciendo clic en el botón de texto extendido de la operación deseada y colocando el texto ahí. Todo esto lo podes grabar y con algunas consideraciones podrías completar el proceso satisfactoriamente.
Si de todas maneras te gustaría que hiciera un video explicando este proceso, por ejemplo, cargando operaciones en un listado de órdenes (con textos simples y extendidos), házmelo saber y me lo anoto para un próximo video.
Saludos.
@@alefranzoni Hola, muy bien gracias, espero que te encuentres bien, si seria mejor si pudieras explicarlo en algún video ya que al momento de utilizar la grabadora no se guarda el proceso de escribir o colocar un texto en el campo extendido solo genera la función de abrir el editor de texto extendido.
Saludos...
Hola Ale! Excelente video, una consulta me gustaria automotizar una transaccion, crees que se puede configurar una vez al dia, cuando se abra el sap a primera hora? O sin tener que abrir sesion? Saludos! Quedo atenta.
Hola Constanza, muchas gracias, me alegro de que te haya gustado el video. En cuanto a tu consulta, primero comentarte que sin tener que abrir sesión no se puede, ya sea manual o con el script vas a tener que iniciarla. Luego, sí, podrías automatizar el proceso que desees y programar, desde el programador de tareas de Windows, que se ejecute en el día y horario que quieras.
Saludos.
@@alefranzoni muchísimas gracias! Lo tendré super en cuenta
Hola Ale, me encantaria saber si existe una forma de que funcione un script con dos pestañas para imprimir informacion pero si o si debe hacerse en dos pestañas diferentes. Hasta hoy solo he visto script que funcionan con una pestaña.
Agrsdeceré mucho tu respuesta.
Hola Darling, cómo estás? Con _"dos pestañas"_ te referís a que si con un mismo script puedas manipular dos ventanas/sesiones/modos de una misma conexión SAP? Sí es así, te confirmo que si se puede, por otro lado, si entendí mal, te pido que me expliques con mejor detalle para poder responderte correctamente.
Saludos.
@@alefranzoni si, te explico.
Con mi usuario yo debo generar dos transacciones para imprimir documentos las cuales son ZDSD_RP011 y VT03N ambas transacciones abiertas al mismo tiempo y de ambas uo debo imprimir documentos de la primera imprimo información que contiene datos del cliente, Num. de facturas, montos etc. Y de la segunda imprimo ZPRE y ZNLQ que es información de los productos que se ha cargado en un transporte.
Por tanto yo necesito que el script grabe primero la impresion de la RP011 y luego vaya a la VT03N e imprima los otros dos documentos y luego de eso que regrese a la RP011 a imprimir el siguiente tranporte....asi sucesivamente hasta que finalice de imprimir los 50 transportes.
Espero haberme dado a comprender.
Un saludo.
@@darlinglisettesevillasolor6378 Si entendí perfectamente, y es totalmente factible de realizar. Te recomiendo que le pegues una mirada a este video (ruclips.net/video/YQq8wnDB2HU/видео.html) donde explico como podes gestionar sesiones, si es que aún no lo has visto. En el mismo, explico como crear más de una sesión, en este caso, lo deberías adaptar para tu caso de uso. Por lo que te debería quedar, por ejemplo, una objeto *session* con una sesión y otro *session2* con la otra. De esta manera, vas a poder ejecutar lo que quieras en cada una de las sesiones.
Espero que haya quedado claro, y si no, de todas maneras, dentro de poco ya se viene un video explicando esto justamente, como poder crear más de una sesión y manejar las mismas.
Saludos.
Hola, buenas noches desde Venezuela, agradecido por enseñar esta técnica, me puedes ayudar indicandome como puedo activar la funcionalidad desde el servidor? El Scriting esta instalado pero al ir a la opción de grabar no esta activo, sin embargo, entro en el mandante de prueba y si esta activo y funciona correctamente. De antemano muchas gracias
Hola David, cómo estás? Primero que nada, muchas gracias por tu comentario y me alegra que te haya sido de utilidad.
En cuanto a como activarlo del lado del servidor, debes hacer lo siguiente (siempre y cuando tengas para permisos para hacerlo): docs.uipath.com/studio/v2018.4/docs/enabling-sap-gui-scripting
Recuerda que si no cuentas con los permisos necesarios o no eres el administrador no podrás realizar este cambio y deberás solicitarlo al departamento de IT o quién se encargue en tu empresa de administrar SAP.
Saludos.
@@alefranzoni Muchísimas Gracias!!! Lo conversare con el equipo de IT
@@davidnatera8923 me alegro haberte podido ayudar. Cualquier cosa me consultas 🙌🏻
Saludos.
Me encantan tus videos. Me han servido una barbaridad.
Una consulta, ¿cómo haces para que SAP no te pida permiso siempre para ejecutar el Script? Usualmente me sale un mensaje al cual tengo que dar OK para que recién empiece a correr.
Muchas gracias por tu comentario Alessandro, me alegro mucho y me motiva a seguir creando contenido de este tipo. En cuanto a tu consulta, lo que tenes que hacer es, como se muestra en el minuto 1:16 de este mismo video, ir a las opciones y luego al apartado de *Accebilidad y scripting* y desactivar las dos primeras casillas: _Notificar cuando un script se añade a un SAP GUI_ y _Notificar cuando un script abre una conexión_
Con esos cambios ya no debería aparecerte más dicho mensaje. También hay otra advertencia que puede llegar a salirte, pero en la misma advertencia hay una casilla que podes tildar la cual dice algo como _"Recordar decisión"_ (o algo por el estilo), la cual una vez tildada y dándole ok al warning, el mensaje no volverá a aparecer más en próximas ejecuciones.
Saludos.
Saludos
¿Siguiendo con el mismo ejercicio, Se puede crear el Script para crear OT y definir tipo de actividad?, Me gustaría hacerlo, pero de manera que se ejecute filtrando algunos tipos de Avisos en especial, no con todos
Excelente video y gracias por compartir!
Hola Cristian, gracias por tu comentario, es un gusto para mí poder compartirles este contenido. En cuanto a tu consulta, sí, es posible. Lo que tendrías que hacer es ejecutar la tx de lista de avisos con los filtros que necesites, recorrer el listado resultante y para cada uno de ellos crear la orden correspondiente. Todo eso es perfectamente realizable mediante este tipo de automatizaciones. Te invito a ver los demás videos del canal con los cuales te vas a poder guiar para lograr lo que me comentas sin mayores inconvenientes. Saludos.
@@alefranzoni Gracias por tu Respuesta, he creado el Script para convertir los avisos a ordenes, pero cuando tengo una lista de avisos debo volver a ejecutar el Script para cada uno de ellos, ¿es posible realizar un Script que automáticamente siga creando las ordenes cuando tengo una lista de avisos, sin necesidad de ejecutarlo para cada uno? Gracias por tu respuesta y apoyo.
@@cristianhernanlondonorosas8368 Si, claro que si, lo que vas a tener que hacer es poner el código dentro de un bucle (For por ejemplo) que recorra los avisos a convertir a órdenes y ejecute para cada iteración la automatización que le indiques, que siempre será la misma lógica solo que pasándole como parámetro el aviso a convertir. Saludos.
Alguien sabe trucos(atajos) de tecleado entre SAP y EXCELL para hacer mas facil y rapido el trabajo entre ellos?
Cuál es la razón por la que unicamente se puede grabar el ingreso a la transacción pero ya no graba las demás acciones ?
En que transacción te pasa eso? O con todas? Si es con todas es probable que del lado del servidor este algo desactivado para no permitirte grabar.
Saludos desde Colombia, Tienes algún tutorial que tome algún Layout especifico de una transacción que sea escrito desde VBA?
Hola Hector, primero que nada, gracias por tu comentario. En cuanto a lo que me planteas, lo que quieres decir, es ¿ejecutar el script desde código VBA dentro de un Excel? Si es así, seguramente el próximo video que suba estaré explicando como realizar esto y aumentar la potencialidad de esta función. En caso de no ser esto a que te referías, te pido más detalles para poder darte una mano. ¡Saludos!
@@alefranzoni Saludos Alejando, muchísimas gracias por responder, para ser mas detallado, has transacciones que cuando se ejecutan, dentro de estas transacciones hay variantes o disposiciones adicionales, un ejemplo puede ser la MB51 donde despues de ejecutar con los parámetros establecidos este arroja otra pantalla con los resultados que necesitas, pero en esta nueva pantalla puedes seleccionar una disposición diferente la cual la puedes seleccionar desde la barra de herramientas en el botón de opciones, luego variante de visualización, luego seleccionar; al hacer esta toma muestra una nueva pantalla la cual contiene las variantes creadas, que pueden ser varias dependiendo de la necesidad de cada persona; ahora teniendo en cuenta esto, es posible seleccionar una variante especifica con el código VBA, en el cual cuando entre a esta última pantalla donde hay diferentes variantes, esta seleccione específicamente la que se desea; valga aclarar que cuando se graba el SCRIPT este lo hace pero por conteo de posición en la columna, y si se crea una variante o se elimina este perjudica el resultado; espero sea entendible.
@@hectormauriciochaconarcia7496 Perfecto, ahora si entendí a lo que te referías y te comento que hay dos posibles soluciones, una simple y otra más compleja. Empezando por la más compleja, esta constaría en llegar a la parte que obtienes el resultado de la transacción, ir hasta el diálogo donde cambiamos el layout y ahí iterar sobre objeto *CONTAINER*, guardando la posición, hasta llegar al valor del layout buscado y seleccionarlo.
Ahora bien, por lo que me comentas, vos ya tenes el nombre específico del layout a utilizar, por lo tanto, lo que te propongo hacer es optar por la segunda solución. Sería directamente, antes de procesar la transacción, colocar en el apartado de filtro correspondiente (Layout) el nombre de tu layout y de esta manera, el resultado que te devuelva lo vas a visualizar de la manera deseada, sin necesidad de cambiar nada post-transacción. Esto lo podés lograr muy sencillamente haciendo que el script grabe este campo y colocando el nombre del layout deseado cada vez que tenga que procesar la transacción.
Espero que se haya entendido y no tengas dudas en consultarme cualquier inquietud que te surja, en cuanto pueda te contestaré. De todas maneras, me anoto esto para incluirlo en el próximo video para que quede mejor explicado.
¡Saludos, Hector!
@@alefranzoni Si, así realicé otro Script el cual me busca el Layout y me lo trae a disposición así evito tener que el lenguaje sea mas complejo, aunque quería hacerlo para saber como modificar dicha linea y me arroje el Layout
Si hago tiempo a incluirlo en el próximo video sobre SAP Scripting, enseñaré como iterar en contenedores de datos (como este, por ejemplo) y como ir obteniendo cada uno de los valores de las líneas hasta llegar al deseado y seleccionarlo. Puede que sea un poco complejo, pero creo que puede llegar a ser muy útil en diversos casos donde se tenga que navegar por un listado de registros.
Buenas Noches Ale,
Exelente video
Yo tengo una duda como puedo hacer para poderme desplazar sobre la pantalla de sap, no puedo agrgar foto pero coloco algo del texto final ctxPLPOD-VGE02 [19,1]").Text mi pregunta como hago dinamico 1 que es la primera fila lo sustitui por una variable pero no me funciono
Gracias
Hola Jose, cómo estás? Muchas gracias por el comentario. En cuanto a lo que me comentas, sin ver el código, creería que está bien lo que estás intentando hacer para iterar sobre el listado, recuerda siempre de convertir la variable en Integer de manera explícita, porque a veces falla por eso.
De todas maneras, te dejo a continuación el link a un video del canal donde se explica esto con mayor detalle: ruclips.net/video/5UF4NaE-ZJo/видео.html
Saludos.
hola, impartes clases o tutoriales en linea?
Hola Felipe, cómo estás? No, por el momento todo el contenido que tengo es el que voy publicando por este medio. Saludos.
@@alefranzoni eres un chingon en esto!!! Oye podria consultarte algunas dudas con un proceso q estoy haciendo?
@@felipecuevas1285 muchas gracias! Si por supuesto, no hay problema. Si quieres escríbeme por correo o alguna de mis redes sociales tus dudas (que es mejor que RUclips para redactar) y con gusto te responderé. Saludos!
Hola!!. Alguien sabe como bajar el listado de Transacciones de SAP? O al menos como ver en SAP?
Hola Daniel, cómo estás? En el siguiente enlace podés encontrar todas las transacciones (T-Codes) existentes en SAP: www.sap-tcodes.org/analytics/name/iw.html. Tene en cuenta que, por supuesto, no cuenta con las transacciones que comienzan con "Z" que son las que se arman a medida y que en el enlace que te deje te filtre para que veas por todas las que comienzan con IW.
Saludos.
@@alefranzoni Muchas gracias, Ale!!!!. Consulta. ¿Se puede bajar el contenido de una tabla hacia Excel o hacia una .dat o .csv?. Por ejemplo, puedo bajar con ME33K las posiciones de un Acuerdo Marco, pero quiero bajar los número de servicios para una posición de un AM o mejor aún, todos los números de servicios que contiene un determinado AM. Solo puedo verlo, pero no he podido bajarlo como .xls, .dat o .csv. Desde ya gracias!!!
@@DanielGutierrez-rr3be Eso va a depender mucho de la transacción y si la misma te permite bajar los datos o no. En general, casi todas estas que son de listados te permiten. Te recomiendo que mires los otros videos que tengo en el canal sobre estos temas que seguramente te puedan ayudar mucho. De lo contrario, y no poder bajarlo, siempre podés hacerlo manualmente recorriendo el listado y seleccionando los datos que desees, aunque claro que esta opción es la más compleja. Saludos.
Excelente video, como comentario tienes una falta de ortografia el titulo del video dice comenzá en lugar de comienza, saludos.
Muchas gracias por tu comentario Rogelio y por el detalle. Ya quedo corregido, se me había pasado 😅. Saludos.
@@alefranzoni No hay de que, una duda me gustaría saber como es que puedo solucionar el problema de cuando el scripting no encuentre alguna pantalla o boton y arroje error, quisiera saber si alguna manera de condicionar con una especie de IF si es que encuentra el pantalla ejecute tal accion y en caso de que no siga con el script, muchas gracias, saludos.
@@rogelio9099 Hola Rogelio, si lo que quieres es comprobar por una ventana o botón en específico, por ejemplo, sería así:
If Not session.findById("wnd[1]", False) Is Nothing ➡ True si wnd[1] existe.
De todas maneras, si queres ahondar un poco más en detalle sobre que otras comprobaciones podrías hacer para verificar su existencia, te recomiendo pasarte por este video bit.ly/3v7wfSQ y hay un comentario donde le respondo a Bárbara con más detalle.
Saludos.