system date

Startseite Foren Deutsches LiveCode-Forum system date

Schlagwörter: 

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #25979
      Radmuehl
      Teilnehmer

      Hallo Forumsmitglieder,

      leider funktioniert in dem Update meiner App etwas nicht, was ich nicht nachvollziehen kann. Ich möchte Felder automatisch mit dem Tag/Monat/Jahr belegen. Ich benutze hierfür „system date“. In der Windowsversion der App geht es einwandfrei, allerdings nicht in der App auf dem Handy mit Android. Da wird mir bei den Feldern für Tag, Monat und Jahr 1/ 1/ / angezeigt.

      -- Bei Stack öffnen
      
       global gDB
          global gFelddatum
      Global gFeldmonat
      global gFeldjahr
      global gFeldtag
         --Datum einlesen
      Put the short system date into gFelddatum
         Put char 1 to 2 of gFelddatum into GFeldtag
         Put char 4 to 5 of gFelddatum into GFeldmonat
         Put char 7 to 10 of gFelddatum into GFeldjahr
      
      --Bei Opencard der jeweiligen Karte
      on opencard
      global gFelddatum
      Global gFeldmonat
      global gFeldjahr
      global gFeldtag
         Put GFeldtag into fld "Tag"
         put GFeldmonat into fld "Monat"
         Put GFeldjahr into fld "Jahr"
    • #25981
      Klaus Major
      Verwalter

      Die Schotten haben es auch nach Jahren immer noch nicht geschafft, SYSTEMDATE auf Andoid zu implementieren! 🙁
      https://quality.livecode.com/show_bug.cgi?id=11726

      Mach es entsprechend mit dem englischen Datum als „Workaround“.

    • #25983
      Klaus Major
      Verwalter

      Englisches heutiges Datum -> 1/21/21

      Daher besser:

      ...
      Put the short date into gFelddatum
      set itemdel to "/"
      Put item 2 of gFelddatum into GFeldtag
      Put item 1 of gFelddatum into GFeldmonat
      Put item 3 of gFelddatum into GFeldjahr
      ...
      • #26008
        Radmuehl
        Teilnehmer

        Hallo Klaus,

        danke Dir. Diese Lösung hatte ich als Alternative auch schon in Erwägung gezogen. Da ich den Monat und Tag zweistellig und das Jahr vierstellig möchte habe ich es nun so gemacht.

         set itemdel to "/"
           Put the short date into gFelddatum
           if char 2 of gFelddatum = "/" then
            put "0" & gFelddatum into gFelddatum
           end if
           If char 5 of gFelddatum ="/" then
              put "0" & char 4 of gFelddatum into gTemp
              put gTemp into item 2 of GFelddatum
              end if
               put item 3 of gFelddatum into GTemp
              put "20" & GTemp into GTemp
              Put Gtemp into item 3 of GFelddatum
              Put item 2 of gFelddatum into GFeldtag
             Put item 1 of gFelddatum into GFeldmonat
             Put item 3 of gFelddatum into GFeldjahr
             set itemdel to comma

        Viele Grüße
        Radmühl

    • #26009
      Klaus Major
      Verwalter

      Falls Du gFeldDatum nicht weiter benötigst, brauchst Du diese Variable auch nciht zu aktualisieren! Du kannst die ITEMS doch direkt bearbeiten:

      ...
         put the short date into gFelddatum
         set itemdel to "/"
         Put item 2 of gFelddatum into GFeldtag
         Put item 1 of gFelddatum into GFeldmonat
         Put item 3 of gFelddatum into GFeldjahr
         
         if the num of chars of GFeldtag = 1 then
            put "0" before GFeldtag
         end if
         
         if the num of chars of GFeldmonat = 1 then
            put "0" before GFeldmonat
         end if
         
         put "20" before GFeldjahr
         set itemdel to comma
      ...

      Oder noch kürzer:
      Mit der FORMAT Funktion können wir 2stellige Zahlen forcieren:

      ...
         put the short date into gFelddatum
         set itemdel to "/"
         
         Put format("%02d",item 2 of gFelddatum) into GFeldtag
         Put format("%02d",item 1 of gFelddatum) into GFeldmonat
         Put "20" & item 3 of gFelddatum into GFeldjahr
         set itemdel to comma
      ...

      Gruß

      Klaus

    • #26013
      Radmuehl
      Teilnehmer

      Hallo Klaus,

      Super. Ich danke Dir.

      VG
      Radmühl

Ansicht von 4 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.