Как создать пользовательскую таблицу?

Пояснение к вопросу

Материал данной заметки немного пересекается с опубликованной ранее (см. заметку Создание пользовательской таблицы и ракурса ее ведения). Если вдаваться в детали, то в уже опубликованном материале я поверхностно пробежался по процессу создания таблицы, сделав упор непосредственно на создание ракурса. В данной заметке хочу привести полное описание процесса создания пользовательской таблицы, что называется from scratch, включая создание пользовательских типов данных для полей таблицы. К концу данной заметки должна быть сформирована таблица со следующими полями:

  • Тип объекта
  • Идентификатор объекта
  • Наименование объекта
  • Видимость
  • Дата создания
  • Дата действия с
  • Дата действия по

Решение вопроса

1.1 Создание таблицы

Запустите транзакцию SE11, активируйте опцию Database table, введите наименование таблицы и нажмите на кнопку Create

На следующем экране введите описание для создаваемой таблицы, выберите класс поставки и активируйте, при необходимости, опцию, позволяющую вести изменения в данной таблице

Для полей Delivery Class, Data Browser/Table View Maint. доступна избыточная справочная информация по нажатию на клавишу F1

Сохраните внесенные изменения.

1.2 Определение полей будущей таблицы

Перейдите на закладку Fields

Необходимо создать поля для будущей таблицы в количестве 7-ми штук. Повторюсь

  • Тип объекта
  • Идентификатор объекта
  • Наименование объекта
  • Видимость
  • Дата создания
  • Дата действия с
  • Дата действия по

Для понимания различий, между Client-Specific Table и Cross-Client Table см. Customer Data and System Data

Введите наименования полей таблицы в столбце Field

1.3 Определение типов данных для полей таблицы

Для каждого поля таблицы необходимо определить тип данных. Для этого возможно выбрать либо встроенный тип данных, либо создать собственный. Для полей MANDT, DATE_CREATED, DATE_FROM, DATE_TO я буду использовать встроенные типы данных, для оставшихся  — создам свои собственные.

Для того, чтобы воспользоваться существующим типом данных (в качестве типа данных также может выступать и домен), необходимо ввести его наименование, либо же найти с помощью транзакции SE11. Введите наименование подходящего типа данных и нажмите Enter

Для оставшихся четырех полей необходимо создать собственные типы данных (data elements) / домены (domains)

См. Data Elements

См. Domains

1.3.1 Создание пользовательского типа данных для поля OBJECT_TYPE

Введите наименование создаваемого элемента данных для поля OBJECT_TYPE в столбце Data Element и нажмите Enter

N.B. Обратите свое внимание на то, что такого такого типа данных еще не существует в системе, о чем свидетельтствует простая проверка в транзакции SE11

Для создания нового элемента данных, достаточно два раза кликнуть по его наименованию, которое вы вписали в столбце Data Element (система сама предложит создать новый объект).

Рисунок 8. Gif-анимация: создание нового элемента данных

На экране создания нового элемента данных введите его наименование, а также выберите тип данных, который, будет для него использоваться (если вы используете встроенные типы данных, необходимо активировать опцию Predefined Type)

В качестве встроенного типа данных для данного элемента я буду использовать CHAR длиной 2 символа

Перейдите на закладку Field Label и введите наименование нового элемента данных (можно скопировать его из поля Short Description) и нажмите Enter

Активируйте созданный элемент данных, нажатием на кнопку . В результате активации должно появится информационное сообщение вида 

Вернитесь на предыдущий экран, нажатием на клавишу F3

Обратите внимание на то, что в результате созданного элемента данных определена длина и тип данных для поля OBJECT_TYPE в создаваемой таблице.

1.3.2 Создание элементов данных для полей OBJECT_ID, OBJECT_NAME

По аналогии создайте элементы данных для других полей.

Для поля OBJECT_ID я создаю элемент данных со встроенным типом данных NUMC (длина 8 символов)

Для поля OBJECT_NAME я создаю элемент данных со встроенным типом данных CHAR (длина 12 символов)

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

1.3.3 Создание домена для поля OBJECT_VISABILITY

Для оставшегося поля OBJECT_VISABILITY я создам домен, в котором будет храниться два значения:

  • 1 - Visible
  • 2 - Hidden

По аналогии с тем, как были созданы элементы данных, введите наименование создаваемого домена и два раза кликните по нему

Рисунок 16.

Подтвердите создание нового элемента данных

Рисунок 17.

Введите наименование нового элемента данных, а также наименование для создаваемого домена

Рисунок 18.

Два раза кликните по наименованию домена. Система предложит создать еще не существующий объект

Рисунок 19.

Определите свойства нового домена, по аналогии с тем, что указано на рисунке ниже

Рисунок 20.

На закладке Value Range определите значения для данного домена

Рисунок 21.

Активируйте созданный домен и вернитесь на предыдущий экран. Также активируйте элемент данных для поля OBJECT_VISABILITY

Рисунок 22.

Типы данных определены для всех полей таблицы

Рисунок 23.

1.4 Определение технических параметров и категории расширений для таблицы

Нажмите на кнопку Technical Settings

Рисунок 24.

Выберите значания для полей Data Class и Size Category

Рисунок 25.

Сохраните внесенные изменения. Вернитесь на предыдущий экран, и выберите в меню Extras -> Enhancement Category

Рисунок 26.

Выберите опцию Can Be Enhanced

Рисунок 27.

1.5 Активация созданной таблицы

Активируйте созданную таблицу

Рисунок 28.

1.6 Тестирование

Выберите в меню Utilities -> Table Contents -> Create Entries

Рисунок 29.

Внесите данные в таблицу

Рисунок 30.

Откройте на просмотр таблицу с помощью транзакции SE16N

Рисунок 31.