PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WEBDEV 2024 → Combo et Zone répétée (ma p'tite contribution)
Combo et Zone répétée (ma p'tite contribution)
Iniciado por g remy, ago., 23 2004 6:27 PM - 3 respostas
Publicado em agosto, 23 2004 - 6:27 PM
Pour ceux qui ont du mal à manipuler les combos (en écriture et en lecture)
dans les zones répétéés, une p'tite démo :

Pour initialiser une combo dans la ZR en affichage, voici un bout de code
qui permet de le faire facilement :

// remplissage de la combo Ccamion qui se trouve dans
// chaque répétition de la ZR

SI PAS HExécuteRequête(Rcamion, vconnexion, hRequêteSansCorrection) ALORS
Erreur("Erreur d’initialisation de la requête" + RC
+ HErreurInfo())
RETOUR
FIN
HLitPremier(Rcamion)
SI PAS HEnDehors(Rcamion) ALORS
ListeSupprimeTout(Ccamion)
ListeAjoute(Ccamion, "<Aucun>" + gLien(""))
FichierVersListeMémoire(Ccamion, Rcamion,...
Rcamion.nom_transpor, Rcamion.nom_transpor,...
Rcamion.cod_transpor)
FIN

// la combo est remplie de la même manière dans toutes les
// répétition de la ZR. Maintenant pour sélectionner une
// valeur dans la combo qui est dans la ZR, c'est comme
// suit :

// dans l'ex, la combo est configurée dans la ZR en tant que
// Zcamion et en valeur

// création de la requête

vrequete = "SELECT pub.ENTBL.COD_ETACDE, pub.ENTBL.cod_transpor FROM pub.entbl"


SI PAS HExécuteRequêteSQL(vresultatSQL, vconnexion,...
hRequêteSansCorrection, vrequete) ALORS
Erreur("Erreur d&#8217;initialisation de la
requête"+RC+HErreurInfo())
RETOUR
FIN
HLitPremier(vresultatSQL)
TANTQUE PAS HEnDehors(vresultatSQL)
// remplissage de la zone répétée
ZoneRépétéeAjouteLigne(ZRportefeuille)
ZRportefeuille = ZoneRépétéeOccurrence(ZRportefeuille)
ZRportefeuille.Zorigine = vresultatSQL.cod_etacde
**************************************************
ZRportefeuille.Zcamion = ListeCherche(Ccamion,...
vresultatSQL.cod_transpor)
// les cod_transport correspondent aux valeurs mémorisées de
// la combo
**************************************************
HLitSuivant(vresultatSQL)
FIN

// voilà, vous savez (je l'espère) initialiser une combo
// dans une ZR mais le must serait de pouvoir faire ses
// modif direct dans la ZR, c'est facile...regarder la
// suite :


// dans le code d'un bouton "enregistrer"

POUR vcpt = 1 A ZRportefeuille..Occurrence
*******************************************************
SI ZRportefeuille.Zmodif_bl[vcpt] = "modif" ALORS

// c'est un flag qui me permet de savoir si cette ligne a
// été modifiée, dans le code "a chaque modif et sortie" de
// la combo vous mettez "Zmodif_bl = 'modif'", Zmotif est
// un attibut (champ de saisie, si vous voulez que çà
// marche) de la ZR en valeur
********************************************************
// création de la requête de modification
vrequete = "UPDATE pub.entbl SET dat_livreel = '" + DateVersChaine(ZRportefeuille.Zdat_liv[vcpt],"AAAA-MM-JJ")
+ "',
******************************************************
cod_transpor = '" + Ccamion[ZRportefeuille.Zcamion[vcpt]]+ "'
on récupère la valeur saisie de la combo
******************************************************
WHERE num_bl = '" + VBL_select + "' AND cod_etacde = '" + vetacde_select
+ "' "

SI PAS HExécuteRequêteSQL(vresultatSQL, vconnexion,
hRequêteSansCorrection, vrequete) ALORS
Erreur("Erreur d&#8217;initialisation de la
requête"+RC+HErreurInfo())
RETOUR
FIN
HFerme(vresultatSQL)
HAnnuleDéclaration(vresultatSQL)
FIN


Maintenant vous pouvez gérer les zones répétées pour
faire de la saisie sans pb...je vois déjà des sourires
sur certains visages :))
Publicado em agosto, 25 2004 - 1:26 PM
effectivement :-))
Si tu as d'autres contribution... n'hésite pas ;-)

Merci à tous ceux qui comme toi partage leurs info et aides...
JP

"g_remy" <g_remyx@yahoo.fr> a écrit dans le message de
news:4129fec9$1@news.pcsoft.fr...


Pour ceux qui ont du mal à manipuler les combos (en écriture et en

lecture)
dans les zones répétéés, une p'tite démo :

Pour initialiser une combo dans la ZR en affichage, voici un bout de code
qui permet de le faire facilement :

// remplissage de la combo Ccamion qui se trouve dans
// chaque répétition de la ZR

SI PAS HExécuteRequête(Rcamion, vconnexion, hRequêteSansCorrection) ALORS
Erreur("Erreur d&#8217;initialisation de la requête" + RC
+ HErreurInfo())
RETOUR
FIN
HLitPremier(Rcamion)
SI PAS HEnDehors(Rcamion) ALORS
ListeSupprimeTout(Ccamion)
ListeAjoute(Ccamion, "<Aucun>" + gLien(""))
FichierVersListeMémoire(Ccamion, Rcamion,...
Rcamion.nom_transpor, Rcamion.nom_transpor,...
Rcamion.cod_transpor)
FIN

// la combo est remplie de la même manière dans toutes les
// répétition de la ZR. Maintenant pour sélectionner une
// valeur dans la combo qui est dans la ZR, c'est comme
// suit :

// dans l'ex, la combo est configurée dans la ZR en tant que
// Zcamion et en valeur

// création de la requête

vrequete = "SELECT pub.ENTBL.COD_ETACDE, pub.ENTBL.cod_transpor FROM

pub.entbl"


SI PAS HExécuteRequêteSQL(vresultatSQL, vconnexion,...
hRequêteSansCorrection, vrequete) ALORS
Erreur("Erreur d&#8217;initialisation de la
requête"+RC+HErreurInfo())
RETOUR
FIN
HLitPremier(vresultatSQL)
TANTQUE PAS HEnDehors(vresultatSQL)
// remplissage de la zone répétée
ZoneRépétéeAjouteLigne(ZRportefeuille)
ZRportefeuille = ZoneRépétéeOccurrence(ZRportefeuille)
ZRportefeuille.Zorigine = vresultatSQL.cod_etacde
**************************************************
ZRportefeuille.Zcamion = ListeCherche(Ccamion,...
vresultatSQL.cod_transpor)
// les cod_transport correspondent aux valeurs mémorisées de
// la combo
**************************************************
HLitSuivant(vresultatSQL)
FIN

// voilà, vous savez (je l'espère) initialiser une combo
// dans une ZR mais le must serait de pouvoir faire ses
// modif direct dans la ZR, c'est facile...regarder la
// suite :


// dans le code d'un bouton "enregistrer"

POUR vcpt = 1 A ZRportefeuille..Occurrence
*******************************************************
SI ZRportefeuille.Zmodif_bl[vcpt] = "modif" ALORS

// c'est un flag qui me permet de savoir si cette ligne a
// été modifiée, dans le code "a chaque modif et sortie" de
// la combo vous mettez "Zmodif_bl = 'modif'", Zmotif est
// un attibut (champ de saisie, si vous voulez que çà
// marche) de la ZR en valeur
********************************************************
// création de la requête de modification
vrequete = "UPDATE pub.entbl SET dat_livreel = '" +

DateVersChaine(ZRportefeuille.Zdat_liv[vcpt],"AAAA-MM-JJ")
+ "',
******************************************************
cod_transpor = '" + Ccamion[ZRportefeuille.Zcamion[vcpt]]+ "'
on récupère la valeur saisie de la combo
******************************************************
WHERE num_bl = '" + VBL_select + "' AND cod_etacde = '" + vetacde_select
+ "' "

SI PAS HExécuteRequêteSQL(vresultatSQL, vconnexion,
hRequêteSansCorrection, vrequete) ALORS
Erreur("Erreur d&#8217;initialisation de la
requête"+RC+HErreurInfo())
RETOUR
FIN
HFerme(vresultatSQL)
HAnnuleDéclaration(vresultatSQL)
FIN


Maintenant vous pouvez gérer les zones répétées pour
faire de la saisie sans pb...je vois déjà des sourires
sur certains visages :))
Publicado em agosto, 26 2004 - 10:40 AM

Maintenant vous pouvez gérer les zones répétées pour
faire de la saisie sans pb...je vois déjà des sourires
sur certains visages :))


Merci de ta contribution.
A la demande d'autres membres, j'ai préparé une page pour la "graver"
dans les WTablettes.

Je la publierai dès que tu me donneras ton accord.(url envoyée en
privé)
Eric

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Publicado em agosto, 26 2004 - 11:43 AM
Pas de pb, c'est fait pour çà ;)


Roumegou Eric <UtilisezleLien@fin.msg> wrote:


Maintenant vous pouvez gérer les zones répétées pour
faire de la saisie sans pb...je vois déjà des sourires
sur certains visages :))

Merci de ta contribution.
A la demande d'autres membres, j'ai préparé une page pour la "graver"
dans les WTablettes.

Je la publierai dès que tu me donneras ton accord.(url envoyée en
privé)
Eric

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com