Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Цель и структура отчета, виды экранов.



Цель отчета состоит в чтении данных из базы данных и их отображении. Он состоит только из двух экранов:

Первый экран называют экраном выбора( selection screen ). Он содержит входные поля, позволяющие пользователю ввести критерии для отчета.

Второй экран — экран вывода ( output screen ). Он содержит список ( list ). Список вывод из отчета, он обычно не имеет никаких входных полей.

Экран выбора является дополнительным (опцией). Он есть не у всех отчетов. Однако все отчеты генерируют список.

Соглашения об именах программ.

Объекты разработки клиента должны удовлетворять соглашению об именах. Имена программ должны содержать от 2 до 8 символов и начинаться символом y или z (SAP резервирует символы от a до x для собственных программ).

Транзакция, особенности вызова транзакции, мандант, учебный мандант.

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

Мандант — уровень для разделения функций. Учебный мандант — 800.

Если транзакция вызывается из другой транзакции, то она вводится следующим образом:

/o имя_новой транзакции — вызов транзакции в новом окне

/n имя_новой транзакции — вызов транзакции в текущем окне

Учебный мандант =800.

Синтаксис оператора select.

Синтаксис оператора:

select * from t1 [into wa]

[where f1 op v1 and/or f2 op v2...]

[order by f1].

(other abap/4 statements)

Endselect.

где:

* — указывает, что все поля из таблицы должны быть получены

t1 — имя таблицы, определенной в операторе tables

wa — имя рабочей области, которая соответствует структуре таблицы

f1 — имя поля в таблице t1

op — один из следующих логических операторов: = < > > > = < < =

v1 — литерал или переменная

Упрощенный оператор data.

data wa like t1.

где:

wa — имя рабочей области таблицы, которая определяется

t1 — имя таблицы, «структура» строки которой будет скопирована в рабочую область

Системные переменные sy-datum, sy-uzeit, sy-dbcnt.

Системные переменные всегда доступны в пределах программы, они автоматически обновляются системой. Все системные переменные начинаются с префикса sy-.

Например, текущая системная дата доступна в системном поле sy-datum ,

текущее время — в поле sy-uzeit.

Все системные переменные определены в структуре DDIC syst (её можно просмотреть как обычную таблицу БД с помощью se11, или дважды щелкнув на имени любого sy- поля в программе).

Следующие две системные переменные часто используются с оператором select:

sy-subrc — используется для определения, возвратил ли оператор select какие-нибудь строки. Если строки были найдены, значение sy-subrc будет 0. Если строки не были найдены, значение будет 4.

sy-dbcnt — используется для определения числа строк, возвращенных оператором select (значение sy-dbcnt проверяется после endselect ). Можно его использовать также как счетчик цикла — sy-dbcnt между select и endselect содержит номер текущей итерации. После первого прохода цикла значением sy-dbcnt будет 1, после второго — 2 и так далее. После endselect она сохранит свое значение, и таким образом будет содержать число выбранных строк.

Цепной оператор.

Двоеточие (: ) называется цепным оператором. Он используется для объедининия строк программы, начинающихся с одинакового слова или последовательности слов. Например, строки:

Tables ztxlfa1.

Tables ztxlfb1.

можно записать с использованием цепного оператора:

Tables: ztxlfa1, ztxlfb1.

Цепные операторы используются для улучшения читаемости программы.

Синтаксис оператор select single.

Оператор select single используется для получения единственной записи из базы данных.

Упрощенный синтаксис для select single:

select single * from t1 [into wa]

[where f1 op v1 and/or f2 op v2...].

где:

* — указывает, что все поля из таблицы должны быть получены

t1 — имя таблицы, определенной в операторе tables

wa — имя рабочей области, которая соответствует структуре таблицы

f1 — имя поля в таблице t1

op — один из следующих логических операторов: = < > > > = < < =

v1 — литерал или переменная

Особенности оператора:

§ select single не начинает цикл, потому что возвращает только одну строку — поэтому endselect не используется

§ для гарантии, что будет возвращена одна уникальная строка, нужно определить все первичные поля ключа в выражение where

Комментарии, их виды.

Есть два вида комментариев:

§ * ( звездочка ) в первом столбце указывает, что вся строка — комментарий (при этом закомментированная строка станет синей)

§ " ( двойные кавычки ) в каком-нибудь месте в строке указывают, что остаток от строки — комментарий (комментарий не изменит цвет, поскольку выделяется только вся строка)

Нет символа конца комментария. Комментарий заканчивается в конце текущей строки.

12. Буфер программы и roll area (область реестра) программы и их информационные наполнения.

Программы буферизуются на сервере приложений в буфере программы( program buffer ). Когда пользователь делает запрос выполнить программу, программа ищется в буфере программы. Если не было изменений в базе данных, то используется буферизованная копия программы. В противном случае, если копия в базе данных обновлена, то программа перезагружается.

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

Пусть пользователь выполняет программу, и область реестра распределена. Если, не ожидая завершения работы программы, пользователь переключается на другой сеанс и запускает снова ту же программу, то для второго выполнения этой программы распределяется другая область реестра. У пользователя есть две области реестра — по одной для каждого выполнения программы. Если бы пользователь вместо этого выполнил другую программу, у него все равно было бы две области реестра — по одной для каждой программы.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-08-31; Просмотров: 457; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.016 с.)
Главная | Случайная страница | Обратная связь