Re: Unterschied zwischen <loop code=perl> und get/get_next - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 7.Februar.2001, 10:58.
    Re: Unterschied zwischen <loop code=perl> und get/get_next

      Es gibt einen Unterschied zwischen "loop" und "get":

      "loop" wandelt Daten von der internen Darstellung in eine gewünschte "äussere" um - beim Link wird z.B. ein "<a href...>..</a>" dazugefügt... Das Datum wird vom ínternen (für obigen Vergleich benötigten) Format in das bei der Felddefinition als Ausgabeformat angegebene gewandelt...

      "get" macht das nicht!

      Lösung? Über $_raw{Feldname} kann man auf den "internen" Wert zugreifen, also komplett liest sich das dann so:

      if ($_raw{db20_datum} lt datum(-1, "intern"))...
      

      Ja, sollte man auch mal dokumentieren ;-)


    Ihre Antwort:

    Name: EMail: EMail bei Antwort? WWW:
    Titel:
    Text:

    Neuer Eintrag


 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Albin (12 Beiträge) am Dienstag, 6.Februar.2001, 21:07.
    Vergleichsoperationen mit Datumsfeldern?

      Hallo zusammen,

      ich habe folgendes Problem:

      In einer Tabelle ist pro Satz ein Datum abgelegt. Dieses Datum wird bei Erstellung des Satzes automatisch geschrieben. Ich möchte nun in perl kodieren, dass geprüft wird, ob der Satz (also gem. Datum) älter als 30 Tage ist. Eine Idee geht in diese Richtung:

      if ( $db_datum < (datum(jetzt)-30) )
      { ... }
      

      Das geht aber nicht. Vermutlich gibt es Formatprobleme. Das Eingabeformat des DB-Datums kann beliebig sein. Wie kann ich das Problem lösen ...???

      Danke im voraus.

      Albin

     Antworten

    Beitrag von Andreas (396 Beiträge) am Dienstag, 6.Februar.2001, 22:39.
    Re: Vergleichsoperationen mit Datumsfeldern?

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 6.Februar.2001, 23:29.
    Re: Vergleichsoperationen mit Datumsfeldern? MannOhMann

      ist schon schlimm, wenn die Antwort auf derselben Seite steht, die Frage nochmal zu stellen. Außerdem erst mal die schöne Volltextsuche ausprobieren. ;-)

      Sander

     Antworten

    Beitrag von Albin (12 Beiträge) am Mittwoch, 7.Februar.2001, 00:18.
    Re: Vergleichsoperationen mit Datumsfeldern? MannOhMann

      Hi Sander,

      sorry, aber wie das manchmal so ist ... man sieht den Wald vor Bäumen nicht ;-))

      Nichts desto trotz hab ich auch mit dieser sehr eleganten Lösung ein Problem. Ich verwender bspw. einen Code wie diesen:

      <loop db=db20_messages code=perl>
      

      out $db20_datum;
      out "<br>";
      

      if ($db20_datum lt datum(-1, "intern"))
      { out "alt"; }
      

      </loop>

      Und das ganze klappt nicht. Wenn ich das richtig verstehe sollte doch der Vergleich lauten: WENN DAS DATUM VOR GESTERN WAR? Oder versteh ich das irgendwie falsch? Die Daten in der Tabelle gehen vom 28.01.01 bis 31.01.01, sind also in jedem fall älter / kleiner als HEUTE-1.

      Hab ich hier nur ein Brett vorm Kopf oder gibt es im loop Schwierigkeiten? Mein Problem ist, ich würde an dieser Stelle gern mit loop arbeiten, da ich mit get_next andere Schwierigkeiten hatte.

      "Falls ich irgendwie schon wieder nur am bereits gelösten Problem vorbei sehen sollte, sorry ;-)))"

     Antworten

    Beitrag von Sander (8133 Beiträge) am Mittwoch, 7.Februar.2001, 00:43.
    Re: Vergleichsoperationen mit Datumsfeldern

      Müsste eigentlich passen, wenn das Datum aus der db orginal BP-intern-format hat. mit loop funzt es auch. wir haben es aber über get get_next gelöst.

      Sander

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 7.Februar.2001, 10:58.
    Re: Unterschied zwischen <loop code=perl> und get/get_next

      Es gibt einen Unterschied zwischen "loop" und "get":

      "loop" wandelt Daten von der internen Darstellung in eine gewünschte "äussere" um - beim Link wird z.B. ein "<a href...>..</a>" dazugefügt... Das Datum wird vom ínternen (für obigen Vergleich benötigten) Format in das bei der Felddefinition als Ausgabeformat angegebene gewandelt...

      "get" macht das nicht!

      Lösung? Über $_raw{Feldname} kann man auf den "internen" Wert zugreifen, also komplett liest sich das dann so:

      if ($_raw{db20_datum} lt datum(-1, "intern"))...
      

      Ja, sollte man auch mal dokumentieren ;-)

     Antworten

    Beitrag von Albin (12 Beiträge) am Mittwoch, 7.Februar.2001, 15:01.
    Re: Unterschied zwischen <loop code=perl> und get/get_next

      Hi Christoph,

      Super. Vielen Dank. Mit $_raw klappt's. Ist aus meiner Sicht tatsächlich was für die Doku ;-)

      Also, nochmals ... thanx!

     Antworten


     
 Liste der ersten 150 Einträge:Einklappen Zur Eingabe 
 Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.12s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!