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 14/12/07, 06:56:14
yerotos yerotos is offline
Member
 
Fecha de Ingreso: nov 2007
Mensajes: 39
Exclamation Como pasar un select options a una función

Buenas de nuevo.
Tengo en mi código un select options:

select-options:
si_nie for T7EHS00_SERVICE-pernr.

y quisiera pasar el valor que contenga este select options a una función, lo he hecho de la siguiente forma:

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = so_nie
IMPORTING
output = it_lineatabla-nie.

y me da todo el rato error.

Como pongo en el input el select options?

Gracias otra vez.

Salu2
Responder Con Cita
  #2  
Viejo 14/12/07, 07:55:26
JAC JAC is offline
Junior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 27
Leete esto a ver si te sirve de algo.
Responder Con Cita
  #3  
Viejo 14/12/07, 08:00:57
orlava orlava is offline
Junior Member
 
Fecha de Ingreso: dic 2007
Mensajes: 9
El select options es una especie de tabla interna. La función en cuestión no admite tablas internas, solo parámetros. Por ello debes hacer lo siguiente:

Debes hacer un loop at si_nie
Dentro llamas a la funcion pasándole como parametro si_nie-low, que representa cada valor del select-options.
con lo que te devuelva la función rellenas la cabecera de tu tabla interna it_lineatabla y le haces un append.
Responder Con Cita
  #4  
Viejo 14/12/07, 12:13:16
ibecerra
 
Mensajes: n/a
hola no te preocupes es entras a la se37
muy facil y sencillo a tu funcion en la pestaña de tables
creas un parametro ejemplo

parametro tipificaci tipo_ref
T_MATERIAL LIKE BAPI_RANGESMATNR --> "en este caso he conseguido una estructura estandar de rangos" si no sabes cual es ubicala en se11 opcion "tipo de datos" o creas una.
luego en el codigo de la funcion se lo pasas como un range ejemplo
select * into table xxxxx from mara where matnr in t_material. --> viste q se comporta como un range, porque un range es una tabla interna o estructra de datos
saludos
Responder Con Cita
  #5  
Viejo 14/12/07, 12:16:28
ibecerra
 
Mensajes: n/a
ahh me olvidaba
en tu programa principal tienes lo siguiente

select-option s_matnr for mara-matnr..

start-of-selection
CALL FUNCTION 'ZRFC_TUFUNCION'
TABLES
T_MATERIAL = S_MATNR
Responder Con Cita
  #6  
Viejo 14/12/07, 12:32:25
yerotos yerotos is offline
Member
 
Fecha de Ingreso: nov 2007
Mensajes: 39

Gracias, por tu ayuda. Esto que me indicas, me funciona a medias. Si le meto un rango de valores, por ejemplo del 1 al 20, si_nie_low siempre sera 1.

Como puedo solucionar esto?
Responder Con Cita
  #7  
Viejo 14/12/07, 12:35:26
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
tendrias que crear una funcion que sea inteligente y lea los valores de la tabla interna.

y poder crear el rango de 1 a 20 o de 0 a n

o ver si solo es un parametro.

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
  #8  
Viejo 14/12/07, 13:07:06
yerotos yerotos is offline
Member
 
Fecha de Ingreso: nov 2007
Mensajes: 39
Si pero cual es el campo del select-option que contiene el valor?
Me refiero a si el valor es si_nie o si_nie-algun campo...

Perdonan mi ignorancia
Responder Con Cita
  #9  
Viejo 17/12/07, 07:56:25
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
por ejemplo si declaras un s_matnr como select los valores los tienes en s_matnr-low y s_matnr-high.

y en s_matnr-option tienes si es bt = entre, EQ = igual, etc. ahi tendrias que meter tu logica.
__________________
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
  #10  
Viejo 18/12/07, 07:21:02
yerotos yerotos is offline
Member
 
Fecha de Ingreso: nov 2007
Mensajes: 39

Entonces, por ejemplo para los intervalos, lo que tendría que hacer es recorrer desde s_matnr-low y hasta el s_matnr-high y coger lo que contenga s_matnr-low, no?
Lo único, tendría q ir aumentandole en una unidad cada pasada no?

Estoy muy verde, lo siento. ops:
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 22:51:23.


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