müssen Seriennummern wie römische Buchstaben (i, ii, iii, iv usw.) in meinen Crystal Reports anzeigen. Ich habe die Seriennummer als Record Nummer (1,2,3,4 ...) erfasst, also was ich dafür im Crystal Report machen muss.Seriennummer als lateinische Buchstaben in Crystal Reports anzeigen
6
A
Antwort
1
Ich kann nicht viel von dem Kredit nehmen; Ich portierte einfach den Code aus this VB Helper article in Kristall, aber es war eine nette Übung:
NumberVar iCounter := 0;
Local StringVar ch := "";
Local NumberVar result := 0;
Local NumberVar new_value := 0;
Local NumberVar old_value := 0;
Local StringVar temp := "";
temp := UpperCase({[email protected]});
old_value = 1000;
For iCounter := 1 To Len(temp) do
(
// See what the next character is worth.
ch := Mid(temp, iCounter, 1);
if ch = "I" then new_value := 1
else if ch = "V" then new_value := 5
else if ch = "X" then new_value := 10
else if ch = "L" then new_value := 50
else if ch = "C" then new_value := 100
else if ch = "D" then new_value := 500
else if ch = "M" then new_value := 1000;
// See if this character is bigger
// than the previous one.
If new_value > old_value Then
// The new value > the previous one.
// Add this value to the result
// and subtract the previous one twice.
result := result + new_value - 2 * old_value
Else
// The new value <= the previous one.
// Add it to the result.
result := result + new_value;
old_value := new_value;
);
// Format the number without commas or decimals
ToText(result, 0, "");
einfach meinen {[email protected]}
Parameter Platzhalter durch Ihre Variable ersetzen, und Sie sind alle gesetzt.
1
Verwenden Sie einfach die Funktion Roman(), die von Crystal Report
bereitgestellt wird