Re: Relationen -> Felder Nachtrag - 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 Konstantin (4 Beiträge) am Montag, 9.Februar.2004, 11:38.
    Re: Relationen -> Felder Nachtrag

      Habe da noch einen Gedanken (gerade geteste)

      zum vertsändniss:
      DB2
      hat nur ein Feld namens Bezeichnung

      Wenn ich aus der DB2 fogenden Hash aufbaue:

      get "Id==*", "DB2";
      while (get_next("DB2") {
      $meinhash{$_id} = $Bezeichnung;
      }
      

      sieht mein Hash ja ca. so aus:
      ID Bezeichnung
      1 => Auto
      2 => Schiff
      3 => Rollschuhe

      Soweit so Gut.
      Jetzt hole ich mal alle Einträge aus DB1 und gebe diese aus. Das Relationsfeld hat z.B. den namen Fahrzeug
      dann sieht mein ausgabe ca so aus:

      Datum | Fahrzeug | KM
      12.12. | 1 | 200
      13.12. | 1 | 120
      14.12. | 3 | 20

      Ich muss also den vorher angelegten Hash benutzen um die Fahrzeuge richtig anzuzeigen.
      Fahrzeuge würde dann so ausgegeben werden:
      out $Datum $meinhash{$Fahrzeug} $KM
      

      und würde richtig zu den folgenden ausgabe führen:
      Datum | Fahrzeug | KM
      12.12. | Auto | 200
      13.12. | Auto | 120
      14.12. | Fahrad | 20

      Deshalb bin ich davon ausgegangen das im Feld Fahrzeug (welches ja das Relationsfeld auf DB2 Liste ist) die ID des Datensatzes aus DB2 steht.

      Wie würde denn eine abfrage nach allen Autos aussehen?

      ???


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Konstantin (4 Beiträge) am Mittwoch, 4.Februar.2004, 20:55.
    Relationen -> Felder und get

      Hallo zusammen,

      ich arbeite mit relationsfeldern. Das klappt auch alles soweit ganz gut solange man mit baseportal mitteln arbeitet.

      Das Problem ist jetzt aber, sollte ich die Datenausgabe über get aufbauen komme ich an die Relationsdaten ausgehend von der main DB nicht dran.

      Zum verstandniss:

      Maindaten werden über get geholt
      Dann sollen die relationsdaten aus der DetailDB über get geholt werden. Das geht aber nicht da das verknüpfte Feld scheinbar keine sortierung hat.

      Ein Beispiel:
      Main DB = Warengruppe
      Detail DB = Artikel
      Logisch das die Artikel mit einer Warengruppe verknüpft sind.
      Das entsprechende Feld heisst Kategorie.

      Ausgabe soll ca so aussehen

      Warengruppe 1:
      .....Artikel 1 in dieser Warengruppe
      .....Artikel 2 in dieser Warengruppe

      Warengruppe 2:
      .....Artikel 1 in dieser Warengruppe
      .....Artikel 2 in dieser Warengruppe
      usw...

      und so sieht der code ca aus:
      get "Id==*", "Warengruppe";
      while(get_next("Warengruppe")) {
      out "<h1>$Gruppenbezeichnung<h1>";
      # in $_id steht jetzt die ID des eben geholten DS von Warengruppe
      # in der Artikel DB ist in dem Relkationsfeld Kategorie die Id der Warengr. gespeichert
      get "Kategorie==$_id", "Artikel";
      while(get_next("Artikel")) {
      out "$Artikel<br>";
      }
      }
      

      Meine Lösungsansätze:
      Entweder alles über perl (Also selber ein und ausgaben Proggen)
      Oder alle daten jeweils aus der detailDB holen und mit if filtern

      Beides ist finde ich arbeitsaufwendig. Es wär doch schön wenn man das mit einem Get machen könnte.

      Danke fürs mitdenken.

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 6.Februar.2004, 21:45.
    Re: Relationen -> Felder und get

      Versuch ich mich mal dran ;)

      Mmh, also eigentlich sollte das mit "get" genauso funktionieren. Wenn Du

      get "....", "db1";
      

      machst, dann hast Du z.b. in $Relationsfeld die Id von dem passenden Eintrag in "db2" drin und bekommst mit

      get "Id==$Relationsfeld", "db2";
      

      eben diesen Eintrag... So, jetzt zum konkreten Beispiel:

      get "Id==*", "Warengruppe";
      while(get_next("Warengruppe")) {
      out "<h1>$Gruppenbezeichnung<h1>";
       
      # FALSCH -> in $_id steht jetzt die ID des eben geholten DS von Warengruppe
      # in der Artikel DB ist in dem Relkationsfeld Kategorie die Id der Warengr. gespeichert
      

      get "Kategorie==$Relationsfeld", "Artikel";
      while(get_next("Artikel")) {
      out "$Artikel<br>";
      }
      } 
      

      Wie das "Relationsfeld" bei Dir heisst kann ich aus Deiner Beschreibung nich ersehen ("Artikel"?)

     Antworten

    Beitrag von Konstantin (4 Beiträge) am Montag, 9.Februar.2004, 11:15.
    Re: Relationen -> Felder und get

      Erstmal Danke,

      scheinbar haben wir da aneinander vorbei geredet oder ich habe das Problem nicht genau beschriben, deshlab nochmal:

      Ich kann kein get auf ein relationsfeld realisieren weil dieser Feldtype nicht sortiert ist.

      Stimmt das?

      Das Problem an sich:
      DB1 ist die Datenbank in der ein Relationsfeld Feld, nennen wir es mal RelFeld, zu DB2 in das Feld Liste angelegt ist.

      Ich erstelle ein select option aus DB2 (Feld Liste) und verwende es als Suchformular.
      Was muss in <option value="???"> Stehen? Die ID oder Der Wert aus Dem Feld Liste?

      Wenn ich die ID übergeben, dachte ich, kann ich dann in DB1 über

      get "RelFeld==$Wertasuformular", "DB1"; nach den entsprechenden Einträgen 
      

      suchen, und somit alle passenden Einträge aus DB1 ausgeben.

      Das geht aber so nicht.
      Meine vermutung ist und war wie oben schon geschriben, das es nicht geht weil das Relationsfeld ja keine sortier option hat. Felder die keine suchoption haben kann ich nicht abfragen. Ist das bei Relationsfeldern nicht der Fall?

      Ich hoffe ich nerve nicht.

      Vielen Dank

     Antworten

    Beitrag von Konstantin (4 Beiträge) am Montag, 9.Februar.2004, 11:38.
    Re: Relationen -> Felder Nachtrag

      Habe da noch einen Gedanken (gerade geteste)

      zum vertsändniss:
      DB2
      hat nur ein Feld namens Bezeichnung

      Wenn ich aus der DB2 fogenden Hash aufbaue:

      get "Id==*", "DB2";
      while (get_next("DB2") {
      $meinhash{$_id} = $Bezeichnung;
      }
      

      sieht mein Hash ja ca. so aus:
      ID Bezeichnung
      1 => Auto
      2 => Schiff
      3 => Rollschuhe

      Soweit so Gut.
      Jetzt hole ich mal alle Einträge aus DB1 und gebe diese aus. Das Relationsfeld hat z.B. den namen Fahrzeug
      dann sieht mein ausgabe ca so aus:

      Datum | Fahrzeug | KM
      12.12. | 1 | 200
      13.12. | 1 | 120
      14.12. | 3 | 20

      Ich muss also den vorher angelegten Hash benutzen um die Fahrzeuge richtig anzuzeigen.
      Fahrzeuge würde dann so ausgegeben werden:
      out $Datum $meinhash{$Fahrzeug} $KM
      

      und würde richtig zu den folgenden ausgabe führen:
      Datum | Fahrzeug | KM
      12.12. | Auto | 200
      13.12. | Auto | 120
      14.12. | Fahrad | 20

      Deshalb bin ich davon ausgegangen das im Feld Fahrzeug (welches ja das Relationsfeld auf DB2 Liste ist) die ID des Datensatzes aus DB2 steht.

      Wie würde denn eine abfrage nach allen Autos aussehen?

      ???

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Montag, 9.Februar.2004, 17:10.
    Re: Relationen -> Felder und get

      Ok, jetzt hab ich Dich verstanden ;-)

      Ja, hast recht, hab gerade nachgeschaut, das Relationsfeld ist selbst garnich sortiert - allerdings spricht eigentlich nichts dagegen, das möglich zu machen... Find das sinnvoll & is auch nich weiter schwierig, werd das bald einbauen ;-)

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Montag, 9.Februar.2004, 17:30.
    Re: Relationen -> Felder und get - Relationsfeld jetzt sortierbar

      Is drin... ;-)

      Erstmal nur beim kostenlosen baseportal.de, würd mich freuen, wenn Du das da mal testen könntest und wenn alles ok ist, dann spiel ichs auf die Providerversionen rüber...

     Antworten

    Beitrag von Konstantin (4 Beiträge) am Montag, 9.Februar.2004, 21:26.
    Re: Relationen -> Felder und get Ja es geht

      Danke
      es funktioniert.

      Habe es eben getestet.
      Super macht genau das was man erwartet.

      Alles OK für den Umbau bei den Providern.

      Gruß
      Konstantin

     Antworten


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