Chiffrement
4D v17 R5 introduit un nouveau chiffrement de données intégré pour vos bases de données. Les données peuvent être cryptées via le code ou l'interface utilisateur, pour toutes les tables ou uniquement pour les tables sélectionnées. Les outils de chiffrement de 4D sont basés sur une phrase secrète. Elle est composée d'une phrase ou d'une combinaison de mots utilisée pour générer une clé de chiffrement binaire afin de chiffrer les données avec l'algorithme AES. Pour travailler avec un fichier de données crypté, la phrase secrète ou la clé de cryptage binaire est obligatoire.
Il est important de noter que si vous perdez la clé de cryptage, il n'y a PAS de solution de contournement. Les données sont verrouillées pour toujours !
Chiffrement via le CSM
Un nouvel attribut Chiffrable est disponible pour les tables en Mode Développement. Il définit le statut de chiffrement d'une table en spécifiant qu'elle peut être chiffrée. Une fois que vous êtes prêts à chiffrer vos données, le moyen le plus simple de le faire consiste à utiliser la nouvelle page Chiffrement dans le CSM. Cette page fournit toutes les fonctionnalités nécessaires pour contrôler le chiffrement de vos données. Vous pouvez utiliser cette page pour chiffrer ou déchiffrer le fichier de données, le rechiffrer et / ou modifier votre phrase secrète.
Chiffrement via des commandes 4D
Outre le CSM, 4D v17 R5 inclut un ensemble de commandes conçues pour prendre en charge la plupart des exigences de chiffrement. Par exemple, vous pouvez gérer le chiffrement à l'aide de la commande Chiffrer fichier données, ou utiliser la commande provideDataKey() pour fournir la clé de chiffrement des données à un fichier de données ouvert. Vous pouvez même utiliser encryptionStatus() pour vérifier si le fichier de données ouvert est crypté et si une clé de chiffrement des données valide a été fournie. La liste complète des commandes est disponible dans le centre de documentation.
4D for iOS - Preview
Actions
Les Actions sont maintenant disponibles pour 4D for iOS, ce qui vous permet d'avoir plus d'interactivité avec votre application mobile. Ces Actions permettent aux utilisateurs de définir des tâches comme achevées ou terminées ou de marquer les événements à vérifier, d'un simple effleurement de doigt ou en sélectionnant une action dans un menu. Une nouvelle méthode base Sur une action app mobile est disponible. Elle vous permet de déclarer toutes vos actions. De plus, une section Action a été ajoutée dans l'Editeur de projet pour vous permettre de définir vos éléments d'action (nom, icône, libellé court / long, tables et portée).
Synchronisation incrémentielle des données
Avec 4D v17 R5, 4D for iOS inclut la synchronisation incrémentielle des données. Cela signifie qu'au lieu d'envoyer continuellement l'intégralité du jeu de données à un périphérique, 4D enregistre désormais automatiquement les enregistrements ajoutés, mis à jour ou supprimés et met à jour uniquement ces données sur le périphérique. De plus, vos données sont non seulement mises à jour à chaque lancement de votre application, mais également à chaque fois que celle-ci passe au premier plan ou en réponse à une action de l'utilisateur.
Relations N vers 1
Dans 4D v17 R5, 4D for iOS supporte les relations N vers 1. Vous pouvez utiliser des noms de relations descriptifs et simplifier la définition de la structure de votre projet. Modifiez les noms court et long d'un champ associé, choisissez son icône et appliquez-lui des requêtes.
Envoyer des Emails
Log des échanges SMTP
4D v17 R5 fournit une nouvelle fonctionnalité pour les logs de messagerie : la commande SMTP Creer transporteur. Elle crée une connexion entre un serveur SMTP (tel que Exchange ou Gmail) et un client, et enregistre - en texte brut et non-crypté - toutes les communications. Une nouvelle propriété, logFile, est disponible, contenant le chemin d'accès complet du fichier journal défini pour la connexion SMTP. Le fichier peut être produit en deux versions : une version standard et une version étendue. Les deux versions peuvent être déclenchées par la commande FIXER PARAMETRE DATABASE.
En-têtes de courrier personnalisés
4D v17 R5 fournit directement cinq nouveaux en-têtes prédéfinis via l'Objet mail :
- messageId : Identifiant unique de message faisant référence à un message spécifique.
- inReplyTo : Identifiant du message d'origine auquel le message actuel est une réponse.
- references : Collection de tous les identifiants de messages dans la précédente chaîne de réponse.
- keywords : Objet contenant un ensemble de mots-clés pouvant être utiles au destinataire.
- comments : Contient tous les commentaires supplémentaires sur le texte du corps du message.
Si vous avez besoin d'autres en-têtes, utilisez la collection d'objets headers pour ajouter un en-tête SMTP spécifique à votre courrier électronique.
Prise en charge d'anciens jeux de caractères
Avec 4D v17 R5, vous pouvez utiliser les anciens encodages pour envoyer un courrier électronique : ISO-2022-JP pour le japonais ou ISO-8859-1 pour l'Europe occidentale. La commande SMTP Creer transporteur accepte de nouveaux paramètres qui vous permettent de spécifier le type d'encodage que vous souhaitez utiliser dans votre header ou body.
ORDA
Placeholders nommés pour les valeurs
4D v17 R5 facilite l'écriture de requêtes ORDA génériques grâce aux placeholders nommés pour les valeurs. Ces placeholders sont fournis en tant que paramètres d'objet dans les paramètres de requête et remplacés par une autre valeur lors de l'évaluation de la chaîne de requête.
Placeholders nommés pour les chemins d'attribut
Vous pouvez également utiliser des placeholders pour les chemins d'attributs (noms des champs dans les tables). Deux types sont disponibles : indexé - inséré sous la forme :paramIndex (c'est-à-dire :1, :2,... avec un incrément de 1) dans la chaîne de requête et les valeurs correspondantes sont fournis par la séquence de paramètre(s) valeur, et nommé - inséré sous la forme :paramName (par exemple :myparam) et leurs valeurs sont fournies dans les attributs et/ou les paramètres des objets dans la chaîne de caractère.
Optimisation des performances en mode Client/Server
L'accès à des tables de grande taille (en particulier celles avec des relations) en mode Client/Server en utilisant ORDA a été considérablement amélioré dans 4D v17 R5. Lorsque vous utilisez des sélections d'entités dans des list box ou dans du code en boucle (avec Tant que ou Pour chaque, par exemple), les champs utilisés sont automatiquement analysés pour optimiser le transfert réseau. Vous constaterez des performances LAN améliorées de 2 à 3 fois et jusqu'à 30 fois plus rapides en mode réseau étendu (en fonction du réseau et de la taille des enregistrements). Et le meilleur de tout cela : il n'est pas nécessaire de changer quoi que ce soit dans votre code, tout est automatique.
Améliorations significatives
Performance améliorée
Pour les serveurs fortement utilisés (par exemple, avec de nombreux utilisateurs ou process parallèles accédant à des enregistrements, tandis que d'autres utilisateurs modifient / créent des enregistrements dans la même table), un mécanisme de verrouillage interne amélioré peut considérablement augmenter les performances. Cela peut entraîner des vitesses nettement plus rapides (entre 4 et 8 x) avec une utilisation plus importante du CPU, car les threads passent moins de temps à attendre les micro-verrous.
Librairies mises à jour
4D v17 R5 étant uniquement 64-bit, de nombreuses librairies ont été mises à jour : Hunspell v.1.7.0 (correcteur orthographique), PHP v7.3.1, CEF 3626 (Chrome Foundation, zone Web interne), OpenSSL v1.1.1 (permettant la prise en charge de TLS 1.3), et ICU 63.1 (nouvelles versions Unicode. Cette mise à jour entraînera automatiquement une réindexation des champs Texte, Alpha et Objet).
Instances multi-client
Avec 4D v17 R5, vous pouvez exécuter plusieurs clients sur le même ordinateur et les connecter simultanément au même 4D Server. Chaque connexion Client inclut désormais un dossier de cache distinct contenant l'adresse IP de la connexion, son port et un code de hachage. Grâce à cela, vous pouvez également connecter plusieurs clients du même ordinateur à plusieurs serveurs sur des ordinateurs différents. Aucune configuration n'est nécessaire.
L'interface utilisateur de l'éditeur d'Etats Rapides a été améliorée avec un bouton "Sauvegarder / Sauvegarder sous" et une info-bulle. En choisissant "Sauvegarder", vous enregistrez votre travail en mettant à jour la dernière version enregistrée du fichier afin qu'elle corresponde à la version affichée à l'écran. En choisissant "Sauvegarder sous" ,vous êtes invité à enregistrer votre travail sous un fichier portant un nom différent. L'ajout d'une info-bulle sur une zone de rupture vous permet de visualiser le sens du tri : croissant ou décroissant.
Langage 4D
Lire les champs Objet 4D avec le moteur SQL
Le moteur SQL dans 4D v17 R5 a été mis à jour pour permettre la lecture des champs Objet 4D. Pour parcourir le contenu d'un champ Objet, la fonction SQL CAST a été étendue pour renvoyer une représentation JSON du champ.
Notation objet pour gérer les fichiers et les dossiers
4D v17 R5 fournit des commandes permettant de gérer des fichiers et des dossiers via la notation objet. Une nouvelle commande Dossier a été ajoutée pour vous permettre de créer un objet dossier à l'aide d'une constante : un chemin POSIX (fk posix path), ou un chemin de plateforme (fk platform path). L'objet dossier a des propriétés (par exemple : name, ModificationDate, ModificationTime) et des méthodes (par exemple : create(), moveTo(), rename(), delete()) qui permettent la création et la manipulation de dossiers. Comme pour les dossiers, la commande Fichier est disponible pour gérer les fichiers. Le nouvel objet fichier permet d'accéder aux attributs de fichier et de les manipuler. Vous pouvez utiliser des méthodes de fichier pour écrire et lire le contenu d'un fichier, le déplacer, le supprimer, etc.
Plus d'informations sur les process Web
De nouvelles informations sur l'URL utilisée par les process Web sont disponibles dans 4D v17 R5. Ces informations peuvent être récupérées de deux manières : via la fenêtre d'administration de 4D Server ou via le langage 4D avec la commande Lire activite process ; un nouvel attribut “url” est ajouté à l'objet lorsque le process est de type Web.
Définir un autre nom pour le compte utilisateur 4D
Une nouvelle commande permet de définir un nom personnalisé à utiliser à la place du nom du compte utilisateur courant : FIXER ALIAS UTILISATEUR. Elle accepte une chaîne en tant que paramètre. Cette chaîne (alias) remplacera le nom d'utilisateur 4D dans l'environnement 4D. Cette commande ne peut être appelée qu'à partir d'applications 4D distantes ou locales, et non sur 4D Server. Un alias permet d'utiliser votre propre système de mot de passe, ou un annuaire d'utilisateurs externe tel que Active Directory ou LDAP, tout en bénéficiant de tous les concepts d'identification d'utilisateur intégrés de 4D.
Améliorations apportées au log de débogage
Avec 4D v17 R5, la commande FIXER PARAMETRE BASE est améliorée pour permettre la journalisation de process spécifiques, ainsi que les appels à des méthodes membres (méthodes d'objet ou de collection). Un nouveau sélecteur est disponible (Enreg historique debogage du process courant) qui lance la journalisation du débogage du process en cours et crée un fichier nommé “4DDebugLog_pX_Y.txt” dans le dossier 4D logs (où X correspond à l'ID du process et Y au numéro de fichier). Pour consigner les méthodes membres, utilisez les sélecteurs Enreg événements debogage ou Enreg historique debogage du process courant qui acceptent une nouvelle option avec la valeur 32.
4D Write Pro
Liens vers les méthodes 4D
4D v17 R5 inclut la nouvelle commande, WP FIXER LIEN. Elle vous permet de définir des URL, d'invoquer une méthode à partir de votre application 4D (avec paramètres) ou de cibler un signet dans votre document. La nouvelle commande WP Lire liens retourne, en un seul appel, une collection de tous les liens dans un document. Chaque lien de la collection est un objet avec une description du lien et ses attributs.
Paramétrages des tabulations
A partir de 4D v17 R5, les tabulations peuvent être définies avec une collection de chaînes, numériques, voire une collection d'objets ! Si vous ne devez modifier que les valeurs de tabulation par défaut, vous pouvez utiliser un objet avec la nouvelle constante de tabulation wk tab default (ajoutée spécialement à cet effet).
Gérer les propriétés d'une vue par programmation
Avec 4D v17 R5, vous pouvez gérer les propriétés de la vue par programmation. La commande WP FIXER PROPRIETES VUE permet de définir dynamiquement une ou plusieurs propriétés de vue de la zone 4D Write Pro. Les paramètres peuvent être récupérés dans un objet avec toutes les propriétés de la vue via la commande WP Lire proprietes vue.
Commandes modifiées et commandes renommées
Les commandes répertoriées ci-dessous ont été étendues dans 4D v17R5 pour accepter tout type de cible comme premier paramètre. Elles peuvent toujours utiliser une plage, mais ils peuvent désormais aussi utiliser une référence (en-tête, corps, pied de page), un élément (image, paragraphe) ou le document entier comme cible :
- WP FIXER TEXTE
- WP INSERER RUPTURE
- WP INSERER DOCUMENT
- WP INSERER IMAGE
- WP Inserer tableau
- WP FIXER ATTRIBUTS
- WP LIRE ATTRIBUTS
De plus, plusieurs commandes ont été renommées :
| Ancien nom | Nouveau nom |
| WP Creer plage paragraphes |
WP Plage paragraphes |
| WP Creer plage images |
WP Plage images |
| WP Creer plage |
WP Plage texte |
| WP Creer plage tableaux |
WP Plage tableaux |
| WP Lire plage signet |
WP Plage signet |
| WP Lire selection |
WP Plage selection |
4D View Pro
Barre d'outils style ruban
4D v17 R5 fournit une puissante barre d'outils de type ruban pour améliorer l'interface utilisateur de 4D View Pro. Elle vous permet d'organiser les fonctionnalités de 4D View Pro dans un ensemble d'onglets, d'accroître la possibilité de découverte et d'accès rapide à différentes commandes. Il est à noter que cette barre d'outils introduit également de nouvelles fonctions telles que les options d'exportation PDF et CSV.
Gérer les sélections et la cellule active
Avec 4D v17 R5, nous incluons un ensemble de commandes pour vous aider à définir et à obtenir la cellule active ou la/les sélection(s) active(s) dans vos documents :
- VP Get active cell
- VP Get selection
- VP SET ACTIVE CELL
- VP SET SELECTION
- VP ADD SELECTION
- VP RESET SELECTION
Et si vous souhaitez afficher une cellule à une position spécifique dans votre zone 4D View Pro (par exemple en haut à gauche ou en bas à droite), vous pouvez utiliser la commande VP SHOW CELL.
Contact us
Got a question, suggestion or just want to get in touch with the 4D bloggers? Drop us a line!
* Your privacy is very important to us. Please click here to view our Policy