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

Problem beim Aufbau eines LL-Reports


(Guest) #1

Hallo,

ich beschäftige mich gerade mit der Demo-Version von LL 14 und hänge
zur Zeit einem Punkt, wo ich nicht weiterkomme.

Ich möchte einen Datensatz mit Hilfe von LL ausdrucken.
Mein Projekt wird mit C#2008 erstellt.
Der Datensatz kommt nicht aus einer Datenbank, sondern aus einem
Objekt welches z.B. so aufgebaut ist:

class Kunde
{
private string mName = string.Empty;
private string mVorname = string.Empty;
List mRechnungen = null;
List mHistorie= null;

    public Kunde()
    {
    }

    publicstring Vorname
    {
        get { return this.mVorname; }
        set { this.mVorname = value; }
    }

    public string Name
    {
        get { return this.mName; }
        set { this.mName = value; }
    }

    public List<Rechnung> Rechnungen 
    {
        get { return this.mRechnungen; }
        set { this.mRechnungen = value; }
    }

    public List<Historie> Historie
    {
        get { return this.mHistorie; }
        set { this.mHistorie= value; }
    }
...
}

class Rechnung
{
private string Produkt = string.Empty;
private int mMenge;

    public Rechnung()
    {
    }

    public int Menge
    {
        get { return this.mMenge; }
        set { this.mMenge= value; }
    }

    public string Produkt 
    {
        get { return this.mProdukt ; }
        set { this.mProdukt = value; }
    }
...
}

Das Objekt Historie habe ich mal nicht aufgeführt.
Jetzt wollte ich einen Report erstellen, der die Felder aus dem Objekt
Kunde und die Daten aus den Objekten Rechnung und Historie enthält.
Dabei sollten die Felder aus dem Objekt Kunden nicht als Tabellenform
sondern in der Art eines Formulares angeordnet sein und nur die
Objekte Rechnung und Historie als Listen. Im Grunde soll es so ähnlich
aussehen wie eine Rechnung, nur das zusätzlich noch die Liste mit den
Historien Einträgen vorhanden sein soll.

Zur Datenbindung habe ich die Eigenschaft DataSource verwendet und als
Projekttyp die LlProject.List. Da LL nur Objekte vom Typ IEnumerable
(neben Dataset etc.) zuläßt, habe ich meinen einzelnen Datensatz in
eine Liste eingefügt. So weit funktioniert alles, aber die Felder des
Objektes Kunden werden als Tabelle dargestellt und ich kann die
einzelnen Felder aber nicht “von Hand” anordnen. Wenn ich den
Projekttyp auf LlProject.Card setze, habe ich im Designer keinen
Zugriff auf meinen Datenquelle.

Wo habe ich meinen Denkfehler?
Welcher Projekttyp ist für mein Projekt eher geeignet?
Wie kann man in ein Projekt vom Typ LlProject.Card Untertabellen
einfügen?

MfG
Thomas


(Guest) #2

Hallo,

ich beschäftige mich gerade mit der Demo-Version von LL 14 und hänge
zur Zeit einem Punkt, wo ich nicht weiterkomme.

Ich möchte einen Datensatz mit Hilfe von LL ausdrucken.
Mein Projekt wird mit C#2008 erstellt.
Der Datensatz kommt nicht aus einer Datenbank, sondern aus einem
Objekt welches z.B. so aufgebaut ist:

class Kunde
{
private string mName = string.Empty;
private string mVorname = string.Empty;
List mRechnungen = null;
List mHistorie= null;

    public Kunde()
    {
    }

    publicstring Vorname
    {
        get { return this.mVorname; }
        set { this.mVorname = value; }
    }

    public string Name
    {
        get { return this.mName; }
        set { this.mName = value; }
    }

    public List<Rechnung> Rechnungen 
    {
        get { return this.mRechnungen; }
        set { this.mRechnungen = value; }
    }

    public List<Historie> Historie
    {
        get { return this.mHistorie; }
        set { this.mHistorie= value; }
    }


}

class Rechnung
{
private string Produkt = string.Empty;
private int mMenge;

    public Rechnung()
    {
    }

    public int Menge
    {
        get { return this.mMenge; }
        set { this.mMenge= value; }
    }

    public string Produkt 
    {
        get { return this.mProdukt ; }
        set { this.mProdukt = value; }
    }


}

Das Objekt Historie habe ich mal nicht aufgeführt.
Jetzt wollte ich einen Report erstellen, der die Felder aus dem Objekt
Kunde und die Daten aus den Objekten Rechnung und Historie enthält.
Dabei sollten die Felder aus dem Objekt Kunden nicht als Tabellenform
sondern in der Art eines Formulares angeordnet sein und nur die
Objekte Rechnung und Historie als Listen. Im Grunde soll es so ähnlich
aussehen wie eine Rechnung, nur das zusätzlich noch die Liste mit den
Historien Einträgen vorhanden sein soll.

Zur Datenbindung habe ich die Eigenschaft DataSource verwendet und als
Projekttyp die LlProject.List. Da LL nur Objekte vom Typ IEnumerable
(neben Dataset etc.) zuläßt, habe ich meinen einzelnen Datensatz in
eine Liste eingefügt. So weit funktioniert alles, aber die Felder des
Objektes Kunden werden als Tabelle dargestellt und ich kann die
einzelnen Felder aber nicht “von Hand” anordnen. Wenn ich den
Projekttyp auf LlProject.Card setze, habe ich im Designer keinen
Zugriff auf meinen Datenquelle.

Wo habe ich meinen Denkfehler?
Welcher Projekttyp ist für mein Projekt eher geeignet?
Wie kann man in ein Projekt vom Typ LlProject.Card Untertabellen
einfügen?

MfG
Thomas

Bei der Definition wird unterschieden zwischen Feldern (Tabelle) und Variablen (Einzelfelder).
Die Kundenfelder musst du als Variablen und nicht als Felder deklarieren und übergeben, dann lassen sich diese auch frei positionieren.


(Guest) #3

On Thu, 27 Aug 09 08:50:02 +0100, “Baldur Fürchau”
<baldur.fuerchau@ftsolutio…> wrote:

Bei der Definition wird unterschieden zwischen Feldern (Tabelle) und Variablen (Einzelfelder).
Die Kundenfelder musst du als Variablen und nicht als Felder deklarieren und übergeben, dann lassen sich diese auch frei positionieren.

Hallo,

danke für die Antwort jetzt funktioniert es.
MfG
Thomas