Obtenir la position de n’importe quelle partie d’un document 4D Write Pro

Traduit automatiquement de Deepl

4D Write Pro est en constante évolution, grâce aux nouvelles caractéristiques et fonctionnalités que nous livrons avec chaque version de R. Un monde de possibilités s’ouvre à vous ! Aujourd’hui, grâce à une nouvelle commande, vous pouvez obtenir un ensemble d’informations sur l’emplacement de tout élément dans vos documents.

Voici un exemple de base de données pour vous permettre de vous familiariser avec cette nouvelle fonctionnalité :

4D Write Pro : Obtenir la position d’un élément

Cinq POINTS DE DONNEES à la fois

Une nouvelle commande, dédiée à 4D Write Pro est maintenant disponible : WP Get position. A partir d’une plage, d’un élément ou d’une référence spécifique, cette commande renvoie une variable objet contenant cinq données importantes à la fois : le numéro de section où commence la plage, le numéro de page, le numéro de colonne, le numéro de ligne, et même la position du premier caractère de la plage dans la ligne !

Cette fonctionnalité vous permettra de générer facilement vos documents par programmation. Par exemple, appliquer des règles complexes comme « Définir les polices de tous les paragraphes de la page 3 en Arial 18pt » ou « Créer un index basé sur les signets de la dernière page », peut maintenant être fait en quelques lignes de code. C’est un jeu d’enfant !

Exemple de code

Voici un extrait de code pour définir la couleur de la première et de la dernière page d’un document en bleu (et le reste en noir) :

$nbPages:=WP Get page count([DOC]Sample)
$body:=WP Get body([DOC]Sample)
$_paragraphs:=WP Get elements($body;wk type paragraph)
For each ($paragraph;$_paragraphs)
 $info:=WP Get position($paragraph)
 If ($info.page=1) | ($info.page=$nbPages// First and last page paragraphs in blue
  WP SET ATTRIBUTES($paragraph;wk text color;"blue")
 Else   // Other pages paragraphs in black
  WP SET ATTRIBUTES($paragraph;wk text color;"black")
 End if 
End for each

Roland Lannuzel
- Product Owner & 4D Expert - Après avoir étudié l'électronique, Roland s'est lancé dans l'informatique industrielle en tant que développeur et consultant, créant des solutions pour les clients avec une variété de bases de données et de technologies. À la fin des années 80, il est tombé amoureux de 4D et l'a utilisé pour écrire des applications commerciales, notamment des systèmes de comptabilité, de facturation et de messagerie électronique. Il a rejoint la société en 1997 et a contribué à la conception de spécifications, d'outils de test et de démonstrations, ainsi qu'à la formation et à la présentation de la communauté 4D lors de nombreuses conférences. Il continue à façonner activement l'avenir de 4D en définissant de nouvelles fonctionnalités et des outils de développement de bases de données.