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 19-05-2011 15:02:48

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

[RESOLU] Update () qui ne fait pas de mise à jour

Bonjour à tous,

Avant toute chose je suis sous PB11 et Sybase 12.5.1.

Dans mon code PB, je fais un dw_1.Update () (après avoir faire un SetTransObject ()),
cependant la mise à jour des colonnes que j'ai indiqué dans le Update column dans
le painter datawindow et en activant la mise à jour effective ne se fait pas.

Par ailleurs, le code de retour de l'Update () est bien 1, donc tout s'est bien passé.

Quelqu'un a-t-il une idée ? J'ai du code qui suit cet Update (), mais ce dernier ne
devrait-il pas écrire dans la base de données ?

Par avance, merci.

Doctor Z.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#2 19-05-2011 15:09:04

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Update () qui ne fait pas de mise à jour

Bonjour,

Il te manque peut-être tout simplement un commit après l'update :

Code: pb

COMMIT USING itr_mytransaction;

Hors ligne

 

#3 19-05-2011 15:15:36

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] Update () qui ne fait pas de mise à jour

buck a écrit:

Bonjour,

Il te manque peut-être tout simplement un commit après l'update :

Code: pb

COMMIT USING itr_mytransaction;

Bonjour buck,

Même avec le COMMIT, il ne prend pas en compte l'Update ().


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#4 19-05-2011 15:20:18

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [RESOLU] Update () qui ne fait pas de mise à jour

bonjour, il te manquerait pas un

Code: pb

dw_1.accepttext()

?
Sinon tu peux coder un event ficitif sur updatestart / updateend et y mettre des points d’arrêts pour voir si tu y passes.


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#5 19-05-2011 15:28:33

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] Update () qui ne fait pas de mise à jour

xlat a écrit:

bonjour, il te manquerait pas un

Code: pb

dw_1.accepttext()

?
Sinon tu peux coder un event ficitif sur updatestart / updateend et y mettre des points d’arrêts pour voir si tu y passes.

xlat,

Par défaut l'Update () contient un AcceptText implicite.

En outre, je viens de faire ton test sur les évènements updatestart et updateend et je passe effectivement
dans les deux sans pour autant faire la mise à jour que je souhaite dans la base de données.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#6 19-05-2011 15:39:46

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [RESOLU] Update () qui ne fait pas de mise à jour

donc dans le updateend, tu as  rowsupdated = 0 ?

(pour info un update sur une datawindow ne vera pas de modification si tu n'es pas passé dans un itemchanged en amont (ex, si tu modifis un edit sans changer le focus ni faire "enter"..., pour çà j'utilise parfois l'accepttext)

Dernière modification par xlat (19-05-2011 15:40:32)


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#7 19-05-2011 15:50:49

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] Update () qui ne fait pas de mise à jour

xlat a écrit:

donc dans le updateend, tu as  rowsupdated = 0 ?

(pour info un update sur une datawindow ne vera pas de modification si tu n'es pas passé dans un itemchanged en amont (ex, si tu modifis un edit sans changer le focus ni faire "enter"..., pour çà j'utilise parfois l'accepttext)

Dans l'évènement updateend, le rowsupdated vaut 1.

Par ailleurs, en plus du AcceptText () implicite de l'Update (), j'en ai rajouté un explicite
en début de code, mais malheureusement sans succès.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#8 19-05-2011 16:01:35

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: [RESOLU] Update () qui ne fait pas de mise à jour

c'est étonnant qu'il dise rowsupdated = 1 sans que cela ne mette à jour dans ta base,
essai de vérifier ce qui a changé depuis l'event updatestart ( getfirstmodified, getitemstatus, en comparant les buffers original / primary, ... ), au du côté serveur créer un trigger espion en update, sinon vérifie vien toute ta syntaxe d'update dans la datawindow


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#9 20-05-2011 12:38:53

Dadone  
Membre Power Geek
Lieu: Avon (Seine et Marne)
Date d'inscription: 19-02-2007
Messages: 252
Pépites: 985
Banque: 0
Site web

Re: [RESOLU] Update () qui ne fait pas de mise à jour

Le mieux, dans un cas comme cela, est de controler dans la routine SQLPreview() la syntaxe qui est effectivement envoyée au moteur de la base de données.

Hors ligne

 

#10 20-05-2011 13:12:06

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

Re: [RESOLU] Update () qui ne fait pas de mise à jour

c'est un update de la dw tout bete ou c'est lié à une procédure stockée ?

il y a un grant sur la table ?
ou peut etre que cet update est à l'interieure d'une transaction ?


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

Hors ligne

 

#11 20-05-2011 13:13:50

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] Update () qui ne fait pas de mise à jour

Bonjour à tous,

En fait, après des recherches plus poussées, il s'avère que le problème venait d'une
procédure stockée.

Il n'y a donc pas de problème au niveau de l'Update (), j'indique donc le sujet comme
résolu.

Merci à tous.

Doctor Z.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22