Re: get bei Feldern vom Typ Relation ??? - 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 Sander (8133 Beiträge) am Donnerstag, 3.April.2003, 17:23.
    Re: get bei Feldern vom Typ Relation ???

      da du ja eh perl verwendest, braucht das feld doch keine Relation. stells um auf text oder datum und du kannst die sortierung einstellen

      Sander


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Geathaa (17 Beiträge) am Donnerstag, 3.April.2003, 16:13.
    get bei Feldern vom Typ Relation ???

      Hallo zusammen,

      Habe ein Problem mit Feldern vom Typ Relation. Hier meine db's:

      db Termine:

      1 Veranstaltung --- option Zeilen=1, Werte=default
      2 Erstellt --- Datum Eingabe=Tag0.Monat0.Jahr, Ausgabe=Wochentag, Tag.Monatname.Jahr, Zeitpunkt=Erstellung
      3 Datum Text Datum Eingabe=Tag.Monatname.Jahr, Stunde:Minute, Ausgabe=Wochentag, Tag.Monatname.Jahr, Stunde1:Minute, Zeitpunkt=Nutzereingabe

      db Teilnehmer:
      1 Userid --- Relation Datenbank=cs/Benutzer, Schlüsselfeld=Userid
      2 Datum --- Relation Datenbank=cs/Termine, Schlüsselfeld=Datum

      Ich will nun alle Termine und zu jedem Termin alle Teilnehmer ausgeben. Dazu hole ich mit get zunächst alle Termine, und innerhalb dieser Schleife will ich zu jedem Termin alle Teilnehmer holen, deren Datum mit dem Datum des aktuellen Termins übereinstimmt. Mein Problem ist, dass das "innere" get folgende Fehlermeldung verursacht: "[ Fehler: sel: Index-Datei kann nicht zum Lesen geöffnet werden." Klar. In der db Teilnehmer ist ja auch keine Sortierung für das Feld Datum angegeben. Aber selbst wenn ich wollte, bei Feldern vom Typ Relation _KANN_ich gar keine Sortierung angeben !? Irgendwelche Ideen ?

      Zur Veranschaulichung noch mein Quellcode:

      <perl>
      get "Datum==*","Termine";
      while(get_next("Termine")) {
        out <<EOF;
        <tr>
        <td>$Veranstaltung</td>
        <td>wann?&nbsp;
      EOF
        out datum("$Datum", "lang");
        out <<EOF;
        </td>
        </tr>
      EOF
        get "Datum==$Datum", "Teilnehmer";
        while(get_next("Teilnehmer")) {
          out <<EOF;
          <td>$Userid</td>
      EOF
        } 
      }
      </perl>
      

     Antworten

    Beitrag von Sander (8133 Beiträge) am Donnerstag, 3.April.2003, 17:23.
    Re: get bei Feldern vom Typ Relation ???

      da du ja eh perl verwendest, braucht das feld doch keine Relation. stells um auf text oder datum und du kannst die sortierung einstellen

      Sander

     Antworten

    Beitrag von Geathaa (17 Beiträge) am Donnerstag, 3.April.2003, 18:07.
    Re: get bei Feldern vom Typ Relation ???

      Hm. Die Relation ist aber an sich schon schick, weil ich
      die Daten im Moment noch über die Standard-Baseportal
      Masken in die Datenbank eintrage. Dadurch dass ich das Feld
      Datum in der db Teilnehmer als Relation definiert habe kommt
      in der Maske zur Erstellung eines neuen Datensatzes für die
      db Teilnehmer eine Dropdown Liste, die nur Termine enthält,
      die auch in der db Termine enthalten sind. Wenn ich jetzt den
      Typ von Relation auf text ändere kann ich ja (zumindest in der
      Standard-Eingabemaske) _IRGENDWAS_ eingeben. Dann bleibt mir wohl
      nichts anderes übrig als die Eingabemaske für neue Datensätze der
      db Teilnehmer auch gleich selbst zu schreiben ??!!

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Donnerstag, 3.April.2003, 19:08.
    Re: get bei Feldern vom Typ Relation ???

      Dann musst Du Dir das selbst stricken. Das geht auch mit den Vorteilen vom Relationsfeld, in etwa so:

      <loop db=Teilnehmer code=perl>
      $teilnehmer{$Datum}.="$Userid#";
      </loop>
      <perl>
      get "Datum==*","Termine";
      while(get_next("Termine"))
      {
      $datum=datum($Datum, "lang");
      out <<EOF;
      <tr>
      <td>$Veranstaltung</td>
      <td>wann?&nbsp;$datum</td>
      </tr>
      EOF
      foreach $Userid (split /#/, substr($teilnehmer{$Datum},0,-1))
      {
      out "<td>$Userid</td>";
      } 
      }
      </perl>
      

      joa, müsste eigentlich so funktionieren ,-)

     Antworten


     
 Liste der Einträge von 39001 bis 39151: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.06s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!