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 02/08/2006, 12h13   #1
Nouveau Membre du Club
 
Inscription : avril 2005
Messages : 70
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 70
Points : 30
Points : 30
Par défaut [Forms 9i] Ouvrir un fichier excel

Bonjour,

Je souhaite ouvrir un fichier excel que j'ai rempli au préalable avec des données de ma base.

Il ne me reste plus qu'à l'ouvrir quand je clique sur un bouton de mon appli. J'ai essayé énormément de chose, je suis allez sur metalink mais rien n'y fait.

Soit il ne s'ouvre pas automatiquement mais le fichier existe bien, soit il s'ouvre vide, soit j'ai une erreur ORA.

Quelqu'un peut il m'aider ?

Voilà deux codes différents que j'ai essayé :

1)

Code :
1
2
3
4
5
6
7
8
9
 application := OLE2.CREATE_OBJ('Excel.Application'); 
   OLE2.SET_PROPERTY(application,'Visible', 1);
 
   workbooks := OLE2.GET_OBJ_PROPERTY(application, 'Workbooks'); 
 
   args := OLE2.CREATE_ARGLIST; 
   OLE2.ADD_ARG(args, v_nomfichier); 
   workbook := OLE2.GET_OBJ_PROPERTY(workbooks, 'Open', args); 
   OLE2.DESTROY_ARGLIST(args);
Rien se s'ouvre, v_nomfichier est le chemin vers le fichier excel que j'ai crée.

2)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
APPID := DDE.APP_BEGIN('C:\Program Files\Microsoft Office\Office\Excel.EXE',
                          DDE.APP_MODE_MINIMIZED);
 
/* Establish a conversation with Excel */
/* The following loop will not end until a conversation with Excel
   has been established.  Therefore, it can result in a endless loop,
   so use with caution. */
   WHILE NOT conv_established LOOP
     BEGIN
       convid := DDE.INITIATE('excel', 'system');
       conv_established := TRUE;
     EXCEPTION
       WHEN DDE.DMLERR_NO_CONV_ESTABLISHED THEN
       conv_established := FALSE;
     END; -- loop
 END LOOP;
 
/* Open Excel document */
/* This assumes that you have an Excel spreadsheet named ddetest.xls
   in the root of e: */
     DDE.EXECUTE(convid, '[Open(v_nomfichier)]', 10000);
 
/* Initiate conversation with Excel document */
     docid := DDE.INITIATE('excel', v_nomfichier);
 
/* Begin transfer to Excel */
     DDE.POKE(docid, 'R2C2', 'Text', DDE.CF_TEXT, 10000);
 
/*End transfer to Excel */
     DDE.TERMINATE(docid);
     DDE.TERMINATE(convid);
     DDE.APP_END(appid);
Ici j'ai une erreur 0RA-106555 ce qui veu dire que ça vient du DDE.POKE. Apparemment, j'ai lu que pour les espagnols par exemple ce n'était pas 'R2C2' mais 'F2C2' car ligne en espagnol commence par F. J'ai don essayé avec un 'L' à la place mais ca ne change rien


Voilà merci d'avance de votre aide
jehlg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2006, 11h31   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 533
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 533
Points : 6 469
Points : 6 469
Si le fichier est situé sur le serveur d'appli, vous ne pourrez pas l'ouvrir depuis le poste client. Il faudra donc le rappatrier en local. Une fois sur le poste client, pouquoi ne pas utiliser tout simplement CLIENT_HOST() pour l'ouvrir ?
__________________
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
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h23.


 
 
 
 
Partenaires

Hébergement Web