Вывод таблицы WEB UI CRM

Создадим в CRM окно следующего вида:

Часть информации рассматривалась ранее. И будет опущена, чтобы не дублировать.

  1. В транзакции BSP_WD_CMPWB создадим новое приложение;

2. Экран будет состоять из двух подэкранов. Создаем первый с именем FirstPart с обычными полем Bla-bla. Действуем вот так:


3. Создаем view TablePart с таблицей. Порядок действий идентичный прошлому. Набор полей можно выбрать как из структуры, так и указать самостоятельно. В моем случае будет выбрано из структуры.

4. Создаем вариант отображения View с таблицей. Редактор экранов имеет чуть другой вид, но не критично. В целом все похоже на обычный

5. Создание набора ракурсов для объединения двух View:


6. Переходим на вкладку "Редактор динамического репозитария" и добавляем ракурсы во ViewSets.

7.Добавляем ракурс


8. Для возможности навигации добавляем ракурс интерфейса.


9. Т.к. в данном случае у нас окно, добавляем кнопку выхода. Ее можно добавить на любой View(точнее, какие либо другие кнопки имеет смысл располагать на нужных View). В текущем случае кнопка нужна в самом низу, поэтому нарисуем ее на MainView


10. Обрабатываем событие Cancel кнопки и переопределяем Plug выхода окна.

Окно готово. Осталось заполнить данными.
Заполнение таблицы при запуске можно сделать в методе.

11. Таблицу можно заполнить в методе DO_PREPARE_OUTPUT. Если требуется не просто отображение данных, а будут происходить какие либо действия в таблице, например, нажатие чекбокса. Следует предусмотреть переменную, запрещающую заново установить начальные данные, переписав измененные.
Как один из вариантов завести переменную, указывающую, что данный метод вызывается в первый раз.

 


Получили вот такое окно с данными

Создание возможности вставки\удаления\редактирования строк в таблице.

Создаем атрибут для хранения кнопок

2. Добавляем заполнение этой таблицы кнопками в методе DO_PREPARE_OUTPUT


3. Далее создаем атрибут являющийся признаком редатируемости таблицы

4. Его, а также табличку с кнопками необходимо прописать в HTML нашей таблички

Изменения производятся вот здесь:

В виде кода:

5. Создадим события с теми же именами, которые мы прописали в таблице gt_button.

6. Реализуем метод Edit;

7. Метод Delete;

8. Метод Create

В результате получим следующее окно до нажатия Edit 


      После нажатия Edit кнопки активируются и работают

 

9. Как можно увидеть, чекбокс работает нормально. Для усложнения сделаем так, чтобы можно было выбрать только один. Для этого при выборе нового значения, будем чистить остальные. По умолчанию, событие установки значения(Метод SET_FLAG ) не сработает до нажатия enter или сабмита какой либо кнопки. Такой режим работы не подходит. Поэтому надо переопределить метод GET_P_FLAG и указать, что у нас тут есть событие.

 

Теперь в создадим метод события CLICKFLAG


Реализуем его, чтобы после установки нового значения, очищать предыдущие.

Дополнительная информация.

 

Добавить комментарий

Ваш адрес email не будет опубликован.