Foro de programación ABAP

SAP / ABAP => Formularios => Mensaje iniciado por: molaci en 09 de Abril de 2008, 12:05:28 pm

Título: AT NEW - AT END en Smartforms
Publicado por: molaci en 09 de Abril de 2008, 12:05:28 pm
Hola, gracias por vuestras respuestas.

Tengo otra duda, dentro de un LOOP tengo que romper página (pasar a la página siguente) por cada nuevo cliente que me viene.

Como hago para que me haga algo así...
at new cliente --> (salto de página)

Gracias de nuevo.
Título: Re: AT NEW - AT END en Smartforms
Publicado por: ale12 en 09 de Abril de 2008, 06:03:24 pm

Citar
Dentro del Objeto LOOP en la pestaña Datos podemos trabajar con la parte de Criterios de Clasificación para crear eventos como el AT NEW Y AT END. Para ello unicamente debemos especificar el campo por el que deseamos realizar el quiebre y marcar la casilla de Inicio nivel clasif. y Fin nivel clasif. para utilizar los eventos at new y at end respectivamente.

Al hacer esto aparecera(n) un objeto(s) mas debajo del objeto LOOP, dentro del cual(es) podremos colocar la logica para el evento seleccionado.

By Gatini28

Saludos.
Título: Re: AT NEW - AT END en Smartforms
Publicado por: Carlos en 10 de Abril de 2008, 04:53:19 pm
Yo lo que suelo hacer es:

Por ejemplo... Me creo una línea de programa y en una variable guardo el cliente y por cada posición comparo el  cliente con el que teníamos antes.

De esta forma si son iguales continuas como si no hubiese pasado nada y si el que viene es distinto haces el salto de página.

Un saludo.
Título: Re: AT NEW - AT END en Smartforms
Publicado por: torrescano en 24 de Junio de 2008, 07:13:38 pm
q tal.

mira yo hice algo parecido, en mi caso lo q tenia q hacer es por orden de produccion, es decir por cada orden de produccion tenia q hacerlo en una nueva pagina y decir pag "n" de pag "m", entonces lo q hice fue en el prog control a mi tabla interna le hago un loop ty dentro de ese loop un at end of por orden
*controla la paginacion en la salida de las ordenes
  LOOP AT tab03.
    MOVE-CORRESPONDING tab03 TO tab01.
    APPEND tab01.
    AT END OF aufnr.
      MOVE-CORRESPONDING tab01 TO tab04.
      APPEND tab04.
      PERFORM calculo_datos. "aki hago calculos de la orden
      PERFORM impresion_datos. "aki es la llamada al smart
      REFRESH: tab01, tab02.
    ENDAT.
  ENDLOOP.

ojo: con esta rutina se manda llamar el cuadro de impresion por cada orden
espero te ayude esto, saludos