Autor Thema: HTML Tabelle  (Gelesen 3099 mal)

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
HTML Tabelle
« am: 27.08.07 - 12:35:13 »
Hi... ich hab mal wider eine Frage zu HTML. Mein Programm ist eine Besuchernameldung. Die Aufgabe: Wenn ich die Seite öffne, soll mir angezeigt werden, wer heute zu besuch kommt. Das is easy und das habe ich auch geschafft. Aber das nächste Problem ist, wenn es mehrere Besucher an einem Tag gibt. Weil, wenn es z.B. 2 Besucher an einem Tag gibt, dann wird der Wert des zweiten Besuchers einfach in die gleiche Zelle des ersten Besuchers eingtragen und durch ein Komma getrennt. Das möchte ich nicht. Ich möchte, dass jede Person eine eigene Zeile hat. Also eigentlich so wie bei einer notesview... hoffe ihr könnt mir helfen
Markus

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: HTML Tabelle
« Antwort #1 am: 27.08.07 - 12:37:56 »
Du kannst den für die Tabelle benötigten html-Tags (mit Inhalten) als berechneten Text in die Seite schreiben. 
Mit @for Formel ist das relativ einfach.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
Re: HTML Tabelle
« Antwort #2 am: 27.08.07 - 12:46:20 »
ja so hab ich das auch gemacht... ich hab mit dann mit @Fromel die Werte geholt, die ich brauche. Das Problem ist ja, dass mehrere Werte dann in einer Zelle angezeigt werden. Ich möchte aber, das für jede Person, eine neue Zeile erstellt wird
Markus

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Re: HTML Tabelle
« Antwort #3 am: 27.08.07 - 13:07:03 »
Hi,
mit @Formeln bekommst Du für Mehfachwerte auch Mehrfachwerte zur Ausgabe zurück.
Wenn du für die Ausgabe (Feldeingenschaft) nichts besonderes angibst werden die Werte Komma-getrennt (oder Semikolon) gelistet.

Für eine Web-Ausgabe eignet sich dann meist ein
Code
@Implode(Mehrfachwert, "<br>")
um z.B. mehrere "Zeilen" zu schreiben.

Sollte eine Tabelle geschrieben werden wirds etwas komplizierter,
du musst dabei zuerst die zeilen anfange, und zum schluss noch zu machen:
(wenn die Tabelle <table> ... </table> schon da ist:)
Code
"<tr><td>" + @Implode(Mehrfachwert, "</td></tr><tr><td>") + "</td></tr>"
und noch etwas komplizierter wenn es mehrere spalten gibt....

(werden die HTML-Tags als text dargestellt, musst du noch eckige Klammern verwenden [<br>])

Oder du bettest eine Ansicht ein und gibst an, dass "HTML" verwendet werden soll (statt Java-Applett).
(Eigenschaft des "Eingebettete Ansicht-Objekts" in der Maske)
Dann erledigt Notes/Domino das für dich.
pete(r)

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
Re: HTML Tabelle
« Antwort #4 am: 27.08.07 - 13:18:52 »
Zitat
Oder du bettest eine Ansicht ein und gibst an, dass "HTML" verwendet werden soll (statt Java-Applett).
(Eigenschaft des "Eingebettete Ansicht-Objekts" in der Maske)
Dann erledigt Notes/Domino das für dich.

die idee hatte ich auch schon... nur leider funktioniert das nicht... ich probiere ma deine andere Methode aus... thx
Markus

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
Re: HTML Tabelle
« Antwort #5 am: 27.08.07 - 13:50:30 »
Zitat
Code:
@Implode(Mehrfachwert, "<br>")
um z.B. mehrere "Zeilen" zu schreiben.

Sollte eine Tabelle geschrieben werden wirds etwas komplizierter,
du musst dabei zuerst die zeilen anfange, und zum schluss noch zu machen:
(wenn die Tabelle <table> ... </table> schon da ist:)

Code:
"<tr><td>" + @Implode(Mehrfachwert, "</td></tr><tr><td>") + "</td></tr>"
und noch etwas komplizierter wenn es mehrere spalten gibt....

Code
<html>
<head>
<title>Breiten- und H&ouml;henangaben bei Tabellen</title>
</head>
<body>


<h1 align= "center">Heute erwarten wir fogende Besucher</h1>

<br>
<br>

<table align= "center" border="1" width="80%">



  <tr>
<td>Zeit</td>
    <td >Name des Besuchers</td>
    <td >Besucher für</td>
    <td>Raum</td>
    <td>Anlass</td>

  </tr>

  <tr>
   <td> von <Berechneter Wert> bis <Berechneter Wert> Uhr</td>
    <td><Berechneter Wert> </td>
    <td> <Berechneter Wert></td>
    <td> <Berechneter Wert> </td>
    <td><Berechneter Wert></td>


  </tr>

</table>





</body>
</html>

das ist mein code... die brechneten bekommen die Werte durch @DBlookup... ich hoffe einer kann mir jetzt weiter helfen
Markus

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: HTML Tabelle
« Antwort #6 am: 27.08.07 - 13:58:12 »
Bei mir funktioniert das mit der @for Formel

Code
@For(n := 1;
n <= @Elements(dasFeld);
n := n + 1;
val := val + @NewLine + {<tr><td>} + dasFeld + {</td></tr>}); 
@NewLine  + {<table>} + val + @NewLine + {</table>};

dasFeld ist ein Mehrfachwerte Feld.

Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
Re: HTML Tabelle
« Antwort #7 am: 27.08.07 - 14:05:18 »
Zitat
Bei mir funktioniert das mit der @for Formel


Code:
@For(n := 1;
n <= @Elements(dasFeld);
n := n + 1;
val := val + @NewLine + {<tr><td>} + dasFeld + {</td></tr>});
@NewLine  + {<table>} + val + @NewLine + {</table>};


dasFeld ist ein Mehrfachwerte Feld.


thx.. aber sry ich bin ein anfäger ::) :P... wo soll ich die Formel einfügen ? mit in den HMTL code oder für ein berechnetes Feld ?... thx  8)
Markus

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: HTML Tabelle
« Antwort #8 am: 27.08.07 - 14:21:51 »
Zitat
dasFeld ist ein Mehrfachwerte Feld.

Ein brechnetes Feld, in dem mehrfachwerte zugelassen sind (wie Axel schon angedeutet hat)
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Re: HTML Tabelle
« Antwort #9 am: 27.08.07 - 14:35:12 »
Hi,

Ob Feld oder berechneter Wert kannst Du Dir eigentlich aussuchen.
Am besten aber ein Feld "Berechnet zur Anzeige".

Dein Code:
Code
  <tr>
<td>Zeit</td>
    <td >Name des Besuchers</td>
    <td >Besucher für</td>
    <td>Raum</td>
    <td>Anlass</td>

  </tr>

  <tr>
   <td> von <Berechneter Wert> bis <Berechneter Wert> Uhr</td>
    <td><Berechneter Wert> </td>
    <td> <Berechneter Wert></td>
    <td> <Berechneter Wert> </td>
    <td><Berechneter Wert></td>


  </tr>

</table>

bau es besser so um:
Code
  <tr>
<td>Zeit</td>
    <td >Name des Besuchers</td>
    <td >Besucher für</td>
    <td>Raum</td>
    <td>Anlass</td>

  </tr>
  <Berechneter Wert>
</table>

und für Berechenten Wert oder das Feld eine Formel in diesem Schema:
Code
val1:= @DbLookup("":"";"":"";"meineView"; Key; "Feld1");
val2:= @DbLookup("":"";"":"";"meineView"; Key; "Feld2");
val3:= @DbLookup("":"";"":"";"meineView"; Key; "Feld3");
val4:= @DbLookup("":"";"":"";"meineView"; Key; "Feld4");
val5:= @DbLookup("":"";"":"";"meineView"; Key; "Feld5");
"<tr><td>" + @Implode( "von " + val1 + " bis " + val2 + " Uhr </td><td>" + val3 + "</td><td>"  + val4 + "</td><td>" + val5; "</td></tr><tr><td>") + "</td></tr>"

mit @For gehts da auch, aber dann musst Du immer auf die einzelnen Werte der Lookups zugreifen ( val1[n]) und dabei auf die einzelnen Dimensionen achten!

(Genau dies, mit dem automatischen zusammensetzten von Mehrfachwerten sehe ich als Stärke von @Formeln an.)

Nachtrag:
sorry da hatte sich ein kleiner Fehler in meinen Code eingeschlichen.
habe aus
Code
"<tr><td>" + @Implode( "von " + val1 + " bis " + val2 + " Uhr +"</td><td>" + val3 + "</td><td>"  + val4 + "</td><td>" + val5; "</td></tr><tr><td>") + "</td></tr>"
gemacht:
Code
"<tr><td>" + @Implode( "von " + val1 + " bis " + val2 + " Uhr </td><td>" + val3 + "</td><td>"  + val4 + "</td><td>" + val5; "</td></tr><tr><td>") + "</td></tr>"
« Letzte Änderung: 27.08.07 - 14:40:56 von pete_bla »
pete(r)

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: HTML Tabelle
« Antwort #10 am: 27.08.07 - 14:50:00 »
@Pete: Mehrere Lookups sind keine gute Idee, da wirklich inperformant. Du kannst das auch in ein Feld zusammenfassen und dann mit Hilfe von Trennzeichen das wieder zusammenzupusseln.

Ich find die Lösung mit der @for Schleife leichter lesbar und am Ende auch flexibler. Etwa wenn man bestimmte Werte wieder aus der Liste herausschmeissen will.

@Blood:
Das Feld "dasFeld" ist das worauf referenziert wird.
Die Formel kannst du in ein Feld berechnet_zur_Anzeige schreiben oder als "Computed Text". Danach markierst du den Bereich um das Feld als PassThru HTML.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Blood4line

  • Frischling
  • *
  • Beiträge: 35
Re: HTML Tabelle
« Antwort #11 am: 27.08.07 - 15:22:14 »
Zitat
Hi,

Ob Feld oder berechneter Wert kannst Du Dir eigentlich aussuchen.
Am besten aber ein Feld "Berechnet zur Anzeige".

Dein Code:

Code:
  <tr>
<td>Zeit</td>
    <td >Name des Besuchers</td>
    <td >Besucher für</td>
    <td>Raum</td>
    <td>Anlass</td>

  </tr>

  <tr>
   <td> von <Berechneter Wert> bis <Berechneter Wert> Uhr</td>
    <td><Berechneter Wert> </td>
    <td> <Berechneter Wert></td>
    <td> <Berechneter Wert> </td>
    <td><Berechneter Wert></td>


  </tr>

</table>

USW...



Joa das klappt... vielen DANK !!!!
Markus

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Re: HTML Tabelle
« Antwort #12 am: 27.08.07 - 15:36:04 »
@Axel, keine Diskussion bezüglich der Performance von mehreren Lookups. war hier nur ein beispiel, auch wenn etwas unglücklich gewählt.
Wenn wir aber von "sauberem Code" reden, dann bitte noch @IsError() für den Lookup nicht vergessen.
Im Web ist dies sonst besonders spannend, wenn man den Fehler wegen einem Lookup nicht findet.



pete(r)

Offline hwenck

  • Junior Mitglied
  • **
  • Beiträge: 58
Re: HTML Tabelle
« Antwort #13 am: 27.08.07 - 17:12:58 »
keine der Lösungen überzeugt mich.
Gerade für jemand der neu in der Web-Umsetzung von Lotus ist sollte sich ein Konzept überlegen, das auch
für Ihn allgemein Anwendung finden kann.
Masken mit berechneten Feldern stellen sicher nicht einen Lösungsansatz dar.


@pete_bla:
Oder du bettest eine Ansicht ein und gibst an, dass "HTML" verwendet werden soll (statt Java-Applett).
(Eigenschaft des "Eingebettete Ansicht-Objekts" in der Maske)
Dann erledigt Notes/Domino das für dich.

Hier sehe ich den für mich guten Ansatz. Allerdings nicht in der Aussage 'Dann erledigt Notes/Domino das für dich.'

Ich erlaube mir ein Beispiel zum zerreißen anzubieten.
Grundlegende Elemente dieser DB habe ich vor Jahren in diesem Forum gefunden.

Ich hoffe nicht gegen eine Regel zu verstoßen.


Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: HTML Tabelle
« Antwort #14 am: 27.08.07 - 17:41:17 »
Dein Angebot ist eher umständlicher als die oben vorgeschlagene Lösungen.
Hier gings ja nur darum um Elemente eines Mehrfachwerte Feldes ein bischen html zu schreiben. Und deine Lösung zielt erscheint mir auf ein anderes Problemfeld abzuzielen (ein bischen html um die Werte in einer Ansicht zu schreiben). 
 
Nicht das ich das Generieren von html durch von aus einer Notes-View generierten JavaScript-Aufrufen grundsätzlich ablehnen würde (wofür es Gründe gäbe).
Übrigens gilt document.write als unfein. Man macht das heute mit document.getElementById(<id>).innerHtml .

Trotzdem: Nettes  Beispiel, dass sich hoffentlich viele Anschauen werden.   
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz