Ich möchte in den Privat Scheinen nach der Ziffer 29 in den letzten 365 Tagen suchen - es liefert aber keine Ergebnisse !?

returnvalue = 0
pruefziffer = '29'

leistungen = privatleistungen

endDatum = datetime.datetime.strptime(heuteDatum, "%d.%m.%Y") - timedelta(days=364)

leistungen = select(leistungen, startDatum= heuteDatum, endDatum= endDatum.strftime("%d.%m.%Y"))

print(leistungen)

for leistung in leistungen:
  if leistung['code'] == pruefziffer:
    returnvalue = 1  

 

Gefragt von (1.9k Punkte)
Bearbeitet von
0 Punkte

2 Antworten

Sehr geehrter Herr Mauch,

in Ihrem Skript gibt es zwei Kleinigkeiten.

1) Es wird ein Fehler geworfen, da timedelta unbekannt ist. Diesen lösen Sie durch timedelta -> datetime.timedelta

2) Ihr Intervall ist nicht korrekt. Die Bezeichnungen sind als startDatum=von und endDatum=bis zu lesen. In Ihrem Fall wäre dies

startDatum = datetime.datetime.strptime(heuteDatum, "%d.%m.%Y") - datetime.timedelta(days=364)
endDatum = heuteDatum

 

Daraus ergibt sich dann:

returnvalue = 0
pruefziffer = '29'

startDatum = datetime.datetime.strptime(heuteDatum, "%d.%m.%Y") - datetime.timedelta(days=364)

leistungen = select(privatleistungen, startDatum= startDatum, endDatum= heuteDatum)

print(leistungen)

for leistung in leistungen:
  if leistung['code'] == pruefziffer:
    returnvalue = 1  
Beantwortet von (3k Punkte)
0 Punkte
jetzt bekomme ich aber diesen Fehler:

 

Python Fehler in Tag P Check: strptime() argument 1 must be string, not datetime.datetime

Entschuldigen Sie den Fehler:

returnvalue = 0
pruefziffer = '29'

startDatum = datetime.datetime.strptime(heuteDatum, "%d.%m.%Y") - datetime.timedelta(days=364)

leistungen = select(privatleistungen, startDatum= startDatum.strftime("%d.%m.%Y"), endDatum= heuteDatum)

print(leistungen)

for leistung in leistungen:
  if leistung['code'] == pruefziffer:
    returnvalue = 1  

 

Ich habe die 29 als Früherkennungsuntersuchung angelegt. Erfüllt das auch die gewünschte Funktion?
Beantwortet von (7.3k Punkte)
0 Punkte
Sehr geehrter Herr Stößel,

 

natürlich können sie sich auch über die Früherkennung anzeigen lassen, dass eine Abrechnung der Ziffer '29' wieder möglich ist. Für die einfache Information - Leistung sollte wieder erbracht werden - ist dies auch ein einfach zu realisierender Weg.

Je nach Anwendungsfall können sich die Marker als mächtiger erweisen. Es ist z.B. möglich in einer Aktionskettenbedingung den Status eines automatischen Markers zu prüfen. Damit lässt sich dann der Verlauf von Aktionsketten zu beeinflussen.
7,067 Beiträge
11,842 Antworten
16,267 Kommentare
2,861 Nutzer