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

Développement de jobs Discussion :

Récupérer le schéma d'un fichier excel


Sujet :

Développement de jobs

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Récupérer le schéma d'un fichier excel
    Bonjour,

    J'ai un job qui accepte entrée un fichier excel pour lequel j'ai bien évidemment indiqué un schéma. Il peut arriver que le format du fichier évolue (ajout d'une colonne par exemple) sans que je sois mis au courant.
    Lorsque le job est lancé, le nouveau format du fichier entrée peut soit
    - faire planter le job ce qui est le plus rassurant finalement, puisque je dois revoir le schéma du composant et ainsi gérer le nouveau format
    - passer sans détecter d'erreur induisant des traitements sur des colonnes "décalées" qui ne contiennent plus les données que le job est censé attendre.

    Je souhaiterai pouvoir analyser la structure d'un fichier entrée afin de vérifier que son schéma correspond bien au schéma attendu avant de démarrer mes traitements.
    Le composant tfileInputExcel impose d'indiquer un schéma, moi j'aimerai avoir plutôt un composant qui lit un fichier excel et qui en déduit un schéma qui je puisse comparer avec celui attendu.

    Vos conseils ou idées sont les bienvenus !

  2. #2
    Membre éprouvé
    Homme Profil pro
    Architecte Décisionnel
    Inscrit en
    Février 2008
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte Décisionnel

    Informations forums :
    Inscription : Février 2008
    Messages : 866
    Points : 1 260
    Points
    1 260
    Par défaut
    Salut,

    Le composant tSchemaComplianceCheck est fait pour ça. Il va même au delà en analysant les données de ton fichier pour remonter les alertes de format.
    Attention, si tes fichiers sont volumineux, ça peut prendre du temps -> Tu pourrais limiter l'analyse aux premières lignes.

    Nicolas

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Salut,

    Je comptais effectivement me baser sur ce composant mais il ne semble faire QUE de la vérification de contenu de colonnes (soit toutes les colonnes soit certaines à spécifier). Je viens de tester en envoyant un fichier dont le nombre de colonnes varie du schéma indiqué (1 colonne en moins), aucune erreur retournée.

    Peut-être est-ce ma mauvaise connaissance du composant ?

  4. #4
    Membre éprouvé
    Homme Profil pro
    Architecte Décisionnel
    Inscrit en
    Février 2008
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte Décisionnel

    Informations forums :
    Inscription : Février 2008
    Messages : 866
    Points : 1 260
    Points
    1 260
    Par défaut
    Ah ok.
    J'imagine que pour les fichiers xls, il peut toujours récupérer toutes les colonnes définies sur le schéma, même si au final elles ne sont pas renseignées.

    Du coup je pense qu'il n'y a pas de solution technique.
    Par contre, si tu as des entêtes de colonnes, tu peux vérifier qu'elles sont valorisées pour chaque colonne. Ou au pire, vérifier la présence de données sur les premières lignes de ton fichier ?

    Nicolas

  5. #5
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Novembre 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Salut,

    Ta réponse rejoint un peu le premier constat que j'avais pu faire ...
    J'ai effectivement la dernière colonne de mon schéma qui prend soit "Oui" soit "Non" comme valeurs, je vais donc me baser sur le test du contenu de cette colonne pour vérifier si ma structure est inchangée.
    Je vais aussi voir comme tu l'indiques pour tester le contenu de la ligne d'entête.

    Je continue tout de même à chercher si un composant a pu être développé dans la communauté.

Discussions similaires

  1. Récupérer l'entête d'un fichier Excel
    Par nanod dans le forum kettle/PDI
    Réponses: 0
    Dernier message: 18/05/2009, 19h57
  2. [XL-2003] Récupérer code VBA d'un fichier Excel
    Par Mimosa777 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/04/2009, 19h51
  3. Récupérer les données d'un fichier excel
    Par deubelte dans le forum Windows
    Réponses: 1
    Dernier message: 11/04/2009, 23h04
  4. Réponses: 1
    Dernier message: 04/03/2008, 00h59
  5. [CSV] Récupérer une image d'un fichier excel
    Par GoTrUnKo dans le forum Langage
    Réponses: 1
    Dernier message: 21/06/2007, 16h53

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