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
  #11  
Viejo 19/10/09, 13:46:16
Yanett Ponce Seares Yanett Ponce Seares is offline
Member
 
Fecha de Ingreso: abr 2009
Mensajes: 61
oka...
Codigo declaro el ALV
*--------------------------------------------------------------------------
* TABLA INTERNA ALV
*--------------------------------------------------------------------------
DATA: t_layout TYPE slis_layout_alv, " FORMATO QUe TIENE EL ALV
t_fieldcat TYPE slis_fieldcat_alv OCCURS 0 WITH HEADER LINE,
t_sort TYPE slis_t_sortinfo_alv, " PERMITE ORDENAR EL ALV
t_list_top_of_page TYPE slis_t_listheader,
t_events TYPE slis_t_event.
types: begin of slis_alv_event,
nombre(30),
form(30),
end of slis_alv_event.
types slis_t_event type slis_alv_event OCCURS 0.

Codigo Ejecuto el ALV

*&---------------------------------------------------------------------*
*& Form EJECUCION_ALV_CAJAS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*

FORM ejecucion_alv_cajas .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
it_sort = t_sort[]
i_interface_check = 'X'
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMMAND_CAJAS'
i_callback_pf_status_set = 'PF_STATUS_T_ALV_CAJAS'
i_structure_name = 'TI_ALV'
i_save = w_save
is_layout = t_layout
it_fieldcat = t_fieldcat[]
i_grid_settings = w_s_grid_settings
i_default = ' '
it_events = t_events[]
* it_event_exit = 'X'
is_print = w_impresion
* it_special_groups = 'VTEXT'
TABLES
t_outtab = ti_alv
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.

ENDFORM. " EJECUCION_ALV_CAJAS


form pf_status_set using rt_extab type slis_t_extab.
set PF-STATUS 'ZSTAT' EXCLUDING rt_extab.
ENDFORM.


form evento_pf_status.
data w_events type slis_alv_event.
CLEAR w_events.

w_events-form = 'pf_status_set'.
w_events-nombre = slis_ev_pf_status_set.

APPEND w_events
TO t_events.
ENDFORM.




Acà esta el manejo del user command que creo que deberia cambiar ya que aca habia definido los botones, no el ZSTAT que es donde los quiero manejar ya que no me alcanza para asignar los botones que necesito .... Ojala me puedas entender ... mira que ya estoy enredada ... gracias


*&---------------------------------------------------------------------*
*& Form user_command_kilos
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->U_UCOMM text
* -->US_SELFIELD text
*----------------------------------------------------------------------*
FORM user_command_cajas USING u_ucomm TYPE syucomm
us_selfield TYPE slis_selfield. "#EC CALLED

CASE u_ucomm.
WHEN 'FC01'.
IF p_conso = ' '.
PERFORM llena_alv_fieldcat_pesos.
PERFORM layout_pesos.
PERFORM sort_pesos.
PERFORM ejec_alv_pesos.
ELSE.
PERFORM llena_alv_fieldcat_consolidado.
PERFORM layout_pesos.
PERFORM sort_pesos_consolidado.
PERFORM ejec_alv_pesos.
ENDIF.
WHEN 'FC02'.
IF p_conso = ' ' . " DETALLE POR CANAL DE VENTAS
PERFORM llena_alv_fieldcat_kilos.
PERFORM layout_kilos.
PERFORM sort_kilos.
PERFORM ejecucion_alv_kilos.
ELSE.
PERFORM llena_alv_fieldcat_kilos_con. " DETALLE CONSOLIDADO
PERFORM layout_kilos_con.
PERFORM sort_kilos_con.
PERFORM ejecucion_alv_kilos_con.
ENDIF.
WHEN 'FC03'.
IF p_conso = ' ' . " DETALLE POR CANAL DE VENTAS
PERFORM llena_alv_fieldcat_unidad.
PERFORM layout_unidad.
PERFORM sort_unidad.
PERFORM ejecucion_alv_unidad.
ELSE.
PERFORM llena_alv_fieldcat_unidad_con.
PERFORM layout_unidad.
PERFORM sort_unidad_con.
PERFORM ejecucion_alv_unidad.
ENDIF.

WHEN 'FC04'.
IF p_conso = ' ' . " DETALLE POR CANAL DE VENTAS
PERFORM llena_alv_fieldcat_margen.
PERFORM layout_margen.
PERFORM sort_margen.
PERFORM ejecucion_alv_margen.
ELSE.
PERFORM llena_alv_fieldcat_margen_con.
PERFORM layout_margen.
PERFORM sort_margen_con.
PERFORM ejecucion_alv_margen.
ENDIF.



ENDCASE.
ENDFORM. "user_command2
Responder Con Cita
  #12  
Viejo 19/10/09, 13:59:33
Abaunus Abaunus is offline
Senior Member
 
Fecha de Ingreso: nov 2008
Localización: Buenos Aires
Mensajes: 119
Yanett, dos cositas:

Primero, no hace falta que declares los eventos, ya que el evento del status lo estás declarando aca:
Así que esto:

debería ser así:

Y lo otro, en el FORM user_command_cajas, en el CASE, en vez de esos nombres FC01, etc... deberías poner los que asignaste a tus botones en la se41.
Responder Con Cita
  #13  
Viejo 19/10/09, 14:12:16
Yanett Ponce Seares Yanett Ponce Seares is offline
Member
 
Fecha de Ingreso: abr 2009
Mensajes: 61
Smile


Siiiiii ahora entendí y me funciono ... espectacular ... agradecida por tú buena onda !!!!
Responder Con Cita
  #14  
Viejo 19/10/09, 15:36:26
Abaunus Abaunus is offline
Senior Member
 
Fecha de Ingreso: nov 2008
Localización: Buenos Aires
Mensajes: 119
Bien!!
Responder Con Cita
  #15  
Viejo 19/10/09, 17:59:49
Yanett Ponce Seares Yanett Ponce Seares is offline
Member
 
Fecha de Ingreso: abr 2009
Mensajes: 61
Thumbs up



Sigo molestando ....
Saben como puedo agregar los porcentajes de los totales y subtotales en un ALV .
Y lo otro que me esta pasando que dentro del evento 'pf_status_set' no puedo manejar la salida del programa como el &F03 BACK , cuando entro en el ALV y pulso los distintos botones creados y hago un BACK no se devuelve al inicio del programa, se devuelve cuantas veces haya pulsado el botón. Ojala se entienda ... Muchas Gracias por sus ayudas ....
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 09:19:57.


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