Lógica aplicada para quebra de pagina em formulário SAPScript, neste caso este dai conta 28 linhas para mudar de página.
PERFORM verif_count CHANGING count pag. _________________________________________________________________ FORM verif_count CHANGING p_count p_pag. count = count + 1. IF p_form = 'ZHR_BR_TERMO_NEW'. IF count = 28. * Nova pag ao atingir total de 28 ítens PERFORM end_form CHANGING subrc. PERFORM start_form USING g_arc_index CHANGING subrc. PERFORM write_hrt. PERFORM write_drt. p_count = 1. p_pag = p_pag + 1. ELSE. * Nova pag para novo motivo de Off-cicle IF vc_ocrsn_ant NE drt-ocrsn AND vc_ocrsn_ant NE space. * Imprime total do off-cicle anterior LOOP AT frt WHERE pernr EQ hrt-pernr AND ocrsn EQ vc_ocrsn_ant. PERFORM write_frt. ENDLOOP. * Nova página PERFORM end_form CHANGING subrc. PERFORM start_form USING g_arc_index CHANGING subrc. PERFORM write_hrt. p_count = 1. p_pag = p_pag + 1. ENDIF. PERFORM write_drt. ____________________________________________________________________________ ENDIF. ENDIF. ENDFORM. FORM write_drt. DATA: textelement TYPE pbrsp_text_element_wa, rc LIKE sy-subrc. CLEAR textelement. textelement-window = 'MAIN'. textelement-element = 'DETAIL'. PERFORM write_form_text_element USING textelement CHANGING rc. ENDFORM. "write_drt