Добавление колонок в таблицу

Наблюдал у товарища при определённом стечении обстоятельств совершенно неожиданное поведение простого ракурса  — несколько колонок из одной таблицы и условие поле “Скрыть” не равно крестику.

Чудило вплоть до эффектов “в таблице 200 записей, три записи помечены крестиком, но ракурс показывает три записи без крестика”, а тестовое условие было “равно крестику”.

Я аж собственным глазам не поверил.

Какие подводные тут имеют место быть:

1. Колонка была добавлена недавно через SE11. По всей видимости, SAP добавляя колонку сделал только ALTER TABLE ADD COLUMN – соответственно значение было заполненно NULL’ами, которые мы со стороны SAP практически никогда не видим.

2. Следом расставленные крестики для теста были сделаны в режиме sap_edit через SE16N. По всей видимости, тут COMMIT проводится не в момент сохранения (а только при выходе), соответственно это влияет на другие процессы.

3. Ракурс БД формирует представление непосредственно в слое базы данных (oracle) – CREATE VIEW, поэтому обработка NULL производится именно так, как это нравится самой базе данных.

Опубликовано 12.03.2011 в 16:41 · Автор ivan · Ссылка
Рубрики: ABAP

Написать комментарий