Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SAP(Контрольная работа №3).doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
240.64 Кб
Скачать
  1. Управление процессом обработки с помощью оператора at new / endat.

Операторы at new и at end of используются для обнаружения изменений в столбце в проходах цикла от одного к следующему. Эти операторы дают возможность выполнить код в начале и в конце группы записей.

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

sort by c.

loop at it.

---

at new c.

---

endat.

---

at end of c.

---

endat.

---

endloop.

где:

it — внутренняя таблица

c — компонента it

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

Особенности использования операторов:

  • Операторы могут использоваться только в loop at; они не могут использоваться в select

  • at new не обязан быть до at end of (операторы могут использоваться в любом порядке)

  • Операторы могут использоваться многократно в одном и том же цикле, например, можно иметь два at new и три at end of в одном и том же цикле, и они могут появиться в любом порядке

  • Эти операторы не должны быть вложены друг в друга

  • У этих операторов нет дополнений

Операторы между at new и endat выполняется каждый раз при изменении значения c. Этот блок выполняется также во время первого прохода цикла или при изменении каких-нибудь полей слева от c. Между at и endat числовые поля справа от c устанавливаются в нуль. Нечисловые поля заполняются звездочками (*). Если есть множественные вхождения at new, они все выполняются. at end of ведет себя подобным образом.

Уровень управления (control level) — компонента, названная в операторе разрыва управления; она регулирует разрыв управления. Например, в следующем фрагменте кода f2 — уровень управления, потому что она появляется в операторе at new:

loop at it.

at new f2.

"(some code here)

endat.

endloop.

Говорят, что вызван разрыв управления, если уровень управления изменяется. Это означает что, когда содержимое уровня управления изменяются, выполняется код между at и endat.

Разрыв управления вызывается также, если изменяется любое из полей в структуре до уровня управления. Поэтому, нужно определить внутреннюю структуру таблицы так, чтобы начать с полей, которые формируют уровни управления. Нужно также сортировать все поля до c включительно.

Между at и endat числовые поля справа от уровня управления будут нулевыми, и нечисловые поля будут заполнены звездочками.

  1. Управление процессом обработки с помощью оператора at end of / endat.

Операторы at new и at end of используются для обнаружения изменений в столбце в проходах цикла от одного к следующему. Эти операторы дают возможность выполнить код в начале и в конце группы записей.

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

sort by c.

loop at it.

---

at new c.

---

endat.

---

at end of c.

---

endat.

---

endloop.

где:

it — внутренняя таблица

c — компонента it

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

Особенности использования операторов:

  • Операторы могут использоваться только в loop at; они не могут использоваться в select

  • at new не обязан быть до at end of (операторы могут использоваться в любом порядке)

  • Операторы могут использоваться многократно в одном и том же цикле, например, можно иметь два at new и три at end of в одном и том же цикле, и они могут появиться в любом порядке

  • Эти операторы не должны быть вложены друг в друга

  • У этих операторов нет дополнений

Операторы между at new и endat выполняется каждый раз при изменении значения c. Этот блок выполняется также во время первого прохода цикла или при изменении каких-нибудь полей слева от c. Между at и endat числовые поля справа от c устанавливаются в нуль. Нечисловые поля заполняются звездочками (*). Если есть множественные вхождения at new, они все выполняются. at end of ведет себя подобным образом.

Уровень управления (control level) — компонента, названная в операторе разрыва управления; она регулирует разрыв управления. Например, в следующем фрагменте кода f2 — уровень управления, потому что она появляется в операторе at new:

loop at it.

at new f2.

"(some code here)

endat.

endloop.

Говорят, что вызван разрыв управления, если уровень управления изменяется. Это означает что, когда содержимое уровня управления изменяются, выполняется код между at и endat.

Разрыв управления вызывается также, если изменяется любое из полей в структуре до уровня управления. Поэтому, нужно определить внутреннюю структуру таблицы так, чтобы начать с полей, которые формируют уровни управления. Нужно также сортировать все поля до c включительно.

Между at и endat числовые поля справа от уровня управления будут нулевыми, и нечисловые поля будут заполнены звездочками.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]