Autor Thema: Web: Speicherung berechnetes Feld geht nicht  (Gelesen 2833 mal)

Offline slecram

  • Frischling
  • *
  • Beiträge: 32
Web: Speicherung berechnetes Feld geht nicht
« am: 14.02.07 - 09:13:14 »
Hallo,
ich habe vor ein paar wochen schon einmal in einem anderen Forum mein Problem gepostet, bin aber leider nicht zu einer lösung des problems gekommen

Ich kann mir auch einfach nicht erklären, wieso das nicht funktioniert. Es ist ja keine "besondere" funktion.  :-:

Problem in vereinfachter Form:
Ich fülle ein berechnetes Feld (Field_1) in einer Web Applikation über einen Agenten mit einem Wert (hier: "Hallo") und speichere anschließend ab.

button_füllen:
@Command([ToolsRunMacro]; "(ag_füllen)")

(ag_füllen):
@SetField("Field_1";"Hallo");

button_speichern:
@Command([FileSave]);
@Command([FileCloseWindow)];

Wenn ich jetzt das Dokument öffne, ist das berechnete Feld leer. Er speichert als den Inhalt nicht richtig ab. Im Notes funktioniert das ganze.
Wenn ich das Feld "bearbeitbar" setze funzt es auch im web. aus sicherheitsgründen soll es aber berechnet sein.

Kann das mal einer nachstellen und gucken, ob das bei euch funzt?

Gruß und thx schon einmal
« Letzte Änderung: 14.02.07 - 09:51:20 von slecram »

Offline ZaLudtske

  • Senior Mitglied
  • ****
  • Beiträge: 319
  • Geschlecht: Männlich
  • carpe diem
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #1 am: 14.02.07 - 09:16:06 »
Ist das Feld 'berechnet', 'berechnet zur Anzeige' oder 'berechnet beim Anlegen'?

Rainer
Rainer Zaske

MCSD - C#

Offline slecram

  • Frischling
  • *
  • Beiträge: 32
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #2 am: 14.02.07 - 09:18:16 »
funktioniert nicht, egal ob berechnet oder berechnet zur anzeige.

z.Z. Berechnet

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #3 am: 14.02.07 - 10:23:44 »
Theorie:

Wenn du ein Formular im Web speicherst werden ja nur die Werte übertragen, die in HTML-Input-Feldern in HTML-Form-Abschnitten stehen.
Ich vermute mal, dass ein berechnetes Feld nicht als Input - Tag gerendert wird, sondern einfach als statischer Text, und deshalb wird die Änderung auch nicht an den Domino Server übertragen und kann dort auch nicht gespeichert werden.


Lösen könntest du das Problem evtl. mit einer Kombination aus verstecktem Feld, in das du den Wert schreibst, und berechnetem Feld, das den Wert des versteckten Felds anzeigt.

Nachteil von dieser Lösung wäre, dass jemand mit Kentnissen der Kommunikation zwischen Browser und Web Server den Wert im versteckten Feld manipulieren könnte.
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline slecram

  • Frischling
  • *
  • Beiträge: 32
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #4 am: 14.02.07 - 10:25:46 »
Hallo,
das habe ich schon probiert.
Das funktioniert auch soweit, bis ich das bearbeitbare "Quellfeld" im Web ausblende.

Dann ist das berechnete Feld auch wieder leer..

hat das mal einer von euch nach gestellt? würde gern wissen, ob es vielleicht an meiner Lotus Notes Version liegt...



ne möglichkeit, die ich noch auch schon probiert habe ist das Feld manuell per Durchgang-HTML einzubinden


<input type="text" name="field_1" value="field_1">
jetzt weiss ich nicht, wie ich das feld als berechnet setzen kann, oder wie ich den value ansprechen und somit mit einem agenten verändern kann...

« Letzte Änderung: 14.02.07 - 10:29:50 von slecram »

Offline Otto

  • Frischling
  • *
  • Beiträge: 46
  • Geschlecht: Männlich
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #5 am: 14.02.07 - 11:00:09 »
setze das Feld auf 'bearbeitbar' und im Reiter '<HTML>' unter 'Andere' trägst Du 'readonly' ein

Gruss
Otto

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #6 am: 14.02.07 - 11:02:50 »
Versuch mal "Generate Html for all fields" im zweiten Reiter der form zu aktivieren.
Falls das nicht funktioniert, erzähl ich dir einen zweiten Trick.  ;) (Otto hat das schon gemacht)


Und jetzt something completly different:

Diese ganzen Sachen sind aus Sicht des Entwicklers einer Web Anwendung magic.
Gibt aber heute - besonders für Mozilla - Tools, die dabei helfen die magic ein bischen transparenter zu machen.
Zum Bleistift zeigt Firebug genau an, welche Felder in einem HTTP-request übertragen werden.
Solche Tools sind
- im Grunde nicht so mühseelig in der Benutzung
- können in verschiedenen Umgebungen verwendet werden: Notes, Php, asp.net, java, everything web

Firebug kann definitiv das anzeigen, von dem Thomas spricht.

Vielleicht kann ich am WE mal ein Kurztutorial schreiben, mit dem man das in Notes nutzen kann. Will das sowieso noch besser beherrschen, weil ich das auch für POX (plain old xml) Webservices gegen Domino nutzen kann, die auf der Arbeit anstehen.

Gruß Axel
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 umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #7 am: 14.02.07 - 11:08:15 »
Zur Klärung:
Berechnete Felder werden im Web als Text dargestellt und nicht als <input>.
Wenn Du das Quellfeld im Web ausblendest über die HideWhen properties, so wird das Feld nicht ins Web gerendert ( ausser im Formular ist angehakt, dass alle Felder im Web verfügbar sind ).

Wenn das Feld nicht als <input> gerendert wird, wird es beim Submit natürlich auch nicht mitgeliefert.

Möglichkeit 1:
Du versteckst das Feld via CSS - Style : { display:none;}

Als Durchganshtml müsste dann bei value="field_1" das Feld stehen oder ein Computed Text, welcher den Wert von field_1 berechnet.

Möglichkeit 2:
Du verwendest anstatt eines Agenten, Javascript um das Feld zu ändern.

Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #8 am: 14.02.07 - 11:25:53 »
@Urs: Mit der Schaltfläche "Generate HTML for all fields" wird imho aber schon ein input-element für in Notes verborgene Felder generiert.
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 umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #9 am: 14.02.07 - 11:41:13 »
@Axel: stimmt "Generate HTML for all fields" generiert alle versteckten Felder als <input type="hidden"> ich wusste nur nicht mehr so genau wie das Häkchen hiess.
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline slecram

  • Frischling
  • *
  • Beiträge: 32
Re: Web: Speicherung berechnetes Feld geht nicht
« Antwort #10 am: 14.02.07 - 13:21:22 »
Zur Klärung:
Berechnete Felder werden im Web als Text dargestellt und nicht als <input>.
Wenn Du das Quellfeld im Web ausblendest über die HideWhen properties, so wird das Feld nicht ins Web gerendert ( ausser im Formular ist angehakt, dass alle Felder im Web verfügbar sind ).

Wenn das Feld nicht als <input> gerendert wird, wird es beim Submit natürlich auch nicht mitgeliefert.

Möglichkeit 1:
Du versteckst das Feld via CSS - Style : { display:none;}

Als Durchganshtml müsste dann bei value="field_1" das Feld stehen oder ein Computed Text, welcher den Wert von field_1 berechnet.

Möglichkeit 2:
Du verwendest anstatt eines Agenten, Javascript um das Feld zu ändern.



alles klar... danke ;)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz