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


Что такое объект разработки, их виды.



Что такое объект разработки, их виды.

Объект разработки (development object) — что-нибудь созданное разработчиком. Примеры объектов разработки — программы, экраны, таблицы, ракурсы, структуры, модели данных, сообщения и include.

Система R/3 содержит инструментальные средства для создания и тестирования объектов разработки. Эти инструментальные средства расположены вИнструментальных средствах разработки R/3 (R/3 Development Workbench):

§ редактор текстов программ на ABAP/4 — для создания и изменения исходного текста на ABAP/4 и других компонентов программ

§ словарь данных — для составления таблиц, структур и ракурсов

§ разработчик модели данных — для задания отношений между таблицами

§ функциональная библиотека — для создания модулей глобальных функций на ABAP/4

§ экран создания пользовательского интерфейса для программ

 

Типы программ ABAP/4.

Есть два основных типа программ ABAP/4:

§ отчеты reports

§ программы диалога dialog programs

 

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

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

Первый экран называют экраном выбора( 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 ) . Для каждого пользователя при выполнении программы выделяется одна область реестра. Система использует область реестра для содержания всей информации о текущем выполнении программы и всех распределениях памяти. В области реестра хранится следующая информация: переменные и их значения, текущий указатель программы, список вывода и т.д.

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

Изменяемые объекты данных.

Объекты данных ( Data objects ) местоположения памяти, которые используются для содержания данных во время работы программы.

Изменяемые объекты данных — переменные (variables), строки полей (field strings) и внутренние таблицы (internal tables).

Field string в ABAP/4 эквивалентна структуре. Внутренняя таблица ABAP/4 — эквивалент массива.

Символьные типы данных.

Обратите внимание на то, что они включают тип n. Внутренние длины даны в байтах. Черточка в столбце максимальной длины присутствует для типов данных фиксированной длины.

Тип даных Внутреннее описание Внутренняя длина по умолчанию Максимальная внутренняя длина Допустимые значения Значение по умолчанию
c character Any char Пробел
n numeric text 0-9
d date 8 (fixed) 0-9
t time 6 (fixed) 0-9
x hexadecimal Any  

Числовые текстовые переменные (Numeric text variables) называют цифровыми, т.е. символьными, переменными (numeric character variables). Они содержат положительные целые числа без знака. Каждая цифра занимает один байт, и внутренне каждая из них сохранена как символ. Это — символьный тип данных. Он может содержать только символы 0-9.

Используйте числовой текст (numeric text) для содержания чисел, которые используются как уникальные идентификаторы: номер документа, номер счета и порядковые номера. Кроме того, используйте его для переменных, которые считывают числовое значение из символьного типа данных.

Дата и время являются предопределенными типами данных. Для них не нужно определять длину в операторе data. Значения для переменных даты и времени всегда сохраняются внутренне как YYYYMMDD и HHMMSS соответственно. Текущая дата доступна в системной переменной sy-datum, а текущее время — в системной переменной sy-uzeit.

Значения sy-datum и sy-uzeit устанавливаются в начале выполнения программы и не изменяются до конца ее выполнения. Если нужно обратиться к текущим дате и времени во время выполнения долго работающей программы, используют оператор get time. Он обновляет значения sy-datum и sy-uzeit, чтобы отразить текущие дату и время.

Значения абсолютного времени с точностью до миллисекунды не используются в R/3. Однако значения относительного (relative) времени доступны с точностью до миллисекунды. Чтобы получить их, используют оператор get run time и сохраняют в переменной типа i.

Числовые типы данных.

Звездочка указывает, что атрибут машинно-ориентирован.

Тип данных Описание Внутренняя длина по умолчанию Макси-мальная длина Максимальное число десятичных знаков Диапазон значений Значение по умолчанию
i integer 4(fixed) -231 to +231
p packed decimal 0-9.
f floating-point 15* -1E-307 to 1E308 0.0

Целые числа (integers) используются в таких переменных, как счетчики, индексы, позиции или смещения.

Упакованная десятичная переменная (packed decimal) сохраняет (L*2)-1 цифру, где L — длина переменной в байтах. Десятичные значения сохраняются по две цифры в байте, кроме конечного байта, который содержит одну цифру и знак. Десятичная точка не сохраняется; это — атрибут определения.

Переменные с плавающей точкой всегда приблизительны. Они могут использоваться для вычислений, требующих очень больших значений или многих десятичных разрядов. Возможна точность до 15 десятичных разрядов, но это аппаратно-зависимо.

Оператор compute.

(операторы и операнды должны быть отделены пробелами; разрешено более одной операции в операторе):

compute v3 = v1 op v2 [op vn...].

или

v3 = v2 op v2 [op vn...].

где:

v3 — переменная получения для результата вычисления

v1, v2 и vn — операнды

op — математическая операция

Exit.

Оператор exit может использоваться во многих ситуациях. Он может оказывать различные эффекты в зависимости от того, где он появляется в коде. Однако он всегда предотвращает дальнейшую обработку. В пределах цикла он прерывает обработку цикла в операторах loop, select, do и while. В пределах подпрограмм он прерывает выполнение подпрограмм.

Оператор continue используется в пределах цикла. Он прерывает выполнение текущей итерации цикла и передает управление конечному оператору цикла, т.е. заставляет проигнорировать операторы тела цикла ниже него и начинает следующую итерацию цикла.

Синтаксис оператора continue (он может использоваться в циклах do, while, select или loop; оператор loop будет рассмотрен позднее):

[do/while/select/loop]

---

continue.

---

[enddo/endwhile/endselect/endloop]

где:

--- — любое число строк программы

Оператор check используется в пределах цикла. Он может работать как оператор continue, передавая управление конечному оператору цикла и обходя операторы между ними. В отличие от continue он имеет логическое выражение. Если выражение — истина, он ничего не делает, если ложь — происходит переход на конец цикла.

Синтаксис оператора check (он может использоваться в циклах do, while, select или loop ):

[do/while/select/loop]

---

check exp.

---

[enddo/endwhile/endselect/endloop]

где:

exp — логическое выражение

--- — любое число строк программы

Что такое объект разработки, их виды.

Объект разработки (development object) — что-нибудь созданное разработчиком. Примеры объектов разработки — программы, экраны, таблицы, ракурсы, структуры, модели данных, сообщения и include.

Система R/3 содержит инструментальные средства для создания и тестирования объектов разработки. Эти инструментальные средства расположены вИнструментальных средствах разработки R/3 (R/3 Development Workbench):

§ редактор текстов программ на ABAP/4 — для создания и изменения исходного текста на ABAP/4 и других компонентов программ

§ словарь данных — для составления таблиц, структур и ракурсов

§ разработчик модели данных — для задания отношений между таблицами

§ функциональная библиотека — для создания модулей глобальных функций на ABAP/4

§ экран создания пользовательского интерфейса для программ

 

Типы программ ABAP/4.

Есть два основных типа программ ABAP/4:

§ отчеты reports

§ программы диалога dialog programs

 


Поделиться:



Популярное:

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


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