Проверка в se14 показала, что противоречий в табличке нет. А удаление и повторное создание диалога ведения полезных результатов не дало

При создании делаю следующие действия:
1. Создаю табличку из двух полей ID и NAZVANIE (при проверке в se14 противоречий нет)
Активация успешна.
2. Создаю ракурс ведения содержащий данную таблицу и оба поля из неё.
На вкладке "Статус ведения" при создании ракурса проставляю следующее
- Считывание, изменение, удаление, вставка
- Класс поставки "С"
- Просмотр и ведение разрешены
Активация проходит нормально.
3. Затем выбираю меню "утилиты" - "Генератор ведения таблиц".
Там указываю:
- Объект полномочий "&NC&"
- Своё название группы ФМ (Z*)
- Одноуровневый экран
- Стандартная подпрограмма записи
- С автоматическим выравниванием
Генерация проходит успешно.
4. В транзакции SM30 осуществляю ведение созданного ракурса
При просмотре ошибок нет. При создании записей в момент сохранения возникает дамп.
ДинамОшибка DATA_LENGTH_0
Исключ. CX_SY_RANGE_OUT_OF_BOUNDS
Дата и время 29.01.2010 08:47:12
Краткий текст
Invalid partial field access: Length 0
Что произошло?
Error in the ABAP Application Program
The current ABAP program "SAPLZ_GTU_ATTRUSLOV" had to be terminated because it
has
come across a statement that unfortunately cannot be executed.
Анализ ошибки
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_RANGE_OUT_OF_BOUNDS', was not
caught in
procedure "CORR_MAINT_ZV_ATTR_USLOVIIA" "(FORM)", nor was it propagated by a
RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
In the executed program "SAPLZ_GTU_ATTRUSLOV", the system attempted to access
the field
"<VIM_CORR_KEYX>" using the length 0.
However, a partial field access with the length specification 0 is not
allowed.
Ошибочное утверждение RAISING в интерфейсе:
Программа SAPLZ_GTU_ATTRUSLOV
Include LZ_GTU_ATTRUSLOVF00
Строка 105
Тип модуля (FORM)
Имя модуля CORR_MAINT_ZV_ATTR_USLOVIIA
Место инициации особой ситуации:
Программа SAPLZ_GTU_ATTRUSLOV
Include LZ_GTU_ATTRUSLOVF00
Строка 120
Тип модуля (FORM)
Имя модуля CORR_MAINT_ZV_ATTR_USLOVIIA
Фрагмент исходного текста программы
Строк ИсхднТкст
90 ENDLOOP.
91 CLEAR: STATUS_ZV_ATTR_USLOVIIA-UPD_FLAG,
92 STATUS_ZV_ATTR_USLOVIIA-UPD_CHECKD.
93 MESSAGE S018(SV).
94 ENDFORM.
95 *---------------------------------------------------------------------*
96 FORM READ_SINGLE_ZV_ATTR_USLOVIIA.
97 SELECT SINGLE * FROM ZATTR_USLOVIIA WHERE
98 ID_ATTR = ZV_ATTR_USLOVIIA-ID_ATTR .
99 ZV_ATTR_USLOVIIA-ID_ATTR =
100 ZATTR_USLOVIIA-ID_ATTR .
101 ZV_ATTR_USLOVIIA-ATTR =
102 ZATTR_USLOVIIA-ATTR .
103 ENDFORM.
104 *---------------------------------------------------------------------*
105 FORM CORR_MAINT_ZV_ATTR_USLOVIIA USING VALUE(CM_ACTION) RC.
106 DATA: RETCODE LIKE SY-SUBRC, COUNT TYPE I, TRSP_KEYLEN TYPE SYFLENG.
107 FIELD-SYMBOLS: <TAB_KEY_X> TYPE X.
108 CLEAR RC.
109 MOVE ZV_ATTR_USLOVIIA-ID_ATTR TO
110 ZATTR_USLOVIIA-ID_ATTR .
111 CORR_KEYTAB = E071K.
112 CORR_KEYTAB-OBJNAME = 'ZATTR_USLOVIIA'.
113 IF NOT <vim_corr_keyx> IS ASSIGNED.
114 ASSIGN CORR_KEYTAB-TABKEY TO <vim_corr_keyx> CASTING.
115 ENDIF.
116 ASSIGN ZATTR_USLOVIIA TO <TAB_KEY_X> CASTING.
117 PERFORM VIM_GET_TRSPKEYLEN
118 USING 'ZATTR_USLOVIIA'
119 CHANGING TRSP_KEYLEN.
>>>>> <VIM_CORR_KEYX>(TRSP_KEYLEN) = <TAB_KEY_X>(TRSP_KEYLEN).
121 PERFORM UPDATE_CORR_KEYTAB USING CM_ACTION RETCODE.
122 ADD: RETCODE TO RC, 1 TO COUNT.
123 IF RC LT COUNT AND CM_ACTION NE PRUEFEN.
124 CLEAR RC.
125 ENDIF.
126
127 ENDFORM.
128 *---------------------------------------------------------------------*