Felder Berechnen

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • xtra
    Maintainer
    • 02.07.2009
    • 2007

    #16
    Die Berechnungsformeln sind ganz normale SQL statements zur Formatierung/Berechnung innerhalb von SQL.

    In deinem Falle waere hier eine String Zusammenfyhrung das richtige. In MySQL:
    Code:
    CONCAT(jahr, '-', monat, '-', tag)
    Gruss
    Chris
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

    Kommentar

    • thepixture
      Contao-Fan
      • 24.06.2009
      • 536

      #17
      Ok, das muss ich mir dann mal genauer anschauen.

      Danke Dir.
      Grüße
      thepixture

      Kommentar

      • cycluzz
        Contao-Nutzer
        • 18.04.2011
        • 75

        #18
        Ich habe da auch eine Frage und leider absolut keine Ahnung von SQL

        Im Catalog habe ich Mitglieder erfasst und ein "birthday" Feld angelegt, in welches das Geburtsdatum eingetragen wird (Format "date")

        Wie kann ich jetzt in einem "Berechnen" Feld das Alter ausrechnen?

        (Heute) - birhday

        was ist der korrekte Ausdruck für (Heute) in SQL? Kann mir jemand helfen?

        Grüsse

        Kommentar

        • MacKP
          Contao-Yoda
          • 15.06.2009
          • 13315

          #19
          Hallo cycluss,
          wenn du das erst im Frontend brauchst (das Ergebniss vom Berechnen Feld ist ja auch nur im FE verfügbar), dann kannst du das doch auch einfach mit PHP direkt im Template machen: http://www.schattenbaum.net/php/datum.php

          Und wenn ich schon mal für dich Google benutze hier auch mysql Möglichkeiten:



          Viele Grüße
          Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
          [Arbeitet bei -> Paus Design & Medien]
          "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

          Kommentar

          • cycluzz
            Contao-Nutzer
            • 18.04.2011
            • 75

            #20
            Danke.

            Habs direkt im template verankert (mittels php). Dachte nur, ich könnte das "Berechnen" Feld des Catalog verwenden, aber bin da nicht fündig geworden. Mit php klappts.

            <?php
            $geburtstag = $entry['data']['birthday']['value'];
            $diff = time() - strtotime($geburtstag);
            echo floor($diff/3600/24/365); //alter in jahren, abrunden
            ?>

            Kommentar

            • giorgiojob
              Contao-Nutzer
              • 15.07.2009
              • 126

              #21
              Alter berechnen aus Geburtsdatum mit Catalog

              Hallo,
              bin gerade auf diese Mitteilung gestossen und bitte um Hilfe.
              Habe auch ein Feld in dem das Geburtsdatum eingegeben wird und wollte über das berechnen-Feld im Catalog das Alter anzeigen lassen.
              Irgenwie will das bei mir nicht funktionieren.
              Das Geburtsdatum Feld ist ganz normal als Datums-Feld definiert und im Feld Alter, das berechnet werden soll habe ich jetzt schon alles mögliche Probiert, komme aber zu keinem vernünftigen Ergebnis.
              Was für einen SQL Befehl muss ich denn da eingeben?!
              Habe jetzt:

              (YEAR(CURRENT_DATE))-(RIGHT(geburtsdatum,4))

              das Ergebnis liefert zwar eine Zahl aber die ist nicht zu gebrauchen.

              Bräuchte ein wenig Hilfe damit.

              Kommentar

              • xtra
                Maintainer
                • 02.07.2009
                • 2007

                #22
                Code:
                YEAR(CURRENT_DATE-FROM_UNIXTIME(geburtsdatum)
                koennte klappen.
                Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

                Kommentar

                • giorgiojob
                  Contao-Nutzer
                  • 15.07.2009
                  • 126

                  #23
                  Alter berechnen aus Geburtsdatum mit Catalog

                  Zitat von xtra Beitrag anzeigen
                  Code:
                  YEAR(CURRENT_DATE-FROM_UNIXTIME(geburtsdatum)
                  koennte klappen.
                  Klappt leider nicht!

                  Vielleicht hättest du einen Tip für mich bezüglich eines Kontaktes zu einem echt erfahrenen Contato/Catalog/Isotope Programmierer der mir bei den diversen laufenden Projekten unter die Arme greifen kann?!

                  Wäre für jeden Tip dankbar! Man kann mich auch über Skype erreichen: giorgiojob

                  Kommentar

                  • Thomas
                    Contao-Urgestein
                    • 16.08.2009
                    • 1947

                    #24
                    Guten Morgen!

                    Ich bin da gerade auch mit dem Berechnen Feld beschäftigt und frage mich gerade, ob man Katalog übergreifend Berechnungen durchführen kann?

                    Das über das Template zu machen ist nicht weiter das Problem, aber einfacher wäre es über den Katalog selber.

                    Beispiel:
                    In Katalog A werden Werte hinterlegt, die sich Katalog B zur Berechnung, mit eigenen Werten, heran holt.
                    Auch der Zugriff auf Taxanomiewerte hätte so seine Vorteile.

                    So könnte man z.B. Tabellen übergreifende Berechnungen durchführen, wie man sie von Excel kennt. (Verweise)

                    Ist da etwas angedacht oder sogar schon möglich?
                    Gruß Thomas
                    "Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du." Mahatma Gandhi

                    Kommentar

                    • MacKP
                      Contao-Yoda
                      • 15.06.2009
                      • 13315

                      #25
                      Hallo Thomas,
                      da man dort direkt mit SQL arbeitet, kann man natürlich machen was man will ;-)
                      Was nicht geht: Berechnungen von Berechnungen. Da hab ich dann auch schon mal recht lange Berechnungen gebaut, damit das dann alles berechnet wird ^^

                      Viele Grüße
                      Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
                      [Arbeitet bei -> Paus Design & Medien]
                      "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

                      Kommentar

                      • Thomas
                        Contao-Urgestein
                        • 16.08.2009
                        • 1947

                        #26
                        Danke!

                        Ich habe das erst mal über ein eigenes Script gelöst, da ich bestimmte Parameter aus bestimmten Ausgaben, per Link, übergeben musste, um dann mit diesen Werten wiederum eine Ausgabe aus unterschiedlichen Tabellen zu generieren. Zusätzlich habe ich mit Werten rechnen müssen, die jeweils in unterschiedlichen Tabellen vorliegen. Teilweise liegen die Tabellen nicht im Katalog vor.

                        Lieder musste ich die Werte mit GET übergeben, die ich dann mit preg_match und regulären Ausdrücken auf Plausibilität geprüft habe. Sollte tatsächlich einer daran manipulieren wollen, bekommt er eine entsprechende Warnmeldung. Zusätzlich liegen die Ausgabeseiten in geschützten Bereichen, die nur bestimmten Gruppen zugänglich sind. Was die Manipulationsversuche auf ein Minimum reduzieren sollte.

                        Später werde ich das wohl noch in SESSION_ID's packen. Das ist allerdings noch Neuland, damit muss ich mich dann erst mal näher befassen. Für meine Zwecke sollte die andere Lösung vorerst ausreichen. Auch eine Auslagerung, in ein eigenes Modul ist geplant.

                        Soweit funktioniert das jetzt erst mal prima und alles ist gut.
                        Gruß Thomas
                        "Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du." Mahatma Gandhi

                        Kommentar

                        • olivgruen
                          Contao-Nutzer
                          • 26.07.2009
                          • 64

                          #27
                          Hallo Thomas, hallo MacKP,

                          könnt ihr die Lösung zur Berechnung über Kataloggrenzen hinweg nochmal für Conto-Entwickler-Laien skizzieren?

                          Fall: die Gesamtsumme in CatalogA ergibt sich aus der Summe von Einzelbeträgen der referenzierten Items aus CatalogB.

                          Macht man das über einen Hook?

                          Danke und Grüße,
                          Kerstin

                          Kommentar

                          Lädt...