2016-06-05 8 views
0

Ich möchte die Note eines Schülers zeigen, indem ich die Gesamtnote und die maximale Punktzahl errechne. Ich schreibe die Formel unten angegeben:Crystal Report Formel, um die Note des Schülers zu erhalten

local stringVar div := ""; 
local numberVar num := (ToNumber({StudentResult.S1To})+ToNumber({StudentResult.S2To})+ToNumber({StudentResult.S3To})+ToNumber({StudentResult.S4To})+ToNumber({StudentResult.S5To}))*100/ 
(ToNumber({StudentResult.S1M})+ToNumber({StudentResult.S2M})+ToNumber({StudentResult.S3M})+ToNumber({StudentResult.S4M})+ToNumber({StudentResult.S5M})) 
If num < 33 Then 
(
    div := "FAILED"; 
) 
Else If num >= 33 And num < 45 Then 
(
    div := "THIRD"; 
) 
Else If num >= 45 And num < 60 Then 
(
    div := "SECOND"; 
) 
Else 
(
    div := "FIRST"; 
); 

dieser Code Fehler in der, wenn sonst Teil erhält. Bitte, wenn jemand weiß, hilf mir, wo ich Fehler mache, Code zu schreiben.

Dank
+0

fehlt ';' am Ende der Formel 'num' Formel und dann schreiben' wenn else' – Siva

+0

Dank Siva, oh ich verpasst nur ein Semikolon. –

Antwort

1
local stringVar div := ""; 
local numberVar num := (ToNumber({StudentResult.S1To})+ToNumber({StudentResult.S2To})+ToNumber({StudentResult.S3To})+ToNumber({StudentResult.S4To})+ToNumber({StudentResult.S5To}))*100/ 
(ToNumber({StudentResult.S1M})+ToNumber({StudentResult.S2M})+ToNumber({StudentResult.S3M})+ToNumber({StudentResult.S4M})+ToNumber({StudentResult.S5M})); 

If num < 33 Then 
(
    div := "FAILED"; 
) 
Else If num >= 33 And num < 45 Then 
(
    div := "THIRD"; 
) 
Else If num >= 45 And num < 60 Then 
(
    div := "SECOND"; 
) 
Else 
(
    div := "FIRST"; 
);