Текущее время: Вт, июл 29 2025, 13:49

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Вт, янв 26 2010, 14:39 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 31 2008, 18:54
Сообщения: 67
Всем доброго времени суток.
Помогите, плиз, разобраться с ситуацией.

Создал простенькую Z-табличку (два поля: идентификатор и название). Создаю к ней элементарный ракурс ведения. Всё создаётся без каких либо проблем, всё активируется, генерируется. Однако, при попытке ведения через данный ракурс возникает динамическая ошибка:

Динам. ошибка: DATA_LENGHT_0
Исключение: CX_SY_RANGE_OUT_OF_BOUNDS

До этого создал аналогичную табличку (на одно поле больше) и ракурс ведения к ней. Этот ракурс работает нормально. В чём может быть причина столь ужасного поведения системы??? :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Вт, янв 26 2010, 15:18 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
после того, как меняли типы полей ракурс может не перегенерировали? а название какого типа?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Вт, янв 26 2010, 16:48 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 31 2008, 18:54
Сообщения: 67
Да вроде бы всё перегенерировал, и не раз. Название типа char50.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Ср, янв 27 2010, 10:50 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, авг 22 2005, 14:50
Сообщения: 1285
Откуда: с работы
Пол: Женский
сложно судить не смотря системы и дампа. Ну попробуйте удалить табличку и создать заново.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Ср, янв 27 2010, 13:10 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 31 2008, 18:54
Сообщения: 67
Что самое интересное. Табличку удалял, создавал заново. Та же ситуация. Создавал таблицу с новым именем - та же картина.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Ср, янв 27 2010, 13:57 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
MaZai написал(а):
Что самое интересное. Табличку удалял, создавал заново. Та же ситуация. Создавал таблицу с новым именем - та же картина.

Вы впервые делаете задачу подобного рода? Опишите по шагам как Вы делаете.
Приведите дамп.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Ср, янв 27 2010, 14:31 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
1.Проверьте объект базы даннх с помощью SE14
2.Удалите ракурс ведения и сгенерированную группу функций.
Выйдите из SE11, зайдите снова и сгенерируйте диалог ведения заново.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 08:59 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 31 2008, 18:54
Сообщения: 67
Проверка в 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 *---------------------------------------------------------------------*


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 09:28 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Что то Вы не понятное делает, у Вас тут и подпрограммы в событиях ракурса участвуют.
Если это не Вы делали значит группа функций глючная, создайте новую, чистую и в ней генерируйте ракурс ведения.

Добавил: Мандат привязали при создании таблицы?
Ракурс ведения создавать не обязательно, это если только нужно, достаточно запустить Генератор ведения таблиц.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 09:56 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Besa написал:
Что то Вы не понятное делает, у Вас тут и подпрограммы в событиях ракурса участвуют.
Если это не Вы делали значит группа функций глючная, создайте новую, чистую и в ней генерируйте ракурс ведения.

Добавил: Мандат привязали при создании таблицы?
Ракурс ведения создавать не обязательно, это если только нужно, достаточно запустить Генератор ведения таблиц.


А где здесь видно, что используются подпрограммы?
Мандант тоже как-то не обязателен.

to MaZai:
Ключ у вашей таблицы какой, только ID ?
Какой тип у поля ID?

А что такое ID_ATTR?

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 10:02 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
MaZai написал(а):
Проверка в se14 показала, что противоречий в табличке нет. А удаление и повторное создание диалога ведения полезных результатов не дало :(

При создании делаю следующие действия:

1. Создаю табличку из двух полей ID и NAZVANIE (при проверке в se14 противоречий нет)
Активация успешна.

...
ДинамОшибка DATA_LENGTH_0
Исключ. CX_SY_RANGE_OUT_OF_BOUNDS
Дата и время 29.01.2010 08:47:12

...

Строк ИсхднТкст

...
117 PERFORM VIM_GET_TRSPKEYLEN
118 USING 'ZATTR_USLOVIIA'
119 CHANGING TRSP_KEYLEN.
>>>>> <VIM_CORR_KEYX>(TRSP_KEYLEN) = <TAB_KEY_X>(TRSP_KEYLEN).
...
*

Ключ у таблицы имеется?
Текст подпрограммы VIM_GET_TRSPKEYLEN не доступен для анализа? Не возможно понять почему возвращается 0 в TRSP_KEYLEN?

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 10:15 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
MaZai написал(а):
Проверка в se14 показала, что противоречий в табличке нет.

В se14 выберите пункт "Дополнительная информация-Объект базы данных-Просмотреть", результат выложите сюда.
Группу функций отдельно удаляли, как я посоветовал?

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 10:28 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, май 14 2007, 13:05
Сообщения: 561
Откуда: Москва
MaZai написал(а):
- Своё название группы ФМ (Z*)
название ФГ именно Z_GTU_ATTRUSLOV?
Может у Вас программа преобразования какая-нибудь задейстована в описании полей таблицы?

_________________
Sapere aude!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 10:44 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, янв 31 2008, 18:54
Сообщения: 67
Цитата:
Ключ у вашей таблицы какой, только ID ?
Какой тип у поля ID?

А что такое ID_ATTR?

ID_ATTR - это и есть ключ таблицы с типом поля INT4.
Цитата:
название ФГ именно Z_GTU_ATTRUSLOV?

Название ФМ именно Z_GTU_ATTRUSLOV.


Если дополнительно не создавать ракурс ведения, к которому генерировать ведение таблиц, а просто запустить генератор ведения таблиц для созданной таблички (при этом выставить признак таблицы "ведение разрешено"), то всё работает нормально. Странно почему с ракурсом не работает?

Всем участникам спасибо огромное за дискуссию :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Динамическая ошибка ракурса ведения
СообщениеДобавлено: Пт, янв 29 2010, 13:42 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
MaZai, как проблему решили?


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB