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

ASP.NET Discussion :

Erreur lors de la consultation d'un formulaire précédemment rempli


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut Erreur lors de la consultation d'un formulaire précédemment rempli
    Bonjour,

    J'ai créé un formulaire qui permet répondre à la demande d'applications de clients.

    Pour se faire, le client accède à une première page qu'on appelera formulaireApplicationClient.aspx, et il remplit tous les champs dont les valeurs sont ensuite affectées aux attributs d'une classe Application (Application.vb).
    Le lien se fait ensuite entre les attributs de la classe Application et la table Application de la base de données par une fonction InsertApplication() qui appelle une procédure stockée avec en paramètre la liste des paramètres de la classe Application précédemment rempli.

    L'application sera pris en compte par une équipe de Développeurs (Dev).

    Ensuite, j'ai créé 2 pages aspx appelées ConsultationClient.aspx et ConsultationDev.aspx qui permettent au client et aux développeurs de consulter la demande.
    J'ai fait deux pages car les libellés visibles ne sont pas les mêmes ( le client ne pourra pas voir par exemple la fiche technique reservé aux développeurs ...)

    Dans ces pages, je rempli les libéllés en récupérant l'id de l'application considéré et en remplissant tous les champs avec la valeur des paramètres de l'application donnée.

    Seulement voila, lorsque j'essai d'afficher la page ConsultationClient.aspx, je n'ai aucun problème, et quand j'essais d'afficher ConsultationDev.aspx, j'ai ce message d'erreur :

    Erreur : La référence d'objet n'est pas définie à une instance d'un objet.
    J'ai beau chercher je ne vois pas ...
    Pour info, je développe avec VBNet, SQL Server 2005, sous VS2008.

    J'éspère que vous pourrez m'éclairer !

    Merci !

  2. #2
    Membre Expert Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Par défaut
    Comme a chaque fois avec ce type d'erreur (cf ce forum), il arrive quand on veut utiliser un objet qui n'a pas été instancié (avec un new).

    Si tu veux régler ton problème, mets un point d'arrêt au début de ta procédure (ou fonction ou évènement), avancer au pas a pas (F10) et regarder a qui ça arrive.

    Si tu ne trouves pas, alors pose le code ici en donnant a quelle ligne ça arrive.

  3. #3
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut
    Oui en effet c'est une erreur d'instanciation !

    Mais je cherche toujours pour le moment :s

    J'ai aussi un autre problème à la validation du formulaire en cliquant sur valider :

    Erreur : Le format de la chaine d'entrée est incorrect
    Avez-vous une idée du problème ?

    Je n'arrive pas avec la méthode pas à pas a trouver l'endroit ou il y a ce problème !

    Mais je cherche ... au pire je posterai le code !


    Merci !

  4. #4
    Membre Expert Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Par défaut
    Si tu mets un point d'arrêt au début de la fonction et que tu fais F10 tout le long, ça doit obligatoirement s'arrêter à l'erreur !

    Si le code est dans un Try Catch, alors il faut repérer la ligne qu'y t'y emmènes.

    Si tu ne trouves pas la procédure dans laquelle il y a l'erreur, mets des truc catch dans toute tes procédures, avec un Msgbox avec pour message le nom de chaque procédure respective... et tu le trouvera.

    Quand tu l'aura trouver alors, au mieux poste le code.

  5. #5
    Membre éclairé
    Avatar de betsprite
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    472
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 472
    Par défaut
    Merci mactwist69 pour tes conseils.

    Bon j'ai beau chercher je ne vois pas vraiment :s

    Après avoir fait une méthode pas à pas, voici la ligne qui pose problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dg_document.DataSource = _CurrentApplication.GetDocAppli()
    Avec Les déclarations :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private _CurrentApplication As CApplication 
    Protected WithEvents dg_document As NatifWebControl.Datagrid
    Le message d'erreur est, après avoir appuyé sur F10 sur cette ligne :

    L'exception NullReferenceException n'a pas été gérée par le code utilisateur.

    La référence d'objet n'est pas définie à une instance d'un objet.

    Conseils de dépannage :

    Utiliser le mot clé new pour créer une instance d'objet.
    Déterminez si l'objet est null avant d'appeler la méthode.
    Obtenir une aide d'ordre générale pour cette exception.
    Voici la fonction GetDocAppli() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public Function GetDocAppli() As System.Data.DataSet
     
    DataSQLSingleton.Instance.strMessage = String.Empty
    Dim _dsDoc As System.Data.DataSet = DataSQLSingleton.Instance.GetExecuteQuerySQL("***_GetSearchDocDg", new SqlParameter("@idApplication", Me.Id))
    If DataSQLSingleton.Instance.strMessage <> String.Empty Then
    Throw new Exception(DataSQLSingleton.Instance.strMessage)
    End if
     
    Return _dsDoc
    Et voici La class DataSQLSingleton :

    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
    Option Explicit on
    Public Class DataSQLSingleton
     
    Private Shared _singletonDataSQL As *****.DataSQL = Nothing
     
    Public Shared ReadOnly Property Instance() As *****.DataSQL
    Get
    If (_singletonDataSQL Is Nothing) Then
    _singletonDataSQL  = New *****.DataSQL
    End If
    Return _singletonDataSQL
    End Get
    End Property
     
    Private Sub New()
    End Sub
     
    End Class



    Et enfin, côté SQL Server 2005, voici la procédure stockée ***_GetSearchDocDg :

    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
    USE[***]
    GO
     
    SET ANSI_NULLS OFF
     
    GO
     
    SET QUOTED_IDENTIFIER OFF
     
    GO
     
    ALTER PROCEDURE [dbo].[***_GetSearchDocDg]
    (@idApplication as int)
    AS
     
    Select ***_Document.*
    From ***_Document
    Where ***_Document.IdApplication = @idApplication
    order by DateSystem desc
    Avec pour la table ***_Document, les champs : idDoc (PK), NomDoc, DateSystem, UserId, idApplication

    Si jamais vous avez ne serait-ce qu'un début de solution cela m'aiderait beaucoup :-)

    Merci !

  6. #6
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2010
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2010
    Messages : 20
    Par défaut
    une fois j'ais trouvé le même problème mais avec c#,et la cause est que les donner que je récupéré de la procédure ne corresponde pas aux champs que je veux afficher dans la page aspx,
    alors essaie de les vérifié.
    bonne chance.

Discussions similaires

  1. [AC-2003] Erreur lors de l'exportation d'un formulaire Access vers Excel 2003
    Par jabulon dans le forum VBA Access
    Réponses: 1
    Dernier message: 07/08/2010, 09h59
  2. Erreur lors de l'envoi d'un formulaire
    Par tilili dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 29/09/2009, 23h01
  3. Erreur lors de l'envoi d'un formulaire personnalisé Outlook
    Par Jerome DEBRAY dans le forum Outlook
    Réponses: 2
    Dernier message: 28/11/2008, 08h37
  4. [DOM] erreur lors de la consultation de la racine du document
    Par fasfousba dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 14/11/2008, 09h19
  5. Erreur lors de l'affichage d'un formulaire
    Par Klemsy78 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 02/11/2008, 21h57

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