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 :

Charger / Utiliser des variables de context en boucle


Sujet :

Développement de jobs

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut Charger / Utiliser des variables de context en boucle
    Bonjour à tous,

    J'ai réalisé un JOB qui extrait des informations d'une base de données (Mysql): Ces informations récupérées correspondent à des informations d'un environnement applicatif tel que des paramètres de connexion d'un environnement (base de donées, ip, port, login ssh etc...)
    => soit 14 valeurs récupérées

    Nom : TALEND_1.jpg
Affichages : 779
Taille : 28,0 Ko

    En fonction de la topologie de l'environnement (mono noeud ou multi noeud) il peut y avoir 1 ou n lignes retourner par "tMysqlInput" donc 1 ou n fichier généré par le "tFileOutputDelimited_1"

    L'objectif de ce job est de tester que pour chaque informationretourné correspondant à l’environnement, la connexion est OK pour le SSH et pour la BDD

    Voici mon job:

    Nom : TALEND_0.jpg
Affichages : 986
Taille : 55,1 Ko

    Explication du job:

    1) Récupération des valeurs depuis une connexion Mysql
    2) Sortie dans un fichier: 1 fichier par environnement
    3) Mise en forme du fichier via un tSPlitRow pour respecter le format KEY / VALUE
    4) Charger dans un contexte
    5) Tester que pour chaque fichier environnement, les valeurs SSH sont bonnes
    6) Tester que pour chaque fichier environnement, les valeurs DB sont corrects

    Ce que je n'arrive pas a réaliser ce sont les étapes 5) et 6) pour chaque environnement.
    Il réalise bien la connexion (tSSH) mais il le fait que sur 1 des environnements.

    Je suspecte le lien "OnComponentOK" qui casse le flux....

    ------------------------------------------------------------------------------
    CONNEXION ENVIRONNEMENT SSH
    ------------------------------------------------------------------------------
    in-bscs1ap


    Voici toute sortie d’exécution :

    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
    Démarrage du job Init_package a 04:23 19/07/2018.
    [statistics] connecting to socket on port 3665
    [statistics] connected
     
    Path:C:/ITG_IN-BSCS1APcsv
    Path:C:/ITG_IN-SOI1WEBcsv
    Path:C:/ITG_IN-SOI2WEBcsv
    Path:C:/ITG_IN-SOI3WEBcsv
     
    tContextLoad_2 set key "ENV_SHDES" with value "ITG"
    tContextLoad_2 set key "ENV_NB_NODE" with value "4"
    tContextLoad_2 set key "ENV_HOSTNAME" with value "IN-BSCS1AP"
    tContextLoad_2 set key "ENV_IS_BATCH" with value "1"
    tContextLoad_2 set key "ENV_IS_SOI" with value "0"
    tContextLoad_2 set key "ENV_SSH_PORT" with value "22"
    tContextLoad_2 set key "ENV_SSH_LOGIN" with value "TOTO"
    tContextLoad_2 set key "ENV_SSH_MDP" with value "TATA"
    tContextLoad_2 set key "ENV_SSH_PATH" with value "$WORK/"
    tContextLoad_2 set key "ENV_DB_NAME" with value "MABASE"
    tContextLoad_2 set key "ENV_DB_HOST" with value "TEST.MS.FCM"
    tContextLoad_2 set key "ENV_DB_PORT" with value "1521"
    tContextLoad_2 set key "ENV_DB_LOGIN" with value "PWD"
    tContextLoad_2 set key "ENV_DB_MDP" with value "PWD"
     
    ------------------------------------------------------------------------------
    CONNEXION ENVIRONNEMENT SSH
    ------------------------------------------------------------------------------
    in-bscs1ap
     
    tContextLoad_2 set key "ENV_SHDES" with value "ITG"
    tContextLoad_2 set key "ENV_NB_NODE" with value "4"
    tContextLoad_2 set key "ENV_HOSTNAME" with value "IN-SOI1WEB"
    tContextLoad_2 set key "ENV_IS_BATCH" with value "0"
    tContextLoad_2 set key "ENV_IS_SOI" with value "1"
    tContextLoad_2 set key "ENV_SSH_PORT" with value "22"
    tContextLoad_2 set key "ENV_SSH_LOGIN" with value "TOTO"
    tContextLoad_2 set key "ENV_SSH_MDP" with value "TATA"
    tContextLoad_2 set key "ENV_SSH_PATH" with value "$WORK/"
    tContextLoad_2 set key "ENV_DB_NAME" with value "MABASE"
    tContextLoad_2 set key "ENV_DB_HOST" with value "TEST.MS.FCM"
    tContextLoad_2 set key "ENV_DB_PORT" with value "1521"
    tContextLoad_2 set key "ENV_DB_LOGIN" with value "PWD"
    tContextLoad_2 set key "ENV_DB_MDP" with value "PWD"
    tContextLoad_2 set key "ENV_SHDES" with value "ITG"
    tContextLoad_2 set key "ENV_NB_NODE" with value "4"
    tContextLoad_2 set key "ENV_HOSTNAME" with value "IN-SOI2WEB"
    tContextLoad_2 set key "ENV_IS_BATCH" with value "0"
    tContextLoad_2 set key "ENV_IS_SOI" with value "1"
    tContextLoad_2 set key "ENV_SSH_PORT" with value "22"
    tContextLoad_2 set key "ENV_SSH_LOGIN" with value "TOTO"
    tContextLoad_2 set key "ENV_SSH_MDP" with value "TATA"
    tContextLoad_2 set key "ENV_SSH_PATH" with value "$WORK/"
    tContextLoad_2 set key "ENV_DB_NAME" with value "MABASE"
    tContextLoad_2 set key "ENV_DB_HOST" with value "TEST.MS.FCM"
    tContextLoad_2 set key "ENV_DB_PORT" with value "1521"
    tContextLoad_2 set key "ENV_DB_LOGIN" with value "SYSADM"
    tContextLoad_2 set key "ENV_DB_MDP" with value "SYSADM"
    tContextLoad_2 set key "ENV_SHDES" with value "ITG"
    tContextLoad_2 set key "ENV_NB_NODE" with value "4"
    tContextLoad_2 set key "ENV_HOSTNAME" with value "IN-SOI3WEB"
    tContextLoad_2 set key "ENV_IS_BATCH" with value "0"
    tContextLoad_2 set key "ENV_IS_SOI" with value "1"
    tContextLoad_2 set key "ENV_SSH_PORT" with value "22"
    tContextLoad_2 set key "ENV_SSH_LOGIN" with value "TOTO"
    tContextLoad_2 set key "ENV_SSH_MDP" with value "TATA"
    tContextLoad_2 set key "ENV_SSH_PATH" with value "$WORK/"
    tContextLoad_2 set key "ENV_DB_NAME" with value "MABASE"
    tContextLoad_2 set key "ENV_DB_HOST" with value "TEST.MS.FCM"
    tContextLoad_2 set key "ENV_DB_PORT" with value "1521"
    tContextLoad_2 set key "ENV_DB_LOGIN" with value "PWD"
    tContextLoad_2 set key "ENV_DB_MDP" with value "PWD"
    [statistics] disconnected
    Job Init_package terminé à 04:23 19/07/2018. [Code sortie=0]

  2. #2
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut
    Salut rhum_ain,

    5) Tester que pour chaque fichier environnement, les valeurs SSH sont bonnes
    6) Tester que pour chaque fichier environnement, les valeurs DB sont corrects
    A priori ton flux marche bien, il parcourt les fichiers environnement que tu as crée, fichier par fichier.
    Donc, pour savoir si les valeurs des fichiers sont correctes, j'aurai branché 2 relations (OnSubjobOk,OnSubjobError) sur chacun des composants tOracleConnection et tSSH.
    Comme ceci :

    Nom : jobs_tests_connexion.PNG
Affichages : 765
Taille : 13,3 Ko

    Config tJavaFlex_1:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    row1.MSG_CNX = (String)globalMap.get("tOracleConnection_1_ERROR_MESSAGE");

    Config tJavaFlex_2:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    row2.MSG_CNX = "CONNEXION REUSSI AVEC LES VALEURS DU FICHIER "+(String)globalMap.get("tFileList_1_CURRENT_FILE");

    Config tFileOutputDelimiyed => KO_ERROR_MSG :

    (String)globalMap.get("tFileList_1_CURRENT_FILE")+"_KO"

    C'est juste une idée, tu peux appliquer le même principe pour le composant tSSH, comme ça pour chacun des fichiers tu peux savoir s'il a été utilisé, si le test de ses valeurs est OK ou pas, avec des messages d'erreur.
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

  3. #3
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut
    Salut rhum_ain,

    Par contre, je pense que c'est mieux de découper ton job en deux sous jobs, un parent un fils, ainsi le bout de traitement que je t'ai rajouté dans le message précédent, tu le raccorde au début dans ton job fils.

    Nom : decoupe.jpg
Affichages : 750
Taille : 87,3 Ko

    Tu peux rajouter une variable de contexte dans le job père afin de récupérer le nom du fichier encours de traitement et de le transmettre au job fils afin d'avoir ça par exemple : (String)globalMap.get("tFileList_1_CURRENT_FILE")+"_KO.txt"

    Ainsi, tu vas faire quelques chose comme ça :

    Job père :

    Nom : pere.PNG
Affichages : 689
Taille : 5,9 Ko

    Dans le tJava :

    context.env_file = (String)globalMap.get("tFileList_1_CURRENT_FILE")+"_KO.txt";


    Parametre tRubJob :

    Nom : parametr_tRunJob.PNG
Affichages : 727
Taille : 14,8 Ko

    Note bien que tu dois décocher la case "Arrêt en cas en d'erreur du fils". sinon au premier erreur de tes fichiers de connexions ton traitement s'arrête.
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut
    Merci pour cette proposition de solution...

    Justement tu m'as devancé.

    Voici la question que j'allais poser :

    Si j'ai 2 job:
    JOB 1: INIT_PACKAGE : ce job permet d'initialiser des variables de contexte
    JOB 2: DEPLOY_PACKAGE: ce job permet de déployer et utilise des variables de contexte initialiser dans le job 1.

    Est ce qu'il est possible de transmettre le contexte en faisant cela depuis un JOB MAIN

    JOB MAIN:

    JOB 1 ------- (subjobOK)--------> JOB 2

    J'arrive à le faire lorsque le JOB 1 fait appel directement au JOB 2 (ce qui correspond au cas que tu m'as proposé) mais pas en passant par un JOB MAIN, cela ne fonctionne pas.

    Est-ce possible ? car je n'ai jamais réussi à le faire: C'est "peut être" que cela n'est pas possible...

  5. #5
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut

    Citation Envoyé par rhum_ain Voir le message
    Est-ce possible ? car je n'ai jamais réussi à le faire: C'est "peut être" que cela n'est pas possible...
    Oui, c'est possible, déclare les variables de contextes que tu veux récupérer non seulement dans les contexte JOB1 mais aussi dans JOB2.
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut
    Je le fais mais cela ne fonctionne pas

    La variable contexte lu dans le JOB DEPLOY (job 2) ne contient pas de valeur.

    Voici le JOB :

    Nom : TALEND_0.JPG
Affichages : 737
Taille : 73,4 Ko

    J'ai ajouter la variable de context sur les JOB : MAIN et DEPLOY: Cela ne fonctionne pas

    Voici la log dans les TJAVA des jobs MAIN et DEPLOY

    System.out.println("JOB_MAIN - TARGET_ENV: " + context.TARGET_ENV);
    Le job DEPLOY ne contient que le composant tJava.

    Console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ..
    détail sur le JOB INIT
    ...
    JOB_INIT - TARGET_ENV: ITG
    JOB_MAIN - TARGET_ENV: 
    JOB_DEPLOY - TARGET_ENV: 
    [statistics] disconnected
    Job Main terminé à 11:11 19/07/2018. [Code sortie=0]

  7. #7
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par rhum_ain Voir le message

    Console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ..
    détail sur le JOB INIT
    ...
    JOB_INIT - TARGET_ENV: ITG
    JOB_MAIN - TARGET_ENV: 
    JOB_DEPLOY - TARGET_ENV: 
    [statistics] disconnected
    Job Main terminé à 11:11 19/07/2018. [Code sortie=0]
    Tu n'as que ce qui est ci-dessus comme message dans ta console ?
    Il n'y a pas de plantage de ton sous-jobs Init ?
    Ta variable context.TARGET_ENV est bien valorisée dans le job père ?
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut
    Voici le job MAIN:

    Nom : TALEND_JOB.PNG
Affichages : 695
Taille : 34,5 Ko

    Ce job fait appel au job INIT


    Voici un extrait du job INIT:

    Nom : TALEND_0.JPG
Affichages : 733
Taille : 83,6 Ko

    => On voit bien que dans le JOB, on charge en contexte le contenu d'un fichier (application.properties).
    => La variable qui m'intéresserait pour les job fils "TARGET_ENV"
    => Cette variable est bien set et utiliser dans le job INIT, elle est utilisé comme préfix dans le nom de certain fichier.
    Cette variable est également affichée via un tJava dans le job INIT et affiché dans la console "JOB_INIT - TARGET_ENV: ITG"

    Voici les variables du contexte application.properties

    Nom : TALEND_1.JPG
Affichages : 732
Taille : 51,7 Ko

    Voici le fichier a charger dans le contexte

    Nom : TALEND_2.JPG
Affichages : 709
Taille : 22,7 Ko

    Voici le job DEPLOY:

    Nom : TALEND_3.JPG
Affichages : 724
Taille : 42,2 Ko

    Voici la console lorsque j'exécute le job main

    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
    Démarrage du job Main a 08:55 20/07/2018.
    [statistics] connecting to socket on port 3981
    [statistics] connected
    JOB_INIT - Path:C:/1-MY_DATA/MISSION_OCA/APPLICATION/BSCSIX/APPLICATIONS/BSCS_DELIVERY/TALEND/CONFIG/ITG//ITG_IN-BSCS1AP.tmp
    JOB_INIT - Path:C:/1-MY_DATA/MISSION_OCA/APPLICATION/BSCSIX/APPLICATIONS/BSCS_DELIVERY/TALEND/CONFIG/ITG//ITG_IN-SOI1WEB.tmp
    JOB_INIT - Path:C:/1-MY_DATA/MISSION_OCA/APPLICATION/BSCSIX/APPLICATIONS/BSCS_DELIVERY/TALEND/CONFIG/ITG//ITG_IN-SOI2WEB.tmp
    JOB_INIT - Path:C:/1-MY_DATA/MISSION_OCA/APPLICATION/BSCSIX/APPLICATIONS/BSCS_DELIVERY/TALEND/CONFIG/ITG//ITG_IN-SOI3WEB.tmp
    JOB_INIT - [20-07-2018 08:55:06] CONNEXION SSH - OK - IN-BSCS1AP - Conf File : ITG_IN-BSCS1AP.tmp
    JOB_INIT - [20-07-2018 08:55:06] CONNEXION DB - OK - BSCSXITG - Conf File : ITG_IN-BSCS1AP.tmp
    JOB_INIT - TARGET_ENV: ITG
    JOB_INIT - [20-07-2018 08:55:07] CONNEXION SSH - OK - IN-SOI1WEB - Conf File : ITG_IN-SOI1WEB.tmp
    JOB_INIT - [20-07-2018 08:55:07] CONNEXION DB - OK - BSCSXITG - Conf File : ITG_IN-SOI1WEB.tmp
    JOB_INIT - TARGET_ENV: ITG
    JOB_INIT - [20-07-2018 08:55:07] CONNEXION SSH - OK - IN-SOI2WEB - Conf File : ITG_IN-SOI2WEB.tmp
    JOB_INIT - [20-07-2018 08:55:08] CONNEXION DB - OK - BSCSXITG - Conf File : ITG_IN-SOI2WEB.tmp
    JOB_INIT - TARGET_ENV: ITG
    JOB_INIT - [20-07-2018 08:55:08] CONNEXION SSH - OK - IN-SOI3WEB - Conf File : ITG_IN-SOI3WEB.tmp
    JOB_INIT - [20-07-2018 08:55:08] CONNEXION DB - OK - BSCSXITG - Conf File : ITG_IN-SOI3WEB.tmp
    JOB_INIT - TARGET_ENV: ITG
    JOB_MAIN - TARGET_ENV: 
    JOB_DEPLOY - TARGET_ENV: 
    [statistics] disconnected
    Job Main terminé à 08:55 20/07/2018. [Code sortie=0]

    Voici le code présent dans le composant tJava du JOB_MAIN (idem pour les jobs JOB_INIT et JOB_DEPLOY)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    System.out.println("JOB_MAIN - TARGET_ENV: " + context.TARGET_ENV);

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut
    Si je rajoute cela dans le job INIT, je coche la case "transmettre tous le contexte"

    Nom : TALEND_4.JPG
Affichages : 689
Taille : 13,9 Ko

    Lorsque j'exécute le job INIT, j'obtiens dans la console ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...
    JOB_INIT - TARGET_ENV: ITG
    JOB_DEPLOY - TARGET_ENV: ITG
    [statistics] disconnected
    Job Init_package terminé à 09:17 20/07/2018. [Code sortie=0]
    La variable de contexte "TARGENT_ENV" est bien lu dans le job DEPLOY.

    Mais ce n'est pas comme cela que je pensais organiser mes jobs.
    Mais je ne sais as si cela est possible en passant par un job "chapeau" (job_main)

  10. #10
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut
    Salut d'abord avant tout,

    Je ne rentre pas dans tous les détails de ton projet, je t'ai répondu par rapport à la première image que tu as posté, voici pour moi le découpage qui à un sens.

    Nom : decoupe (1).jpg
Affichages : 732
Taille : 87,3 Ko

    Le job père ou le job Main va récupérer tes paramètres les découpés et les mettre dans tes fichiers csv, le job père à travers le composant tFileList va parcourir tes fichiers générés, pour chaque fichier le job fils charge ses valeurs en tant que paramètre de contextes, puis il teste afin de savoir s'il peut bien se connecter à la base Oracle et en SSH. Donc le job père parcourt les fichiers et appel le job fils qui effectue le test de chaque fichiers. à mon avis c'est ce principe là qui te permettra de faire ce que tu veux. Il faut bien noter que c'est le composant tRunJob qui exécute le job fils, il faut décocher la case "Arrêt en cas d'erreur du fils", par ce que dans le job fils tu utilises le composant tOracleConnection, or ce composant quand tu le donne des paramètres de connexion invalides, il lève une exception et arrête tous le traitement. donc il ne passera pas au fichier suivant.

    De ce que je vois, ton job père appel juste deux jobs fils et ne fait rien d'autres !

    Voici comment j'aurai fait ça :

    Job père ou Job Main :

    Nom : job_pere.PNG
Affichages : 692
Taille : 5,1 Ko

    Pour ton cas, il doit contenir tous ce qui est en haut jusqu'au composant tFileList.

    le tJava va recupérer le fichier encours et le donné au job fils afin qu'il le charge en contexte et le test.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    context.env_file = (String)globalMap.get("tFileList_1_CURRENT_FILE");
    Config tRunJob :

    Nom : config_tRunJob.PNG
Affichages : 724
Taille : 16,0 Ko

    Job Fils :

    Nom : job_fils.PNG
Affichages : 721
Taille : 13,2 Ko

    Tu dois brancher ton tOracleConnection de cette manière si tu veux , si les paramètres sont bons ta connecxion est OK, Sinon tu peux voir pour chaque fichier pourquoi la connexion est KO.
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2018
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2018
    Messages : 33
    Points : 36
    Points
    36
    Par défaut
    J'ai découpé mon Job en 2, comme tu me le proposais et ce la fonctionne bien.
    Je te remercie

  12. #12
    Membre averti

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2011
    Messages
    160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2011
    Messages : 160
    Points : 443
    Points
    443
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par rhum_ain Voir le message
    J'ai découpé mon Job en 2, comme tu me le proposais et ce la fonctionne bien.
    Je te remercie
    Tant mieux , n'oublies pas le Nom : pushvert.PNG
Affichages : 729
Taille : 393 octets pour les réponses pertinentes.
    Utilisez le bouton pour mettre en valeur la ou les réponses qui vous ont été les plus utiles. Marquez comme si c'est le cas.

    ''Le savoir est la seule matière qui s’accroît lorsqu’on la partage.''
    (Socrate)

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

Discussions similaires

  1. Utilisation des variables de contexte
    Par babou59 dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 16/03/2009, 11h11
  2. Utilisation des variables de context
    Par INFOBI dans le forum Développement de jobs
    Réponses: 9
    Dernier message: 26/02/2009, 15h06

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