Autor Thema: Auf einer XPage 2 Datumsfelder vergleichen und die Differenz ausgeben?  (Gelesen 3784 mal)

Offline Charly77

  • Junior Mitglied
  • **
  • Beiträge: 89
  • Geschlecht: Männlich
Hallo,

wir stehen hier grade auf dem Schlauch ...
folgender Javascript-Code will einfach nicht funzen:

if (getComponent("Abeginn_11") == null) {
var x = 0;}
else {
_dump(getComponent("Abeginn_11").getValue);
var a = getComponent("Abeginn_11").getValue();
var start:NotesDateTime = session.createDateTime(a);
}

if (getComponent("Aende_11") == null) {
var y = 0;}
else {
_dump(getComponent("Aende_11").getValue);
var b = getComponent("Aende_11").getValue();
var ende:NotesDateTime = session.createDateTime(b);
}

if (x == 0 | y == 0) {
0
}
else {
start.timeDifference(ende)/60
}


Gibt es hier einen Denkfehler?
Danke für eure Unterstützung!
« Letzte Änderung: 10.02.12 - 12:17:48 von Charly77 »
MFG Charly

Domino 5.0.11
Client 5.0.9a
Domino 8.5.3 + ext lib
Client 8.5.3 + ext lib

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Wie waere es mit einer genaueren Fehler/Problembeschreibung? "Funktioniert nicht" ist - freundlich formuliert  - einfach ein bisschen sehr wage.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Charly77

  • Junior Mitglied
  • **
  • Beiträge: 89
  • Geschlecht: Männlich
Achja, da war ja noch was, sorry ...

Ich bekomme mit diesem Code keinen Zugriff auf den Feldinhalt.
Die Variablen (z.B. Variable "a" aus meinem Bsp.) enthalten immer "null"-Werte.

Heisst, dass ich es einfach nicht hinbekomme, einen Feldwert auszulesen.
MFG Charly

Domino 5.0.11
Client 5.0.9a
Domino 8.5.3 + ext lib
Client 8.5.3 + ext lib

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Zitat
Server JS
getComponent("elementName").getValue();
getComponent("elementName").setValue("something");

Note: you cannot access or set fields with visible=false. If you want to work with a field, but don't want to display it, give the field a CSS class with "display:none".

Get submitted value before validation
getComponent("elementName").getSubmittedValue()

Client JS
document.getElementById("#{id:elementID}").value;

Get a computed field's value:
document.getElementById("#{id:elementID}").innerHTML;
via Work with documents and fields on the XPage

Wenn das nicht hilft, poste doch mal den entsprechenden Ausschnitt (!) aus der HTML-Seite im Browser, wo das Element "Abeginn_11" definiert wird.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

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
Hallo
Code
if (getComponent("Abeginn_11") == null) {
var x = 0;}
else { 
_dump(getComponent("Abeginn_11").getValue);
var a = getComponent("Abeginn_11").getValue();
var start:NotesDateTime = session.createDateTime(a);
}

Meiner einer denkt, dass hier die Variablen a und x ausserhalb des If's gar nicht mehr existieren dürften.....
Stichwort: "Scope"
Gruss

Urs

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

Offline Charly77

  • Junior Mitglied
  • **
  • Beiträge: 89
  • Geschlecht: Männlich
Hallo,

habe das Problem gefunden ... das war im Rahmen einer 3 tägigen XPages Schulung.
Habe das schnell während der Schulung gepostet, daher auch meine spärlichen Kommentare.

Mein XPages-Trainer hat hier leider FELDNAMEN und FELDBEZEICHNUNG vertauscht.

Somit haben wir versucht ein Feld auszulesen, mit dem wir zu dem Zeitpunkt gar nicht gearbeitet/getestet haben. Das Feld hätte eigentlich Abeginn_1 heissen müssen. In den Eigenschaften des Feldes wurde durch die XPages der Name Abeginn_11 vergeben, warum auch immer.

Da meine Javascript-Kenntnisse scheinbar genauso eingeschränkt sind wie die des Trainers hat das ganze im Endeffekt 1 ganzen Tag gedauert um dieses Problem zu lösen. Und somit eine Menge Geld. Nur durch eine Vermutung meinerseits wurde das gelöst, da ich einfach getestet habe. Hätte ich früher tun sollen denn das kam mir von Anfang an Spanisch vor, aber hinterher ist man immer schlauer. Naja, dieser Lehrgang war eh für die Katz.
MFG Charly

Domino 5.0.11
Client 5.0.9a
Domino 8.5.3 + ext lib
Client 8.5.3 + ext lib

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz