EditDocument / DialogBox

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

EditDocument / DialogBox

Messagepar Gillou13 » 18 Jan 2011 à 16:33

Bonjour à tous,

j'ai un problème avec le quel je n'arrive pas à m'en sortir :

le context [lotus V6.5]:
2 bases actives, une base "Commandes" où chaque commandes(doc) est attaché à un client. et ce client est un document de la 2ème base (la base "clients"). aussi il intégre dans son masque des scripte dans l'évènement "QuerySave". (vérification de saisi, attribution d'un numéro interne...)

On m'a demandé d'intégrer la possibilité suivante :
via une nouvelle commande, permettre de créer le client si ce dernier n'est pas présent dans la 2ème base. bien sûr en intégrant les informations du nouveau client dans la commande en cours.

si j'utilise espace.Editdocument(), le QuerySave est bien exécute mais je n'arrive à "rapatrier" les informations du nouveau client.

si j'utilise espace.DialogBox c'est l'inverse, ok pour les infos du client mais son QuerySave n'a pas tourné ( et donc les valeurs retourné peuvent être fausse)

quelqu'un aurai une idée?

Merci d'avance
Gillou13
Posteur expérimenté
Posteur expérimenté
 
Message(s) : 368
Inscrit(e) le : 15 Avr 2005 à 09:49
Localisation : lyon

Messagepar Grey Goda » 20 Jan 2011 à 21:48

Si tu n'as pas de solution technique (simple) négocie le besoin fonctionnel.

Perso, je découperai en deux la demande. La cinématique de création serait la suivante :

Sur ta base 1, je crée une nouvelle commande.

Je saisie le client grâce à un sélecteur de client (qui pointe sur la base 2)... Mince ! Mon client n'existe pas... Cool ! Un bouton "créer un nouveau client" juste à coté. Je clique dessus et ça m'ouvre le masque en création dans la base 2 dans un nouvel onglet.
Je crée mon client, je valide, les contrôles se font et ma fiche client se ferme.
Je me retrouve donc sur l'écran de création de ma commande. Je sélectionne alors mon nouveau client qui apparaît maintenant dans la liste...

Pour le sélecteur, un champ liste avec un @DbColumn qui pointe sur une colonne du style "Nom du client|CléDuClient" et qui se recalcul à chaque refresh (une des deux cocoches dans les propriétés / 2eme onglet je crois)

Pour le refresh de la liste, soit tu ajoute un bouton de refresh en regard et tu éduques tes utilisateurs... sois tu ajoutes un refresh à la fermeture du masque client.

What about you ?
Tout comme Google, l'aide du Designer est ton amie ! Tu la trouveras dans ton répertoire "/data/help" ou ici
Avatar de l’utilisateur
Grey Goda
Posteur néophyte
Posteur néophyte
 
Message(s) : 61
Inscrit(e) le : 12 Mars 2010 à 11:31


Retour vers Développement