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 27/08/08, 08:35:39
TUESDAY TUESDAY is offline
Member
 
Fecha de Ingreso: may 2006
Mensajes: 32
y sabes que funcion es? O me puedes dar una indicacion de como encontrarla??

Yo he encontrado ésta "UPP_ALV_GET_GRID_INSTANCE" pero no encuentro información sobre ella, y no sé muy bien como usarla
Gracias por adelantado

Úlima edición por TUESDAY fecha: 27/08/08 a las 08:44:08.
Responder Con Cita
  #2  
Viejo 27/08/08, 09:22:26
Avatar de vcarrillo
vcarrillo vcarrillo is offline
Junior Member
 
Fecha de Ingreso: jul 2008
Mensajes: 3

Decirte que para la version 4.6C no esta disponible el parametro e_grid, para la 6.20 si esta disponible. Es esta.

Responder Con Cita
  #3  
Viejo 27/08/08, 10:06:29
TUESDAY TUESDAY is offline
Member
 
Fecha de Ingreso: may 2006
Mensajes: 32
Muchas gracias por contestar!!!
Lamentablemente, parece que esto no funciona ya que sigue sin actualizarme el valor del total.
He puesto la llamada al metodo dentro del from data_change.
Si alguien tiene alguna sugerencia más será bienvenida.
De nuevo muchas gracias y saludos!
Responder Con Cita
  #4  
Viejo 27/08/08, 10:33:46
TUESDAY TUESDAY is offline
Member
 
Fecha de Ingreso: may 2006
Mensajes: 32
Vale, no he dicho nada, finalmente ha funcionado.
mi fallo estaba en que le he pasado el metodo con los parametros del exporting, pero al llamarlo sin pasarle nada por el exporting, ha funcionado perfectamente.
Muchas gracias a todos por vuestra ayuda!!!

Os dejo aqui el codigo de como ha quedado el evento data_change por si alguien lo necesitase algun dia.
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,
ls_fielcat TYPE lvc_t_fcat.
* Inicialitzacions
DATA cant TYPE i.
* 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 = 'LFIMG'.
* Realizamos las operaciones necesarias para nuestra modificacion
READ TABLE i_alv INDEX ls_mod_cell-row_id .
* Convertimos el string a entero
SEARCH ls_mod_cell-value FOR ',0'.
IF sy-subrc = 0.
ls_mod_cell-value = ls_mod_cell-value+0(sy-fdpos).
ENDIF.
REPLACE '.' IN ls_mod_cell-value WITH space.
CONDENSE ls_mod_cell-value NO-GAPS.
MOVE ls_mod_cell-value TO cant.
PERFORM calc_precio_xfact USING i_alv-kbetr
i_alv-kpein
cant
CHANGING i_alv-kwert.

IF sy-subrc = 0.
MODIFY i_alv INDEX ls_mod_cell-row_id.
CALL METHOD rr_data->modify_cell
EXPORTING
i_row_id = ls_mod_cell-row_id
i_fieldname = 'KWERT'
i_value = i_alv-kwert.
ENDIF.
ENDIF.
ENDLOOP.
* Actualizamos el alv, para que se actualicen los totales
DATA: ld_grid TYPE REF TO cl_gui_alv_grid.
* Esta funcion devuelve la instancia del alv que estamos pintando
* para poder usar los metodos asociados al alv
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
* EXPORTING
* IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
* ET_EXCLUDING =
* E_REPID =
* E_CALLBACK_PROGRAM =
* E_CALLBACK_ROUTINE =
e_grid = ld_grid
* ET_FIELDCAT_LVC =
* ER_TRACE =
* E_FLG_NO_HTML =
* ES_LAYOUT_KKBLO =
* ES_SEL_HIDE =
* ET_EVENT_EXIT =
.

DATA: d_stable LIKE lvc_s_stbl.
d_stable-row = 'X'.
d_stable-col = 'X'.
* Actualizamos el alv
CALL METHOD ld_grid->refresh_table_display
* EXPORTING
* is_stable = d_stable
* i_soft_refresh = 'X'
.
ENDFORM.
Responder Con Cita
  #5  
Viejo 27/08/08, 11:10:49
vickxo vickxo is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Madrid, España
Mensajes: 118
Hola!

Hola, encontre este codigo:


FORM data_changed USING rr_data TYPE REF TO
cl_alv_changed_data_protocol.
DATA : ls_mod_cell TYPE lvc_s_modi.
DATA : c_texto LIKE tj30t-txt30.
SORT rr_data->mt_mod_cells BY row_id .
LOOP AT rr_data->mt_mod_cells INTO ls_mod_cell.
* Compruebo que el campo que se ha modificado es el que quiero
tratar
IF ls_mod_cell-fieldname = 'ESTAT'.
* Haces las comprobaciones necesarias
SELECT SINGLE txt30 INTO c_texto
FROM tj30t
WHERE stsma = 'ZCSIORD'
AND txt04 = ls_mod_cell-value
AND spras = sy-langu.
READ TABLE g_mseg INDEX ls_mod_cell-row_id .
IF sy-subrc = 0.
* Con el resultado, modifico el campo que quiero
g_mseg-txt30 = c_texto.
* Primero modifico la tabla interna
MODIFY g_mseg INDEX ls_mod_cell-row_id.
* Luego hago el refresh del campo que quiero que se modifique
en el ALV
CALL METHOD rr_data->modify_cell
EXPORTING
i_row_id = ls_mod_cell-row_id
i_fieldname = 'TXT30' "Aquí va el campo que quieres
modificar
i_value = c_texto. "Aquí el texto que quieres
modificar
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. "data_change

lo tome de aqui ...



No c muy bien si puedes controlar el user_command su fuese asi podria intentar esto:
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
DATA: w_answer TYPE c.
rs_selfield-refresh = 'X'.

CASE r_ucomm.
WHEN 'EXEC'.
*--La comprobación sólo se realiza si no estamos en test, ya que
*..cuando ejecutamos en test no se crea el juego de datos
*****Campo PA_CHECK ya no se utiliza.JRMR2008
*****Se cambia por pregunta si se requiere ejecutar el registro de
*****las Facturas.
CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'
EXPORTING
diagnosetext1 = 'Va a procesar las Facturas'
diagnosetext2 = 'Desea Continuar'
textline1
...



Saludos.

Saludos
__________________
el tema esta en hacer la pregunta correcta...
Responder Con Cita
  #6  
Viejo 05/09/08, 14:40:18
Avatar de mcarrasco
mcarrasco mcarrasco is offline
Member
 
Fecha de Ingreso: jul 2007
Localización: Venezuela. Pto Ordaz
Mensajes: 71
Cl_gui_alv_grid

Amigo cambiate a CL_GUI_ALV_GRID, te tardara 1 o 2 dias si es muy largo... y te ahorras el problema..

Aunque tambien podrias desactivar el calculo automatico del total y hacerlo tu manual... y agregas un registro en blanco al alv_grid de color amarillo con los totales nada mas....
__________________

Atte. Marcos Carrasco...
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:40:03.


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