4D v17.1

Geändertes Verhalten

Home

 
4D v17.1
Geändertes Verhalten

Geändertes Verhalten    


 

Die Befehle OBJECT Get action und OBJECT SET ACTION verwenden jetzt Konstanten mit Werten vom Typ String anstatt Lange Ganzzahl  (bei Verwendung in Formularobjekten).

Bisheriger Code:

 ARRAY TEXT($arrObjects;0)
 FORM GET OBJECTS($arrObjects)
 For($i;1;Size of array($arrObjects))
    If(OBJECT Get action(*;$arrObjects{$i})=Object No standard action)
       OBJECT SET ACTION(*;$arrObjects{$i};Object Cancel action)
    End if
 End for

Code nach Konvertierung in v17:

 ARRAY TEXT($arrObjects;0)
 FORM GET OBJECTS($arrObjects)
 For($i;1;Size of array($arrObjects))
    If(_o_OBJECT Get action(*;$arrObjects{$i})=_o_Object No standard action)
       OBJECT SET ACTION(*;$arrObjects{$i};_o_Object Cancel action)
    End if
 End for

Hinweis: Nur die Funktion _o_Object Get action wurde als überholt deklariert, da der Ergebnistyp schon vor dem Kompilieren gesetzt werden muss. Der Grund dafür ist, damit Sie in Betracht ziehen, Ihren Code zu ändern (siehe unten), da sonst keine Kompilierung möglich ist.

Neuer Code: Befehl und überholte Konstanten ersetzen mit:

 ARRAY TEXT($arrObjects;0)
 FORM GET OBJECTS($arrObjects)
 For($i;1;Size of array($arrObjects))
    If(OBJECT Get action(*;$arrObjects{$i})=ak none)
       OBJECT SET ACTION(*;$arrObjects{$i};ak cancel)
    End if
 End for

Ab 4D v17 werden über Objekteigenschaften verwaltete Stunden (Typ C_TIME) in Anzahl von Sekunden konvertiert. In bisherigen Versionen wurden sie in Millisekunden konvertiert.

Diese Änderung gilt für alle Stunden, die über Objektnotation aus/in Objekten oder Collections konvertiert werden: Befehle wie OB SET und OB Get, QUERY BY ATTRIBUTE oder JSON Befehle wie JSON Stringify und JSON Parse. Sie wirkt sich auch auf stündliche/digitale Konvertierungen in folgenden 4D Features aus:

  • Web Areas (via JavaScript),
  • 4D Mobile,
  • SQL (CAST Funktion)

Um die Migration Ihrer 4D Anwendungen zu erleichtern (insbesondere, wenn Stunden in Objektattrituten von Feldern gespeichert wurden), ist die neue Option zur Kompatibilitat verfügbar, um das bisherige Verhalten für die Sitzung wiederherzustellen:

  //Bisheriges Verhalten wiederherstellen
  //In die Datenbankmethode On opening / On server startup setzen
 SET DATABASE PARAMETER(Times inside objects;Times in milliseconds)

  • Externe Entities auflösen
    Ab 4D v16R3 ist die Auflösung externer Entities in XML Dokumenten zur Erhöhung der Sicherheit standardmäßig nicht aktiviert (die Deklaration einer externen Entity generiert einen Analysefehler). Mit dem neuen Selector XML external entity resolution, Wert XML enabled im Befehl XML SET OPTIONS können Sie zum vorherigen Verhalten zurückgehen.
  • Unterscheidung zwischen Groß- und Kleinschreibung
    Ab 4D v16R4 unterscheiden die Befehle DOM Get XML element und DOM Count XML elements standardmäßig zwischen Groß- und Kleinschreibung. Mit dem neuen Selector können Sie zum vorigen Verhalten zurückgehen: XML DOM case sensitivity hat folgende Werte:
    • XML case sensitive (Standard): Befehle beachten Groß- und Kleinschreibung
    • XML case insensitive: Befehle beachten nicht Groß- und Kleinschreibung

Ist das Bild nicht deklariert, geben die Attribute wk image, wk list style image und wk background image in den Befehlen WP GET ATTRIBUTES oder OB Get das Bild selbst und nicht seine URL zurück.

Mit den neuen Attributen wk image url, wk list style image url und wk background image url erhalten Sie die URL des Bildes.

 
 

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Geändertes Verhalten

 
GESCHICHTE 

Geändert: 4D v16.2

 
ARTIKELVERWENDUNG

Konvertierung in 4D v17 ( 4D v17)
Konvertierung in 4D v17 ( 4D v17.1)