Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Необходимо, в зависимости от условия в одном из полей строки отчета изменить фонт.
Например, поле даты, которое в одной строке совпало с условием. В другой строке, если условие не выполнено, фонт остается общим для отчета.
Как это сделать (скорее всего используя PROPSTYLE{}, но как) и в каком месте? У меня перед выводом Detail.
?Field{PROP:FontStyle} = FONT:Bold почему-то не работает...
Может это надо вставлять не перед печатью Detail, а где-то раньше? Но, все остальные обработки, подсчеты по условию работают в этом месте. А PROP: не хочет...
Спасибо, буду иметь в виду.
Сегодня встретился с еще одной ситуацией. Все те же Clarion 8.0 и WinXP.
Делаю отчет из 2-х разделов. Каждый раздел из одной страницы, делаю в PageFooter. Первый раздел запускается в Init подпрограммы второго раздела.
Сначала сделал 2-й раздел. Перебираю по условию записи и накапливаю значение поля v21 += Cena (всего полей много, но для понимания ситуации хватит одного). По окончании перебора перевожу в тысячи рублей v21 /= 1000 и печатаю страницу. Все прекрасно, сумма, например, 600,00 т.р.!
Копирую полученный Report и немного подправив всякие надписи, чуть изменив условия выбора записей (основное - период между двумя датами, осталось) получаю печать 1-го раздела. Также перебираю по условию записи и накапливаю значение поля v21 += Cena и по окончании перебора перевожу в тысячи рублей v21 /= 1000 и печатаю страницу. Получаю сумму 0,60 т.р.
Изменяю формулу при переборе на v21 += Cena/1000 и удаляю перевод в тысячи в конце. На печати получаю 600,00 т.р.
Удивительно... Разные подпрограммы. Хотя одна запускается из другой. Но сначала считается первый раздел, затем 2-й. 2-й получается правильно, а первый, как будто деление на 1000 происходит дважды...
Чей глюк? Мой или Клары? И чем отличается перевод в тысячи при переборе записей от перевода в конце?
В том-то и дело, что выборка из около 700 записей. Не может быть такой погрешности (в 1000 раз) в принципе. Думаю, что все же это мой ляп. Только не пойму, в чем и почему в одном случае работает правильно, в другом - нет...
Цикл (перебор), в нем наращивание итога (из нескольких полей по условиям) и в нем же перевод этого итога в тысячи. Т.е. при каждом чтении очередной записи происходит и перевод в тысячи. Это, конечно, ненормально, но не может в этом быть арифметическая ошибка...
Во втором случае перевод в тысячи в ходе наращивания итога значением каждого выбираемого поля записи. Разницы (арифметически) никакой... Погрешность ничтожно мала.