Announcement

Collapse
No announcement yet.

Zugriff auf Feldliste vor Open (Firebird, IBO)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zugriff auf Feldliste vor Open (Firebird, IBO)

    Hallo,<BR>
    kann man mit TIBOQuery die Feldliste bereits vor dem Open ezeugen, ähnlich wie die Params mit Prepare.
    Mein Problem ist, dass ich die Felder nicht zur Entwurfszeit erzeugen kann. Es wäre ideal, wenn meine Grid schon die Feldliste der Query hätte, bevor die Query geöffnet ist.
    Ich denke zwar, dass es nicht geht, aber vielleicht gibt es ja doch eine Lösung.<BR>
    Gruß, Frank

  • #2
    Frank,<br>
    Prepare sollte beides (Params und Fields) zur Verfügung stellen...<br>
    - Kann aber sein, dass ich einfach nur "IBO geschädigt" bin, da geht das ;-)<p>
    Luc

    Comment


    • #3
      Hi Lucas,<BR>
      TIB_Query kann es tatsächlich, aber TIBOQuery kann es nicht.
      Und da ich Kompatibilität zu TDataSet benötige, werde ich halt eine andere Lösung für mein Problem finden.<BR>
      Danke, Fran

      Comment


      • #4
        Frank,<br>
        stimmt, ist mir nie aufgefallen (liegt wohl am mangeldnen Einsatz von TIBOQueries).<br>
        Entweder die TDatasource oder das TDBGrid ist wohl zu "doof" dazu.<br>
        Einiziger Workaround der mir einfällt:<br>
        Im WHERE der Query eine unmögliche Bedingung parametrieren (z.B. PrimaryKey > :VALUE, wobei VALUE= MAXINT ist) und die Query öffnen (--> leere Datenmenge, ABER FELDER!). Wenn Du dann "wirklich aufmachst", den Parameter mit 0 belegen... ;-)<p>
        Luc

        Comment


        • #5
          Hallo Lucas,
          danke für deine Bemühungen.
          Ich wollte nur in der Grid schon die Spalten anzeigen, auch wenn die Datenmenge noch nicht geöffnet ist. Das ist z.B. bei Bildschirmstatistiken der Fall, wo erst mal Parameter wie Datum, Mandant etc. ausgewählt werden.
          Ich habe aber jetzt mein BaseGridForm schon umgestellt.
          Beim ersten Öffnen der Query löse ich ein Ereignis aus (OnAfterFirstQueryOpen) und erzeuge dann erst die Columns der Grid.
          Damit ist zwar eben bei diesen Statistik - Grids die Grid erst mal völlig leer, aber so doof wie ich dachte sieht es gar nicht aus.<BR>
          Also, noch mal Danke
          Fran

          Comment


          • #6
            Frank,<br>
            ansonsten leg das Grid auf ein Panel, mache es (das Grid) unsichtbar (solange die Query nicht geöffnet ist, oder keine Datenmenge anhand der eingegebenen Parameter zurückgeliefert werden und gib dem Panel einfach eine Caption wie z.B. "keine Ergebnisse gefunden..."<p>
            Luc

            Comment


            • #7
              Hi Lucas,
              habe deinen letzten WorkAround integriert.
              Das mit der Where - Bedingung ging leider nicht.
              Ich habe eine Selectable Procedure mit Parametern, die recursiv die Bilanzstruktur durchläuft. Egal, welche Bedingung ich nehme, der Select dauert zu lange.
              Aber mit der Grid unsichtbar bis zur Öffnung der Datenmenge ist OK.
              noch mal vielen Dank,
              Fran

              Comment

              Working...
              X