Текущее время: Пн, июл 28 2025, 21:03

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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