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








Bonjour à tous,
J'ai un écran dans lequel j'ai une datawindow. A l'ouverture de cette fenêtre, j'effectue une sauvegarde des données contenues dans
cette datawindow dans une datawindow externe (de backup donc).
En effet, suivant les actions de l'utilisateur, les données présentées par cet écran peuvent évoluer. Cependant, si l'utilisateur clique
sur "Annuler", je voudrai écraser les données de la datawindow de la fenêtre par celle de la datawindow externe.
Or, lorsque je fais le ShareData, tout fonctionne correctement, mais la datawindow de la fenêtre n'est pas mise à jour et lorsque
j'ouvre de nouveau cet écran, je vois que les données ne sont pas celles qui étaient stockée dans la datawindow externe de backup.
Voici le code que j'utilise :
// Supprimer le contenu de la datawindow dw_1.Reset () // Partager les informations avec la datawindow externe ids_backup.ShareData (dw_1) dw_1.AcceptText () dw_1.Update ()
ids_backup est une datastore s'appuyant sur la datawindow externe. Comme on le voit, j'ai rajouter un AcceptText () mais rien n'y fait.
Je me suis alors posé la question de savoir si le ShareData fonctionne avec les datawindow externes ... Si c'est le cas, je pense
que je n'aurai d'autre choix que de balayer la datawindow externe et de remplir la datawindow de la fenêtre séquentiellement
via un FOR...NEXT puis un SetItem () ...
Quelqu'un a-t-il une idée ?
Pour info je suis sur PB9.
Par avance, merci.
Doctor Z.

Hors ligne














Bonjour, à mon avis il ne faut pas faire un sharedata, mais un rowscopy dans une datastore ayant exactement le même dataobject (pas de dw external)
Hors ligne











J'avais déjà vu un système de sauvegarde/restauration de données chez un client.
Le tout était codé via des rowscopy et fonctionnait très bien
Hors ligne
Pages: 1