Данные, найденные в подотчетах, выходят за пределы области действия после их распечатки. Чтобы обойти это, вам нужно будет использовать глобальную переменную. Вот основные c шаги по созданию глобальной переменной.
В подотчете, где существуют данные, вам нужно будет создать новое поле формулы. Вы можете назвать это как хотите, но для этого ответа я назову это GetVariable
. Вот формула, которую вы хотите ввести для этого поля формулы.
Shared NumVar otherTime;
otherTime := {OTHER_TIME_INT}
Первая строка инициализирует переменную с именем otherTime
с типом данных NumVar, а вторая строка присваивает ей значение из поля. в подотчете. Ключевое слово Shared указывает область действия переменной. В Crystal Reports есть 3 различных области действия переменных: локальная, глобальная и общая. Локальные переменные можно использовать только в той формуле, в которой они созданы, глобальные переменные можно использовать только в рамках основного документа отчета (без подотчетов), а общие переменные можно использовать в основном отчете и во всех его подотчетах.
Поместите поле формулы GetVariable
в подотчет, где отображается поле {OTHER_TIME_INT}
, затем отредактируйте свойства формата поля формулы GetVariable
, чтобы оно подавлялось и не отображалось в подотчете.
В любом месте, где вы хотите получить эту переменную, теперь также потребуется новое поле формулы. Например, если у вас есть второй подотчет, где вам нужно значение этой переменной, вы захотите создать новое поле формулы в этом подотчете. Опять же, имя поля может быть любым, каким вы хотите, но для этого примера я назову его GetValue
. Формула для этого поля будет иметь вид:
Shared NumVar otherTime;
otherTime;
Опять же, первая строка создает переменную с именем otherTime
. Он уже имеет значение ранее, поэтому нет необходимости назначать его. Во второй строке выводится значение переменной otherTime
.
Это довольно простой c пример того, как передать значение из одного подотчета в другой, используя переменную, но я также рекомендую вам посмотреть хорошее руководство по использованию переменных в Crystal Report для получения дополнительной информации.