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

Forms Oracle Discussion :

10G-WORD Recherche de fichiers dans répertoire


Sujet :

Forms Oracle

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut 10G-WORD Recherche de fichiers dans répertoire
    Bonjour à tous,
    J'utilise une ligne de code qui ouvre un fichier Word dans un emplacement spécifique.
    CLIENT_HOST('cmd /c START "" "W:\App_Oradev\Sources\Blabla\dev\src\doc\"'||V_NOM_FICHIER);

    Auriez-vous dans une de vos poche un exemple que je pourrais utiliser pour faire la recherche dans un répertoire général style w:\... et trouver le V_NOM_FICHIER

    Merci beaucoup!
    Jake000111

  2. #2
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    c'est faisable avec la commande DIR:

    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut Re
    En DOS ça fonctionne bien effectivement.
    J'ai même essayé dir o:\...\...\ doc1.doc et ça m'affiche le contenu du répertoire.
    o:\>dir /b /s doc1.doc et m'affiche tous les doc1.doc existant dans le répertoire.
    J'ai aussi essayé le o:\<type doc1.doc pour ouvrir le document mais ça fonctionne pas.

    Mon problème est que je veux intégrer celà dans mon code en Forms et ouvrir le fichier word .
    exemple : CLIENT_HOST('cmd /c START "" "O:\<dir /b /s doc1.doc" ');
    ou CLIENT_HOST('cmd /c START "" dir "O:\<dir /b /s doc1.doc" ');
    J'ai essayé plusieurs syntaxes...
    Marche pas?

    Auriez-vous une idée?

    Merci!
    Jake000111

  4. #4
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Il vous faudra surement procéder en 2 étapes. D'abord retrouver le chemin complet du document en question (voir ce Java Bean), et ensuite construire votre commande Host() en conséquence.
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut Pas trouvé :-(
    Bonjour,
    Pas de succès dans mes tests.
    J'ai bien essayé le Java et ça fonctionne à part, mais de récupérer le chemin et le fichier dans une variable que je peux récupérer pour ouvrir le fichier n'est pas pensable surtout que c'est une text qui est afficher dans le champs.

    J'ai regardé juste du coté MS Dos pour rechercher le fichier mais peux pas non plus mettre ça dans une variable récupéré pas ma FORMS.

    Quelqu'un a une idée???

    Juste un rappel,
    J'ai un nom de fichier dans une variable.
    Je veux rechercher automatiquement ce fichier dans un répertoire genre o:\
    Une fois trouvé je veux l'ouvrir.
    Ce que j'ai utlisé :

    Set_Custom_Property('AVAN_MAJC.BEAN', 1, 'SET_PROG', 'cmd /c start O:\App_Ora\Sources\gda_10g\dev\src\doc\AA.doc' ) ;

    Set_Custom_Property('AVAN_MAJC.BEAN', 1, 'SET_PROG', 'cmd /c dir O:\App_Ora\Sources\gda_10g\dev\src\doc\AA.doc' ) ;

    CLIENT_HOST('cmd /c START "" "O:\App_Ora\Sources\gda_10g\dev\src\doc\"'||V_NOM_FICHIER);

    Le seul qui fonctionne c'est
    CLIENT_HOST('cmd /c START "" "O:\App_Ora\Sources\gda_10g\dev\src\doc\"'||V_NOM_FICHIER);

    Mais il ne recherche pas le fichier, je lui dit exacterment où il est...


    Merci beaucoup!
    Jake000111

  6. #6
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    SET_PROG sert a lancer une commande DOS. En l'occurence, celle avec DIR ... suffit.
    Ensuite il faut récupérer la liste des fichiers trouvés dans le trigger When-Custiom-Item-Event comme indiqué dans l'article.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ...
    IF (eventName='MSGSTND') THEN
          -- get the standard output --
          eventValues := get_parameter_list(:system.custom_item_event_parameters);
          get_parameter_attr(eventValues,'MSGTEXT',eventValueType, LC$Msg);
          If Length(:BL.RESULT) + Length(LC$Msg) > 32000 Then
           :BL.RESULT := '' ;
          End if ;
          :BL.RESULT := :BL.RESULT || LC$Msg || CHR(10) ;
          Synchronize;
     
    ...
    LC$Msg doit contenir le nom des fichiers trouvés.
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut Re
    Je viens de réaliser que je suis partie du mauvais pied...
    C'est une chose de trouver avec MS DOs un fichier à un emplacement précis en lui donnant le chemin avec DIR. C'est OK!
    Mais de là à ce qu'il recherche par lui même dans un répertoire comme le O:\ et dans ses sous-répertoires le fichier demandé est je crois impenssable...
    Il ne dois y avoir une ligne de commande qui le fait scanner tous le répertoire et sous-répertoire pour trouver le fichier?

    Et si ça existait, dans le :BL.RESULT c'est un text qui apparaît et il faudrait que j'isole le fichier dans le texte.
    **************************************************
    Le volume dans le lecteur O s'appelle Donn‚es
    Le num‚ro de s‚rie du volume est 6060-E09A

    R‚pertoire de O:\App_Ora\Sources\gda_10g\dev\src\doc

    2008-03-11 10:30 213ÿ504 AA.doc
    1 fichier(s) 213ÿ504 octets
    0 R‚p(s) 21ÿ034ÿ786ÿ816 octets libres
    ************************************************

    Qu'est-ce que vous en pensé???
    J'en demande peut-être un peu trop?

    Merci!
    Jake000111

  8. #8
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Je vous le donne depuis le début. DIR /B /S va chercher dans le chemin que vous donnez en entrée ainsi que dans les sous-répertoires.
    Si vous commencez avec C:\ vous scannerez l'intégralité de ce disque.
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  9. #9
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut RE
    Milles excuses quand j'ai dit "J'en demande trop?" je voulais dire à MS DOS

    J'ai aussi trouvé la commande Dir /o/s O:\NomFichier.doc qui recherche dans tous le répertoire O:\ , le fichier NomFichier.doc.

    Bon, me reste juste à trouver comment isoler dans le texte que me rapporte :BL.RESULT le nom du fichier NomFichier.doc

    Voilà pour
    set_Custom_Property('BL.BEAN', 1, 'SET_PROG', 'cmd /c dir /o/s O:\App_Ora\Sources\gda_10g\dev\src\'||V_NOM_FICHIER) ;

    Me rapporte comme info

    Le volume dans le lecteur O s'appelle Donn‚es
    Le num‚ro de s‚rie du volume est 6060-E09A

    R‚pertoire de O:\App_Ora\Sources\gda_10g\dev\src\doc

    2008-01-17 17:18 19ÿ968 NomFichier.doc
    1 fichier(s) 19ÿ968 octets

    Total des fichiers list‚sÿ:
    1 fichier(s) 19ÿ968 octets
    0 R‚p(s) 20ÿ221ÿ919ÿ232 octets libres
    Jake000111

  10. #10
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    ...

    /B dans la commande DIR donne juste le nom du fichier..........
    ...
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  11. #11
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 122
    Points : 54
    Points
    54
    Par défaut RE
    Merci de votre patience

    Voilà ce que j'ai mis comme code :

    set_Custom_Property('BL.BEAN', 1, 'SET_PROG', 'cmd /c dir /b/s O:\'||V_NOM_FICHIER) ;

    Me rammène cette information dans :BL.RESULT, donc il trouve exactement le chemin du fichier.
    O:\App_Ora\Sources\gda_10g\dev\src\doc\TestGDA1200E.doc

    Avant avec ce code ça fonctionnait pour ouvrir le fichier:
    CLIENT_HOST('cmd /c START "" "W:\App_Oradev\Sources\Blabla\dev\src\doc\"'||V_NOM_FICHIER);


    Maintenant j'ouvre le fichier avec Word avec le résultat venant de :BL.RESULT
    CLIENT_HOST('cmd /c START "" '||:BL.RESULT);

    Tous fonctionne super bien.

    Un gros merci de votre temps et votre patience!!!

    Jake000111

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Rechercher un fichier dans répertoire puis l'ouvrir
    Par jambonland dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/07/2013, 15h36
  2. [XL-2003] recherche un fichier dans des sous répertoire et recopier son contenu
    Par hallscar dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 01/12/2011, 20h30
  3. Recherche de fichier dans un répertoire
    Par 4rocky4 dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 14/03/2011, 14h01
  4. Recherche de fichiers dans des sous répertoires
    Par Mimi Bulles dans le forum Langage
    Réponses: 8
    Dernier message: 25/04/2006, 16h41

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