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 :

Transfert des données dans excel


Sujet :

Forms Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 37
    Par défaut Transfert des données dans excel
    c'est un petit code qui sert à afficher les données d'une table dans excel
    j'ai en entrée le nom d'une table (:global.tab)
    j'ai affiché dans une tree les differents champs de cette table('tree')
    des champs de la table(que je ne connais pas forcement), un sera selectionné(:global.champ) auquel je devrais soumettre une condition avant d'afficher la table dans excel
    pour avoir le nom des champs de la table je les ai stoqué dans un tableau(tab1)
    voila le code que j ai pu faire(pour le transfert des donnees), il se bloque sur oo.tab1(i) et il me donne référence de variable "oo" non valide j'espere que qlqu'un saura m'aider
    merci d'avance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
     PROCEDURE transfert IS
    	 MyApplication    CLIENT_OLE2.OBJ_TYPE;
    	 args  CLIENT_OLE2.LIST_TYPE;
     	 wbs   CLIENT_OLE2.OBJ_TYPE;    
       wb    CLIENT_OLE2.OBJ_TYPE; 
       wss   CLIENT_OLE2.OBJ_TYPE; 
       cell  CLIENT_OLE2.OBJ_TYPE;
       args1 CLIENT_OLE2.LIST_TYPE; 
     
       htree ITEM;
       node FTREE.NODE;
     
       TYPE TYP_IND_TAB is table of varchar(2) index by binary_integer ;
       tab1 TYP_IND_TAB;
     
       TYPE ref_cur IS REF CURSOR;
       c_cur ref_cur;
     
       tab varchar2(40);
       oo ref_cur;
     
     
      c1 number(4);
      c2 number(4);
      i  number(4);
     
     
    BEGIN
     
       tab:=:global.tab;
     
        OPEN c_cur FOR
        SELECT * from tab
        where :global.champ=:T2; 
     
       htree := FIND_ITEM('tree');
       :global.node_count := FTREE.GET_TREE_PROPERTY(htree, FTREE.NODE_COUNT);
      for i in 1..:global.node_count loop
       	    node:= Ftree.Find_Tree_Node(htree, '');
       	    tab1(i):= FTREE.GET_TREE_NODE_PROPERTY('TREE',node,FTREE.NODE_label);
            Ftree.Delete_Tree_Node(htree,node);
     
       end loop ; 
     
     
     	MyApplication  := CLIENT_OLE2.CREATE_OBJ('Excel.Application');
    	 CLIENT_OLE2.SET_PROPERTY(MyApplication , 'Visible',1);
    	 wbs := CLIENT_OLE2.GET_OBJ_PROPERTY(MyApplication ,'Workbooks');
    	 wb := CLIENT_OLE2.INVOKE_OBJ(wbs,'Add');
       wss := CLIENT_OLE2.GET_OBJ_PROPERTY(MyApplication ,'ActiveSheet');
     	CLIENT_OLE2.SET_PROPERTY(wss , 'Value','Sheet1');  
     
    i:=1;
    c1:=2;		
    LOOP
     
     
    c2:=1;
     
     
    	fetch c_cur into oo;
    	exit when c_cur%NOTFOUND;	
     
    if c2=:global.node_count then exit;
    end if;		
    loop 
     
    args := CLIENT_OLE2.CREATE_ARGLIST; 
     
    CLIENT_OLE2.ADD_ARG(args, c1);
    CLIENT_OLE2.ADD_ARG(args, c2);
    cell := CLIENT_OLE2.GET_OBJ_PROPERTY(wss,'Cells', args);
    CLIENT_OLE2.SET_PROPERTY(cell, 'Value', oo.tab1(i));
    CLIENT_OLE2.DESTROY_ARGLIST(args);
    CLIENT_ole2.release_obj(cell);
     
    args := CLIENT_OLE2.CREATE_ARGLIST; 
    CLIENT_OLE2.ADD_ARG(args, 1);
    CLIENT_OLE2.ADD_ARG(args, c2);
    cell := CLIENT_OLE2.GET_OBJ_PROPERTY(wss,'Cells', args);
    CLIENT_OLE2.SET_PROPERTY(cell, 'Value',tab1(i));
    CLIENT_OLE2.DESTROY_ARGLIST(args);
    CLIENT_ole2.release_obj(cell);
     
    c2:=c2+1;
    i:=i+1;
    END LOOP;
    c1:=c1+1;
     
     
     
    END LOOP;
     
    CLOSE c_cur;
     
     
     
    CLIENT_OLE2.DESTROY_ARGLIST(args);
     
    args1 := CLIENT_OLE2.CREATE_ARGLIST;
    CLIENT_OLE2.ADD_ARG(args1,:global.filename);
    CLIENT_OLE2.INVOKE(wb, 'SaveAs', args1);
    CLIENT_OLE2.DESTROY_ARGLIST(args1);
    --CLIENT_OLE2.INVOKE(wb,'CLOSE');
    --CLIENT_ole2.invoke(MYApplication,'Quit');
     
    CLIENT_ole2.release_obj(wb);
    CLIENT_ole2.release_obj(wbs);
    CLIENT_ole2.release_obj(wss);
    CLIENT_ole2.release_obj(wss);
    CLIENT_ole2.release_obj(wb);
     
    CLIENT_OLE2.RELEASE_OBJ(MyApplication);
     
    END;

  2. #2
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 37
    Par défaut
    svp est ce que qlq'un peut m aider???

Discussions similaires

  1. [Excel] Importer des données dans Excel
    Par kendras dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 29/09/2008, 13h35
  2. [VB6 + EXCEL] Importer des données dans EXCEL
    Par david71 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 14/07/2007, 18h43
  3. Exportation des donneés dans Excel
    Par jmde dans le forum Access
    Réponses: 2
    Dernier message: 13/03/2007, 07h24
  4. Importer des données dans Excel
    Par denis finch dans le forum Excel
    Réponses: 2
    Dernier message: 28/09/2006, 18h27
  5. Récupérer des données dans excel
    Par alexia2 dans le forum MFC
    Réponses: 1
    Dernier message: 19/05/2005, 15h34

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