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

DataStage Discussion :

[PX 7.5] Générer Warning à partir d'une lookup


Sujet :

DataStage

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 66
    Points : 58
    Points
    58
    Par défaut [PX 7.5] Générer Warning à partir d'une lookup
    Bonjour,

    j'ai un job qui doit détecter les doublons d'un flux, et lors de l'occurence de doublons, il doit les stocker dans un fichier et indiquer un warning dans le director.
    Mon flux se compose comme suit :
    (1)-le flux principal
    (2)-a partir du flux principal, j'agrege sur une cle et comtpe le nombre d'enregistrements sur la clé. je ne sélectionne que ceux qui sont présents une fois, donc pas doublonnés.

    J'ai une lookup qui prend (1) en principal et (2) en référence.
    Le lookup failure est égal à reject.
    j'ai deux liens qui sortent de la lookup. celui de reject est positionné en reject.
    Mes fichiers sont bien alimentés en sortie de la lookup. Mais je pensais qu'en indiquant qu'il s'agissait d'un flux de rejet, un warning serait généré dans le director. or ça n'est pas le cas.
    y'a-t'il une astuce pour que cela fonctionne ?

    merci d'avance
    L'informatique est une science exacte au comportement aléatoire.

  2. #2
    Expert confirmé
    Avatar de doc malkovich
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2008
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 884
    Points : 4 285
    Points
    4 285
    Billets dans le blog
    1
    Par défaut
    Hello,
    Je ne connais pas PX mais si c'est comme la version standard normalement tu mets un filtre dans ton transformer pour les enregs à prendre (dans ton cas nb=1) et tous les enregs ne répondant pas à ce filtre iront dans le flux de rejet, avec un warning.
    N'oubliez pas de cliquer sur lorsque votre problème est réglé !

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 135
    Points : 167
    Points
    167
    Par défaut
    Bonjour,

    Comme les rejets sont gérés, DS ne génère pas de warning.

    Pour créer le warning, il faut appeler la routine base DSLogWarn... or, un job PX n'accepte que les fonctions écrites en c! mais les routines basics peuvent être appelées : dans les job sequencer, en before ou afer job sub-routine d'un job PX.

    Pour ton problème, je te propose :
    Ton job crée un fichier plat uniquement si des doublons ont été détectés. pour rendre le truc joli, la première ligne de ce fichier contient le nombre de doublons
    Tu créé une routine A en basic, qui lit ce fichier : Si le fichier existe, on appelle la fonction DSLogWarn
    Tu appelle la routine A dans en after job sub-routine de ton job

    La routine A :
    * Ouverture du fichier
    OpenSeq CheminFichier to logtemp Else Ans = ""
    * Parcours du fichier
    loop
    while ReadSeq varnbDoublond from logtemp
    CALL DSLogWarn(varnbDoublond : " lignes en doublons dans le traitement",'Doublons!!!')
    repeat
    CloseSeq paramtemp
    Ans=""

    tu auras plus de détail ici : http://www.dsxchange.com/viewtopic.p...3335e8f7032668

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 66
    Points : 58
    Points
    58
    Par défaut
    Quand j'ai lu ton explication dude666, je me suis dit c'est tellement simple !!

    J'ai instancié et zoup ça fonctionne !

    Merci énormément pour l'astuce de l'appel à la subroutine en after !


    L'informatique est une science exacte au comportement aléatoire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. générer unpdf à partir d'une page html
    Par Dan67 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 18/02/2009, 08h16
  2. Générer automatiquement à partir d'une BDD
    Par xtiand4 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/11/2007, 09h31
  3. générer PDF à partir d'une page web
    Par kroukse dans le forum C#
    Réponses: 16
    Dernier message: 12/09/2007, 11h55
  4. Réponses: 2
    Dernier message: 08/04/2007, 22h49
  5. Réponses: 6
    Dernier message: 03/03/2006, 09h06

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