0

Ninox stürzt willkürlich ab, bei folgendem Code

Hallo Community,

ich habe eine DB mit einer Befehlsschaltfläche womfolgender Code hinterlegt ist:

 

if cnt(Zeitbuchungen.Auftragsbeschreibung) = sum(Zeitbuchungen.'Zeit Gebucht') then
            let check := dialog("Bericht sperren", "Soll der Bericht wirklich gesperrt werden?", ["Ja", "Nein"]);
            if check = "Ja" then
                        Berichtsstatus := "BERICHT GESPERRT";
                        if Berichtsgrund != 1 then
                                   if 'Fahrtenbuch anlegen:' = 1 then
                                               Fahrtenbuch := null;
                                               let myLayout2 := "Ausdruck FB";
                                               let Monat := if month(Datum) < 10 then
                                                                       "0" + text(month(Datum))
                                                           else
                                                                       text(month(Datum))
                                                           end;
                                               let myName := text(year(Datum)) + "-" + Monat + "-" + text(day(Datum)) + " Fahrtenbuch" + ".pdf";
                                               importFile(this, printAndSaveRecord(this, myLayout2), myName);
                                               Fahrtenbuch := file(this, myName)
                                   else
                                               dialog("Druck unnötig", "Ein druck dieses Tagesarbeitsberichtes ist nicht nötig!", ["OK"])
                                   end
                        else
                                   Bericht := null;
                                   let myLayout := "Ausdruck TAB";
                                   let Monat := if month(Datum) < 10 then
                                                           "0" + text(month(Datum))
                                               else
                                                           text(month(Datum))
                                               end;
                                   let myName := text(year(Datum)) + "-" + Monat + "-" + text(day(Datum)) + " Tagesarbeitsbericht" + ".pdf";
                                   importFile(this, printAndSaveRecord(this, myLayout), myName);
                                   Bericht := file(this, myName);
                                   Fahrtenbuch := null;
                                   let myLayout2 := "Ausdruck FB";
                                   let Monat := if month(Datum) < 10 then
                                                           "0" + text(month(Datum))
                                               else
                                                           text(month(Datum))
                                               end;
                                   let myName := text(year(Datum)) + "-" + Monat + "-" + text(day(Datum)) + " Fahrtenbuch" + ".pdf";
                                   importFile(this, printAndSaveRecord(this, myLayout2), myName);
                                   Fahrtenbuch := file(this, myName)
                        end
            end
else
            dialog("Abschluss nicht Möglich", "Es wurden nicht alle Zeitbuchungen gebucht!", ["OK"])
end

Wunderlicher Weise stürzt die App ab, auch wenn man die Befehlsschaltfläche nicht betätigt. Völlig unregelmäßig teilweise aber auch ein paar mal kurz hintereinander. Löscht man den Code aus der Befehlsschaltfläche stürzt Ninox nicht ab. Hat jemand eine Idee???

 

gruß Johannes

1 Antwort

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Johannes,

    ich würde auf Dateinamen tippen. Dein Dateiname myName enhält eon Leeizeichen, was bei prinAndSaveRecord Probleme verursachen kann. Ich würde auch die Bindestriche sicherheitshalber durch die Unterstriche ersetzen. Außerdem würde ich bei Datumstring die Funktion format() nutzen. Also anstatt:

    ---

    let Monat := if month(Datum) < 10 then
                                                               "0" + text(month(Datum))
                                                   else
                                                               text(month(Datum))
                                                   end;
                                       let myName := text(year(Datum)) + "-" + Monat + "-" + text(day(Datum)) + " Tagesarbeitsbericht" + ".pdf";

    ---

    Folgendes

    ---

    let myName := format(Datum,"YYYY_MM_DD")+"_Tagesarbeitsbericht" + ".pdf"

    ---

     

    Leo

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 1Antworten
  • 1011Ansichten