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

WinDev Discussion :

Mon code sql ne compile pas dans mon algorithme


Sujet :

WinDev

  1. #21
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut problème de connexion sql: SQLConnecte
    Bonjour!
    Pour ce qui on intervenu sur ma dernière discussion, mon problème n'est pas fini jusqu'à présent.
    Dans l'éditeur de windev tout est ok et après l'installation mon portable sur le quel je travail tout est ok aussi.
    Mais j'ai installé sur une autre machine et je me suis rendu compte que la connexion ne marche pas.
    j'utilisais le SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "") car je travaillais avec le D.
    J'ai donc changé par SQLConnecte("C:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "") car j'installe sur le C.
    Mais jusqu'à présent ça ne marche pas.

    Est ce quelle que chose doit être installé sur la machine avant?
    voici mon code au complet en bas:
    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
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    d est un entier=0
    q est un entier=0
    qt1 est un entier=0
    qt2 est un entier=0
    TexteRequête1 est une chaîne
    TexteRequête2 est une chaîne
    j est une Date
    i est une chaîne
    k est une chaîne
    o est une chaîne
    x est une chaîne
    y est une Date
     
    //sParam2 est une chaine
    HLitRechercheDernier(Comporte,Comporte.Designation,FEN_Fiche_Contient.SC_Fiche.COMBO_Designation)
    SI HTrouve(Comporte) ALORS
    	FEN_Fiche_Contient.SC_Fiche.SAI_Date_peremption=Comporte.Date_peremption	
    	FEN_Fiche_Contient.SC_Fiche.COMBO_Nom_magasin=Comporte.Nom_magasin
    	o=Comporte.Nom_magasin
    	x=FEN_Fiche_Contient.SC_Fiche.COMBO_Designation
    	y=Comporte.Date_peremption			
      	SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "")
    	TexteRequête1 = "SELECT DISTINCT  Designation  , Nom_magasin  ,Date_peremption , Qte FROM Comporte  "
    	SQLExec(TexteRequête1, "REQ1")
    	TANTQUE SQLAvance("REQ1") = 0			
    		i=SQLLitCol("REQ1", 1)
    	SI i=x ALORS
    			k=SQLLitCol("REQ1", 2)	
    		 SI k=o ALORS
    				j=SQLLitCol("REQ1", 3)				
    			SI j=y ALORS					
    					HLitDernier(COPIECOMPORTE)
    					COPIECOMPORTE.RQC = SQLLitCol("REQ1", 4)
    					COPIECOMPORTE.RQCI=0
    					HAjoute(COPIECOMPORTE)
    			FIN
    		FIN
    	FIN
     
     
    FIN	
    	SQLFerme("REQ1")
    	TexteRequête2 ="SELECT DISTINCT Designation ,  Nom_magasin  ,  Date_peremption ,  Qte  FROM Contient  "
    	SQLExec(TexteRequête2, "REQ2")
    TANTQUE SQLAvance("REQ2") = 0	
    		i=SQLLitCol("REQ2", 1)		
    		SI i=x ALORS
    			k=SQLLitCol("REQ2", 2)			
    			SI k=o ALORS
    				j=SQLLitCol("REQ2", 3)				
    				SI j=y ALORS					
    					HLitDernier(COPIECOMPORTE)
    					COPIECOMPORTE.RQC=0
    					COPIECOMPORTE.RQCI = SQLLitCol("REQ2", 4)					
    					HAjoute(COPIECOMPORTE)						
    				FIN
    		FIN	
     
    	FIN
    FIN
    	SQLFerme("REQ2")
    	HLitPremier(COPIECOMPORTE)
    	TANTQUE PAS HEnDehors(COPIECOMPORTE)
    		SI COPIECOMPORTE.RQC<>"" ALORS			
    		qt1+=COPIECOMPORTE.RQC
    		FIN
    		SI COPIECOMPORTE.RQCI<>"" ALORS	
    		qt2+=COPIECOMPORTE.RQCI
    		FIN
    		HLitSuivant(COPIECOMPORTE)	
    	FIN
    	HSupprimeTout(COPIECOMPORTE)	
    	q=qt1-qt2	
    HLitPremier(Dureperemption)
    		SI DateValide( Comporte.Date_peremption) ALORS
    			d=DateVersEntier(Comporte.Date_peremption)-DateVersEntier(DateSys())			
    			SI d<Dureperemption.Dure ET d>0 ALORS
    				SI qt1>qt2 ALORS
    					Info((q)+RC+"quantite(s) de"+RC+Comporte.Designation+RC+"sera perimé dans "+RC+d+RC+"jour(s)"+RC+"date de peremption:"+RC+Comporte.Date_peremption)
     
    				FIN
    			FIN
           FIN
    FIN		
    HLitRecherche(PRODUIT,Designation,FEN_Fiche_Contient.SC_Fiche.COMBO_Designation)
    	SI HTrouve(PRODUIT) ALORS
    		FEN_Fiche_Contient.SC_Fiche.SAI_Pv=PRODUIT.Pv
    		FEN_Fiche_Contient.SC_Fiche.SAI_TVA=PRODUIT.Pv*PRODUIT.Taux_TVA
    		FEN_Fiche_Contient.SC_Fiche.SAI_TPvHT=PRODUIT.Pv*FEN_Fiche_Contient.SC_Fiche.SAI_Qte
    		FEN_Fiche_Contient.SC_Fiche.SAI_TPvTTC=FEN_Fiche_Contient.SC_Fiche.SAI_TPvHT+FEN_Fiche_Contient.SC_Fiche.SAI_TVA
    		FEN_Fiche_Contient.SC_Fiche.SAI_Remise=FEN_Fiche_Contient.SC_Fiche.SAI_TPvTTC*PRODUIT.Taux_remise
    		FEN_Fiche_Contient.SC_Fiche.SAI_Qte=q
     
    	FIN

  2. #22
    Invité
    Invité(e)
    Par défaut
    Afin d'apporter plus de souplesse dans votre développement, évitez de mettre des adresses en dur.
    Pour ça, utilisez un fichier .INI dans le répertoire de votre exécutable, là, vous allez récupérer les informations nécessaires, comme l'adresse de votre fichier LG_MARCHANDISE.WDD

  3. #23
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonsoir;
    pardon expliquez moi d'avantage, je comprends pas bien ça:utilisez un fichier .INI dans le répertoire de votre exécutable.

  4. #24
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496

  5. #25
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sandaff Voir le message
    Bonsoir;
    pardon expliquez moi d'avantage, je comprends pas bien ça:utilisez un fichier .INI dans le répertoire de votre exécutable.
    Dans le répertoire EXE de ton projet, tu as ton exécutable ainsi que diverses librairies de windev, elles ont toutes le nom qui commence par WD
    Dans ce répertoire, il faudrait ajouter un fichier texte avec l’extension .INI, dedans, tu mettras diverses informations essentielles pour le bon fonctionnement de ton application, au minimum, mettre les identifiants de connexion à ton SGBD (crypter le mot de passe n'est pas obligatoire mais très recommandé). Dans ton cas, il faudra y ajouter un lien vers ton fichier .WDD, depuis ton code wlangage, tu devras lire les données dans ton fichier .INI

  6. #26
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonsoir;
    d'après ma lecture, bien qu'on peut créer le fichier.ini avec soit le bloc note en transformant l'extension txt en .ini ou avec soit INIEcrit("Exemple", "repertoire.INI")
    mais la documentation avec des bon exemples fait défaut.
    Donc je ne sais pas comment il faut procéder par rapport à mon problème.
    Je ne comprends pas certaines questions:
    -Pourquoi la connexion ne peut pas se faire sans les fichier.INI? alors qu'avant l'introduction SQLexec tout était ok.
    -Quel est le rôle du fichier.INI?
    -Que signifie l'identifiant de connexion à la SGBD? car si c'est IP, je ne pourrais pas comprendre dans la mesure ou je n'utilise pas IP et je suis en HF clasic.
    En plus si je peux avoir un petit exemple concret je pourrais avancer.
    Merci d'avance.

  7. #27
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Physiquement comment avoir l'adresse de fichier LG_MARCHANDISE.WDD?

  8. #28
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Tu peux très bien créer ton fichier texte .INI sans utiliser les fonctions wlangage, passer pas le bloc note est amplement suffisant.
    Les fonctions wlangage commençant par INI restent très trivial d'utilisation, ce qu'il faut comprendre, c'est le mode d'un fonctionnement d'un fichier ini.
    Un fichier INI est composé d'une ou plusieurs sections, pour une section donnée, tu as une ou plusieurs mots-clés.
    Concernant tes autres questions :
    Citation Envoyé par sandaff
    -Pourquoi la connexion ne peut pas se faire sans les fichier.INI? alors qu'avant l'introduction SQLexec tout était ok.
    Ton code de connexion se fait ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "")
    Le soucis, c'est que tu obliges à ce que ton fichier LG_MARCHANDISE.WDD soit présent dans le dossier D:\MARCHANDISES\
    Question 1: sur mon poste, je n'ai pas de lecteur D:, je fais comment?
    Question 2: ne serait-il pas plus intéressant d'avoir la possibilité d'avoir ton fichier à un autre endroit, par exemple, sur le réseau, afin que d'autres utilisateurs puissent se servir de ton application?

    Pour ça, dans ton fichier INI, tu auras un truc dans le genre:
    [CONNEXION]
    FICHIER=D:\MARCHANDISES\LG_MARCHANDISE.WDD
    Maintenant, il suffit de faire appel à INILit pour récupérer cette valeur.

    Citation Envoyé par sandaff
    -Quel est le rôle du fichier.INI?
    A rendre une application plus souple d'utilisation, à éviter de toujours avoir à recompiler ton projet et de devoir tout remettre à jour chez le client.

    Citation Envoyé par sandaff
    -Que signifie l'identifiant de connexion à la SGBD? car si c'est IP, je ne pourrais pas comprendre dans la mesure ou je n'utilise pas IP et je suis en HF clasic.
    Lire cet article.
    Pour une connexion à HFSQL Classic, la connexion est automatique, donc en effet, pas besoin de fichier ini.
    Dernière modification par Domi2 ; 21/07/2016 à 10h02. Motif: Lien non pérenne

  9. #29
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonjour;
    Dans l'aide de pc soft je comprends pas leur exemple après la lecture de votre lien.
    est ce qu'il n'ont pas fait d'erreur d'utilisation ici:
    [Exemples WD]
    Nom1 = Wdinstall
    Nom2 = WDBench
    [Description du projet WDInstall]
    Libellé = Utilisez le panneau de configuration de Windows
    LST = 43
    Page = 12
    [CODE]INIEcrit("Exemples WD", "Nom3", "WDExemple", "C:\Temp\ExemplesLST.INI")
    Pour moi si j'ai bien compris c'est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    -1-INIEcrit("Exemples WD", "Nom1", "Wdinstall", "C:\Temp\ExemplesLST.INI")
    -2-INIEcrit("Exemples WD", "Nom2", "WDBench", "C:\Temp\ExemplesLST.INI")
    et pour le second:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    -1-INIEcrit("Description du projet WDinstall", "Libellé", "Utilisez le panneau de configuration de Windows", "C:\Temp\ExemplesLST.INI")
     idem pour LST et page
    Comme j'ai compris l'idée càd je crée un seul fichier .INI qui regroupe des informations concernant des éléments tels que: mon analyse LG_MARCHANDISE.WDD,le fichier Comporte, le fichier Contient, le fichier VPRODA et VPRODB que je dois manipuler à travers ma requête select; donc il me reste la façon de le faire.
    maintenant, je veux savoir à quel niveau je dois l'écrire dans le? càd si c'est dans le code de procédure globale ou la ou je fait mon code concernant mes requêtes; je veux dire si c'est après SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "").
    mon inquiétude c'est que je pense qu'on doit créer ce fichier une seule et bonne fois; et à force d'écrire le code après le SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", ""), pour mois à chaque sélection du champ SAI_Designation, il va créer un nouveau fichier.

    je veux donc comprendre ce fichier peut être mis dans le répertoire de l’exécutable.
    sans quoi voici ce que j'ai imaginé:
    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
    Monfichier.INI
    [CONNEXION]
    Fchier=D:\MARCHANDISES\LG_MARCHANDISE.WDD
    [Comporte]
    Comporte.Designation=" "
    Comporte.Nom_magasin=" "
    Comporte.Date_peremption=" "
    Comporte.Qte=" "
    [Contient]
    Contient.Designation=" "
    Contient.Nom_magasin=" "
    Contient.Date_peremption=" "
    Contient.Qte=" "
    [VPRODA]
    VPROD.RQC=" "
    [VPRODB]
    VPRODB.RQCI=" "
    en 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
     
    INIEcrit("CONNEXION", "Fichier", "D:\MARCHANDISES\LG_MARCHANDISE.WDD", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    ;Ici il y a un problème; "D:\Prgramme Files\MARCHANDISES\Monfichier.INI" doit être le repertoire d'installation ou l'emplacement de l'analyse du projet?
    INIEcrit("Comporte", "Comporte.Designation, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Comporte", "Comporte.Nom_magasin, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Comporte", "Comporte.Date_peremption, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Comporte", "Comporte.Qte, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
     
    INIEcrit("Contient", "Contient.Designation, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Contient", "Contient.Nom_magasin, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Contient", "Contient.Date_peremption, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    INIEcrit("Contient", "Contient.Qte, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
     
    INIEcrit("VPRODA", "VPRODA.RQC, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
     
    INIEcrit("VPRODB", "VPRODA.RQCI, " ", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    Si ce code est corrigé et toutes mes inquiétudes sont levées je crois que je vais avancer d'un grand pas.
    Merci encore et encore!

  10. #30
    Invité
    Invité(e)
    Par défaut
    Concernant l'exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INIEcrit("Exemples WD", "Nom3", "WDExemple", "C:\Temp\ExemplesLST.INI")
    Il n'y a pas d'erreur dans la documentation fournie, en lisant bien le commentaire qui a été mis juste avant, c'est marqué
    // Écriture dans la section [Exemples WD]
    ça veut dire qu'en exécutant ce code avec l'exemple initial de fichier .INI, la section [Exemples WD] aura la nouvelle clé Nom3 qui aura pour valeur WDExemple, ça ne dit que ça.
    Pour l'autre exemple, je n'ai pas compris où tu l'as trouvé, je pense que c'est la même explication que celle que j'ai donné.

    Citation Envoyé par sandaff
    Comme j'ai compris l'idée càd je crée un seul fichier .INI qui regroupe des informations concernant des éléments tels que: mon analyse LG_MARCHANDISE.WDD,le fichier Comporte, le fichier Contient, le fichier VPRODA et VPRODB que je dois manipuler à travers ma requête select; donc il me reste la façon de le faire.
    Par "fichier", tu veux parler de fichier d'analyse? Dans ce cas, pas besoin de les mettre dans ton fichier ini. Si je récupère ton fichier LG_MARCHANDISE.WDD, qu'est-ce qui va changer entre chez toi et chez moi? L'adresse du fichier? Oui, exact, et je le mettrais sur un disque dur externe, sur mon lecteur H, dans le dossier Projets Windev. Est-ce que les noms des fichiers d'analyse vont changer? Pas du tout. Est-ce que les requêtes seront différents? Non plus. Donc seule l'adresse vers le fichier LG_MARCHANDISE.WDD sera nécessaire.

    Citation Envoyé par sandaff
    maintenant, je veux savoir à quel niveau je dois l'écrire dans le? càd si c'est dans le code de procédure globale ou la ou je fait mon code concernant mes requêtes; je veux dire si c'est après SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "").
    Pas compris ce que tu demandes.

    Citation Envoyé par sandaff
    mon inquiétude c'est que je pense qu'on doit créer ce fichier une seule et bonne fois
    En pratique, un fichier .INI n'est jamais modifié par programmation, mais à l'aide du bloc note, car justement, le paramétrage n'est pas quelque chose qui se modifie tous les 4 matins, quand tu devras le mettre à jour, ce sera parce que ton client doit changer de serveur, il a une nouvelle instance dans son SGBD, ...

    Citation Envoyé par sandaff
    et à force d'écrire le code après le SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", ""), pour mois à chaque sélection du champ SAI_Designation, il va créer un nouveau fichier.
    "SAI" est un champ de type saisie, sauf preuve du contraire, dans ce cas, que veux tu dire par "à chaque sélection" ?

    Contenu de ton fichier .INI :
    [Comporte]
    Comporte.Designation=" "
    Comporte.Nom_magasin=" "
    Comporte.Date_peremption=" "
    Comporte.Qte=" "
    [Contient]
    Contient.Designation=" "
    Contient.Nom_magasin=" "
    Contient.Date_peremption=" "
    Contient.Qte=" "
    [VPRODA]
    VPROD.RQC=" "
    [VPRODB]
    VPRODB.RQCI=" "
    Tout ce bloc peut être supprimé, il n'a aucun intérêt, ni même tes différentes lignes de code concernant ces lignes précisément.

    Et pour finir, concernant l'emplacement de ton fichier .INI, tu peux le placer dans le répertoire de ton exécutable, comme ça, pour y accéder, tu pourras te servir du code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    completerep(frepexe())+"Monfichier.ini"

  11. #31
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonsoir Monsieur;
    Avant tout laissez moi vous remercier pour cette explication qui réduit mon problème de 98 pour cent.
    Pour expliquer ce que vous n'aviez pas compris:
    Envoyé par sandaff
    maintenant, je veux savoir à quel niveau je dois l'écrire dans le? càd si c'est dans le code de procédure globale ou la ou je fait mon code concernant mes requêtes; je veux dire si c'est après SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", "").
    je veux dire par là qu'à quelle partie dans l'éditeur de windev devrais-je écrire ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INIEcrit("CONNEXION", "Fichier", "D:\MARCHANDISES\LG_MARCHANDISE.WDD", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    et la récupération aussi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    completerep(frepexe())+"Monfichier.ini"
    est ce après la définition de la connexion ou c'est dans le code de procédure globale?
    Envoyé par sandaff
    et à force d'écrire le code après le SQLConnecte("D:\MARCHANDISES\LG_MARCHANDISE.WDD", "", ""), pour mois à chaque sélection du champ SAI_Designation, il va créer un nouveau fichier.
    je veux dire que si je l'écrit à ce niveau et en exécutant ce code, il créera un nouveau fichier Monfichier.INI car c'est à ce niveau que mon code sql est écrite. et je l'exécute chaque fois que je veux vendre les produits, je sélectionne le champ de SAI_Designation de ma fiche Contient pour dérouler un produit qui est un champ combo. dès que le produit est sélectionné l'algo se lance car j'ai mis le code dans( clic droit puis à chaque sélection de SAI_Designation).
    merci d'avance.

  12. #32
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INIEcrit("CONNEXION", "Fichier", "D:\MARCHANDISES\LG_MARCHANDISE.WDD", "D:\Prgramme Files\MARCHANDISES\Monfichier.INI")
    La fonction INIEcrit ne pourra être utilisée que si tu as un écran de type paramétrage, où l'utilisateur devra sélectionner ton fichier LG_MARCHANDISE.WDD, si tu n'en as pas, la fonction ne sera jamais utilisée dans ton projet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    completerep(frepexe())+"Monfichier.ini"
    Tout dépend de comment tu comptes procéder, par exemple, tu peux créer une variable globale projet où tu lui donneras cette valeur, du coup, tu te serviras de cette variable comme étant le 4eme paramètre de la fonction wlangage INILit.
    Concernant la récupération de la valeur, tu peux le faire dans l'initialisation du projet, ça peut très bien se faire, ou dans l'initialisation de ton écran où tu dois placer ton code.

    je veux dire que si je l'écrit à ce niveau et en exécutant ce code, il créera un nouveau fichier Monfichier.INI car c'est à ce niveau que mon code sql est écrite. et je l'exécute chaque fois que je veux vendre les produits, je sélectionne le champ de SAI_Designation de ma fiche Contient pour dérouler un produit qui est un champ combo. dès que le produit est sélectionné l'algo se lance car j'ai mis le code dans( clic droit puis à chaque sélection de SAI_Designation).
    merci d'avance.
    il ne faut pas créer de nouveau fichier en .INI mais il faut créer de nouvelles sections, où chaque sélection pourra correspondre à la sélection faire par l'utilisateur, si je comprends ce que tu dis.

  13. #33
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonjour Monsieur;
    Je voudrais savoir s'il y a une manière pour obtenir un écran de type paramétrage?
    càd le cheminement

  14. #34
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sandaff Voir le message
    Bonjour Monsieur;
    Je voudrais savoir s'il y a une manière pour obtenir un écran de type paramétrage?
    càd le cheminement
    Un écran avec un champ de saisi, un bouton parcourir, un bouton pour enregistrer suffisent pour faire un tel écran

  15. #35
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    Il a vraiment réponse à tout ce romulus001

    Pour compléter sa réponse, WinDev est un outils et vous êtes l'artisan. Vous faites de que vous voulez avec vos outils (un fichier ini ou une fenêtre pour remplir un fichier ini en sont des exemples)
    Votre problème peut se résumer simplement, vous n'avez pas appris à vous servir de votre outils, vous ne pouvez donc pas voir comment vous en servir et ce que vous pouvez en faire.

    Pour solutionner ce problème et donc tous vos petits problèmes, il suffit d'apprendre et pour cela, WinDev intégre un guide d'autoformation très complet qui donne une vue d'ensemble de l'outils et comment résoudre des problèmes en utilisant l'aide de l'outils.

    Bonne journée à vous.

  16. #36
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Tober Voir le message
    Il a vraiment réponse à tout ce romulus001
    Disons que désormais, je suis en grand manque de projets à réaliser et je trouve le temps assez long, fun

    Citation Envoyé par Tober
    Pour solutionner ce problème et donc tous vos petits problèmes, il suffit d'apprendre et pour cela, WinDev intégre un guide d'autoformation très complet qui donne une vue d'ensemble de l'outils et comment résoudre des problèmes en utilisant l'aide de l'outils.
    Savoir se servir d'un outils, c'est une chose, mais être méthodique, ça s'apprend à force de pratiquer, construire un écran de paramétrage, je ne pense pas que ce soit expliquer dans le guide, même basique :p

  17. #37
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 393
    Points
    9 393
    Par défaut
    Si tu es en manque de projet, demande à Sandaff qu'il t'envoie son projet, et les coordonnées de son client, tu devrais pourvoir lui corriger tout ça en 10 minutes. Parce que là, à ce rythme, vous y êtes encore dans 3 jours. Parce que, revenons au besoin de départ, sa question portait sur un problème de connexion et sa principale erreur, c'est d'avoir oublié de tester le code retour de la fonction SQLConnecte() et d'avoir oublié d'afficher le contenu de la variable SQL.Meserreur.
    Alors que tester les codes retour des fonctions, c'est déjà le conseil qu'on lui avait donné sur une question précédente, et qu'il avait déjà refusé d'appliquer.

    Là, tu l'amuses avec les fichiers de configuration, mais ce n'était pas sa question.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  18. #38
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par tbc92 Voir le message
    Si tu es en manque de projet, demande à Sandaff qu'il t'envoie son projet, et les coordonnées de son client, tu devrais pourvoir lui corriger tout ça en 10 minutes.
    Donner des pistes, ok, mais devoir tout faire, ce ne sera pas sous forme de bénévolat :p

    Citation Envoyé par tbc92
    Parce que, revenons au besoin de départ, sa question portait sur un problème de connexion et sa principale erreur, c'est d'avoir oublié de tester le code retour de la fonction SQLConnecte() et d'avoir oublié d'afficher le contenu de la variable SQL.Meserreur.
    On va dire que c'est la faute d'être débutant, qu'on se dit toujours "pour moi, c'est ok, donc ça passe", et après, on doit tout reprendre à 0 pour devoir tout remettre d'équerre, et la plupart du tout, à faire à la dernière minute.

  19. #39
    Membre expérimenté Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Points : 1 381
    Points
    1 381
    Par défaut
    Ce n'est pas ça son problème.
    Si tu relis tous ces posts de ce sujet, tu verras qu'il refuse de lire les tutos donnés, qu'il ne lit pas les pages d'aide données ou alors il dit que les exemples sont faux ou incompréhensible. Pour résumé, l'aide ne sert a rien et ne répond pas à son problème précis.
    Alors que pour moi, il y a 99.9% des problèmes que j'ai qui se résolvent par l'aide intégrée à WinDev et pour les 0.1% qui reste, c'est sur ce site que je trouve mon bonheur.

    Hors pour tous les problèmes exposés, les yeux fermés, je sais déjà que c'est dans l'aide, il suffit de chercher... Et c'est pour ça que personne ne l'aide autrement qu'en donnant des liens vers des docs.
    En tout cas, j'admire ta patience (ou ton ennui )

  20. #40
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Tober Voir le message
    En tout cas, j'admire ta patience (ou ton ennui )
    Je préfère entendre dire "ou ta folie d'aller aussi loin dans son soutien", ça me correspond mieux

Discussions similaires

  1. Erreur de syntaxe dans mon code SQL
    Par Salsaboy60 dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/04/2014, 21h08
  2. fonction explode() ne fonctionne pas dans mon code
    Par Invité dans le forum Langage
    Réponses: 12
    Dernier message: 08/02/2013, 10h34
  3. pb dans mon code SQL
    Par abousa3d dans le forum SQL
    Réponses: 5
    Dernier message: 03/12/2009, 11h10
  4. Probleme ADO adapter une requete sql pour l'utiliser dans mon code vb6
    Par jacko842 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 22/04/2009, 15h53

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