Member 14944662 Ответов: 1

Как возвращается пустая строка или значение в Формуле отчета crystal


Я использую формулу count value в Raw она работает нормально но я хочу когда j равно нулю формула возвращается пустой иначе возвращается J

Как это можно сделать?
это моя формула

Что я уже пробовал:

EvaluateAfter({PayRoll_database_sp_PresentTable_Result.D01});
EvaluateAfter({PayRoll_database_sp_PresentTable_Result.D02});
EvaluateAfter({PayRoll_database_sp_PresentTable_Result.D03});

Local StringVar D01;
Local StringVar D02;
Local StringVar D03;
Local NumberVar i;
Local NumberVar j;
Local StringVar array x;

D01:={PayRoll_database_sp_PresentTable_Result.D01};
D02:={PayRoll_database_sp_PresentTable_Result.D02};
D03:={PayRoll_database_sp_PresentTable_Result.D03};

x:=[D01,D02,D03];
J:=0 ; 
for i:=1 to Count(x) do
(
    if x[i]="P" or x[i]="W"
    Then j:=j+1
);
j

1 Ответов

Рейтинг:
0

Sandeep Mewara

Попробуй:
Например, в отчете может быть указана существующая формула @ShipDays, которая вычисляет количество дней, затраченных на отправку заказа. Вы можете написать следующее If-Then-Else formula чтобы показать слова тот же день в отчете, если @ShipDays равен нулю, или показать только содержимое формулы @ShipDays, если она не равна нулю:

If {@ShipDays} = 0 Then 
    "Same Day" 
Else 
    {@ShipDays}

Ссылаться: If-Then-Else Formulas | Crystal Reports 10: The Complete Reference[^]


Member 14944662

Где используется этот код???

Sandeep Mewara

В поле формула, где вы хотите отобразить данные.
См.: https://www.universalclass.com/articles/computers/crystal-reports-working-with-formulas.htm

Member 14944662

подобный этому









x:=[D01,D02,D03];
J:=0 ;
для i:=1 to Count(x) do
(
если x[i]="P" или x[i]="W"
Тогда j:=j+1
);

j

Если {@ShipDays} = 0, То
"один день"
Еще
{@ShipDays}

Sandeep Mewara

В поле формулы можно написать код if на основе доступных полей. @ShipDays - это пример. Используйте свое поле в логике, чтобы установить что-то, когда оно пусто.

Member 14944662

я делаю это

для i:=1 to Count(x) do
(
если x[i]="V" или x[i]="C" или x[i]="L"
Тогда j:=j+1;
);
j

Если {@Vacation} = 0, То
""
Еще
{@Отпуск}


но получите ошибку

оставшийся текст, по-видимому, не является частью Формулы

Sandeep Mewara

что такое x, j? либо определите их, либо используйте доступные поля. вы не можете просто использовать необработанный код там. Вам необходимо прочитать и изучить поля формул в crystal reports. Пробуйте на маленьких примерах и учитесь.