Ich erstelle einen Bericht in Crystal Reports, in dem die Spaltenreihenfolge mit der Reihenfolge übereinstimmen muss, in der sie in der SSDBGrid
in VB6
angezeigt werden.Abrufen des Spaltenindex von SSDBGrid in VB6
Um dies zu tun, entschied ich, dass es am besten ist, jede Spalte im Raster zu durchlaufen, und rufen Sie eine Funktion, um die Parameterfeldwerte auf die richtige Überschrift (so Spalte 0 wäre der Wert für Parameterfeld @) col1, usw.)
Wie auch immer, der Code, den ich für diese haben, ist
Dim c As Column
Dim cName As String
For Each c In FShow_All_Accounts.grd_accounts.Columns
cName = "@Col" & c.ListIndex
Call setColumnHeaders(c.Index)
crxReport.ParameterFields.GetItemByName(cName).AddCurrentValue ("f")
Next
das Problem ist, dass vor allem die Art der c
auf Spalte Einstellung und Schleifen über jedes c
in grd_accounts falsch zu sein scheint - grd_accounts ist ein SSDBGrid
, und zweitens, es Fehler beim Versuch, den Index zurückzugeben.
Also, meine Frage (n):
- Was ist der richtige Weg über jede Spalte zu Schleife in einem
SSDBGrid
? - Zweitens, wie würde ich dann den Spaltenindex für die richtige Spalte bekommen, um in die Funktion zu gelangen?
Das funktioniert fast, außer, wenn ich die Reihenfolge der Spalten ändern, druckt es immer noch die Spalten in der gleichen Reihenfolge? – Harambe
Keine Sorge, ich habe es gerade so beibehalten, wie es jetzt ist, mit den Spalten in einer festen Reihenfolge. – Harambe