Использование формул

Оценить
(0 голоса)
Как правило, формулы сохраняют результаты вычисления только на протяжении срока действия одной записи базы данных. Если поместить формулу в раздел подробностей, она будет вычисляться каждый раз, когда будет обрабатываться новая запись, и помещать результат вычислений в раздел подробностей. Если поместить формулу в нижний колонтитул группы, формула будет вычисляться при распечатке нижнего колонтитула каждой группы. В любом случае, формула ничего не будет “помнить” из предыдущей записи или предыдущего нижнего колонтитула группы. При появлении следующей записи или нижнего колонтитула формула начнет вычисляться с самого начала. Однако может случиться и так, что вы захотите, чтобы формула запоминала какую-нибудь определенную информацию от записи к…
Оценить
(1 голос)
В любой формуле, которая будет использовать переменную, первым делом следует объявить эту переменную. При объявлении под переменную резервируется необходимый объем памяти, величина которого зависит от используемого ею типа данных. Объявления переменных можно найти в окне Operator Tree редактора Formula, Editor, в разделе Variable Declarations (Объявление переменных), который показан на рис. 5.17. Обратите внимание на то, что для каждого типа данных в Crystal Reports существует свой оператор объявления переменной. Вы заблаговременно должны продумать, данные какого типа будет хранить ваша переменная, и после этого соответствующим образом объявить ее. Например, при необходимости сделать так, чтобы от записи к записи отслеживалось имя клиента, вы…
Оценить
(1 голос)
Общая идея и цель использования переменных заключается в том, чтобы они сохраняли свои значения по мере продвижения отчета от записи к записи или от группы к группе. Таким образом, чтобы переменные приносили реальную пользу, они должны сохранять свои значения на протяжении всего процесса выполнения отчета. И поскольку формул, в которых необходимо сослаться на одну и ту же переменную, может быть несколько, должна быть возможность, позволяющая ссылаться в формуле на переменную, которая была объявлена и которой уже было присвоено значение в другой формуле. То, как долго и где переменная хранит свое значение, определяет область действия данной переменной. Если переменная имеет узкую…
Оценить
(0 голоса)
Если после объявления переменной сразу не присвоить какое-то конкретное значение, толку от нее будет мало. Возможно, вы решите использовать переменную в качестве накопителя (значение которого будет увеличиваться на единицу всякий раз, когда выполняется некоторое указанное условие). А может, вы захотите присвоить ее строковое значение, к которому по мере продвижения отчета будут добавляться дополнительные строковые значения. Совет. Если вы объявили переменную, но не присвоили ей значения, ей будет присвоено значение по умолчанию, которое зависит от указанного для нее типа данных. Для числовых переменных и переменных типа currency значением по умолчанию является 0, для строковых переменных — пустая строка, для булевских переменных…
Оценить
(0 голоса)
В предыдущем примере вы увидели, как можно накапливать значения в переменных в разделе подробностей и восстанавливать их исходные значения, присваивая им нулевые значения в заголовках групп (или в других местах отчета). Однако, вам также необходима и возможность, позволяющая отображать содержимое переменной в отчете или использовать значение переменной в формуле каким-нибудь другим способом. Чтобы отобразить содержимое переменной, ее просто нужно объявить. Если формула не содержит никаких других операторов, объявление переменной также возвратит и ее в виде значения формулы. Например, чтобы показать, кто из заказчиков получил премию в группе регионов, можно было бы поместить в нижний колонтитул группы показанную ниже формулу: StringVar…
Оценить
(1 голос)
Вы, должно быть, уже заметили, что на формулы, которые содержат переменные, часто оказывает влияние то, в каком месте отчета они* физически находятся. Если вы хотите, чтобы проверка и присвоение значений переменным выполнялось при переходе от одной записи к другой, вы должны поместить формулу в раздел подробностей. Если вы хотите, чтобы накопленные итоговые суммы отображались для каждой группы, вы должны поместить содержащую соответствующие переменные формулу в нижний колонтитул групп. Если вы хотите сделать так, чтобы для следующей группы значения переменных сбрасывались, вы должны поместить выполняющую эту задачу формулу в заголовок группы. Однако простое размещение формул в этих разделах вовсе необязательно гарантирует…
Оценить
(0 голоса)
Система Crystal Reports разрабатывалась как расширяемое инструментальное средство построения отчетов. В отношении формул это означает, что если Crystal Reports не предоставляет вам необходимых функций, вы можете разрабатывать свои собственные и добавлять их в список Function Tree. В версии Crystal Reports 9 и выше эта возможность была улучшена за счет включения пользовательских функций, которые вы можете либо просто создавать в своем отчете, либо добавлять в репозиторий для совместного использования с другими пользователями Crystal Reports (пользовательские функции более подробно будут рассматриваться в главе 6). Однако, в версиях, предшествующих Crystal Reports 9, возможность реализации пользовательских функций отсутствует. Также в некоторых случаях категория Custom…
Оценить
(0 голоса)
В определенных ситуациях использования формул с переменными (которые рассматривались выше в данной главе) избежать нельзя. Однако многие из приведенных ранее примеров на самом деле могут быть выполнены даже без создания формулы. При возникновении необходимости в накапливании, отображении и сбросе значений текущих сумм, вы, скорее всего, предпочтете воспользоваться полями текущих сумм. Поле текущей суммы может быть вставлено в отчет абсолютно так же, как и поле базы данных. Эта возможность предоставляет значительную степень гибкости для накапливания или увеличения значений по мере продвижения отчета, исключая потребность в применения формул или переменных. На рис. 5.22 показан отчет типа Тор N (см. главу 3), который…
«ПерваяПредыдущая1234СледующаяПоследняя»
Навигация