Текущее время: Вс, авг 03 2025, 00:54

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


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

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


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

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