2016-03-26 14 views
0

Ich habe einen Scrip in DB-Kreuz Reiter in schnellen Bericht, aber ich Zustand von Column zu Column ändern wollenändern Zustand von Spaltenindex der Spalte Wert in DB Kreuztabelle in Fast-Bericht

procedure DBCross1OnPrintCell(Memo: TfrxMemoView; RowIndex, ColumnIndex, CellIndex: Integer; RowValues, ColumnValues, Value: Variant); 
begin 
if ColumnIndex = 0 then 
if Value <> null then 
Set('Var0', Value) 
else 
Set('Var0', 0); 
if DBCross1.IsGrandTotalColumn(ColumnIndex) then 
Memo.Text := Format('%2.0n', [StrToFloat(VarToStr(value- Get('Var0')))]); 
end; 

enter image description here

Ich möchte stattdessen ColumnIndex = 0. Ich habe zum Beispiel wenn Column = 'Freude' und Column = 'jack' ...

+0

Was bedeutet 'wenn Column = 'Freude' und Column =‚bedeuten jack''? Spaltenwert kann nur einen Wert haben – gpi

+0

Ich habe 2 Spalten Header. columnHeader [1] = Code1 und ColumnHeader [2] = Code2 und Code1 Werte = Joy oder X .... und Code2 Werte = Jack oder Y ...... ok? oder habe ich mehr erklärt? – Frank

Antwort

0

Versuchen

procedure Cross1OnPrintCell(Memo: TfrxMemoView; RowIndex, ColumnIndex, CellIndex: Integer; RowValues, ColumnValues, Value: Variant); 
begin 
    if ColumnValues[0] = '2000' then if ColumnValues[1] = '2' then Memo.Color := clRed;                            
end; 
+0

Hallo Gang Gpi. Ich ändere columIndex zu ColumnValues ​​Aber ich erhalte einen Fehler: konnte Variante des Typs (Reihenvariante) nicht in Art (Integer) umwandeln ???? – Frank

+0

Erstellen Sie ein kleines Demo-Projekt mit Fehler und senden Sie es an [email protected] – gpi