Calcular número total de paginas en ALV evento TOP_OF_PAGES

Para calcular el total de páginas impresas en un ALV, lo hice en el evento TOP_OF_PAGE. Bien la formula que encontré fue [TOTAL DE LINAS A IMPRIMIR entre EL TOTAL DE LINEAS QUE ME CABEN EN EL PAPEL]. Dudo que este sea el mejor método para hacer esto, pero fue el único que encontré, y vaya que investigue. Pero ya sabemos que los tiempos cuentan en esto. A mi me funciona bien.


  data:  vpage type sy-pagno,    "Variable donde pondré el total
         divit type decimals 2,
         vnlines type i.
  clear: vpage,vnlines,divit
.

 "Conseguir el número total de lineas a imprimir
  describe table xdata lines vnlines.
  divit = vnlines / 50.   "<-- Este 50, representa la cantidad de lineas que caben en mi impresión.

                          "    como ya sabemos la impresión depende del formato de edición
                          "    para este reporte tenia una de x_65_230
  vpage = ceil( divit ).  "Al utilizar el CEIL me redondea al próximo entero más grande. Ejemplo:

                          " 1.01 lo lleva a 2.. seria un total de 2 paginas impresas.

  WRITE: / 'Página', sy-pagno, ' de ', vpage.

Comentarios

Hansel Espinoza (Abiathar) ha dicho que…
Excelente! Muchas gracias...

Entradas populares de este blog

Direcciones en SAP

Funcion MD_CONVERT_MATERIAL_UNIT