2012-05-08 3 views
0

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

У меня есть отчет с несколькими заголовками групп для каждой группы. То, что я хотел бы сделать, это выбрать заголовок группы (GH1a, GH1p, GH1w ...) с автоматически увеличивающимся номером, который затем я перейду к римской цифре с помощью roman (@function). Нумерация будет независимой от числа фактических групп, только заголовков групп. Там может быть один к 100 000 записей (группы) вернулся к отчету, но для каждой записи (группы) Группа заголовков в каждой группе будет иметь выбор группы Заголовки пронумеровали же

EX:

GROUP A

GH1a: I 
GH1b: 
GH1c: II 
GH1d: III 
GH1e: 
GH1f: 
GH1g: IV 

Группа B

GH1a: I 
GH1b: 
GH1c: II 
GH1d: III 
GH1e: 
GH1f: 
GH1g: IV 

т.д ....

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

в reportheader и/или GH1a // @ iCountreset

Global NumberVar iCount:=1; 

в каждом GH что я хочу инкрементируется // @ iCounted

Global Numbervar iCount; 
    iCount:= iCount+1; 

затем второй один к романизировать его // @ RomanCount

roman(@iCounted); 

В настоящее время я их жестко закодирован, но я пытаюсь объединить несколько rpt-файлов в один, где единственное различие будет в том, что некоторые разделы GH будут подавлены и поэтому не будут учитываться в нумерации.

Благодарим вас заблаговременно.

ответ

0
//{@reset} 
WhilePrintingRecords; 
Global Numbervar G1:=1; 

//{@increment} 
WhilePrintingRecords; 
Global Numbervar G1:=G1+1; 

//{@roman} 
Roman({@increment}) 

** редактировать **

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

Шаги:

оных {@reset} GH1a из 'основного' доклада; подавление

//{@reset} 
WhilePrintingRecords; 
Shared Numbervar G1:=0; 

создание подкаталога; поместите его в GH1b; добавьте следующие формулы:

раздел «Дополнительная информация»; подавляет:

//{@increment} 
WhilePrintingRecords; 
Shared Numbervar G1:=G1+1; 

добавить Подробности раздела:

//{@roman} 
Roman({@increment}) 

Вам нужно будет добавить подотчет для каждой секции, которая требует римского-позьего расчета. Чтобы сделать этот процесс немного менее болезненным, экспортируйте подзаголовок («сохранить подзаголовок как»), а затем снова вставьте его.

+1

Я не уверен, что это сработает. Я не думаю, что CR будет оценивать ту же формулу для каждого раздела GH, если вы поместите его в отчет несколько раз. Это закончило бы печать «II» снова и снова. – Ryan

+0

Вы правы, Райан. Функция {@increment} страдает от этой фатальной ошибки. – craig

+0

Я вижу, как это может работать, но есть ли способ без подзаголовков? Я действительно ненавижу быть зависимым от «внешних» переменных, кроме набора результатов. Не будучи разборчивым, я просто уверен, что есть более чистый способ? –

Смежные вопросы