Autor Thema: @SetField im Web bei einem hidden field  (Gelesen 2664 mal)

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
@SetField im Web bei einem hidden field
« am: 23.08.12 - 10:29:42 »
Moin,

ich möchte im Browser in einer Maske den Wert eines verborgenen Feldes setzten.
Das versuche ich so:

@Command( [EditDocument] );
@SetField("Status"; "Delete");
@Command([FileSave]);
@Command([CloseWindow]);
@Command( [OpenPage] ; "delete" )

Leider passiert garnix.
Was mache ich hier falsch, bzw. wie mache ich es richtig?
« Letzte Änderung: 29.08.12 - 15:23:42 von pimpfling »
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline marschul

  • Senior Mitglied
  • ****
  • Beiträge: 280
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #1 am: 23.08.12 - 12:05:32 »
Hidden Fields werden nicht in das Web-Formular gerendert, wodurch Sie bei der Kommunikation zwischen Server und Browser nicht bekannt sind. Die Maskeneigenschaft "HTML für alle Felder generieren" ändert diesen Zustand, führt aber u.U. zu anderen mglw. unerwünschten Effekten.
Ansonsten kannst Du das Feld auch sichtbar lassen für das Web und in den Feldeigenschaften in den HTML-Tags bei Stil Type = HIDDEN eintragen.
Gruß
Marco

Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß. (Sokrates)
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen. (unbekannt)

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #2 am: 23.08.12 - 14:29:46 »
hm, hilft irgendwie nicht.

Ich habe jetzt mal das ganze auf folgendes zusammengekürzt:

@Command( [EditDocument] );
@SetField("Status"; "Delete")

Das Feld habe ich jetzt temporär mal sichtbar gemacht, leider wird aber der Wert "Delete" nicht in das Feld Status eingetragen.



Seltsam finde ich auch das wenn ich die Zeile

@Command([FileSave])

noch dran hänge, kriege ich:

Error 500

HTTP Web Server: Lotus Notes Exception - @Function is not valid in this context
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline Christian Weiß

  • Junior Mitglied
  • **
  • Beiträge: 61
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #3 am: 23.08.12 - 17:50:25 »
Wäre es nicht vielleicht einfacher das setzen des Feldes mit Hilfe von Javascript zu machen?
Da es sich um ein verstecktes Feld handelt müsste, wie schon von Marco gesagt, die Maskeneigenschaft "HTML für alle Felder generieren" gemacht werden.
Das Speichern kann dann auch mit Javascript gemacht werden, wodurch das WebQuerySave-Event angestoßen wird.
Im WebQuerySave-Event kannst Du dann einen Agenten aufrufen, der dann die weitere Arbeit macht.
Gruß

Christian

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #4 am: 24.08.12 - 11:48:12 »
Hallo,

ja, JavaScript hatte ich auch schon überlegt. Ich habe auch schon dazu per Google gesucht. Leider ist mir nicht klar wie ich das bewerkstelligen soll.
Falls jemand ein funktionierendes Beispiel hat, würde ich mich freuen :)
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #5 am: 28.08.12 - 16:35:01 »
Hi,

hat evtl. jemand einen Hinweis wie ich das mit JS bewerkstelligen kann?
Danke.
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #6 am: 28.08.12 - 16:44:48 »
Hallo,

document.form.<Feldname>.Value="<Dein wert>"


Andreas

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #7 am: 29.08.12 - 10:44:24 »
Vielen Dank,

klappt leider nicht.
Ich habe jetzt
document.form.WebStatus.Value="Test"
document.form[0].WebStatus.Value="Test"
probiert.
Leider ohne Erfolg.
Das Feld ist sichtbar und editierbar. Trotzdem wird nichts eingetragen.
Muss das Dokument im Editmodu sein? Habe ich zwar probiert, ging aber auch nicht.
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #8 am: 29.08.12 - 14:37:02 »
Folgendes funktioniert:

var targetField = document.getElementsByName("Status").item(0);
targetField.value = "Delete";
document.forms[0].submit();

Damit wird das Feld gefüllt und das Dokument gespeichert.
Voraussetzung: Dokument ist im Editmodus.
Blöd ist auch das ich danach in einen 404 Error renne.
Wenn ich mit einer zus. Zeile versuche eine vorhandene Seite zu öffnen, funktionieren die drei Zeile dadrüber nicht mehr.
Die zus. Zeile:
window.location = "http://meinserver.domain.de/meinedb.nsf/New%20Person?OpenPage";

Zwei Fragen:
1) Wie kriege ich das mit dem Editmodus hin (nicht vorher einen andern Knopf drücken müssen um in den Editmodus zu kommen)
2) Wie kann ich den 404 Error umgehen, bzw. wie muss die zus. Zeile lauten damit das Dokument auch gespeichert wird.

Der 404 Error: HTTP Web Server: Couldn't find design note - ($All)
Die View will ich nicht öffnen, ich will eine bestimmte Seite aufmachen.
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

Offline pimpfling

  • Senior Mitglied
  • ****
  • Beiträge: 367
  • Geschlecht: Männlich
Re: @SetField im Web bei einem hidden field
« Antwort #9 am: 29.08.12 - 15:23:29 »
So, jetzt gehts:

var targetField = document.getElementsByName("Status").item(0);
targetField.value = "Delete";
document.forms[0].submit()

Dok wird immer Edit Modus geöffnet.
$$Return beinhaltet jetzt einen validen Wert
Gruß Stefan

----------------------------------
EDV-Systeme verarbeiten, womit sie gefüttert werden. Kommt Mist rein, kommt Mist raus.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz