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

 Delphi Discussion :

If /Paramètres d'une procédure.


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 14
    Points
    14
    Par défaut If /Paramètres d'une procédure.
    Bonsoir, je post ici (et j'espère que c'est à peu près dans la bonne section)

    j'ai 2 paramètres à entrer, et je voudrais que le premier paramètre soit obligatoirement le chemin direct vers l'application delphi de mon programme (ici : 'data\) et le second qu'il soit obligatoirement un string suivi de '.db'
    En fait, pour la première condition j'ai 'bidouillé' un truc pour que ça fonctionne, mais le but n'est pas là et la bidouille ce n'est pas ce que je veux que l'on retienne de mon programme, pour la deuxieme condition après recherches je n'ai vraiment pas d'idées, me faudrait une fonction qui détecte si le paramètre est une string, je ne sais pas trop.

    Voici mon code :

    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
     
    begin
     
      BuildDataBase(ParamStr(1),ParamStr(2));
      If(ParamStr(1)='data\') and (ParamStr(2):=string) then
      begin
        WriteLn('Parameter ='+IntToStr(i)+'='+ParamStr(i));
        WriteLn('Database build succeed');
      end
      else
      begin
        for i:=0 to Paramcount do
          WriteLn('Only one or both values are false');
          WriteLn('Please check the right syntax : DBTextToSqliteTable "InputFileFolder\" "DatabaseName.db"');
      end;
      Readln;
    end.
    Merci d'avance si un courageux a quelques minutes à me consacrer pour chercher ça x)

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 830
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 830
    Points : 13 574
    Points
    13 574
    Par défaut
    ParamStr(0), ParamStr(1)... ParamStr(n) seront forcement des chaînes.
    Le mieux est que tu commences par te familiariser un peu avec Delphi. Les tutoriels sont ici.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    ParamStr(0), ParamStr(1)... ParamStr(n) seront forcement des chaînes.
    Le mieux est que tu commences par te familiariser un peu avec Delphi. Les tutoriels sont ici.
    Le problème est que je fais ça pour un boulot et que je dois avancer chaque jour, donc pas le temps de prendre 3 jours pour me familiariser j'apprend sur le tas, donc en fait, pour le 2ieme paramètre, il faudrait juste que je m'assure qu'il finisse bien par .db , as tu une idée tout de même ou pas dutout ? :/

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 830
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 830
    Points : 13 574
    Points
    13 574
    Par défaut
    Et bien bon courage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if SameText(ExtractFileExt(ParamStr(2)), '.db') then...

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 885
    Points : 11 403
    Points
    11 403
    Billets dans le blog
    6
    Par défaut
    if Pos(S, '.db') = Length(S) -2 devrait le faire

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    Et bien bon courage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if SameText(ExtractFileExt(ParamStr(2)), '.db') then...
    Oui, c'est clairement compliqué, après c'est un stage je suis là pour apprendre, mais je compte bien revenir dans cette entreprise, donc je doit avancer et apprendre en même temps x)


    Merci pour le deuxième paramètre, que pourrai-je faire pour le premier ?
    Sachant que l'utilisateur est censé utiliser cette commande :

    (Nom de mon programme) "Dossier contenant les datas" "Nom de la database.db"
    Je dois donc interdire à l'utilisateur d'entre autre chose qu'un chemin diffèrent de celui du fichier

    Je ne voudrai pas que vous ayez l'impression que je vous demande de résoudre mon exercice lol(car oui c'est un exercice) mais là pour le coup je suis bloqué dessus depuis 18h ou j'ai commencé, j'ai pas pue avancer et je suis censé arriver demain matin et avoir résolu ça.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par tourlourou Voir le message
    if Pos(S, '.db') = Length(S) -2 devrait le faire

    Merci

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    J'ai Finalement trouvé à l'aide d'Epitouille, sur le chat
    Je suis un peu idiot sur les bords, il me suffisait de faire un : IF DirectoryExists(paramstr(1))
    Et de catcher l'exception ^^

    Merci pour votre aide !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/12/2005, 13h50
  2. Réponses: 11
    Dernier message: 23/08/2005, 11h04
  3. [SQL Server] Passage d'un paramètre dans une procédure
    Par navis84 dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/01/2005, 14h19
  4. Passer le nom de colonne en paramètre d'une procédure stocké
    Par theartist dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 04/01/2005, 16h39
  5. Un fichier .bmp comme paramètre d'une Procédure stockée
    Par FONKOU dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/10/2004, 18h56

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