2009-10-05 26 views
7

Dlaczego mój program ABAP to krótki zrzut podczas dołączania linii do posortowanego stołu?ABAP Short Dump na dołączonym posortowanym stole

ST22 Pokazuje ITAB_ILLEGAL_SORT_ORDER

data: sorted_tab type sorted table of ty_tab with non-unique key key, 
     line  type ty_tab. 

line-key = 1. 
append line to sorted_tab. "works fine" 

line-key = 2. 
append line to sorted_tab. "works fine" 

line-key = 1. 
append line to sorted_tab. "<==== Short dump here" 
+0

Wydaje się to głupie pytanie - ale ja właśnie zmarnowany wystarczająco dużo czasu, aby znaleźć odpowiedź, aby zapisać następna osoba trochę żalu. (Google był pomocny, pomoc SAP nie była) – Esti

+2

proszę dołączyć deklarację posortowanego stołu! – Thorsten

+0

dobry punkt - tak jakby Twój stół został zadeklarowany z unikalnym kluczem, dostałbyś kolejny krótki zrzut – Esti

Odpowiedz

13

programu krótkie wysypisk podczas dołączania posortowaną tablicę w niewłaściwej kolejności sortowania

data: sorted_tab type sorted table of ty_tab with non-unique key key, 
     line  type ty_tab. 

line-key = 1. 
append line to sorted_tab. "works fine" 

line-key = 2. 
append line to sorted_tab. "works fine" 

line-key = 1. 
append line to sorted_tab. "<==== Short dump here" 

Użyj INSERT zamiast:

data: sorted_tab type sorted table of ty_tab with non-unique key key, 
     line  type ty_tab. 

line-key = 1. 
insert line into table sorted_tab. "works fine" 

line-key = 2. 
insert line into table sorted_tab. "works fine"  

line-key = 1. 
insert line into table sorted_tab. "works fine" 

Uwaga Jeśli miał UNIQUE klucz byś nadal krótką zrzutu ponieważ używasz tego samego klucza dwukrotnie