MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 28/03/06, 16:29:10
alfredovh alfredovh is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 4
Field Exit

Buenos dias a todos.

Soy nuevo en ABAP y necesito resolver un problema urgente. Se trata de modificar dos transacciones estandar de SAP. La condicion es que dependiendo del usuario, se deshabilite un campo de una pantalla y coloque un valor por default desde que entre a la pantalla.

Segun lo que he investigado necesito utilizar un field-exit ya que las transacciones estandar de SAP no se pueden modificar, ya logre hacer un field-exit pero el valor por default solo lo puedo poner hasta que el usuario realiza una accion (presiona enter, etc). Como le puedo hacer para que dicho valor lo ponga desde que se inicie la pantalla y se deshabilite dicho campo??

Espero me puedan ayudar. Saludos.
Responder Con Cita
  #2  
Viejo 28/03/06, 16:43:43
axapta axapta is offline
Moderator
 
Fecha de Ingreso: feb 2006
Mensajes: 37
Hola Alfredovh,

Bienvenido a nuestro foro de sap .

La verdad es que desconozco las necesidades de tu requerimiento pero has echado un vistazo a este tip.



En el se explica como hacer para que un determinado usuario tenga un campo informado por defecto usando los parámetros de usuario.

La verdad es que no se si este es factible en tu caso o no. A lo mejor tienes 1000 usuarios y lo que necesitas es restringir por perfil, aunque me parece que existe algo similar en lugar de para usuario particular para un perfil.

El problema que tienes con las exit, es eso que son exits, es decir que se ejecutan cuando el usuario interactúa con las transacciones.

Un saludo, ya nos contarás.
Responder Con Cita
  #3  
Viejo 28/03/06, 18:00:13
alfredovh alfredovh is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 4
Smile Field Exit

Hola debug.

Muchas gracias por responer, pero temo que eso no me ayudara, explico mas detallamente para ver si me puedes ayudar un poco mas.

Existen las transacciones VD01 (creacion de cliente) y VD02 (modificacion del cliente). Dentro de los datos del cliente existe el campo ZTERM en el cual se determina por claves el tipo de credito que tiene el cliente o si paga de contado (en este caso la clave para contado es NT00).

La empresa requiere que solo determinados usuarios puedan otorgar credito (esto se realizaria creando un objeto de autorizacion) y aquellos usuarios que no tengan dicha autorizacion o perfil no podran otorgar credito, es decir, les debe aparecer por default NT00 y no se debe permitir cambiar dicho campo.

No se si todo esto se pueda realizar con los Field Exit o exista una forma alternativa de realizarlo. Por lo que he leido, dentro del field exit se incluye un authority check para validar si el usuario tiene permisos, pero ya lo demas no se como realizarlo.

Espero y alguien me pueda orientar. GRACIAS.
Responder Con Cita
  #4  
Viejo 29/03/06, 13:47:51
psolano psolano is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 14
Hola alfredovh.

Hay una manera de modificar el aspecto de campos en transacciones estandar. Son las variantes de pantalla. Con ellas puedes ocultar campos, darles valores por defecto, deshabilitar campos,... Además puedes asignar estas variantes a grupos de usuarios, con lo cual los usuarios que pertenezcan a ese grupo, automáticamente al llamar a la transacción se ejecutará con dicha variante.

El punto donde crear la variante está en el customizing. Ahora mismo no tengo acceso a SAP y no se la transacción. Si no lo encuentras no dudes en pedir ayuda.

Un saludo.
Responder Con Cita
  #5  
Viejo 29/03/06, 14:17:17
Avatar de joses
joses joses is offline
Moderador MASTER de LO-MM-SD
 
Fecha de Ingreso: mar 2006
Mensajes: 111
Hola alfredovh, te recomiendo que te leas el post de nuestro Administrador Tracer acerca del "Autocompletado mediante el uso de los Parámetros de usuario de SAP", con estos parametros puedes rellenar para cada usuario datos.
El Tip lo tienes colgado en la página principal.

Saludos.
Responder Con Cita
  #6  
Viejo 29/03/06, 16:27:57
alfredovh alfredovh is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 4
Field Exit

Hola buenos dias.

joses y plosano gracias por sus respuestas.

Creo que lo del tip del autocompletado no me funciona ya que para el campo que necesito no me muestra el ID Parameter, creo que no todos los campos tienen este parametro.

Me interesa mas lo que comentan acerca de las variantes de pantalla solo que no supe en que transaccion o menu se puede encontrar, espero y alguien sepa decirme cual es.

Algo que me pudiera ayudar como alternativa seria lo siguiente:

Supongamos que el usuario entra a la transaccion VD03 (Modificacion) el campo en cuestion ya trae informacion (supongamos que tiene el valor ZO02) entonces el usuario cambia ese valor por ZO03. Existe alguna manera dentro del field exit de obtener el valor que tenia antes de ser cambiado?? Es decir, puedo obtener el valor inicial ZO03 de algun lado?? Como se realizaria??.

Gracias a todos por su interes. Saludos.
Responder Con Cita
  #7  
Viejo 29/03/06, 16:38:54
psolano psolano is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 14
Buenas de nuevo.

Aquí te mando el link de la ayuda de sap para la creación de screen variants:



Un saludo.
Responder Con Cita
  #8  
Viejo 29/03/06, 16:55:49
alfredovh alfredovh is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 4
Muchas Gracias psolano.

Voy a checar esa docuementacion que espero me ayude.

Saludos.
Responder Con Cita
  #9  
Viejo 28/02/07, 17:06:42
hugogo_90 hugogo_90 is offline
Junior Member
 
Fecha de Ingreso: mar 2006
Mensajes: 8
Utiliza la transaccion SHD0.


Utiliza la transaccion SHD0 para crear la variante de transaccion y ahi mismo en modo de proceso para asignar el valor a los campos que necesites. Ahi mismo puedes asignanarlas para un usuario o grupo de usuarios...
Tambien puedes localizar un user exit y asiagnarla por programacion con ciertas funciones... Validando los usuarios que necesites o el objeto de Autorización.
Responder Con Cita
  #10  
Viejo 02/03/07, 13:57:23
manuelachetigue manuelachetigue is offline
Junior Member
 
Fecha de Ingreso: feb 2007
Localización: Mexico
Mensajes: 21
Aunque este tipo de practica ya no es recomendada por SAP, mi recomendación es... ejecuta el programa rsmodprf, te presentará los field exits existentes en el sistema.
En caso de que exista (verificar por el elemento de datos de tu tabla) seleccionarlo y poner las validaciones que requieras, es bien importante que debas de considerar el numero de dynpro en donde quieres que este tú validación en el caso de que no sea asignado ha un dynpro; tendrás problemas para que tu validación se ejecute y en algunos casos este elemento de datos al ser compartido por diferentes transacciones podria arrojar un error no deseado en otro dynpro.

En el caso de no existir hacer lo siguiente:
Presionar en el menu.. Alt+x para crear uno nuevo... (te recuerdo que es siempre sobre el elemento de datos).
Colocar únicamente el valor del elemento de datos a validar pe.. matnr(en el caso de que ya exista alguno y tu quieras crear uno nuevo, colocar un numero consecutivo pe. matnr_1).

Este punto te llevará a la transacción SE37 en automático.
Presionar crear y listo.. ahí puedes colocar tus validaciones que requieras (salvas, activas) y te regresas al programa RsMODPRF para hacerle la asignación del dynpro..

Es necesario recordar que los field-exits solo tienen import (input) Export (output).

Por lo tanto el valor que recibe la función es un input = valor_digitado y si deseas devolver un valor diferente output = resultado...
Por último solamente podrás colocar mensajes de tipo error no acepta warnings ni de sistema.

En espera de que estas pequeñas lineas te sean de utilidad..
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 20:46:23.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web