Wilfried Hennen
Eine Frage: Wie schreibe ich in ein neues Feld das nächste in der Zukunft liegende Datum aus allen anderen Datumsfeldern des selben Datensatzes?
8 Antworten
-
Hallo Wilfried,
habe ich richtig verstanden:
du hast in einem Datensatz sagen wir vier Datumsfelder. Drei davon sind gefüllt. Du möchtest jetzt aus diesen drei Datums erstmals alle wählen, welche größer als heute sind und dann aus dieser Auswahl noch das kleinste Datum wählen und dieses in das vierte Feld reinschreiben?
wenn Ja, dann wäre die Formel für einen Button:
---
let myD := today();
let myN := 500000000 * 1000 * 60 * 60 * 24;
for ii in ['Datum 1', 'Datum 2', 'Datum 3'] do
if ii > today() then
let tempN := number(ii - today());
if tempN < myN then
myN := tempN;
myD := ii
end
end
end;
'Datum 4' := myD;---
Du kannst natürlich die Anzahl der Felder beliebig erweitern.
Leo
-
Guten Morgen Leo und herzlichen Dank für die Formel!
Sie steht in dem neuen Berechnungsfeld "Reaktionsdatum" und sieht in angepasster Form bei mir so aus:
let myD := today();
let myN := 500000000 * 1000 * 60 * 60 * 24;
for ii in ['Preisgarantie bis', 'Erstlaufzeit bis', 'Kdg prüfen am', 'Kdg spätestens bis', 'Sofortbonus zahlbar bis'] do
if ii > today() then
let tempN := number(ii - today());
if tempN < myN then
myN := tempN;
myD := ii
end
end
endAllerdings sehe ich im Reaktionsfeld kein Datum nach heute.
Was ist noch falsch?
-
Schreib am Ende noch:
—-
;
myD
—-
Leo
-
Vielen Danke, es funktioniert!
Noch eine Frage:
Wie erreiche ich, dass beim Start die DB immer nach einem bestimmten Feld sortiert wird?
-
Zuerst den Bearbeitungsmodus aktivieren (Schraubenschlüssel oben rechts auf rot), dann die Sortierung vornehmen und dann die Änderungen speichern. Ninox übernimmt die Einstellungen.
Leo
-
Zuerst den Bearbeitungsmodus aktivieren (Schraubenschlüssel oben rechts auf rot), dann die Sortierung vornehmen und dann die Änderungen speichern. Ninox übernimmt die Einstellungen.
Leo
-
Hallo Leonid Semik,
ich habe von Ihnen im September 2018 Hilfe bei der Erstellung einer Formel erhalten, welche bis vor wenigen Tagen immer korrekt gelaufen ist. Die Formel lautet:
if Vertrag_beendet then
Vertrag_beendet
else
let myDD := [Strom_ablesen, Preisgarantie_bis, Vertragsende, 'Kdg_prüfen_60Tg', 'Kdg_prüfen_42Tg', 'Kdg_spätestens', SoBonus_bis];
let myARR := for i in myDD do
if i > today() then i end
end;
if max(myDD) < today() then Vertrag_beendet else min(myARR) end
endWenn ich nunmehr die Anwendung ninox starte, erscheint seit kurzem folgende Fehlermeldung:
"Eine Tabellenspalte wurde nicht gefunden: T5 in Zeile 1, Spalte 81"
Trotz intensiver Suche kann ich keinen Fehler in der Formel finden.
Können Sie mir helfen?
Wilfried
-
Hallo Wilfried,
so eine Meldung bedeuted, dass ein Feld vor kurzem gelöscht wurde. Ninox ersetzt dann den Namen des gelöschten Felds dur frühere interne Bezeichnung. Hast du irgendwelche Formeln, die beim Start ausgefüt werden?
Optionen - > beim Start ausführen.
Leo
Content aside
- vor 4 JahrenZuletzt aktiv
- 8Antworten
- 2203Ansichten