Текущее время: Вт, июл 22 2025, 16:34

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Диалог запроса ключа объекта  Тема решена
СообщениеДобавлено: Пн, окт 08 2012, 15:26 
Ассистент
Ассистент

Зарегистрирован:
Вт, май 11 2010, 14:34
Сообщения: 44
Добрый день.

Столкнулся с неприятным явлением. Ситуация такая: есть транзакция ORGANIZER, в которой ведем записи. К записям можно привязывать различные объекты (те, что в swo1).
В самом органайзере можно открывать несколько записей, причем можно открыть следующую, не сохранив предыдущую(т.е. не вызывая commit).
И проблема заключается в следующем: Если повторить следующую цепочку:
1. открыть в органайзере запись, попробовать привязать к ней объект (т.е. вызвать диалог запроса ключа объекта и потом отменить, не заполняя полей).
2. не закрывая и не сохраняя эту запись, открыть другую или создать новую.
то при попытке привязать объект выдаст ошибку, что объект "*****" не имеет ключевых полей.

Такая ситуация со всеми объектами, правда все объекты z*.

Что удалось найти:
Ключ объекта запрашивается стандартным модулем: SWO_DIALOG_OBJECT_KEY_EDIT.
В нем для определения полей ключа объекта вызывается модуль SWO_QUERY_KEYFIELDS, в подпрограмме которого SWO_QUERY_VERBS.
Там из стандартной таблицы выбираются поля объекта, но перед этим есть кусок кода:


Code:
   LOOP AT DBVTYPES.
      CONCATENATE '_BASEDATA-_' DBVTYPES-LOW INTO VTYPES_NAME.
      ASSIGN (VTYPES_NAME) TO <VT>.
      IF <VT> = DBVTYPES-LOW.
        DELETE DBVTYPES.
        ADD 1 TO DBVTYPES_SELECTED.
      ELSE.
        <VT> = DBVTYPES-LOW.
      ENDIF.
    ENDLOOP.


и если DBVTYPES_SELECTED > 0, то выборка не происходит.

А проблема в том, что рабочая область таблицы _BASEDATA при первой записи пустая, да и при всех последующих попытках привязать объект тоже, НО только когда открываешь вторую запись, рабочая область не очищается, и в DBVTYPES_SELECTED добавляется единица.
Уже не знаю куда и копать. Может кто сталкивался с подобным? Может что-то в объектах не так(хотя n попыток при одной записи все хорошо), или то, что запись в том же режиме открыта вторая.


** Забыл добавить, при том, что _BASEDATA содержит информацию об объекте, табличка с полями объекта пустая.


*** исчерпав цивилизованные способы, вставил в эхашмент очистку.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

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


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

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


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

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