+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

LL26: Zugriff auf Felder in LL_AutoDefineField

Hallo,
warum erhalte ich nur beim ersten Aufruf von LL_AutoDefineField() Zugriff auf alle Felder meiner Tabelle? Alle nachfolgenden Aufrufe liefern nur mehr die im Berichtscontainer angegebenen Felder. Also Felder, welche ausgegeben werden bzw. in einer Bedingung verwendet werden.

Gibt es einen Schalter, dieses Verhalten zu beeinflussen? Oder kann man definieren, welche Felder mit der Methode LL_AutoDefineField() bereitgestellt werden? Oder gibt es eine andere Methode, welche zum Beispiel pro Datensatz einmalig aufgerufen wird und mir den Zugriff auf denselben ermöglicht?

Ich verwende folgenden Code unter C#:

    private void LL_AutoDefineField(object sender, AutoDefineElementEventArgs e)
    {
	...
	ITableRow tableRow = e.AssociatedTableRow;
	...
    }

Mit tableRow.Columns.Count erhalte ich zum Beispiel die Anzahl der Felder. Beim ersten Aufruf entspricht dies der Anzahl meiner Datenbankfelder. Alle weiteren Aufrufe liefern nur noch die Anzahl der im Berichtscontainer verwendeten Felder.

Besten Dank für eure Hilfe.

Gruß Joachim

Moin Joachim,
gerne würden wir Dir Deine Fragen wie folgt beantworten:

Das liegt daran, dass das Event wird genau für die Felder ausgelöst, die auch wirklich übergeben werden.

Dieses richtet sich nach den Feldern, die im Bericht verwendet werden. Es sei denn, man würde CheckUsedIdentifieres auf “false” setzten.

Hallo Helge,

vielen herzlichen Dank für deine Hilfe. Super, so einen Schalter hatte ich gesucht und nicht gefunden. Funktioniert einwandfrei.

Grüße
Joachim

2 Likes

© combit GmbH