Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt! - 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 Ruben (403 Beiträge) am Dienstag, 8.Mai.2001, 13:08.
    Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt!

      Hi,
      Hab mal noch bischen dran gebastelt, kriegs aber nicht hin ohne zwei Durchläufe.
      Ist die folgende gefundene Lösung möglicherweise besser:
      get "sort=Ort Landkreis~=* Kategorie~=* Veranstalter~=* Ort~=*", "$dbf", "sortort";
      get "sort=Datum,Landkreis,Ort Landkreis~=* Kategorie~=* Veranstalter~=* Ort~=*", "$dbf";
      

      while(get_next("sortort"))
      {if (datum($Datum, "intern") ge datum($fzeit_a, "intern"))
          {
          push @opOrt, $Ort if index("@opOrt", "$Ort")<0;
          }
      }
      while(get_next("$dbf"))
      {
      if (datum($Datum, "intern") ge datum($fzeit_a, "intern") && datum($Datum, "intern") le datum($fzeit_e, "intern") && (($Kategorie=~/(^$fkat)+/) && ($Landkreis=~/(^$flk)+/)&& ($Ort=~/(^$fort)+/)))
        {
        $cnt_ds++;
        ....Ausgabe...
        }
      }
      


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Ruben (403 Beiträge) am Dienstag, 8.Mai.2001, 11:31.
    @Profis - Sortierproblem (zwei versch. Sortierungen in einem get_next)

      Hallo,
      is ja komliziert, hinter die Eingenheiten von Regulären Ausdrücken zu kommen!
      Hab es nun wenigstens geschafft, zwei get_next mit unterschiedlichen Filterbedingungen zusammenzufassen - sorichtig weiß ich zwar nicht, warums funzt, habs rein empirisch hingekriegt.
      Nun aber das Prob:
      Ich brauch ein Ergebnis (a) sortiert nach Ortsnamen, Ergebnis (b) sortiert nach Datum,Landkreis,Ort.
      Hintergrund: (a) ist ein Optionfeld zur Auswahl aller Orte, (b) ist die Ausgabe der Veranstaltungen.
      Hat jemand schon ne fertige Sortierroutine in Perl geschrieben, die man einsetzen könnte oder gibt es da eine Funktion - ich steh echt im Regen (hab null Ahnung, wie ich die Sortierung selbst proggen könnte, nich mal ansatzweise!)
      Hier die Abfrage/Ausgabe:
      get "sort=Datum,Landkreis,Ort Landkreis~=* Kategorie~=* Veranstalter~=* Ort~=*", "$dbf";
      while(get_next("$dbf"))
      {if (datum($Datum, "intern") ge datum($fzeit_a, "intern"))
          {
          push @opOrt, $Ort if index("@opOrt", "$Ort")<0;
          }
      if (datum($Datum, "intern") ge datum($fzeit_a, "intern") && datum($Datum, "intern") le datum($fzeit_e, "intern") && (($Kategorie=~/(^$fkat)+/) && ($Landkreis=~/(^$flk)+/)&& ($Ort=~/(^$fort)+/)))
        {
        $cnt_ds++;
        .....Ausgabe.....
        }
      und hier wird die Liste @opOrt in html-gerechte Ausgabe gebracht:
      foreach $l_ort (@opOrt)
      {
      $anz_opOrt=$anz_opOrt."<option value=$l_ort>$l_ort</option>";
      }
      
      Hier müßte man vielleicht die Ausgabe nach Alphabet hinkriegen - aber wie??????????????
      Hoffe, es kann mir jemand helfen
      CU
      Ruben

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 8.Mai.2001, 13:08.
    Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt!

      Hi,
      Hab mal noch bischen dran gebastelt, kriegs aber nicht hin ohne zwei Durchläufe.
      Ist die folgende gefundene Lösung möglicherweise besser:
      get "sort=Ort Landkreis~=* Kategorie~=* Veranstalter~=* Ort~=*", "$dbf", "sortort";
      get "sort=Datum,Landkreis,Ort Landkreis~=* Kategorie~=* Veranstalter~=* Ort~=*", "$dbf";
      

      while(get_next("sortort"))
      {if (datum($Datum, "intern") ge datum($fzeit_a, "intern"))
          {
          push @opOrt, $Ort if index("@opOrt", "$Ort")<0;
          }
      }
      while(get_next("$dbf"))
      {
      if (datum($Datum, "intern") ge datum($fzeit_a, "intern") && datum($Datum, "intern") le datum($fzeit_e, "intern") && (($Kategorie=~/(^$fkat)+/) && ($Landkreis=~/(^$flk)+/)&& ($Ort=~/(^$fort)+/)))
        {
        $cnt_ds++;
        ....Ausgabe...
        }
      }
      

     Antworten

    Beitrag von Claus Christmeier (598 Beiträge) am Dienstag, 8.Mai.2001, 13:36.
    Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt!

      Hallo Ruben,

      wenn ich Dein Problem richtig verstanden habe, soll "@opOrt" aufsteigend nach Orten sein oder? wenn ja, probier´s doch mal mit

      @opORT_sort = sort @opORT
      

      Ich hoffe, dass Dir das evtl. weiterhilft.

      Gruß
      Claus

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 8.Mai.2001, 15:05.
    Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt!

      Danke, Claus - ist ja gewaltig, ruck-zuck-geht und nur noch ein get_next.
      Nun nur die Frage - ist das eine Perl-Funktion für Arrays oder eine bp-Funktion?
      Ich bau stundenlang, und da gibt es tatsächlich ein eifaches sort! *gg*
      Die Lehr von der Geschicht: Hab grad bei Amazon das Perl-Kochbuch bestellt - die paar Einführungen in Perl, die ich hab, langen offensichtlich nicht, um effektiv zu proggen.
      Ach so, kannst du mir vielleicht mal kurz erklären, wie das mit der Filterung über RegExp in dem if-Zweig zusammenhängt? - Nachdem ich die drei Filter

      (($Kategorie=~/(^$fkat)+/) && ($Landkreis=~/(^$flk)+/)&& ($Ort=~/(^$fort)+/))
      eingeklammert hatte, gehts, vorher sagt er was von kein RegExp Ausdruck - ist mir eigentlich recht unklar.
      Danke nochmals
      CU
      Ruben

     Antworten

    Beitrag von Claus Christmeier (598 Beiträge) am Dienstag, 8.Mai.2001, 16:31.
    Re: @Profis - Sortierproblem - Ist das gut so? - anders nicht hingekriegt!

      Hallo Ruben,

      ich freue mich, dass es jetzt bei Dir geklappt hat.

      Zu Deiner Frage - uff, da verlangst Du aber einiges von mir, aber ich wills mal versuchen:

      der "if" muss immer wissen wo´s beginnt und wo´s aufhört z.B.

      "if" mit einer Abfrage: if ($feld1 eq "1")
      "if" mit zwei Abfragen: if (($feld1 eq "1") && ($feld2 eq "2"))
      Die erste "(" sagt hier beginnen die Abfragen, jede einzelne Abfrage muss sowieso in "()" stehen, dann die Bedingung und das letzte ")" sagt hier sind die Abfragen zu Ende.
      Du könntest auch bei einer Abfrage schreiben:

      "if" mit einer Abfrage: if (($feld1 eq "1"))

      aber das muss nicht sein und daher kann man´s sich schenken.

      Alles klar?

      Gruß
      Claus

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 8.Mai.2001, 18:37.
    Re: @Profis ......Mhm - ist etwas klarer

      Danke, Claus,
      etwas klarer ist mir das jetzt mit den Filterbedingungen. Offensichtlich ist es so, daß zum einen das Datums"fenster" (hatte ich nicht mit gepostet) "ausgewählt" wird u n d die kombinierte Bedingung nach dem Beginn der Feldinhalten entsprechend der Filterbedingung. Somit muß jede kombinierte mit und verknüpfte Bedingung für sich allein stehen, das hat sich letztendlich durch das Einklammern ergeben. Uuuffz - is nich so einfach manchmal!
      Muß einfach mal wieder loswerden, daß durch dieses Forum hier ein extremer "Online-Kurs-Lern-Effekt" entsteht - hab in meinem ganzen Leben noch nicht so intesiv und effektiv was gelernt.
      Ein Dank an alle "Aktivisten der Ersten Stunde"
      Viel ist auch durch analysieren und Nachbauen der BIB-Anwendungen zu lernen - ist jedem zu empfehlen und sollte weiter mit realisierten guten Ideen gefüllt werden.
      CU
      Ruben

     Antworten


     
 Liste der Einträge von 62400 bis 62550:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < 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.07s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!