Ohne das Programm zu sehen? Gar nicht.Nun ist die Frage, wie könnte man so etwas lösen?
Felder des Typs P haben eine Länge, die man größer wählen kann.Es wird in dem Programm in eine Variable die Beträge zusammengezählt, welcher als P deklariert ist. Es läuft leider über die mögliche Speicherkapazität.
Code: Alles auswählen.
 while sy-subrc = 0 and
        fxvbfa-vbelv = us_vbeln.
* Wenn Fakturen über die Fakturaschnittstelle zu einem externen Beleg
* (mit gleicher Belegnummer, wie US_VBELN) angelegt wurden, gibt es
* Belegflußeinträge, die als VBTYP_V nicht den zu US_VBELN gehörenden
* Belegtyp haben.
* Diese müssen aussortiert werden, da sie evtl. gar nicht zu US_VBELN
* gehören und ansonsten der externe Belegttyp für US_VBELN verwendet
* wird, falls der letzte Eintrag in FXVBFA ein externer ist.
    if fxvbfa-vbtyp_v ca vbtyp_extern.
      da_tabix = sy-tabix + 1.
      read table fxvbfa index da_tabix.
      continue.
    endif.
* Tabix für nächsten Read merken
    da_tabix = sy-tabix + 1.
    vbfa = fxvbfa.
    clear da_anzwap_exchange.
    if vbfa-wbsta eq charc and not vbfa-logsys is initial.
      da_anzwap_exchange = da_zaehler.
    endif.
    if vbfa-vbelv ne *vbfa-vbelv or
       vbfa-posnv ne *vbfa-posnv.
      if vbfa-vbtyp_v ca vbtyp_lp and not
         *vbfa-posnv is initial.
* erledigte Menge bei Lieferplänen für Zulieferer
        perform rv_erlmenge_l_ermitteln using *vbfa
                                              i_rmenge_needed_lp
                                              us_call_from_del
                                        changing fxvbapf-erlmenge_l
                                                 fxvbapf-erlmengelv
                                                 fxvbapf-rmenge
                                                 fxvbapf-rmengev
                                                 fxvbapf-pzmng_sa
                                                 fxvbapf-pzmng_sav
                                                 fxvbapf-erlmenge_p
                                                 fxvbapf-erlmengepv
                                                 fxvbapf-erlmenge
                                                 fxvbapf-erlmengev.
        append fxvbapf.
        clear fxvbapf.
      else.
        if not *vbfa-vbelv is initial or
           not *vbfa-posnv is initial.
          append fxvbapf.
          clear fxvbapf.
        endif.
      endif.
    endif.
     *vbfa = vbfa.
    fxvbapf-vbeln = vbfa-vbelv.
    fxvbapf-posnr = vbfa-posnv.
    fxvbapf-vbtyp = vbfa-vbtyp_v.
    perform rv_xvbapf_mengen_ermitteln using da_null
                                             da_null
                                             da_null
                                             da_zaehler
                                             da_anzwap_exchange
                                             da_taq.
    read table fxvbfa index da_tabix.
  endwhile.