Après windows pour les nuls, voici PB pour les bons (ou presque).

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 27-11-2007 15:37:04

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

[RESOLU] Récupérer l'ancienne valeur

Bonjour,

Je cherche à pouvoir récupérer la valeur qui était précédemment dans la cellule où l'utilisateur vient de saisir.
Tant que c'est la première modification, je peux aller chercher dans le buffer "Primary", mais à partir de la 2e modif je suis perdue.

Y a-t-il un évenement qui ressemblerait à itemchanging dans lequel on aurait l'ancienne et la nouvelle valeur ?

Merci d'avance.

Dernière modification par abdelta (27-11-2007 16:56:32)


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#2 27-11-2007 15:41:07

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Il semble que j'aie oublié de précisé que je ne veux pas enregistrer les modifications dans la base de données à chaque nouvelle saisie...

Dernière modification par abdelta (27-11-2007 15:49:24)


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#3 27-11-2007 15:51:12

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Tu veux recuperer l'historique de l'ensemble des modifications d'un champs ?


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#4 27-11-2007 15:51:41

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2493
Pépites: 106
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Bonjour,

En 6.5, un tel événement n'existe pas. Chez mon précédent client, le framework maison gérait ce genre de problème en effectuant des sauvegardes du buffer primary à chaque fois que nécessaire, mais c'est un mécanisme complexe à mettre en place et qui peut être coûteux
en terme de gestion mémoire.

A voir si quelqu'un a une autre solution


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#5 27-11-2007 15:55:10

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

JCZ a écrit:

Tu veux recuperer l'historique de l'ensemble des modifications d'un champs ?

non, je veux juste la dernière valeur avant la modification


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#6 27-11-2007 16:01:05

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 30-05-2006
Messages: 4685
Pépites: 1,025
Banque: 2,147,483,647
Site web

Re: [RESOLU] Récupérer l'ancienne valeur

variable d'instance.

Code: pb

string is_old_valeur
string is_new_valeur




et dans itemchanged, editchanged...

Code: pb

is_old_valeur = this.Getitemstring(row,"titi")
is_new_valeur = data

Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#7 27-11-2007 16:09:07

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

pick ouic a écrit:

et dans itemchanged, editchanged...

Code: pb

is_old_valeur = this.Getitemstring(row,"titi")

si je mets ça dans itemchanged, ca va prendre la nouvelle valeur ...


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#8 27-11-2007 16:13:58

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Code: pb

ldt_old = dw_1.GetItemDateTime(1, 'col', Primary!, True )
ldt_new = dw_1.GetItemDateTime(1, 'col', Primary!, false )


Cela marche avec tous les GetItemX

Dernière modification par JCZ (27-11-2007 16:15:49)


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#9 27-11-2007 16:31:00

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

JCZ a écrit:

ou

Code: pb

ldt_old = dw_1.GetItemDateTime(1, 'col', Primary!, True )
ldt_new = dw_1.GetItemDateTime(1, 'col', Primary!, false )

C'est ce que je disais dans mon premier post : ca marche seulement pour la prmière modification.
Dès qu'on modifie une deuxième fois, on ne peux plus aller chercher l'ancienne valeur dans le buffer Primary!
On y trouvera la valeur d'origine mais pas celle qui était juste avant la modification...


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#10 27-11-2007 16:42:24

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Bon, finalement, dans le même esprit que ce que pick ouic proposait :

je récupère ii_ancienne_valeur dans le itemfocuschanged() par un getitem()
je réaffecte ii_ancienne_valeur après mon traitement qui avait besoin de cette valeur par

Code: pb

 ii_ancienne_valeur = data 

dans itemchanged

et en ce qui concerne ii_nouvelle_valeur, elle ne m'est pas utile : j'utilise data puisque je suis dans itemchanged()

Merci à tous.

00 pour chacun

Dernière modification par abdelta (27-11-2007 16:54:50)


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#11 27-11-2007 17:10:45

JCZ  
Builder Power
Award: bf
Lieu: 75019 paris
Date d'inscription: 21-05-2007
Messages: 1724
Pépites: 496,453,703,213
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Mais désolé , visiblement j'avais pas compris ton probleme


Face à l'agression, la puissance de l'intelligence

Hors ligne

 

#12 27-11-2007 17:15:59

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2493
Pépites: 106
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Même chose pour moi: j'avais compris que tu voulais gérer un historique des modifications


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#13 28-11-2007 09:04:50

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

Même en ayant pas compris vous avez été très patients et c'est ça que je récompense.
à tous


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

#14 11-12-2007 16:55:18

abdelta  
Bienfaitrice du site
Award: bf
Lieu: La Daguenière
Date d'inscription: 21-03-2007
Messages: 393
Pépites: 14,703
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Récupérer l'ancienne valeur

juste un petit mot si certains ont le même problème.
Tant qu'on ne fait pas accepttext(), dans itemchanged on récupère la valeur du buffer par
getitemxx()
et la nouvelle valeur saisie est dans data.


La sirène noire
http://www.nerdtests.com/images/badge/bf1f6c78865210a9.gif

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22