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 22/11/07, 08:08:25
poketina poketina is offline
Senior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 105
Field exit para transacción FB60

Hola, me creé hace tiempo un field exit para la transacción FB60, en concreto para el campo BKTXT (Texto de cabecera). Lo que yo pretendía hacer es lo siguiente: si meto un valor en el campo XREF3 (Clv.Ref 3), busco en la tabla KONA y saco el texto para el número de acuerdo que han metido. Si el campo XREF3 está a blanco el campo BKTXT también. y de esta manera el usuario no puede modificar el texto BKTXT. El código de esto es el sigueinte:

FUNCTION field_exit_bktxt.
*"----------------------------------------------------------------------
*"*"Interfase local
*" IMPORTING
*" REFERENCE(INPUT)
*" EXPORTING
*" REFERENCE(OUTPUT) TYPE INVFO-BKTXT
*"----------------------------------------------------------------------
"----------------------------------------------------------------------
"*"Interfase local
" IMPORTING
" REFERENCE(INPUT)
" EXPORTING
" REFERENCE(OUTPUT) TYPE INVFO-BKTXT
"----------------------------------------------------------------------

DATA: l_valor(10),
l_knuma LIKE kona-knuma,
l_texto LIKE kona-botext,
l_bktxt(25).

* Campo clave referencia 3
CALL FUNCTION 'GET_DYNP_VALUE'
EXPORTING
i_field = 'INVFO-XREF3'
i_repid = 'SAPLFDCB'
i_dynnr = '0050'
CHANGING
o_value = l_valor.

IF l_valor IS NOT INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = l_valor
IMPORTING
output = l_knuma.

SELECT SINGLE botext
FROM kona
INTO l_texto
WHERE knuma = l_knuma.
IF sy-subrc = 0.
output = l_texto.
ELSE.
CLEAR output.
MESSAGE e023(zgr0) WITH 'El acuerdo introducido no existe'.
ENDIF.
ELSEIF l_valor IS INITIAL.
CLEAR output.
ENDIF.
ENDFUNCTION.

Bien, pues ahora el usuario quiere que si meten un número de acuerdo en el campo Clv.Ref 3 entonces busco en las tablas, si existe un texto asociado lo meto en el campo BKTXT (texto cabecera) pero aun asi, si ellos quieren cambiar manualmente este texto de cabecera, quieren poder hacerlo. y si el número de acuerdo esta vacío pues también quieren poder meter ellos el texto que quieran en el BKTXT.
Vale, pues aqui es donde estoy perdida, no sé si me hace falta un nuevo field exit o que.. Espero haberme explicado !!!
Gracias de antemano !!!!!1
Maria
Responder Con Cita
  #2  
Viejo 22/11/07, 09:46:27
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
Hola lo que podrias probar es comentar el siguiente codigo del field exit, para que veas el resultado, que requieres.

*ELSEIF l_valor IS INITIAL.
*CLEAR output.

Despues debes hacer otra validacion en donde buscaras el texto que ellos introduzcan en el campo para verificar si existe o no.
Saludos!!!!
__________________
Un Huevon No Inútil


Solo di lo que piensas, a la mejor tienes la mejor respuesta....

Si alguien ya lo hizo, copialo y cambiale las variables total es un codigo nuevo.....

Si SAP lo hace se puede hacer, no me pidas hacer algo que SAP no ha hecho.....

Consultor FI jr/ABAP Sr.
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 13:53:55.


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