Я хочу создать условную формулу, которая изменит столбец PP.POSPAY_SALARY_MIN в моем отчете на основе значения другого столбца. Вот логика, которую я пытаюсь воспроизвести, пока с ошибками. Значения Salary min поступают как внутренне отформатированная строка чисел, без десятичных точек.
select <these are among the many columns in my report>
....
P.POS_HRLY_OR_SLRY,
PP.POSPAY_SALARY_MIN,
....
Я хочу, чтобы PP.POSPAY_SALARY_MIN был умножен на .0001, если P.POS_HRLY_OR_SLRY = 'S', в противном случае умножьте PP.POSPAY_SALARY_MIN на .01.
Могу ли я это сделать, и если да, то что я упускаю при форматировании формулы?
решение1
общее предложение
Часто проще записывать условные вычисления в виде вычисляемых полей, чем писать их внутри операторов SQL.
пошаговое руководство:
- Сделайте обозреватель полей видимым, используя значок на панели инструментов или меню «Вид -> Обозреватель полей».
- Найдите запись для полей формулы с помощьюFX-эффектсимвол и щелкните правой кнопкой мыши, чтобы открыть контекстное меню. Выберите «Новый...»
- Откроется редактор формул, и вы сможете использовать язык программирования Crystal Report для создания условного значения.
- Вы можете перетащить поле формулы из проводника полей в свой отчет таким же образом, как вы это делаете с полями базы данных.
Прошу прощения за скриншоты на немецком языке. У меня нет английской версии Crystal Report. Возможно, некоторые подписи будут отличаться от моих переводов терминов.