IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

4D Discussion :

extraction depuis 4D pour Word


Sujet :

4D

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3
    Points : 2
    Points
    2
    Par défaut extraction depuis 4D pour Word
    Bonjour tout le monde,

    après une recherche je n'ai trouver aucun sujet pouvant m'aider.

    Je début dans le monde de 4D. Et j'ai un travail à réaliser pour mon patron mais je nage totalement dans la semoulle.

    IL me demande de trouver un moyen d'extraire des données depuis 4D (depuis un formulaire, donc intrasequement depuis une table, si je me trompes pas ...)

    Et il veux que ces données puissent être écrite directement dans un formulaire Word.

    Et le tout depuis 4D.

    J'ai commencer un prospecter du côté du plugin OLE, mais c'est pas le top, je pige pas comment ca fonctionne.

    Après quelques recherches, j'ai trouver des tutos sur le site pour le faire via une extraction XML des datas.

    Mais la première base de données est pour WOrd 2003 et doit soit contenir des erreurs ou alors c'est moi qui suit neuneu car j'arrive pas à faire fonctionner l'exemple ...

    Quand à la base de données exemple la plus récente elle est faite pour fonctionner sur Mac vu que les script sont en applescript et pas en VBS.

    voilà, voilà.

    Dans l'espoir que quelqu'un puisse me venir en aide ...

    Et merci d'avance à ceux qui m'aideront à résoudre ce problème épineux ...

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    bon, toujours pas de réponse. C'est pas grave j'ai pu avancer un peu.

    Mais j'ai néanmoins toujours un problème qui requiert de l'aide XP.

    Voici la méthode qui me pose problème :

    XML_AppelerSurErreur_Start **
    `sert à détecter une erreur capturée par XML_AppelerSurErreur

    **`Chemin d'accès en dur au template XML
    Si (Tester chemin acces(<>DEMO_vt_docXML_path)=Est un document )
    SUPPRIMER DOCUMENT(<>DEMO_vt_docXML_path)
    Fin de si

    C_HEURE($_vh_refDoc)
    $_vh_refDoc:=XML_Creer_Document (<>DEMO_vt_docXML_path)**`créé le doc XML sur disque
    FERMER DOCUMENT($_vh_refDoc)

    Si (ok=1)

    Si (DOM_XML_genere )**`génération du doc XML ok

    **`suppression du document Word pouvant déjà exister
    C_TEXTE(DEMO_vt_docWordResult_path)
    DEMO_vt_docWordResult_path:=<>DEMO_vt_docWordResult_path+[Patients]Nom+".doc"
    Si (Tester chemin acces(DEMO_vt_docWordResult_path)=Est un document )
    SUPPRIMER DOCUMENT(DEMO_vt_docWordResult_path)
    Fin de si

    APPELER SUR ERREUR("")

    **`--- exécution d'un VBScript pour raffrachir les champs de données avant présentation à l'utilisateur
    VBS_prepare

    **`--- ouverture du document dans Word
    ZDOC_OuvreWord (DEMO_vt_docWordResult_path)

    Fin de si

    Fin de si

    ET voici les méthodes que cette dernière appel :

    1. XML_AppelerSurErreur_Start
    2. DOM_XML_genere
    3. VBS_prepare
    4. ZDOC_TraiterBalises
    5. ZDOC_OuvreWord


    VBS_prepare :
    C_BOOLEEN($0)

    C_TEXTE($1;$_vt_pathScript)
    $_vt_pathScript:=$1

    C_TEXTE($2;$_vt_NewScript)
    Si (Nombre de parametres=1)**`on écrase le fichier de départ
    $_vt_NewScript:=$1
    Sinon **`on enregistre ds un nouveau fichier
    $_vt_NewScript:=$2
    Fin de si

    **`chargement du script en BLOB
    C_BLOB($_vx_BLOB)
    DOCUMENT VERS BLOB($_vt_pathScript;$_vx_BLOB)

    $0:=(ok=1)

    Si ($0)
    **`traitement des balises 4D contenues ds le script
    TRAITER BALISES HTML($_vx_BLOB;$_vx_BLOB)
    **`pbme remplace les caractères accentués par des entités HTML

    $0:=(ok=1)

    Si (Faux)
    ECRIRE TEXTE DANS PRESSE PAPIERS(BLOB vers texte($_vx_BLOB;Texte sans longueur ))
    Fin de si

    Fin de si

    Si ($0)
    **`enregistrement du nouveau script
    BLOB VERS DOCUMENT($_vt_NewScript;$_vx_BLOB)
    $0:=(ok=1)
    Fin de si

    ZDOC_OuvreWord :
    C_TEXTE($1)
    C_TEXTE($_vt_PathDoc)
    $_vt_PathDoc:=$1

    Si (ENV_si_Windows )
    CHANGER TYPE DOCUMENT($_vt_PathDoc;"DOC")
    Sinon
    CHANGER TYPE DOCUMENT($_vt_PathDoc;"DOC")
    CHANGER CREATEUR DOCUMENT($_vt_PathDoc;"MSWD")
    Fin de si

    **`Déclenche l'ouverture du doc suivant son type et créateur
    C_ENTIER($_ve_Error)
    $_ve_Error:=AP ShellExecute ($_vt_PathDoc)

    Si ($_ve_Error#0)
    ALERTE(Chaine($_ve_Error))
    TRACE
    Fin de si

    Dans la methode ZDOC_TraiterBalises appellée par VBS_prepare, à la ligne :
    DOCUMENT VERS BLOB($_vt_pathScript;$_vx_BLOB)

    J'ai ce message d'erreur :
    "Dossier non trouver.
    C:\Documents and Settings\Florent Perret\Bureau\BDD 4D\liaisonWord1\ModeleWord\script.vbs
    Document non ouvert."

    Or mon script se trouve bel et bien à cet emplacement ...

    et dans la methode de base à la ligne :
    ZDOC_OuvreWord (DEMO_vt_docWordResult_path)

    J'ai cette erreur-ci :
    "Dossier non trouver.
    C:\Documents and Settings\Florent Perret\Bureau\BDD 4D\liaisonWord1\ModeleWord\temp\.doc
    Document non ouvert."

    VOici aussi quelques autres petites infos. A l'ouverture j'ai cette methode qui tourne pour définir certaines variables. La voici :

    C_TEXTE(<>DEMO_vt_docXML_path)**`chemin d'accès vers le fichier xml généré par 4D
    <>DEMO_vt_docXML_path:="C:\\formulaire4D.xml"

    C_TEXTE($_vt_sep)
    $_vt_sep:=zdoc_get_separateur

    C_TEXTE($_vt_ModelesFolderpath)**`dossier structure+modelesWord
    $_vt_ModelesFolderpath:=zdoc_get_dossierParent (Fichier structure)
    $_vt_ModelesFolderpath:=$_vt_ModelesFolderpath+"ModelWord"+$_vt_sep

    C_TEXTE(<>DEMO_vt_docWord_path)**`chemin d'accès vers le modèle de lettre Word
    <>DEMO_vt_docWord_path:=$_vt_ModelesFolderpath+"formulaire 4D to word.doc"

    C_TEXTE(<>DEMO_vt_docWordResult_path)**`chemin d'accès vers le dossier où sera généré le .doc fusionné
    <>DEMO_vt_docWordResult_path:=$_vt_ModelesFolderpath+"temp"+$_vt_sep

    C_TEXTE(<>DEMO_vt_script_path)**`chemin d'accès vers le VBscript contenant les balises 4D
    <>DEMO_vt_script_path:=$_vt_ModelesFolderpath+"script.vbs"


    si les personnes qui pourraient m'aider ont besoins d'autres infos demandez

    Merci d'avance à toutes les personnes qui m'aideraient à résoudre mon soucis

Discussions similaires

  1. [XL-2007] Problème code VBA depuis excel pour générer un document word publiposté
    Par stechet dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/02/2015, 11h03
  2. Recherche depuis Excel dans Word et extraction de Word dans Excel
    Par Cocomarco dans le forum Général VBA
    Réponses: 2
    Dernier message: 20/10/2014, 11h44
  3. Réponses: 1
    Dernier message: 19/10/2014, 20h35
  4. Réponses: 1
    Dernier message: 10/09/2014, 18h54
  5. Soda pour Word
    Par YAMKI dans le forum Outils
    Réponses: 4
    Dernier message: 23/12/2004, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo