![]() |
Datenbank: MS SQL-Server 2000 • Zugriff über: ADO
Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit ändern
Hallo Leute!
Bin wieder mal an meine Grenzen gestoßen :wall: Problemstellung: Ein (Umsatz)-Bericht besteht aus verschiedenen Modulen. Der Anwender soll zur Laufzeit die Reihenfolge der Module festlegen können. Im Rave (BE-Version von Delphi2005) besteht jedes Modul aus verschiedenen Bändern (Kopf, Body, Fuß). Diese sind innerhalb einer Region alle untereinander angeordnet. Kann ich zur Laufzeit die Reihenfolge verändern? Wenn ja, wie? :gruebel: Danke schon mal im Voraus. |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Hmmm.... was ist los? Alle schon im Weihnachtsurlaub ? :wink:
Oder gibt's tatsächlich keine Lösung für das Problem? :chäffe_krank: Bitte bitte bitte liebe Forumer, denkt nach! Lasst mich nicht hängen! Schöne Weihnachtstage! :mrgreen: |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Hallo cs.rumpelstilzchen,
da kann dir sicher ![]() |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
THX Mr. Spock!
Hab grad selbst was gefunden!
Delphi-Quellcode:
Das funzt! BringToFront setzt die Komponente zwar an das Ende des Reports (BringToFront! Klar! :zwinker: ), aber wenn ich das bei allen Komponenten des Reports nacheinander mache, erhalte ich die gewünschte Reihenfolge! :-D
MyComponent := FindRaveComponent(szModulName,MyPage) as TRaveComponent;
if MyComponent <> nil then MyComponent.Visible := True; MyComponent.BringToFront; Aaaaaaber.... Die erste Komponente auf dem Blatt - eine einfache Band-Komponente, alle anderen sind DataBand-Komponenten! - macht Ärger: EXCEPTION! :wall: Danke für eure Hilfe! |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Noch ein Problem: Ich kann zwar die Eigenschaft Visible (und einige andere) manipulieren, aber "StartNewPage" und "FinishNewPage" fehlen! Oder ich find sie nicht? :gruebel:
Gibt es da irgendein Zauberwort? :witch: |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Zitat:
:-) thomas |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Zitat:
:-) thomas, TeamNevrona |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Hallo Merlin 17!
Danke für deine Aufmerksamkeit. :spin: In der Tat, ich habe von Nevrona eine Interessante Antwort erhalten: Meine Frage war: Zitat:
Zitat:
Es ist tatsächlich nicht möglich die Eigenschaften StartNewPage und FinishNewPage direkt im Delphi zu manipulieren! Und im Rave habe ich innerhalb eines Events keinen direkten Zugriff auf Parameter und auf den 'Tag'-Wert. Also hab ich den unter Programmierern so beliebten 'Schrägdurchdiebrustinsauge'-Ansatz probiert: - Parameter für jedes der zu steuernden Module angelegt - zu jedem Datenband einen Footer hinzugefügt - dort ein DataText-Objekt mit Inhalt zugehöriger Parameter - jedem Footer ein 'BeforePrint'-Event verpasst - im Event abhängig vom Inhalt des Datatext-Objekts die Eigenschaft 'FinishNewPage' gesetzt Ein bisserl Umständlich, aber es funzt!!!! :thumb: Mit Rave kann man schon ne Menge anstellen, aber nach wie vor finde ich es äußerst befremdlich, daß es keine vollständige Dokumentation dazu gibt! :evil: Es ist doch lächerlich, da wird das runde Rad immer wieder neu erfunden nur weil der Hersteller keine Lust hat mal was schriftliches zu Produzieren, mit dem man wirklich arbeiten kann! :wall: Wie weit bist du mit deinem Buch zu Rave? Hätte das Zeug zum Bestseller! :dancer2: Übrigens hast du richtig vermutet, das Problem mit der Exception war tatsächlich ein 'Dreckfuhler'. Das Objekt hatte im Rave einen anderen Namen! :oops: So long und nochmals Danke Jürgen |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Hallo,
ich habe den Thread [ND-8B7T3P-1] mitgelesen <g>. Zitat:
die RAV-Datei nicht, aber nicht weitersagen :drunken: ) vor dem execute noch etwas zu verändern. Aber hier gibt es selbst Nevrona-intern die zwei Meinungen. Die Eigenschaft ist aber definitiv darüber zu erreichen, auch JimD hat es in der Antwort ja geschrieben. habe gerade in altes Rave-projekt gesucht:
Delphi-Quellcode:
RaveSeite :=
DM.RaveProject1.ProjMan.FindRaveComponent('Haushaltsstellen.Seite1', nil) as TRavePage; SeitenschnittBand := DM.RaveProject1.ProjMan.FindRaveComponent('BandGLZ_GH', RaveSeite) as TRaveBand; // Seitenwechsel: case RG_SW_HHST.ItemIndex of 0: SeitenschnittBand.StartNewPage := False; 1: SeitenschnittBand.StartNewPage := True; end; Zitat:
Zitat:
sei es CLX, .net, Rave5, Rave6, Rave7, Kylix, Eventscripting etc.etc. :freak: aber ob Du es glaubst oder nicht, 2006 habe ich als DeadLine definiert, evtl. als courseware wie dr.bob :duck: Zitat:
:-) thomas, TeamNevrona |
Re: Rave: Reihenfolge von Objekten (Bändern) zur Laufzeit än
Aaaaaaaaargghhhh.... :wall:
Ich Depp! :stupid: Wer lesen kann...
Delphi-Quellcode:
Und ich benutze as TRaveComponent !!!!! (Wegen FindRaveComponent)!!!
as TRavePage
Dümmer geht's nümmer. :oops: Danke :thumb: für den (wohl unbewussten ?) Hinweis deinerseits Thomas! Hätte ich wohl auch eher drauf kommen können! (Der Support von Nevrona allerdings auch!) Jetzt hab ich natürlich auch Zugriff auf StartNewPage! Also gut 5 Stunden Arbeit und Recherche investiert und jetzt alles wieder löschen und vernünftig proggen :coder2: das Programmiererleben kann so schön sein!!!! Und wieder bewahrheitet sich: "Marketingsprüche sind schnell geschrieben, Know-How dauert wesentlich länger!" In diesem Sinne: mach hin mit deinem Buch Thomas!!!!!!! :spin: THX Jürgen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz