Ver Mensaje Individual
  #2  
Viejo 30/08/06, 18:05:57
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
A ver si me logras entender:

1° Parte creando un módulo de funciones que tenga la interfaz siguiente:

FUNCTION ZAYUDA_MISDATOS.
*"----------------------------------------------------------------------
*"*"Interfase local
*" TABLES
*" RECORD_TAB STRUCTURE SEAHLPRES
*" SHLP_TAB TYPE SHLP_DESCR_TAB_T
*" CHANGING
*" VALUE(CALLCONTROL) LIKE DDSHF4CTRL STRUCTURE DDSHF4CTRL
*" VALUE(SHLP) TYPE SHLP_DESCR_T
*"----------------------------------------------------------------------

* Defines tu tabla interna en donde tendrás losa datos que quieres
* tratar en el match-code
data: begin of mis_datos occurs 0,
campo1 like referencia,
campo2 like referencia,
campo3 like refrencia,
end of mis_datos.

* ESTE IF TIENE QUE IR NO LO BORRES.
IF CALLCONTROL-STEP = 'SELECT'.

* Puebla tu tabla interna, por ejemplo
select * into corresponding fields of table mis_datos
from <tu_tabla>
where <tus_condiciones>.


REFRESH RECORD_TAB.
* ESTO PASA TUS DATOS A LA INTERFAZ DEL MATCH CODE
* NO BORRAR.
CALL FUNCTION 'F4UT_RESULTS_MAP'
TABLES
SHLP_TAB = SHLP_TAB
RECORD_TAB = RECORD_TAB
SOURCE_TAB = mis_datos
CHANGING
SHLP = SHLP
CALLCONTROL = CALLCONTROL.
CALLCONTROL-STEP = 'DISP'.
ENDIF.
ENDFUNCTION.

2° vas a tu match code
En la sección Obtención de Datos. No ingresas nada.
En campo Exit Ayuda p.Búsq. Ingresas la Función que creaste anteriormente.
Y con eso ya tienes disponible los campos de la tabla interna de la función para que crees el match code tal como si lo estuvieras tomando direcatamente de una tabla o vista (método de Selección).

Saludos.

Mauricio Hidalgo

Úlima edición por Mauricio Hidalgo fecha: 30/08/06 a las 18:08:42.
Responder Con Cita