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

C# Discussion :

Retour d'un pakages


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 14
    Points : 7
    Points
    7
    Par défaut Retour d'un pakages
    Bonjour, dans le cadre de mon stage j'ai effectuer une modification d'un module je ne vais pas m'attarder sur la situation.

    Lorsque je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    myConnexion.Open();
                    OracleCommand cmd = myConnexion.CreateCommand();
                    cmd.CommandType = System.Data.CommandType.Text;
                    cmd.CommandText = "SELECT IDENTIFIER FROM DXCNT_PARAM_PROCESS WHERE NIAPPLICATION ='"+p_niapplication+"' AND QUEUE = '"+p_queue+"'";
                    OracleDataReader reader = cmd.ExecuteReader();
     
                    if (reader.Read())
                    {
                        identifier = int.Parse(reader.GetValue(0).ToString());
    ;
     
                    }
    Aucun souci, fonctionne très bien, seulement l'entreprise veut des Package et non des requête en dur.
    c'est pourquoi j'ai créer ce Package :

    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
     
    FUNCTION F_SELECT (p_niapplication IN DXCONNECT.DXCNT_PARAM_PROCESS.NIAPPLICATION%TYPE,
                       p_queue IN DXCONNECT.DXCNT_PARAM_PROCESS.QUEUE%TYPE)
    RETURN INTEGER
    IS
        result      INTEGER := 0;
    BEGIN
     
    SELECT IDENTIFIER INTO result FROM DXCNT_PARAM_PROCESS WHERE QUEUE = p_queue AND NIAPPLICATION = p_niapplication;
     
    RETURN result;
     
     
    EXCEPTION
        WHEN OTHERS THEN
            RAISE;
            RETURN result; 
    END F_SELECT;
    Il fonctionne correctement sur oracle et lorsque je le met à jours dans le C# je n'arrive pas à récupérer la valeur retourner par mon Package il part en exception.

    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
     
                    myConnexion.Open();
                    OracleCommand cmd = myConnexion.CreateCommand();
     
                    cmd.CommandText = "DXCONNECT.PCK_DB_DXCNT_PARAM_PROCESS.F_SELECT";
                    cmd.CommandType = System.Data.CommandType.StoredProcedure;
     
     
     
                    OracleParameter prmNiapplication = new OracleParameter("p_niapplication", OracleType.Number, 12);
                    prmNiapplication.Direction = ParameterDirection.Input;
                    prmNiapplication.Value = p_niapplication;
                    cmd.Parameters.Add(prmNiapplication);
     
     
                    OracleParameter prmQueue = new OracleParameter("p_queue", OracleType.VarChar, 64);
                    prmQueue.Direction = ParameterDirection.Input;
                    prmQueue.Value = p_queue;
                    cmd.Parameters.Add( prmQueue);
     
                    OracleDataReader reader = cmd.ExecuteReader();
     
                    if (reader.Read())
                    {
                        identifier = int.Parse(reader.GetValue(0).ToString());
     
     
                    }
    Doit-je récupérer le return du Package d'une autre manière ou j'ai oublié quelque chose? En tous cas l’exécution d'un Package insert par exemple fonctionne très bien mais pour récupérer les valeurs d'un select la plus rien ne va :p

    Si quelqu’un aurait une idée merci d'avance
    Cordialement

  2. #2
    Membre confirmé Avatar de Destiny
    Profil pro
    Inscrit en
    Février 2005
    Messages
    720
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2005
    Messages : 720
    Points : 617
    Points
    617
    Par défaut
    si tu fais:

    identifier = int.Parse(reader[0].ToString());


    Ca te donnes quoi?

    C'est quoi l'exception affichée?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    Justement le truc c'est que dès que je fait :
    OracleDataReader reader = cmd.ExecuteReader();

    La il part en exception en me disant que la fonction et incomplète ou indéfinie, alors qu'elle l'est ..

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Retour au mode texte par défaut
    Par coca dans le forum x86 16-bits
    Réponses: 6
    Dernier message: 12/12/2002, 17h22
  3. [XP] Retour d'experience
    Par virgile04 dans le forum Méthodes Agiles
    Réponses: 10
    Dernier message: 22/10/2002, 08h25
  4. Retour chariot dans un TMemo ?
    Par Vincent PETIT dans le forum C++Builder
    Réponses: 7
    Dernier message: 27/08/2002, 18h55
  5. URGENT: retour de string
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 15/07/2002, 09h47

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