Inicio > Query > Asignar transacción a una query

Asignar transacción a una query

Una de las tareas básicas de programación que nos han podido pedir alguna vez es la asignación de una transacción a una query.

Actualmente existen dos métodos para realizarlo, uno de ellos es más peligroso que el otro, os lo explicaré con detalle…

El primero paso común a ambos métodos es conocer los detalles de la query que estamos tratando. Necesitamos conocer:

– Nombre de la query

– Grupo de usuarios asignado a la query

– Variante de ejecución si la hubiera

– Nombre del programa auto-generado de la query. Para obtenerlo entrar en la SQ01, seleccionar la query y darle al menu Query->Otras funciones-> Visual.Nombre report   o bien ejecutar la query y darle a Sistema->Status

Una vez obtenidos estos datos procedemos a la creación de la transacción pudiendo hacerlo de dos formas (todo desde la SE93):

1. Crear una transacción report.  Esta es la forma más común y consiste en crearse una transacción de report y asignarle el programa query auto-generado. Esto es peligroso hacerlo de esta forma porque al ser auto-generado algunas veces el nombre del report varía, especialmente después de un upgrade de sistema o bien no contiene las nuevas implementaciones y tienes que forzar en ese caso a que lo regenere.

Los pasos para crearlos son los siguientes:

– Entrar en la SE93 y seleccionar transacción de report

Darle a Ok y rellenar los parámetros siguientes:

– Texto transacción

– Programa: nombre de report auto-generado por SAP de la query

– Inicio con variante: nombre de la variante si la tuviera (parámetro opcional)

– Tildar todas las opciones de SAP GUI

2. Crear una transacción de parámetros. Es el modo correcto de hacer la transacción y consiste en crear transacción de parámetros

Los pasos para crearlos son los siguientes:

– Entrar en la SE93 y seleccionar transacción de parámetros

Darle a Ok y rellenar los parámetros siguientes:

– Transacción: START_REPORT

– Omitir imagen inicial: marcado

– Tildar todas las opciones de SAP GUI

Y usamos los siguientes valores de propuesta para los campos de la dynpro:

D_SREPOVARI-REPORT: Nombre del Grupo de Usuarios del Query.  Si es globlal en la posición 12 tiene que ir una G.  Ej ZGR         G

D_SREPOVARI-EXTDREPORT:  Nombre de la query

D_SREPOVARI-REPORTTYPE: AQ (de ABAP Query)

D_SREPOVARI-VARIANT: Nombre de la variante de la query si la tuviéramos (parámetro opcional)

Hay que tener en cuenta el ámbito funcional con el que se creó el query. El mismo está en la transacción SQ01 en Entorno->Ambitos Funcionales. Existen 2 posibiidades: Ambito estándar o Ambito Global. En general se debe usar el segundo porque es mejor para poder transportar todos los objetos del query. Dependiendo del ámbito funcional, el parámetro D_SREPOVARI-REPORT varía. Para el ámbito estándar, se pone directamente el nombre del grupo de usuarios; pero para ámbito global se debe poner una G (g mayúscula) en la posición 12 de la variable D_SREPOVARI-REPORT. Si no se hace esto, aparecerá un mensaje diciendo que no existe el grupo de usuarios. Esta forma de crear transacciones para queries es la correcta porque si ponemos el nombre del programa directamente, nos va a traer problemas a la hora de transportar la transacción porque el nombre del programa generado por el query depende del entorno y mandante.

  1. Anónimo
    23 abril, 2012 a las 4:15 pm

    Esta muy bien, lo aplicaré, gracias.

  2. felix
    28 mayo, 2013 a las 7:32 pm

    Excelente post, una consulta, llegue a crear una transacción para mi query de sq01. pero ahora deseo modificar un poco esa query, cómo puedo hacer para que mi query actualizada se llame por la misma transacción z que ya cree.

  3. Anónimo
    25 julio, 2013 a las 11:58 pm

    Solo se debe transportar en caso que se haya realizado en desarrollo el cambio del query, no requiere actualizar nada en la transaccion.

  4. ZELAI
    22 octubre, 2015 a las 2:08 pm

    Buenos días,

    Perfecto el post, me ha servido de mucho.
    Mi pregunta es la siguiente, creado la trx en DESARROLLO, existe la forma de trasnportarlo ? o debo crear la trx siguiendo los mismos pasos en INTEGRACION ?
    Gracias por anticipado

  5. 22 octubre, 2015 a las 4:10 pm

    Si has creado la transacción, tiene que haberte creado una orden de transporte. Asegúrate si quieres que la query ya existe en el sistema destino donde vayas a transportar la transacción

    • ZELAI
      26 octubre, 2015 a las 11:00 am

      Buenos días, lo he vuelto a hacer siguiendo todos los pasos, tal vez el problema venga de la selección del paquete, es decir, una vez realizo todos los pasos descritos, grabo y me sale una pantalla indicando qué paquete deseo seleccionar. y no se cuál escoger.

      Gracias de antemano

      • 26 octubre, 2015 a las 11:07 am

        Claro, tienes que elegir un paquete de desarrollo. Consulta con tu equipo en cual tienes que meterlo. Una vez que lo elijas, te pedirá la oportuna orden de transporte.

        Espero haberte ayudado.

        Un saludo.

  6. ZELAI
    23 octubre, 2015 a las 1:12 pm

    Hola, que raro porque he seguido cada uno de los pasos en DESARROLLO pero no me ha creado orden y la trx la ha creado de forma correcta en el entorno de DESARROLLO, es más, la he ejecutado y ejecuta de forma correcta la query.

    ¿Que puede estar pasando ? qué me aconsejas hacer para que la transacción pase también a asociarse a la query en Integración ? en INTEGRACION existe la query y la infoset y el grupo de usuarios, ya se encuentra pasado.

    Gracias por anticipado

  7. ZELAI
    26 octubre, 2015 a las 10:47 am

    Buenos días,
    He creado la transacción en el entorno de DESARROLLO, y funciona bien, sin embargo, no me ha pedido orden de transporte, y la query e infoset y grupo de usuarios SI existe en INTEGRACION, no se cómo hacer para pasar la transacción creada a integración…qué ha podido pasar ?

    Gracias por anticipado

  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: