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

Scripts/Batch Discussion :

Plusieurs valeurs dans un parametre en batch [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre éprouvé
    Homme Profil pro
    Analyse système
    Inscrit en
    Juin 2013
    Messages
    976
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 976
    Par défaut Plusieurs valeurs dans un parametre en batch
    Bonjour,

    j'ai un script batch, qui fait tourner une requête et qui génère un fichier Excel, seulement je vais y apporter l'évolution suivante et j'avais pensé à deux manières de faire:

    voici le code de mon batch
    Code Batch : 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
    ACCEPT identifiant PROMPT 'identifiant : '
    set echo off
    set newp none
    set termout off
    set feedb off
    set head on
    set heads on
    set underline off
    SET VERIFY OFF
    set pages 10000
    set lines 100
    set pagesize 20000
    set long 200
    set colsep ";"
    define date1=foo
    column date1 new_value date1
    column  identifiant format a20
    column  nom format a12
    column  champs3 format 9999999999
    select 'monfichier_'||to_char(sysdate-1,'yyyy_mm_dd_HH_MM_SS')||'.csv'  date1 from dual;
    set termout on
    spool "D:\xxxx\xxxxx\dddd\&date1"
    alter session set NLS_NUMERIC_CHARACTERS=',.';
    SELECT t1.identifiant as identifiant,
    ta.nom as nom,
    t2.champs3 as champs3  
    FROM table1 t1  
    inner JOIN table2 t2 ON ....
    inner join table3 d2 on ....
    inner join table4 ta on .....
    WHERE identifiant in in ('&identifiant ')
    order ..... asc;
    spool off

    1er méthode:
    j'aimerais passer un paramètre dans ma requête, comme ça l'utilisateur lance le script (voir code ci avant) et il saisit un numéro et dès qu'il appuie sur entrée, la requête tourne, le fichier Excel se génère et fini.
    Seulement, j'aimerais faire en sorte que l'utilisateur puisse saisir plusieurs identifiants ex: 123,456,789 et dans la requête ça donnerait comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE ta.identifiant in ('123','456','456','789')
    mais le problème, si je mets un chiffre ça marche, mais si j'en rentre plusieurs séparés par des virgules, ça ne marche plus, comment ça se fait et comment pourrais-je faire pour que ça marche ?

    2eme méthode:
    on a pensé au système suivant : on enregistre dans la base de données, dans une table une liste de numéros, avec une colonne "traite" ayant pour valeur "oui" ou "non" ou 0/1 peu importe. On fait un select de ces numéros non traités, puis notre batch tourne ayant pour paramètre la liste des numéros retournée par la précédente requête.
    cette méthode m'a l'air d'être non pas une usine à gaz mais pire que ça pour pas grand chose, mais je pense que la méthode 1 est plus faisable?

    merci pour vos conseils !

  2. #2
    Membre éprouvé
    Homme Profil pro
    Analyse système
    Inscrit en
    Juin 2013
    Messages
    976
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 976
    Par défaut
    pour information,
    ce sujet n'est plus d'actualité.

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

Discussions similaires

  1. Insérer plusieurs valeurs dans rq INSERT
    Par Guennec.Yannick dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 24/03/2007, 12h52
  2. récupérer plusieurs valeurs dans un champ hidden
    Par karimphp dans le forum Langage
    Réponses: 3
    Dernier message: 07/12/2006, 17h13
  3. Réponses: 10
    Dernier message: 03/07/2006, 14h55
  4. Réponses: 4
    Dernier message: 19/05/2006, 10h26
  5. Plusieurs valeurs dans un value
    Par nebule dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/11/2004, 10h58

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