Autor Thema: Datum/Zeit Differenz mit Spaltenformel berechnen  (Gelesen 1850 mal)

Offline macom111

  • Senior Mitglied
  • ****
  • Beiträge: 293
  • Geschlecht: Männlich
  • Anfänger in der Datenbankentwicklung!!!
Datum/Zeit Differenz mit Spaltenformel berechnen
« am: 13.11.05 - 23:49:31 »
Hallo zusammen,

ich habe 2 Felder vom Typ Datum/Zeit
Date (Beginn)
AbgeschlDatum (Ende)

In einer Ansicht habe ich zur Berechnung der Differenz eine Spalte „Tage“ eingefügt für die es kein
Berechnetes Feld in der Maske gibt.Dies will ich per Spaltenformel berechnen.
Eigentlich kein Problem: (AbgeschlDatum-Date) / 86400.

Jetzt kann es aber sein, daß das Feld „AbgeschlDatum“ noch leer ist. Dann steht dort:
„Fehler: Falscher Datentyp für Operator oder @Funktion“.

Setze ich die Formel @If (AbgeschlDatum = ""; ""; "") ein, wird in der Spalte „Tage“ korrekterweise bei einem leeren Feld „AbgeschlDatum“ nichts eingetragen. Leider bleiben auch alle anderen Dokumente ohne Ergebnis.

Wie kann ich also @If (AbgeschlDatum = ""; ""; "") und (AbgeschlDatum-Date) / 86400 miteinander kombinieren? Habe in der Hilfe und auch hier im Forum nichts gefunden.

Schon mal Danke im voraus für eure Tips.

Gruß Siggi

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Datum/Zeit Differenz mit Spaltenformel berechnen
« Antwort #1 am: 13.11.05 - 23:57:08 »
Doch Siggi - Du hättest etwas finden können  :) Aber dann hättest Du ja auch schon die Antwort gewusst (das wäre nämlich die erforderliche @function gewesen).

Also: Du musst die Berechenbarkeit vorher prüfem:

@If (@IsTime (AbgeschlDatum) & @IsTime (Datum); ((AbgeschlDatum - Date) / 86400); "").

@IsTime ist hier also Dein Helferlein.

Good luck.

Bernhard

Offline macom111

  • Senior Mitglied
  • ****
  • Beiträge: 293
  • Geschlecht: Männlich
  • Anfänger in der Datenbankentwicklung!!!
Re: Datum/Zeit Differenz mit Spaltenformel berechnen
« Antwort #2 am: 14.11.05 - 00:04:41 »
Ich sag nur eins:  ;D
Vielen Dank und eine gute Nacht!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Datum/Zeit Differenz mit Spaltenformel berechnen
« Antwort #3 am: 14.11.05 - 00:09:47 »
Schön, dass es geklappt hat.

Generell gilt: Bevor man auf Items zurückgreift (egal, ob via @functions, LS, Java, JavaScript, C) muss man einfach den Datentyp prüfen, wenn eine fehlerhafte Itembelegung möglich ist (und das ist sie eigentlich immer).

Für @functions ist noch kritisch: @IsNumber.

Hier die Pendants in LS:
IsDate
IsNumeric

Das könnte man jetzt noch beliebig ausdehnen. Das Fazit sollte aber sein: Glaube nie, das etwas unmöglich ist - überprüfe es vorher.

Bernhard

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Datum/Zeit Differenz mit Spaltenformel berechnen
« Antwort #4 am: 14.11.05 - 14:37:17 »
Java
have to nitpick, um ein paar Punkte klarzustellen.

Die Notwendigkeit des Type-Checking ist Notes-spezifisch (und gilt für alle Programmiersprachen, die auf Notes zugreifen). Bei anderen Datenbanktypen gilt das aber nicht so. In Relationalen Datenbanken, weiss ich ganz genau, welcher Typ zurückkommt. Das wird durch das abstrakte Datenbankschema vorgegeben. Z.B. varchar
oder decimal (9,3), Int, etc.

Innerhalb eines Objektmodells ist type-checking auch nur extrem selten notwendig.

Der Punkt, wo Type-Checking notwendig ist, sind die Eingaben des Users. Zur Überprüfung derselben benutzt aber jeder self respecting Java Programmierer eins der Validierungsframeworks (die man aber auch erst verstehen muß, xml-Deskriptoren für schreiben muß, etc.).
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