Ankündigung

Einklappen
Keine Ankündigung bisher.

View im Intrexx erstellen

Einklappen
X

View im Intrexx erstellen

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • View im Intrexx erstellen

    Hallo liebe Community,

    ich benötige des Öfteren Daten aus verschiedenen Tabellen, die ich (bisher) in CREATE-View-Abfragen auf Datenbankebene (PG) joine.

    Nun habe ich erfahren, dass die selbst generierten (zum Teil materialisierten) Views nicht mit im Export enthalten sind und sie somit beim ix-Versionswechsel (über Export/Import) auch auf Datenbankebene neu angelegt werden müssten.

    Meine Frage ist daher, ob es auch mit den Bordmitteln des ix Möglichkeiten zur View-Generierung gibt, die "update-sicher" sind.

    Vielen Dank und viele Grüße vom

    Sven

  • #2
    Also ich baue mir dafür immer einen Prozess mit einem generischen Ereignisbehandler und Groovy-Aktionen.
    Der Ereignisbehandler wird dann einfach noch manuell angestoßen und das Groovy-Skript erzeugt die Views.
    Dazu muss natürlich der Datenbankuser der auf die Datenbank zugreift auch DDL-Befehle ausführen können.

    Kommentar


    • #3
      Gibt es eine Möglichkeit ein Prozess durch das Veröffentlichen einer Anwendung automatisch auszuführen und sich selbst deaktivieren zu können?

      Kommentar


      • #4
        Hallo Martin, vielen Dank für Deine wie immer schnelle und hilfreiche Antwort :-)
        Dieselbe Frage wie von Helpboy stellt sich mir allerdings auch ;-)

        Kommentar


        • #5
          Ist es denn Möglich eine eigene Handler-Klasse zu erstellen?

          Dann wäre es ja per Generischem Ereignisbehandler möglich.
          Deaktivieren wäre ja dann irrelevant wenn es sowieso nur beim Veröffentlichen getriggert wird.

          Kommentar


          • #6
            Hallo Sven.

            Auf die Gefahr hin dass Dein Applikations-Baum zu lang wird...

            Die entsprechenden Tabellen als Fremddatengruppen (Eltern<-Kind) eintragen.
            Wichtig ist dass in der Kind Datengruppe der FK auch als PK angegeben wird, d.h.
            in den Ersten 2 Feldern des "Datenfelder"-Reiters der Kinddatengruppe zuerst den PK und dann den FK Schlüssel eintragen.
            Wenn beide Schlüssel auf das selbe Feld vergeben sind reagiert das System änlich einem Join (nicht von Intrexx bestätigt).

            Du kannst dann auf sämtliche Felder Filtern.

            Wenn Du diese Fremddatentabellen anschließend in den Standard Intrexx Datentabellen als Referrenz verwendest unterliegen die "gejointen" Tabellen allerdings den
            üblichen Intrexx Einschränkungen. Auf Erster Ebene funktioniert es wunderbar.

            Gruß
            Markus

            Kommentar


            • #7
              Hallo Mark, vielen Dank für Deinen Tipp!

              Kommentar


              • #8
                Wir generieren mittlerweile für alle Ansichtstabellen immer einen View auf die Original Intrexx - Tabelle, da wir dann flexibler sind, wenn wir Daten aus anderen Tabellen, Summen o.ä. brauchen. Wir legen dazu auch immer eine 2. SQL Datenbank an in der alle Views / STPROC usw. enthalten sind. Somit kann man diese leichter transportieren.

                Zudem haben wir mittlerweile eine Intrexx Applikation (ViewBuilder), welche die Views auf Knopfdruck anlegt und auch auf Knopfdruck aktualisiert.

                CREATE VIEW [dbo].[viewIXRabatt]
                AS
                SELECT
                rab.STRID,
                rab.LUSERID,
                rab.LUSERIDINSERT,
                rab.DTEDIT,
                DTEDIT_local = dbo.fn_UTC2LOCAL( rab.DTEDIT),
                rab.DTINSERT,
                DTINSERT_local = dbo.fn_UTC2LOCAL( rab.DTINSERT),
                -- [START TABLE COLUMNS]
                rab.STR_BEZEICHNUNG,
                rab.L_RECORDID
                -- [END TABLE COLUMNS]
                FROM ixclmmoffice2020.dbo.IXRABATT rab

                Der erzeugt dabei immer Views nach obigem Abbild. Zudem kann man dann am SQL Server den View erweitern und zwischen -- [END TABLE ....
                weitere View - Daten wie Summen, andere Felder bzw.JOINS einfügen.

                Diese bleiben dann auch erhalten, wenn man über den ViewBuilder den View neu generieren lässt, nachdem man in Intrexx weitere Felder hinzugefügt hat.

                gruss Stefan

                Kommentar


                • #9
                  Hallo Stefan,

                  das ist ein recht interessanter Ansatz. Leider bin ich gerade in einem anderen Großprojekt sehr stark eingebunden, aber ich wäre Dir sehr dankbar, wenn ich bei Fragen noch einmal auf Dich zurückkommen dürfte. Wir verwenden zwar PostgreSQL, aber das prinzipielle Vorgehen sollte sich ja nicht unterscheiden...

                  Vielen Dank und viele Grüße vom Sven

                  Kommentar


                  • #10
                    klar .. gruss Stefan

                    Kommentar

                    Lädt...
                    X