Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.



Documents pareils
Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Optimisation de 4D Server et 4D Web Server. Résumé. 4D Notes techniques

Antidote et vos logiciels

4e Dimension Clés XML Backup. Windows /Mac OS 4e Dimension D SA. Tous droits réservés.

Comment utiliser FileMaker Pro avec Microsoft Office

Antidote et vos logiciels

INCORPORER EXCEL EN LIGNE DANS UN FICHIER CRÉÉ AVEC L ÉDITEUR DE TEXTE 15 avril 2015

Antidote et vos logiciels

Logiciel (Système d impression directe)

Database Manager Guide de l utilisateur DMAN-FR-01/01/12

Manuel d utilisation. Logiciel (Device Monitor) Pour les systèmes d imagerie numérique. Configuration requise Description générale

01V96i Editor Manuel d'installation

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

Conservez la documentation à portée de main pour toute référence future. Le terme «pointeur» dans ce manuel désigne le pointeur interactif YA-P10.

Utilisation de l ordinateur portable Bluetooth avec le hub Logitech sans fil

Manuel d utilisation Logiciel (Communications Utility)

GESTION DE L'ORDINATEUR

Bibliothèque numérique

4D v11 SQL. Mise à jour Windows /Mac OS. 4D D SAS. Tous droits réservés.

Télécharger et Installer OpenOffice.org sous Windows

La technologie au collège

Form Designer Guide d utilisateur DOC-FD-UG-FR-01/01/12

Juin XMS PC Connect Guide de l utilisateur

Manuel d installation

E.N.T. Espace Numérique de Travail

Manuel de formation ActivExpression v2

L espace de travail de Photoshop

Bienvenue dans OpenOffice!

Corrigé de l'atelier pratique du module 8 : Implémentation de la réplication

Single User. Guide d Installation

Travail collaboratif avec OpenOffice Texte (Writer)

Fonctions pour la France

HP Data Protector Express Software - Tutoriel 4. Utilisation de Quick Access Control (Windows uniquement)

WACOM MULTI-TOUCH : UTILISATION TACTILE DES PRODUITS WACOM

Fonctions pour la Suisse

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

26 Centre de Sécurité et de

Syfadis. > Configuration du poste client. Nous vous aidons à réussir. REFERENCE : Syfadis LMS - 20/06/2007. AUTEUR : Equipe technique Syfadis

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

Mode d emploi pour lire des livres numériques

cbox VOS FICHIERS DEVIENNENT MOBILES! INTERFACE WEB MANUEL D UTILISATION

LibreOffice Calc : introduction aux tableaux croisés dynamiques

Qlik Sense Cloud. Qlik Sense Copyright QlikTech International AB. Tous droits réservés.

Barres Manuel d utilisation. Manuel d utilisation. version I.2.0. Copyright Antilog 1998/2002 Tous droits réservés. JT.Gueux@log-1.

Service d information pour remise de paiement de factures Scotia

FAQ Trouvez des solutions aux problématiques techniques.

Mode Opératoire Windows XP

Corrigé de l'atelier pratique du module 3 : Récupération d'urgence

Points forts : Amélioration de la génération et de la qualification des listes de clients potentiels

4D v11 SQL BREAKING THE LIMITS * Les nouveautés

AssetCenter Notes de version

La Clé informatique. Formation Excel XP Aide-mémoire

COURS DE MS EXCEL 2010

Utiliser Access ou Excel pour gérer vos données

Utiliser un tableau de données

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

Stellar Phoenix Outlook PST Repair - Technical 5.0 Guide d'installation

«Manuel Pratique» Gestion budgétaire

Initiation à Excel. Frédéric Gava (MCF)

Manuel d'utilisation Logiciel (Network TWAIN Driver)

4D v11 SQL Release 5 (11.5) ADDENDUM

Qu'est-ce que c'est Windows NT?

CALC2QIF Conversion de données OpenOffice au format QIF

FileMaker Pro 12. Guide de l utilisateur

!!! La solution bureautique collaborative 100% gratuite!!!

Logiciel interne (firmware) du DiMAGE X1 Ver.1.10

Pourquoi. OptiMaint est... - Simple d'utilisation. - Rapide d'utilisation. - Facilement personnalisable. - Puissant

Formation. Module WEB 4.1. Support de cours

ORACLE TUNING PACK 11G

2- Relation entre Writer et Calc dans le mailing

Import PDF. Manuel d'utilisation

Mon aide mémoire traitement de texte (Microsoft Word)

Les Aventuriers du Bout du Monde La revue des clubs Microcam

Guide de l utilisateur

PRISE EN MAIN D UN TABLEUR. Version OPEN OFFICE

Organiser le disque dur Dossiers Fichiers

Dans la série. présentés par le site FRAMASOFT

Manuel de I utilisateur. PrintShop Mail Version Logiciel de publipostage professionnel pour Apple Macintosh

GUIDE MEMBRE ESPACE COLLABORATIF. Février 2012

Créer une base de données

Stockez et créez vos documents

LE TABLEUR OPENOFFICE CALC : CONTRÔLES DE FORMULAIRES ACCÈS AUX BASES DE DONNÉES

CATALOGUE FORMATIONS

Demande d assistance : ecentral.graphics.kodak.com. Variable Data Print est désormais une option sous licence de InSite Storefront 6.0.

Didacticiel de mise à jour Web

Plan de formation des Personnels en CUI-CAE Année

Clé Flash USB2.0 Acer

Corrigé de l'atelier pratique du module 5 : Analyse de SQL Server

Programme d Accès Communautaire / Atelier 4 Initiation à Microsoft Excel PLAN DE COURS 3 MICROSOFT EXCEL 4 LANCER EXCEL 4

Manuel Utilisateur Version 1.6 Décembre 2001

Initiation au tableur Calc (OpenOffice.Org)

Transcription:

Glisser-déposer de données entre 4D et Excel Par Atanas ATANASSOV, Technical Support Engineer, 4D Inc (USA) Note technique 4D-200804-09-FR Version 1 - Date 1 avril 2008 Résumé Note traduite de l'anglais par Rolande Courté (Chef de Projet Marketing). Cette note technique traite de l implémentation du nouveau mécanisme du Glisser-Déposer ainsi que de la fonctionnalité du conteneur de données dans 4D v11 SQL, permettant de copier des données texte entre un objet Listbox et une feuille de calcul Excel. 4D Notes techniques Copyright 1985-2009 4D SAS - Tous droits réservés Tous les efforts ont été faits pour que le contenu de cette note technique présente le maximum de fiabilité possible. Néanmoins, les différents éléments composant cette note technique, et le cas échéant, le code, sont fournis sans garantie d'aucune sorte. L'auteur et 4D S.A. déclinent donc toute responsabilité quant à l'utilisation qui pourrait être faite de ces éléments, tant à l'égard de leurs utilisateurs que des tiers. Les informations contenues dans ce document peuvent faire l'objet de modifications sans préavis et ne sauraient en aucune manière engager 4D SA. La fourniture du logiciel décrit dans ce document est régie par un octroi de licence dont les termes sont précisés par ailleurs dans la licence électronique figurant sur le support du Logiciel et de la Documentation afférente. Le logiciel et sa documentation ne peuvent être utilisés, copiés ou reproduits sur quelque support que ce soit et de quelque manière que ce soit, que conformément aux termes de cette licence. Aucune partie de ce document ne peut être reproduite ou recopiée de quelque manière que ce soit, électronique ou mécanique, y compris par photocopie, enregistrement, archivage ou tout autre procédé de stockage, de traitement et de récupération d'informations, pour d'autres buts que l'usage personnel de l'acheteur, et ce exclusivement aux conditions contractuelles, sans la permission explicite de 4D SA. 4D, 4D Calc, 4D Draw, 4D Write, 4D Insider, 4ème Dimension, 4D Server, 4D Compiler ainsi que les logos 4e Dimension, sont des marques enregistrées de 4D SA. Windows,Windows NT,Win 32s et Microsoft sont des marques enregistrées de Microsoft Corporation. Apple, Macintosh, Power Macintosh, LaserWriter, ImageWriter, QuickTime sont des marques enregistrées ou des noms commerciaux de Apple Computer,Inc. Mac2Win Software Copyright 1990-2002 est un produit de Altura Software,Inc. 4D Write contient des éléments de "MacLink Plus file translation", un produit de DataViz, Inc,55 Corporate drive,trumbull,ct,usa. XTND Copyright 1992-2002 4D SA. Tous droits réservés. XTND Technology Copyright 1989-2002 Claris Corporation.. Tous droits réservés ACROBAT Copyright 1987-2002, Secret Commercial Adobe Systems Inc.Tous droits réservés. ACROBAT est une marque enregistrée d'adobe Systems Inc. Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs. 1 / 10

Glisser-déposer de données entre 4D et Excel Résumé Cette note technique traite de l implémentation du nouveau mécanisme du Glisser-Déposer ainsi que de la fonctionnalité du conteneur de données dans 4D v11 SQL permettant de copier des données texte entre un objet Listbox et une feuille de calcul Excel. Introduction En tant que développeur, il vous serait très pratique de pouvoir fournir à vos clients une solution pour déplacer facilement des données entre une feuille de calcul Excel de Microsoft et 4D. Pourquoi cela est-il si important? Excel de Microsoft est une application largement utilisée et beaucoup d utilisateurs sont familiarisés avec ses fonctions. Fournir la possibilité de déplacer des données entre les deux applications peut développer la productivité des utilisateurs finaux. Pour aider à implémenter une telle fonctionnalité, le nouveau mécanisme du Glisser-Déposer de 4D, disponible dans 4D v11 SQL, est utilisé. Ce nouveau mécanisme, associé à la fonctionnalité du nouveau conteneur de données, permet de copier des données entre une feuille de calcul Excel de Microsoft et une Listbox 4D. Base de données exemple Pour une meilleure compréhension de cette fonctionnalité, une base de données est fournie. Pour utiliser cette base de données, l application Excel de Microsoft est nécessaire. Les versions Excel qui peuvent être utilisées dans cette note technique sont les suivantes : Microsoft Excel 2003 (Windows) Microsoft Excel 2007 (Windows) Microsoft Excel 2008 (Mac OS X) Nouvelles fonctionnalités 4D v11 SQL introduit un nouveau mécanisme de Glisser-Déposer ainsi qu un nouveau conteneur de données (originairement connu sous le nom de presse-papiers). Ces nouvelles améliorations fournissent au développeur un moyen de développer des fonctionnalités dans leur application. Cette fonctionnalité n était pas disponible en natif dans de précédentes versions de 4D. Dans des versions antérieures, un plug-in aurait été nécessaire pour obtenir un comportement similaire. Mécanisme de Glisser-Déposer dans 4D v11 SQL Le mécanisme de Glisser-Déposer tel que définit dans 4D v11 SQL est disponible sous deux modes (automatique et manuel). Les deux permettent de déplacer des données depuis un objet vers un autre dans un même process ou entre plusieurs process. Il est également possible de déplacer des objets entre plusieurs formulaires 4D et depuis d autres applications sur le bureau. Enfin, la nouvelle Méthode base Sur déposer permet de déposer des objets directement dans l application sans nécessiter de formulaire en arrière-plan. 2 / 10

Avec cette méthode base supplémentaire, il est possible d'ouvrir un document 4D Write en déplaçant le document sur l icône de l application 4D (dans le Dock sous Mac OS ou sur le Bureau du système). De façon à implémenter la fonctionnalité en manuel du Glisser-Déposer sur un objet, il est nécessaire de cocher dans les propriétés de l objet les actions suivantes : Note : Par défaut ces propriétés ne sont pas cochées! Dans le thème «Action», les propriétés Glissable et Déposable permettent aux événements Sur glisser et Sur déposer de se déclencher. Lorsque ces propriétés sont cochées, des données peuvent être glissées ou déposées dans un objet ayant ces propriétés. Note : il est important de tenir la touche ALT (pour Windows) ou OPTION (pour MacOS) lorsque vous glissez et déplacez des objets. De plus, les champs, variables, combo-box et listbox en 4D v11 SQL possède les nouvelles propriétés "Glisser automatique" et "Déposer automatique". Lorsqu'elles sont cochées, cela permet de copier et déplacer du texte ou des images sans aucune ligne de code. Ci-dessous, une liste de zones sources depuis lesquelles des textes et des données peuvent être copiés ou déplacés : Au sein d une même zone 4D ; Entre plusieurs zones 4D ; Entre 4D et une autre application (ex : wordpad). Evénements formulaires Glisser-Déposer Sur Déposer 3 / 10

Cet événement se produit sur un clic souris sur un objet donné. Il est inutile de vérifier la comptabilité des données, si ceci a été réalisé pendant la première phase du glissement de l objet. Sur Glisser Cet événement contrôle la première phase du glisser-déposer. A ce niveau, la compatibilité des données entre les objets est vérifiée et déclenchée lorsque le pointeur de la souris est déplacé sur l objet. Sur Début Glisser Cet événement est appelé dans le contexte de l objet source et est généré lorsque la propriété du Glisser est cochée sur l objet source. Note : Dans notre base de données exemple, nous ne vérifierons pas le type de comptabilité ; dans la mesure où nous glissons entre une feuille de calcul Excel de Microsoft et un objet Listbox 4D, nous partons du principe qu'il n y a ici qu un type de données (du texte). Commandes Glisser-Déposer PROPRIETES GLISSER DEPOSER (srcobjet ; srcelément ; srcprocess) Paramètre Type Description srcobjet Pointeur Pointeur vers l'objet source du glisser-déposer srcelément Numérique - Numéro de la ligne de Listbox glissée - ou Elément de la liste hiérarchique glissé - ou Numéro de l élément de tableau glissé - ou -1 si l objet glissé n est ni un élément de tableau, ni une ligne de List box ni un élément de liste srcprocess Numérique Numéro du process source Cette fonction retourne de l information sur l objet source. Typiquement, on l appelle dans le contexte d une méthode objet ou d une sous-routine lorsque les événements Sur Deposer ou Sur glisser sont générés sur l objet de destination. Position deposer {(NumColonne)} -> Numérique Paramètre Type Description NumColonne Entier long Numéro de colonne de List box ou -1 si le déposé a lieu après la dernière colonne Résultat Numérique Numéro (tableau/list box) ou position (liste hiérarchique) ou position dans la chaîne (texte/combo box) de l élément de destination ou 1 si le déposer a lieu après le dernier élément de tableau ou de la liste Cette commande est utilisée pour trouver la position de la destination d un objet complexe tel qu un tableau, une List box ou un champ texte. Elle est appelée dans le contexte d une méthode objet activée depuis les événements Sur Déposer et Sur Glisser pour la destination de l objet. Conteneur de données 4 / 10

Une nouvelle fonctionnalité utilisée dans cette note technique est le conteneur de données. Dans de précédentes versions, il était connu sous le nom de Presse-papiers. 4D v11 SQL apporte de nouvelles commandes au conteneur de données ainsi qu une nouvelle fonctionnalité. Les commandes peuvent être utilisées à la fois pour gérer les actions de copier/coller (gestion du Pressepapiers) ainsi que pour des actions de glisser-déposer entre des applications -comme souligné dans cette note technique. 4D utilise deux conteneurs de données : Données copiées (ou coupées), ce qui correspond au Presse-papiers actuel qui était déjà fourni dans les précédentes versions de 4D ; Données glissées-déposées. Ces deux conteneurs de données sont gérés en utilisant les mêmes commandes. Vous accédez à l un ou à l autre en fonction du contexte. Le Glisser-Déposer est géré depuis le conteneur de données seulement via les événements formulaires Sur Déposer, Sur Glisser, Sur Début Glisser et la Méthode base Sur déposer. Le Conteneur de données "Glisser-Déposer" ne peut pas être utilisé autrement. Les commandes conteneur de données utilisées dans cette base de données d exemple sont Lire texte dans conteneur et FIXER TEXTE DANS CONTENEUR. Note : Il n est pas nécessaire de vider le contenu du conteneur de données après un glissé-déposé. En effet, le contenu du conteneur de données est supprimé automatiquement une fois le contenu déposé. Glisser depuis une feuille de calcul Excel Microsoft et Déposer sur une Liste box 4D Une fois la base de données ouverte, elle démarre dans l'environnement Application. Depuis le menu Fichier, sélectionnez l item de menu «Ouverture List box». Le dialogue suivant apparaît alors : Ouvrez un fichier Microsoft Excel. 5 / 10

Sélectionnez à présent des cellules depuis la feuille de calcul Excel. Placez alors le curseur de la souris sur l'encadré de la sélection jusqu à ce que le curseur de déplacement apparaisse. Dès que le curseur de déplacement apparaît, glissez la sélection et déposez-là sur la colonne de la List box. Note : L exemple se limite à copier seulement une colonne. Excel 4D v11 SQL Le résultat devrait ressembler à la copie d écran suivante : 6 / 10

Voici le code qui est déclenché pendant l événement Sur Déposer sur la colonne. C_TEXTE($Text) `Texte provenant du Conteneur de données C_ENTIER LONG($counter) `compteur des délimiteurs Au cas ou : (Evenement formulaire=sur déposer ) $Text:=Lire texte dans conteneur $counter:=m_countdelimiter ($Text) `Compte les délimiteurs dans la ligne M_Tokenizer ($Text) `Exécute la méthode-projet M_Tokenizer Fin de cas La méthode M_CountDelimiter compte le nombre de délimiteurs de colonnes (Caractere(Tabulation )) contenus dans le texte. Cette méthode-projet accepte du texte depuis le conteneur de données et retourne une valeur correspondant au nombre de délimiteurs pour chaque ligne. Une dernière méthode est exécutée pendant l appel : M_Tokenizer. Cette méthode récupère le texte depuis le conteneur de données, traite le texte et le place dans les colonnes ad hoc de la Listbox. L idée sous-jacente à cette méthode est très simple. Nous prenons chaque ligne et nous l'analysons, ensuite nous supprimons cette ligne et répétons cette même procédure jusqu à ce que nous ayons atteint la dernière ligne. A ce moment-là, tous les informations se retrouvent dans la List box. Note : Microsoft Excel pour MacOs X ne dispose pas de retour chariot après la dernière ligne. Pour rendre compatible cette méthode sous Mac, il est nécessaire tout d abord de vérifier la position du retour chariot. Si nous disposons d un retour chariot à la fin de la ligne, nous prenons tout le texte jusqu au retour chariot, sinon nous prenons le reste du texte en une seule ligne. Glisser depuis une List box 4D et Déposer dans une feuille de calcul Excel de Microsoft En sélectionnant la ligne de menu «Glisser depuis formulaire» depuis le menu Fichier, le dialogue suivant s affichera : 7 / 10

Sélectionnez les deux lignes. En maintenant enfonçée la touche Alt (sous Windows) ou Option (sous Mac OS), glissez la sélection et déposez-la dans la feuille de calcul Excel de Microsoft. Le formulaire projet Droptext dispose d une méthode associée. Elle permet de créer et d initialiser les colonnes de la List box et d appeler une méthode projet nommée Droptext. Ci-dessous, le code la méthode projet nommée Droptext. 8 / 10

C_TEXTE($Text_t) C_TEXTE($ntext_t) C_ENTIER LONG($col_i;$row_i;$index;$index_col) C_POINTEUR($colVar_ptr) $col_i:=lire nombre colonnes listbox(*;"list Box1") $row_i:=lire nombre lignes listbox(*;"list Box1") Boucle ($index;1;$row_i) Si (List Box1{$index}=Vrai) Boucle ($index_col;1;$col_i) Si ($index_col<$col_i) `Vérifie s'il s'agit du dernier élément dans la ligne courante $colvar_ptr:=pointeur vers("column"+chaine($index_col)) $Text_t:=$colVar_ptr->{$index}+Caractere(Tabulation ) $ntext_t:=$ntext_t+$text_t Sinon `S'il s'agit du dernier élément dans la ligne, aucun délimiteur n'est rajouté $colvar_ptr:=pointeur vers("column"+chaine($index_col)) $Text_t:=$colVar_ptr->{$index} $ntext_t:=$ntext_t+$text_t Fin de si Fin de boucle $ntext_t:=$ntext_t+caractere(retour chariot ) FIXER TEXTE DANS CONTENEUR($ntext_t) Fin de si Fin de boucle La méthode commence par obtenir le nombre de colonnes et de lignes contenues dans la Listbox. Ensuite, le code vérifie quelles lignes ont été sélectionnées. Ceci est possible en utilisant le tableau booléen de la Listbox ; la Listbox est représenté comme un tableau de booléens et si une ligne est sélectionnée, sa valeur dans le tableau est fixée à Vrai. Ceci permet de réaliser une sélection d'une ligne ou de plusieurs lignes. Ensuite, la (les) ligne(s) sectionnée(s) sont formatée(s) de façon appropriée en incluant des délimiteurs texte et des retours chariots. Le texte formaté est alors placé dans le conteneur de données en utilisant la commande FIXER TEXTE DANS CONTENEUR. Conclusion Cette note technique a mis en évidence la façon selon laquelle les fonctionnalités du Glisser-Déposer et du conteneur de données, disponibles dans 4D v11 SQL, peuvent être utilisées pour copier facilement des données texte entre Excel et 4D. Les développeurs peuvent utiliser l'exemple fourni et le développer pour l adapter aux besoins de leurs clients. L ajout d une telle fonctionnalité à une base de données déjà en production peut développer la productivité des utilisateurs finaux qui utilisent de façon conséquente le tableur Excel. Autre document lié Note technique référence n 4D-200804-08-FR Le conteneur dans 4D v11 SQL. 9 / 10

10 / 10