MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Contador de registros en ALV Grid (foro/showthread.php?t=25726)

Alfredosite 30/10/08 15:34:10

Contador de registros en ALV Grid
 
Hola amigos, como estan tengo una duda si en caso se pueda realizar tengo un ALV Grid al cual le envio una tabla con mis datos a mostrar, lo que necesito es que contabilize los numeros de registros que muestro en un campo del ALV y que este numero sea dinamico es decir que si filtro por un campo la contabilizacion se reordene consecutivamente.

A la primera salida:
Nro Nombre Clase
1 AAAA A1
2 BBBB A3
3 CCCC A1
4 DDDD A2
5 EEEE A1
6 FFFF A3
Total 6

Por ejemplo.
Si agrupo por clase deberia salir
Nro Nombre Clase
1 AAAA A1
2 CCCC A1
3 EEEE A1
total A3 ->3

1 DDD A2
total A2 ->1

1 BBBB A3
2 FFFF A3
total A2 ->2

Total 6

Alguna idea? O forma de contar los regitros y actualizarlos al agrupar por algun campo?:cool:

ibecerra 30/10/08 20:30:22

hola create un campo mas en la tabla ejemplo cant type i.
y por defecto colocale 1.
luego cuando armes tu fieldcat lo colocas de la siguiente manera
ejemplo:
* L_FIELDCAT-no_out = 'X'.
L_FIELDCAT-do_sum = 'X'.

y luego ordenar

DATA: WA_SORT TYPE SLIS_SORTINFO_ALV.
* Agrupamos la Salida del Reporte por Proveedor Ascendentemente
* y Obtenemos Subtototales
WA_SORT-SPOS = 1.
WA_SORT-FIELDNAME = 'CLASE'.
WA_SORT-TABNAME = 'TI_ALV'.
WA_SORT-UP = 'X'.
WA_SORT-SUBTOT = 'X'.
APPEND WA_SORT TO I_SORT.



CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = repname
i_structure_name = 'TI_ZTFXL'
is_layout = layout
it_fieldcat = fieldtab
i_default = 'X'
i_save = g_save
is_variant = g_variant
it_events = gt_events[]
* IT_SORT = I_SORT
i_grid_title = 'Detalle'
TABLES
t_outtab = ti_ztfxl
EXCEPTIONS
program_error = 1
OTHERS = 2.

DavidXD_XD 30/10/08 21:13:00

Hola lo que dice IBecerra es correcto :D, pero funcionaria si el usuario no arregla despues nada, ya que los campos de una columna en un ALV son estructurados, y si deseas cambiar algo lo tendrias que hacer de alguna manera con OBjetos y dentro de ella crear los botones de ordenamiento, ya que al hacer eso tu mismo tendrias que darle un REFRESH y asi tbm poder reordenar la columna de numeros del 1 al n .... ni modo que modifiquemos un standard :(

manuel2101 13/04/12 07:57:07

Hola,

Necesito meter un contador en un ALV para que el usuario despues de aplicar cualquier tipo de filtro, pueda obtener el nuevo de filas obtenido.

- Existe algo estandar para ello? (como tiene el Excel)

- He intentado lo siguiente. He metido con calzador un campo con el valor 1 por defecto para obtener el resultado deseado aplicando la suma del ALV, pero me da el mensaje "No se puede ejecutar la operación deseada para la columna..."

Gracias, saludos


Husos Horarios son GMT. La hora en este momento es 01:55:30.

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