Autorizaciones para la visualización de Condiciones

En algunos clientes piden que ciertos usuarios no puedan visualizar las condiciones, de por ejemplo un pedido.

Esto no esta programado por SAP, pero la Nota 105621 que nos permite hacer esto.

La nota crea un objeto de blockeo entonces solamente a los usuarios que nosotros querramos le agregaremos un perfil con permisos para ver todas las condiciones.

Se se desea dividir los permisos. Por ej. Que ciertos usuarios vean los pedidos, pero no los contratos, o presupuestos. Para poder hacer esto cada uno debe tener un esquema de cálculo distinto. Sino no es posible.

NOTA: Los permisos se setean a nivel de Esquema de calculo, no de Transacción.

Debugging ABAP de una Webdynpro

Requisitos:
El JCO connector debe estar seteando en Single Server Connection.

1. Loguearse al sistema destino con el mismo nombre de usuario que esta seteado en el JCO connector.

2. Activar external debugging en ABAP Workbench.
a. Ir a tx SE37, SE38, o SE80.
b. Choose Utilidades-> Opciones en ABAP Editor tab ir a Debugging.
c. Poner el Usuario (JCO connector) Seleccionamos Actv. y Desactivamos IP matching
d. Salvamos.
3. Ponemos breakpoint Externo in the ABAP code, en el código como cualquier otro.

Al correr la Webdynpro for Java, se detendra en el breakpoint puesto y podemos analizar la llamada.

Crear transacción que ejecute directamente una vista de actualización.

Primero debemos tener echa una vista de actualización. Luego, si deseamos que el usuario ingrese una transacción y que le aparezca directamente la vista de actualización (modo update) para ya realizar cambios.

En la SE93 (creación de Transacciones) Creamos una tx y elegimos el tipo Parámetros y la seteamos de la siguiente manera.



Lo que estamos haciendo es llamar a la SM30, salteando la primer pantalla y abajo seteamos el nombre de la vista a actualizar y el modo de Update, si queremos que se visualice solamente hay que modificar ese parametro.

Parametros del servidor

En la tx rz10, podemos administrar los parámetros del servidor.

Al realizar cambios hay que bajar y volver a subir el servidor, para que tome los cambios.

Por ej: para que funcionen los Field Exits el siguiente parametro debe estar seteado.

abap/fieldexit = YES

Creación de Field Exits

Un Field Exit sirve funciona como un exit común, pero tiene ciertas particularidades y ademas el dominio abarca un solo campo (data element) y el dominio puede ser Global o especifico a Programa - Dynpro.

Para Acceder al Menu de Field Exits.

Tx CMOD y en el browser poner PRFB.

Si creamos un Field Exits, debemos primero Crear un grupo de Función, ya que el Field Exits trabaja en una Función con un parametro de import y otro de export, equivalentes al valor que ingresa y al valor que sale.

Luego de su creacion debemos Activarla para que surga efecto.

En un Field exit no podemos usar ninguna de las siguientes instrucciones.


  • BREAK-POINT

  • CALL SCREEN

  • CALL DIALOG

  • CALL TRANSACTION

  • SUBMIT

  • COMMIT WORK

  • ROLLBACK WORK

  • MESSAGE I

  • MESSAGE W



NOTA: Para poder activar los Field Extis debemos tener el parémetro.
abap/fieldexit = YES

Seteado en el servidor. Ver

Traducir un Smartform

Si se desea traducir un smartforms Z de español y a ingles, debemos utilizar la transaccion SE63 para realizar la misma y luego transportarla.

SE63 - Menu Traducción -> R/3 Enterprise -> Otros textos explicativos
Elejimos <> Smart Form SAP

En nombre de objeto ponemos el Smartforms que deseamos traducir. Con su repectivo Idioma origen y destino.
Nos aparecera una Doble ventana en la superior estan los textos y debajo su valor (en el idioma original) con su respectivo tipografia.

Nosotros debemos completar el cuadro de abajo elejiendo el valor que querramos en el idioma destino, o sea traducir nosotros la palabra del español a ingles.

NOTA: tratar de dejar la misma alineación de los textos, asi no tenemos problemos con las posiciones.

Al terminar, grabamos y activamos. Notese que no se genero ninguna orden de transporte.

Para poder transportar la traducción debemos agregar nosotros mismos la traducción a una Orden de transporte (algo similar con los textos creados con la SO10).

Ejecutar programa RS_LXE_RECORD_TORDER
Elejimos Create Transport Request ( )
Ponemos el idioma Destino
En Clase de orden elejimos T para que al liberar no se importen automaticamente en los otros sistemas o K para que siga la ruta especificada.

Grabamos. Esto genera una orden sin objetos. Ahora debemos llenarla.

Ejecutar programa RS_LXE_RECORD_TORDER
Ponemos el Idioma Destino 'EN' (ingles)
El tipo de objeto 'SSF' (Smartform)
Y la fecha y autor para restingir busqueda.

Nos aparecen las encontradas, ahi deberiamos ver la nuestra. La seleccionamos, ejecutamos y nos aparece un log de concluido.

Vamos a la SE10 y vamos a ver nuestra orden creada con el respectivo Objeto de traducción. Listo para ser transportada a QA.