Текущее время: Сб, авг 02 2025, 19:43

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Выявление неиспользуемых полей таблицы
СообщениеДобавлено: Ср, дек 17 2008, 13:00 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вс, окт 08 2006, 22:57
Сообщения: 81
Пол: Мужской
Добрый день!

у меня вопрос:
как написать ABAP для выявления в общем виде
полей таблицы которые не заполнены.
Т.е. как входной параметр - имя таблицы
как выходной: список полей которые имеют всегда
в таблице только инициальное значение. т.е. фактически не
используются никаким приложением

заранее спасибо
Юрий


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Выявление неиспользуемых полей таблицы
СообщениеДобавлено: Ср, дек 17 2008, 15:29 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
И вам доброго.

То, что элементу во всех кортежах таблицы не присвоено значение в конкретный момент времени - не означает, что данное поле не используется.

Написать несложно.

Только не забудьте, что в САПе есть два разных "пусто". Space и Null.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Выявление неиспользуемых полей таблицы
СообщениеДобавлено: Ср, дек 17 2008, 15:37 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Ну еще дата, для которой initial это '00000000'.
И поля, например типа numc, для которых проставлена галка инициирования.

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


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

Зарегистрирован:
Пт, янв 21 2005, 12:40
Сообщения: 371
Пол: Мужской
Я писал в свое время такой вариант:
Code:
WRITE / '***********BKPF**********'.

DATA: LS_BKPF TYPE BKPF.

  SELECT fieldname position
    INTO CORRESPONDING FIELDS OF TABLE lt_key
    FROM dd03l
    WHERE tabname = 'BKPF'
      AND as4local = 'A'
      ORDER BY position.

DELETE lt_key WHERE fieldname CP '.*'.

LOOP AT lt_key INTO ls_key.
  CLEAR: LS_CONDITION.

*  CONCATENATE ls_key-fieldname 'IS NOT NULL'
  CONCATENATE ls_key-fieldname '<> SPACE'
    INTO LS_CONDITION SEPARATED BY SPACE.

  SELECT SINGLE *
    FROM BKPF
    INTO LS_BKPF
    WHERE (LS_CONDITION).

  IF SY-SUBRC <> 0.
    WRITE / ls_key-fieldname.
  ENDIF.

ENDLOOP.


Думаю несложно будет адаптировать имя конкретной таблицы в параметр? 8)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

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


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

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


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

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