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 26/02/08, 17:49:16
wlade wlade is offline
Junior Member
 
Fecha de Ingreso: feb 2007
Mensajes: 1
evento ENTER o Cambio de datos en ALV (no OO)

Buenas,

Tengo una alv editable, utilizando el MF "REUSE_ALV_GRID_DISPLAY". Me gustaria comprobar cuando el usuario pulsa el ENTER o cambiar datos de una celda. Como puedo hacerlo?

RECORDAD: NO es una OO ALV, se esta utilizando un modulo de funciones.

Saludos
Responder Con Cita
  #2  
Viejo 27/02/08, 08:01:17
LouieBoy LouieBoy is offline
Member
 
Fecha de Ingreso: ago 2006
Mensajes: 86
Buenas, por desgracia en los alvs por funcion no son muy versatiles, como mucho creo que podras registrar lo del enter, pero olvidate del evento on change.. a menos que no lo programes tu con un par de tablas internas y comparando, la cual cosa me parece una matada teniendo los objects....
Para lo el ok code enter, deberias asignarle al enter un ok code desde el status, con eso y si sabes como funcionan los user command con los alvs por funcion deberias tener suficiente.

Saludos,

LouieBoy
Responder Con Cita
  #3  
Viejo 27/02/08, 08:11:03
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
Para los datos de la celda, deberias guardar los datos en una tabla interna auxiliar para despeus compara. por que asi tan facil no es
__________________
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
  #4  
Viejo 27/02/08, 08:19:30
LouieBoy LouieBoy is offline
Member
 
Fecha de Ingreso: ago 2006
Mensajes: 86
Lo que yo digo... una matada.... reinventemos la rueda señores..

Saludos,

LouieBoy
Responder Con Cita
  #5  
Viejo 11/03/08, 10:29:18
sanckok sanckok is offline
Member
 
Fecha de Ingreso: oct 2007
Mensajes: 40
Hola,

Perdona mi ignorancia Me podrias decir como le pongo el enter al ok code?

Muchas gracias
Responder Con Cita
  #6  
Viejo 11/03/08, 10:49:00
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
hola hasta donde yo se el enter es nulo o blanco, si viene blanco es que le an dado enter al teclado.

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
  #7  
Viejo 11/03/08, 10:57:15
sanckok sanckok is offline
Member
 
Fecha de Ingreso: oct 2007
Mensajes: 40
Si, pero cuando le doy a enter, no me hace nada el programa, es como si no detectase que he pulsado el enter
Responder Con Cita
  #8  
Viejo 11/03/08, 11:19:36
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
cuando el cursor se encuentra dentro del ALV, sap no entiende la instruccion enter, lo que debes hacer es poner o posicionar el cursor en el cuadro de comandos o de transacciones y luego darle enter.

logicamente no es lo correcto pero no se me ocurre nada. Es mejor un doble clic
__________________
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
  #9  
Viejo 11/03/08, 11:23:03
sanckok sanckok is offline
Member
 
Fecha de Ingreso: oct 2007
Mensajes: 40
Ok, gracias, no me sirve.
Ahora he encontrado una cosa y lo estoy probando
En la funcion REUSE_ALV_GRID_DISPLAY
he encontrado (o mejor dicho he visto) uno de los parametros que es I_GRID_SETTINGS, que tiene un campo EDT_CLL_CB que parece que puede tener algo que ver con lo que quiero.
Responder Con Cita
  #10  
Viejo 11/03/08, 14:28:36
vickxo vickxo is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Madrid, España
Mensajes: 118
posteron esto mas arriba...

Mira, posteron esto ams arriba y es buena opcion, segun yo


Primero agrego el evento DATA_CHANGED a la llamada del alv, en tu codigo seria en el gt_events[]
FORM eventtab_build USING it_events TYPE slis_t_event.

DATA: l_event TYPE slis_alv_event.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = it_events.


l_event-name = 'DATA_CHANGED'.
l_event-form = 'DATA_CHANGED'.
APPEND l_event TO it_events.
ENDFORM. "eventtab_build

Luego creo la rutina DATA_CHANGED para efectuar los cambios necesarios. El evento salta con el INTRO

FORM data_changed USING rr_data TYPE REF TO cl_alv_changed_data_protocol.
DATA : ls_mod_cell TYPE lvc_s_modi,
lv_value TYPE lvc_value .
data c_texto like tj30t-txt30.
* Inicialitzacions
data rs_selfield TYPE slis_selfield.

* Tractament de les dades modificades
SORT rr_data->mt_mod_cells BY row_id .
LOOP AT rr_data->mt_mod_cells INTO ls_mod_cell.
IF ls_mod_cell-fieldname = 'ESTAT'.
SELECT SINGLE txt30 INTO c_texto
FROM tj30t
WHERE stsma = 'ZCSIORD'
AND estat = ls_mod_cell-value
AND spras = sy-langu.
READ TABLE g_mseg index ls_mod_cell-row_id .
if sy-subrc = 0.
g_mseg-txt30 = c_texto.
modify g_mseg index ls_mod_cell-row_id.
call method rr_data->MODIFY_CELL
exporting i_row_id = ls_mod_cell-row_id
i_fieldname = 'TXT30'
i_value = c_texto.
ENDIF.
ENDIF.
ENDLOOP.
* MESSAGE i300.
ENDFORM.


Revisa de todos modos el posteo de modificar un alv...bye

__________________
el tema esta en hacer la pregunta correcta...

Úlima edición por vickxo fecha: 11/03/08 a las 14:30:42.
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 11:07:36.


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