Filtern auf Datums Tabelle
Möchte in einer Nebentabelle "Suchen" aus einer Tabelle "Hockey" mit Datumsfelfd "Data Creazione" ist ein normales Datum mit / Begrenzungen Datum von bis herausfiltern. Würde 2 Datenfelder erstellen "Von" und "bis" und dann in einer Ansicht darstellen das Resultat. Komme aber nicht drauf wie man es am besten schreibt. Habe da meine Probleme und finde auch nix passendes im Forum. Vielleicht gibt es ein Beispiel im Webinar De. Zum nachsehen.
Vielen Dank für Eure Hilfe. Grüße Claus
7 Antworten
-
Hallo Claus,
als Gestaltungselement Ansicht mit Formel:
---
let myStart:=Von;
let myEnd:=Bis;
if myStart and myEnd then
select Hockey where 'Data Creazione'>myStart and 'Data Creazione'<myEnd
else select Hockey end
---
Leo
-
Habe noch Probleme damit, habe "Von" und "Bis" als Kalenderfelder eingebaut. Ohne Daten funktioniert es "select Hockey".
Das Datenfeld "DATA Creazione" in der Tabelle Hockey hat das Datum 10/01/2020 in der Suche Tabelle die Felder haben 10.01.2020 könnte es damit zusammenhängen das die Filterfunktion nicht arbeitet? Sorry das ich nochmal stören muss.
Vielen Dank vorerst Herr Leo!
-
Hallo Claus,
wenn "DATA Creazione" ein Textfeld ist, dann kann man es so lösen:
---let myStart:=Von;
let myEnd:=Bis;
if myStart and myEnd then
select Hockey [let myDate:=date(number(item(split('Data Creazione',"/"),2)),number(item(split('Data Creazione',"/"),1)),number(item(split('Data Creazione',"/"),0)));
myDate>myStart and myDate<myEnd]
else select Hockey end
---
Leo
-
Der Teil funktioniert super Herr Leo HerzlichenDank.
Versuchte nun noch ein 2 Kriterieum hinzuzufügen in der Tabelle "Suchen".
Habe 1 Feld "Name" sowie 1 Dropdownfeld "Status" hinzugefügt mit 4 Werten. (Inviata, Pagata etc)
In der Tabelle "Hockey" wo auch "DATA Creazione" steht, sind auch die Felder "Cognome" und "Stato"
Wollte diese Formel kombinieren scheitere aber an der Ausführung.
let myName := Name;
let myStatus:=text(Status);
select Hockey where Cognome = myName and text(Stato)=myStatusHabe es so probiert;
let myStart:=Von;
let myEnd:=Bis;let myName := Name;
let myStatus:=text(Status);if myStart and myEnd then
select Hockey [let myDate:=date(number(item(split('Data Creazione',"/"),2)),number(item(split('Data Creazione',"/"),1)),number(item(split('Data Creazione',"/"),0)));and myDate>myStart and myDate<myEnd]
and select Hockey where Cognome = myName and text(Stato)=myStatus
else
select Hockey
end
Wäre sehr Dankbar wenn mir jemand dabei helfen könnte. Vielen Dank
-
Lösung gefunden:
let myStart := Von;
let myEnd := Bis;
let myName := Name;
let myStatus := text(Status);
if myStart and myEnd then
(select Hockey)[let myDate := date(number(item(split('Data creazione', "/"), 2)), number(item(split('Data creazione', "/"), 1)), number(item(split('Data creazione', "/"), 0)));
myDate > myStart and myDate < myEnd and Cognome = myName and text(Stato) = myStatus]
else
select Hockey
end---------
Neues Problem:
Wie könnte ich es lösen, wenn eines der Felder leer ist? (Status oder Name leer ist das troztem gesucht wird?)
Danke für Tipps oder Hilfen
-
let myStart := Von;
let myEnd := Bis;
let myName := Name;
let myStatus := text(Status);
if myStart and myEnd then
(select Hockey)[let myDate := date(number(item(split('Data creazione', "/"), 2)), number(item(split('Data creazione', "/"), 1)), number(item(split('Data creazione', "/"), 0)));
myDate > myStart and myDate < myEnd and if myName then Cognome = myName end and if myStatus then text(Stato) = myStatus end]
else
select Hockey
end -
Vielen Dank mit den leeren Felder klappte es leider noch nicht, ist aber nicht schlimm habe einen Umweg über eine seperate Suche gemacht.
Grüsse Claus
Content aside
- vor 4 JahrenZuletzt aktiv
- 7Antworten
- 1767Ansichten