Autor Beitrag
Dille
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 22.09.05 14:51 
Hi Folks,

Mein ganzes RAVE 5 Dokument wird mittels code in DELPHI 7 kreiert. Hier ein kleiner Ausschnitt aus dem Code, welcher ein Tabellenkopf erstellt:


ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
for Counter :=1 to RowCounter-1 do  
    begin  
        if Day[Counter+1] <> Day[Counter] then  
        begin  

 
        // WRITE THE STRING `DATE` AND THE CURRENT DATE  
 
          NewLine;  
          NewLine;  
          ClearTabs;  
          SetTab(1.0, pjLeft, 1.0, 0, BoxLineBottom, 0);  
          SetTab(1.5, pjLeft, 5.4, 0, BoxLineBottom, 0);  
          SetFont('Arial', 11);  
          Bold := False;  
          FontColor := clGray;  
          PrintTab('Day :');                                       // Date  
          Bold := False;  
          PrintTab(DateToStr(TStart[Counter]));                    // Date  
          NewLine;





Dieser Tabellenkopf ist gleichzusetzen mit dem DataViewBand vom Rave Designer. Wie der Quellcode aber zeigt, wird dieser Kopf und die darauffolgenden Daten mehrmals kreiert, nach dem Bedürfnis des Nutzers. Am Ende ergibt das ganze Dokument ein Timesheet. Man kann entweder ein Tag auswählen und man derhält einen Tabellenkopf und die Daten für diesen Tag wie folgt:


ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
 DATE: 22/09/2005  
------------------------------------------------------------------  (DataViewBand)

 
Project 123  ..........   x hours  (Daten)
Project 456  ..........   x hours
usw.  
---------------------------------  

         Complete hours: x hours







oder eine Woche oder ein Monat oder sogar ein ganzes Jahr mit vielen Tabllenköpfen und dementspechenden Daten.

Wie gesagt, das funktioniert alles super mit der Code Version. Leider wird der Code immer länger und länger und demzufolge unübersichtlicher. Es wäre doch viel angenehmer, dieses Sheet mittels RAVE REPORTS 5 zu erzeugen. Wie stelle ich das aber an, das ich undendliche gleich formatierte DataViewBand's per Laufzeit erzeuge?

Cheers

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt.
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: Fr 23.09.05 19:14 
Hallo

gugg dir mal das Rave-Demo an, insbesondere den "Master-Detail"-Report, ist es dass, was du suchst?

Mfg Frank

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Sa 24.09.05 09:07 
evtl. hilft dir dieser artikel: bdn.borland.com/arti...0,1410,30329,00.html

_________________
In the beginning was the word.
And the word was content-type: text/plain.
Dille Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Mo 26.09.05 01:18 
Hi Matze,

ich denke, Ihr habt mich falsch verstanden. Das Programm funktioniert bereits und ich kreie schon das ganze Rave Dokument mittels Quellcode.

Was ich suche ist ein Beispiel oder eine Erklaerung, wie man ein DataViewBand dynamisch erzeugen kann, damit ich mir den ganzen Quellcode sparen kann.

Cheers
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: Mo 26.09.05 17:49 
ich versteh nicht, warum man das unbedingt per Quellcode regeln muß ;). Der raveDesigner soll doch die Arbeit erleichtern, insbesondere, wenn man später nochmal was im Design ändern möchte.

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
Dille Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 29.09.05 04:39 
Bitte lest das Beispiel von oben nochmal durch. Es geht hier nicht darum, ob der Rave Designer das machen soll, es geht darum ob es ueberhaupt funktioniert und viel interessanter - WIE!!!

Nochmal von vorn. Man nehme ein Rave Report - leer versteht sich - und setzt ein DataView ein, stellt die Verbindung her und setzt ein DataBand in den Report. Alles funktioniert. Soweit verstanden?

Jetzt koennte ich alle Daten nacheinander in das DataBand uebertragen und man haette eine schoene Tabelle. Was aber, wenn man mehrere Tabellen nacheinander darstellen will. Klar, man setzt dann halt mehrere DataBand's untereinander und schliesst diese zu den einzelnen DataView's an. Alles easy.

Was aber, wenn man vorher noch nicht weiss, wieviele DataBand's man ueberhaupt darstellen will ... nur 2 oder 20 oder gar 1000? ... Get it now?

So die Frage nochmal: Wie kann man ein DataBand dynamisch mit einer Delphi Application erzeugen?????


Ein Ausdruck von einem vorhandenen TimeSheet findet Ihr im Anhang. Dies ist von einem Quellcode erzeugt, welches aus einem Array die einzelnen Daten, ueber Schleifen und Abfragen, in ein Rave Document uebertraegt. Man sieht hier eindeutig die verschiedenen Ueberschriften, welche die Tage indentifiziert. Darueber seht Ihr das Zeitfenster. Ich kann einen Tag auswaehlen und bekomme nur einen Tabellenkopf oder ein Jahr oder gar ein Jahrzehnt mit Tausend Tabellenkoefen.

Ich hoffe, nun habt Ihr ein klares Bild davon, was ich ueberhaupt erreichen will.

Cheers
Einloggen, um Attachments anzusehen!