Иначе номер строки, на которой представляется первая печатаемая строка группы отчета типа заголовок страницы, определяется как сумма целого первой фразы LINE NUMBER (НОМЕР СТРОКИ) группы типа заголовок страницы и уменьшенного на единицу значения целого-2 в варианте HEADING (ЗАГОЛОВОК) фразы PAGE (РАЗМЕР СТРАНИЦЫ).
Правила результирующей установки LINE-COUNTER (СЧЕТЧИК-СТРОК):
а) результирующая установка LINE-COUNTER (СЧЕТЧИК- СТРОК) — помер строки, на которой представлена последняя печатаемая строка группы отчета типа заголовок страницы;
в) LINE-COUNTER (СЧЕТЧИК-СТРОК) не изменяется при обработке непечатаемой группы отчета.
Правила представления группы тела отчета
В табл. 3 приведены соответствующие правила представления для всех допустимых комбинаций фраз LINE NUMBER (НОМЕР СТРОКИ) и NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА) в группах типа управляемый заголовок, фрагмент и управляемая концовка. Правила представления групп тела отчета следующие.
Правило верхней границы
Номер первой строки, на которой может быть представлена группа тела отчета, указывается вариантом FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ).
Правила нижней границы
Номер последней строки, на которой может быть представлена группа отчета типа управляемый заголовок или фрагмент, указывается вариантом LAST DETAIL (ПОСЛЕДНИЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ).
Номер последней строки, на которой может быть представлена группа типа управляемых концовка, указывается вариантом FOOTING (КОНЦОВКА) фразы PAGE (РАЗМЕР СТРАНИЦЫ).
Правила проверки вместимости:
а) если значение LINE-COUNTER (СЧЕТЧИК-СТРОК) меньше целого, указанного первой из фраз LINE NUMBER (НОМЕР СТРОКИ), задающих абсолютное значение, группа тела отчета будет представлена на странице, на которой в данный момент представляется отчет
.• * |
Применяемые правила*** |
|||||||||
Фраза PAGE (РАЗМЕР СТРАНИЦЫ) указана |
Фраза PAGE (РАЗМЕР СТРАНИЦЫ) опущена |
|||||||||
Последовательность фраз LINE NUMBER (НОМЕР СТРОКИ)* |
Фраза NEXT GROUP • (СЛЕДУЮЩАЯ ГРУППА) |
I Верхняя граница ! і |
Нижняя , граница |
г Проверка 1 1 вместимости ! 1 |
ПОЗИЦИЯ 1 первой і печатаемой строки 1 |
1 ' Следу к тая і j группа |
Результирующая установка LINECOUNTER (СЧЕТЧИК- СТРОК) |
|||
Позиция первой печатаемой строки |
Результирующая установка LINECOUNTER (СЧЕТЧИК- СТРОК) |
|||||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
|
А О |
Абсолютная |
1 |
2 |
За |
4а |
5 |
ба |
Запрещенная комбинация4- |
||
А О |
Относительная |
1 |
2 |
За |
4а |
■— |
66 |
Запрещенная комбинация4- |
||
А О А О |
NEXT PAGE (НА СЛЕДУЮЩЕЙ СТРАНИЦЕ) |
I |
2 |
За |
4а |
— |
6в |
Запрещенная комбинация4- |
||
|
1 |
2 |
За |
4а |
.— |
бг |
Запрещенрая комбинация4- |
|||
О |
Абсолютная |
1 |
2 |
36 |
46 |
5 |
ба |
Запрещенная комбинация4-4- |
||
О |
Относительная |
1 |
2 |
36 |
46 |
— |
66 |
4г |
бе |
|
О |
NEXT PAGE (НА СЛЕДУЮЩЕЙ СТРАНИЦЕ) |
1 |
2 |
36 |
46 |
— |
6в |
Запрещенная комбинация+++ |
||
О |
— |
1 |
2 |
36 |
46 |
— |
6г |
4г 1 6г |
||
СС О СС О |
Абсолютная |
1 |
2 |
Зв |
4а |
5 |
6а |
Запрещенная комбинация4- |
||
Относительная |
1 |
2 |
Зв |
4а |
— |
66 |
Запрещенная комбинация4- |
|||
СС О |
NEXT PAGE (НА СЛЕДУЮЩЕЙ СТРАНИЦЕ) |
1 |
2 |
Зв |
4а |
■— |
6в |
Запрещенная комбинация4- |
||
СС О |
— |
1 |
2 |
Зв |
4 а |
— |
6г |
Запрещенная комбинация4- |
||
— |
— |
|
— |
4іВ |
.— |
6д |
4в 1 6д |
Правила представления группы тела отчета
Таблица 3
ГОСТ 22558-89 С. 631
* Знак «—» в столбце 1 или 2 указывает, что названная фраза ог.-угст- вует в статье описания группы отчета.
** Знак «—» в столбцах применяемых правил обозначает отсутствие названного правила для данной комбинации фраз LINE NUMBER (НОМЕР СТРОКИ) и NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА).
’См. п. 3 15, фраза LINE NUMBER (НОМЕР СТРОКИ).
” См. п. 3.16, фраза NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА).
В противном случае СУГО обеспечивает переход па следующую страницу. После обработки группы типа заголовок страницы (если такая группа определена), СУГО определяет, была ли устал сена сохраняемая позиция следующей группы при представлении последней группы тела отчета на предыдущей странице (см. далее правило 6а). Если сохраняемая позиция следующей группы не была установлена, группа тела отчета будет представлена на странице, на которой в данный момент представляется отчет. Если же сохраняемая позиция следующей группы была установлена, СУГО присваивает регистру LINE-COUNTER (СЧЕТЧИК-СТРОК) значение сохраняемой позиции следующей группы, устанавливает в нуль значение сохраняемой позиции следующей группы и повторно применяет правило За проверки вместимости;
если некоторая группа тела представляется на текущей странице, СУГО вычисляет пробную сумму в рабочей области. Пробная сумма вычисляется путем сложения значения LINE-COUNTER (СЧЕТЧИК-СТРОК) и всех целых, указанных фразами LINE NUMBER (НОМЕР-СТРОКИ) группы отчета. Если полученная сумма не больше определенной для данной группы нижней границы ее представления, группа отчета представляется на текущей странице. Если же полученная сумма превышает определенную для данной группы нижнюю границу, СУГО обеспечивает переход к следующей странице. После обработки группы типа заголовок страницы (если таковой определен), СУГО вновь применяет правило 36 проверки вместимости.
Если на текущей странице отчета не была еще представлена ни одна группа тела отчета, СУГО определяет, было ли установлено значение сохраняемой позиции следующей группы при представлении последней группы тела отчета на предыдущей странице (см. ниже правило 6а результирующей установки LINE-COUNTER (СЧЕТЧИК-СТРОК).
Если значение сохраняемой позиции следующей группы не было установлено, группа тела отчета будет представляться на текущей странице отчета.
Если значение сохраняемой позиции следующей группы было установлено, СУГО помещает значение сохраняемой позиции следующей группы LINE-COUNTER (СЧЕТЧИК-СТРОК), устанавлн- вает в нуль значение сохраняемой позиции следующей группы и повторно вычисляет пробную сумму в рабочей области.
Пробная сумма вычисляется сложением сумм значения LINECOUNTER (СЧЕТЧИК-СТРОК) с единицей и целыми, указанными во фразе LINE NUMBER (НОМЕР СТРОКИ), за исключением первой фразы группы тела отчета. Если полученная сумма не превосходит определенную для данной группы нижнюю границу, тело группы отчета представляется па текущей странице. Если же полученная сумма больше определенной для данной группы нижней границы, СУГО обеспечивает переход на следующую страницу. После обработки группы типа заголовок страницы (если таковая определена) СУГО представляет группу тела отчета на этой странице;
если на текущей странице была уже представлена группа тела отчета, СУГО осуществляет переход к следующей странице. После обработки группы заголовок страницы (если таковая определена) СУГО повторно применяет правило Зв вместимости. Если на текущей странице отчета не представлена ни одна группа тела отчета, СУГО определяет, было ли установлено при представлении последней группы тела отчета на предыдущей странице значение сохраняемой позиции следующей группы (см. правило 6а заключительной установки LINE-COUNTER (СЧЕТЧИК-СТРОК). Если значение сохраняемой позиции следующей группы не установлено, группа тела отчета представляется на текущей странице отчета. Если значение сохраняемой позиции следующей группы установлено, СУГО помещает установленное значение в LINE-COUNTER (СЧЕТЧИК-СТРОК) и переустанавливает значение сохраняемой позиции следующейТруппы в нуль. Если значение LINE-COUNTER (СЧЕТЧИК-СТРОК) меньше целого, указанного в варианте FIRST (ПЕРВЫЙ) абсолютной фразы LINE NUMBER (НОМЕР СТРОКИ), группа тела отчета представляется на текущей странице отчета. В противном случае СУГО осуществляет переход к следующей странице. После обработки группы типа заголовок страницы (если таковая определена) СУГО представляет группу тела отчета на этой странице.
Правила позиции первой печатаемой строки:
первая печатаемая строка группы тела отчета представляется на строке с номером, указанным целым соответствующей фразы LINE NUMBER (НОМЕР СТРОКИ);
если значение LINE-COUNTER (СЧЕТЧИК-СТРОК) равно или больше номера строки, указанного вариантом FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ), и на текущей странице отчета еще не была представлена ни одна группа тела отчета, первая печатаемая строка данной группы тела отчета представляется на строке, непосредственно следующей за строкой, номер которой указан значением LINE-COUNTER (СЧЕТЧИК-СТРОК).
Если значение LINE-COUNTER (СЧЕТЧИК-СТРОК) равно или больше номера строки, указанного вариантом FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ), и если па текущей странице отчета уже была представлена некоторая группа тела отчета, то первая печатаемая строка данной группы тела отчета представляется на строке, номер которой равен сумме значения LINE-COUNTER (СЧЕТЧИК-СТРОК) и целого первой фразы LINE NUMBER (НОМЕР СТРОКИ) текущей группы тела отчета.
Если значение LINE-COUNTER (СЧЕТЧИК-СТРОК) меньше номера строки, указанного FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ), первая печатаемая строка группы тела отчета представляется па строке, помер которой указан вариантом FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ);
группа тела отчета не представляется;
номер строки, па которой представляется первая печатаемая строка, определяется суммой содержимого LINE-COUNTER (СЧЕТЧИК-СТРОК) и целого, указанного первой фразой LINE NUMBER (НОМЕР СТРОКИ).
Правило следующей группы
Абсолютное значение номера строки, указанное целым фразы NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА), должно определять номер строки, не меньший значения, указанного во фразе FIRST DETAIL (ПЕРВЫЙ ФРАГМЕНТ) фразы PAGE (РАЗМЕР СТРАНИЦЫ), и не больший значения, указанного во Фразе FOOTING (КОНЦОВКА) той же фразы PAGE (РАЗМЕР СТРАНИЦЫ).
Правила результирующей установки LINE-COUNTER (СЧЕТЧИК-СТРОК):
если представленная последней группа тела отчета является управляемой концовкой, не связанной с наивысшим уровнем, на котором СУГО было обнаружено прерывание управления, то результирующее значение LINE-COUNTER (СЧЕТЧИК-СТРОК) устанавливается равным номеру строки, на которой была представлена последняя печатаемая строка группы управляемая концовка.
Во всех остальных случаях СУГО сравнивает помер строки, на которой была представлена последняя печатаемая строка группы тела, с целым, указанным фразой NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА). Если сравниваемый номер строки меньше этого целого, СУГО устанавливает LINE-COUNTER (СЧЕТЧИК-СТРОК) равным значению, представленному целым во ((зразе NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА). Если же сравниваемый помер строки больше или равен целому, указанному фразой NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА), СУГО помещает в LINE-COUNTER (СЧЕТЧИК СТРОК) значение, равное номеру строки, указанному в варианте FOOTING (КОНЦОВКА) фразы PAGE (РАЗМЕР СТРАНИЦЫ); кроме того значение сохраняемой позиции следующей группы устанавливается равным целому, указанному фразой NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА);
если представленная последней группа тела отчета является управляемой концовкой и не связана с наивысшим уровнем, на котором СУГО было обнаружено прерывание управления, то результирующее значение LINE-COUNTER (СЧЕТЧИК-СТРОК) устанавливается равным номеру строки, на которой была представлена последняя печатаемая строка группы управляемая концовка.