Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Forms
Forms Forum d'entraide sur Oracle Forms
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/04/2008, 17h51   #1
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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!
Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2008, 18h03   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2008, 20h49   #3
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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!
Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/04/2008, 07h32   #4
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/04/2008, 22h04   #5
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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!
Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 10h08   #6
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
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 :
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 16h14   #7
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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!
Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 09h26   #8
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 19h52   #9
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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
Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 20h49   #10
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
...

/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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/05/2008, 16h12   #11
Membre à l'essai
 
Inscription : décembre 2007
Messages : 101
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 101
Points : 22
Points : 22
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!!!

Marcel Chabot est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h20.


 
 
 
 
Partenaires

Hébergement Web