Zum Inhalt springen

Datumbezogener Hinweis einblenden


Loris Matteo
Gehe zur Lösung Gelöst von Micha Zenke,

Empfohlene Beiträge

Hallo liebe SMAPLand Community

Ich möchte in einem Prüfrapport einen Hinweis basierend auf einem Datum lösen. Der Prüfer soll ein Jahr eingeben und wenn dieses älter als vier Jahre ist, sollte ein Hinweis / Aufforderung erscheinen oder ein Hinweis dass alles ok ist.

 

Im SMAP habe ich die folgenden Felder.

-Aktuelles Jahr (über eine Datum / Zeiterfassung) >> Wertausgabe als Jahr

-Datumfeld für manuellen Eintrag der letzten Kontrolle >> z.b. 2018

-Textfeld mit Hinweis (sollte eingeblendet werden, wenn das Datum des Datumsfeldes älter als 4 Jahre ist)

-Textfeld mit Hinweis (sollte eingeblendet werden, wenn das Datum des Datumfeldes innerhalb der 4 Jahre ist)

 

Aber ich kriege das mit der Formel irgendwie nicht hin. Habt ihr eine Idee wie man das umsetzten könnte? Danke eure Hilfe.

Grüsse Manuel

 

  • Like 2
Link zu diesem Kommentar
Auf anderen Seiten teilen

Guten Morgen,

Probier mal in einem Textergebnisfeld:

IF(LESSTHAN({datum_aktuell},ADD_PERIOD({datum_letztekontrolle},P1461D)),"alles ok","bitte prüfen")

P1461D sind 3 Jahre normal und 1 Schaltjahr als Tage = 1461. Bei 4 Jahren müsste das ganz gut passen.

Wenn die Textfelder umfangreicher sind kannst Du daraus auch eine Aktivierungsregel machen.

  • Like 1
  • Zustimmung 2
Link zu diesem Kommentar
Auf anderen Seiten teilen

HI Manuel. Danke für dein rasches Feedback. Habe das versucht, aber erhalte aktuell noch eine Fehlermeldung wegen inkompatiblen Operanden. Kann das sein, dass es hier ein Problem mit den Datum und Zahlwerten bei der Eingabe gibt? 

 

Aktuelle Formel: IF(LESSTHAN({Kontrolljahr},ADD_PERIOD({iwb_plombendatum},P1461D)),"alles ok","Ventil wechseln (4 Jahre +)")

 

image.jpeg.a59560123bd53d5b8553ca1c01080267.jpegimage.thumb.jpeg.b6fa6b1d5c5859f41c6c5fc5bf47c4a0.jpegimage.thumb.jpeg.3f229de13cd869adee42591ba63fa898.jpegimage.thumb.jpeg.5e8f504c8e2a3dc93d0eeb4251bd3109.jpeg

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Du kannst einfach den {Timestamp} nutzen.

Ich war mir aber nicht ganz sicher, was für Dich "älter als 4 Jahre" ist.

Man kann leider nicht das Jahr aus einem Datum rausholen um damit weiter zu rechnen....

Das Thema ist aber bekannt.
https://portal.productboard.com/1zukbs88k3fmynuc66j34p17/c/31-rechnen-mit-monaten-und-jahren?&utm_medium=social&utm_source=starter_share

 

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo zusammen. Ich habe den Wert durch den Timestamp ausgetauscht. Formel aktuell:

IF(LESSTHAN({Timestamp},ADD_PERIOD({iwb_plombendatum},P1461D)),"alles ok","Ventil wechseln (4 Jahre +)")

Screenshots der Bausteine:

>> Timestamp generiert ein Jahr

image.thumb.jpeg.de5afd18f599b59fe4d1e2f0096dc53e.jpeg

 

Datum auf der letzen Plombe >> Müsste eigentlich ein Jahr sein

Resultat sollte ergeben, dass wenn das Datum älter als vier Jahre her ist, ein Hinweis auftaucht

image.jpeg.dc3981fe5b1ca970b29921aae27941d4.jpeg

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Bülent. WOW. Danke für die ausführliche Anleitung. Cool. Das Problem wird aber das Prompendatum sein. Das muss ein manuell eingegebener Wert sein und dieser ist eigentlich nur ein Jahr (Blombe mit Jahr drauf, welches vom Monteur in den Rapport eingetragen wird). Ich glaube das wird schwer, da natürlich dann nur ein Jahr drin steht und kein Datum. Oder gibt es eine Variante, dass mann z.b. 2022 eingibt und dies dann zu z.B. 1.1.2022 umgewechselt wird und man damit weiterrechnen kann?

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • Lösung

Hallo zusammen, 

ich hab ggf. einen Ansatz der funktionieren könnte.

image.thumb.png.dbb4a21509838c83cc788b46eaac3a5d.png

Die Formel für {Jahr_2} schreib ich dir mal als klar Text: 

IF(EQUALS({Jahr},"0000"),0,SUM(
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),1),          
    IF(EQUALS(RIGHT({Jahr},1)"1"),1,           
    IF(EQUALS(RIGHT({Jahr},1)"2"),2,           
    IF(EQUALS(RIGHT({Jahr},1)"3"),3,           
    IF(EQUALS(RIGHT({Jahr},1)"4"),4,           
    IF(EQUALS(RIGHT({Jahr},1)"5"),5,           
    IF(EQUALS(RIGHT({Jahr},1)"6"),6,           
    IF(EQUALS(RIGHT({Jahr},1)"7"),7,           
    IF(EQUALS(RIGHT({Jahr},1)"8"),8,           
    IF(EQUALS(RIGHT({Jahr},1)"9"),9))))))))),0),       
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),2),          
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"1"),10,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"2"),20,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"3"),30,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"4"),40,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"5"),50,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"6"),60,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"7"),70,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"8"),80,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"9"),90))))))))),0),
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),3),          
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"1"),100,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"2"),200,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"3"),300,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"4"),400,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"5"),500,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"6"),600,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"7"),700,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"8"),800,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"9"),900))))))))),0),
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),4),          
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"1"),1000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"2"),2000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"3"),3000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"4"),4000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"5"),5000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"6"),6000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"7"),7000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"8"),8000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"9"),9000))))))))),0),    
    ))

image.thumb.png.0253a4db9cbb71ff2c76e50b4523de00.png

image.thumb.png.b2d3af22bfc9559ffef295564677d8ac.png

Also im Prinzip wandeln wir im ersten Schritt den Zeitpunkt um in einen Text. 

Im zweiten Punkt wieder in eine Zahl. 

 

Und dann kannst du wieder normal Rechnen 😉

Ein bisschen von hinten durch die Brust ins Auge aber es Funktioniert 😄

image.png.6255347bb10d28281bdf2dafc7f0cd75.png

 

Ich hoffe es hilft die weiter 🙂

 

Gruß Micha

  • Like 3
  • Danke 3
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 4 Stunden schrieb Micha Zenke:

Hallo zusammen, 

ich hab ggf. einen Ansatz der funktionieren könnte.

image.thumb.png.dbb4a21509838c83cc788b46eaac3a5d.png

Die Formel für {Jahr_2} schreib ich dir mal als klar Text: 

IF(EQUALS({Jahr},"0000"),0,SUM(
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),1),          
    IF(EQUALS(RIGHT({Jahr},1)"1"),1,           
    IF(EQUALS(RIGHT({Jahr},1)"2"),2,           
    IF(EQUALS(RIGHT({Jahr},1)"3"),3,           
    IF(EQUALS(RIGHT({Jahr},1)"4"),4,           
    IF(EQUALS(RIGHT({Jahr},1)"5"),5,           
    IF(EQUALS(RIGHT({Jahr},1)"6"),6,           
    IF(EQUALS(RIGHT({Jahr},1)"7"),7,           
    IF(EQUALS(RIGHT({Jahr},1)"8"),8,           
    IF(EQUALS(RIGHT({Jahr},1)"9"),9))))))))),0),       
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),2),          
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"1"),10,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"2"),20,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"3"),30,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"4"),40,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"5"),50,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"6"),60,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"7"),70,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"8"),80,           
    IF(EQUALS(LEFT(RIGHT({Jahr},2),1)"9"),90))))))))),0),
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),3),          
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"1"),100,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"2"),200,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"3"),300,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"4"),400,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"5"),500,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"6"),600,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"7"),700,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"8"),800,           
    IF(EQUALS(LEFT(RIGHT({Jahr},3),1)"9"),900))))))))),0),
    IF (GREATERTHANOREQUAL(LENGTH({Jahr}),4),          
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"1"),1000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"2"),2000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"3"),3000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"4"),4000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"5"),5000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"6"),6000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"7"),7000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"8"),8000,           
    IF(EQUALS(LEFT(RIGHT({Jahr},4),1)"9"),9000))))))))),0),    
    ))

image.thumb.png.0253a4db9cbb71ff2c76e50b4523de00.png

image.thumb.png.b2d3af22bfc9559ffef295564677d8ac.png

Also im Prinzip wandeln wir im ersten Schritt den Zeitpunkt um in einen Text. 

Im zweiten Punkt wieder in eine Zahl. 

 

Und dann kannst du wieder normal Rechnen 😉

Ein bisschen von hinten durch die Brust ins Auge aber es Funktioniert 😄

image.png.6255347bb10d28281bdf2dafc7f0cd75.png

 

Ich hoffe es hilft die weiter 🙂

 

Gruß Micha

WOW Micha!!! Was für eine Formel. Toll. Danke für deine Arbeit. Grossartig. Funktioniert tiptop. Sensation 💪🏆

  • Like 3
  • Danke 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Bitte melde Dich an, um einen Kommentar zu hinterlassen

Du kannst nach der Anmeldung einen Kommentar hinterlassen



Jetzt anmelden
×
×
  • Neu erstellen...