Edition d'une table externe à Mercator

0000000736     -      23/05/2011
Obsolète

S'il est souhaité de permettre à l'utilisateur de travailler avec une table externe (par exemple pour un combobox), le problème se pose alors de donner la possibilité à cet utilisateur de pouvoir éditer cette table.

Le code ci-joint montre comment on peut implémenter un browse qui permettra, via la méthode OnValid sur une ou plusieurs colonnes, de déclencher l'ajout d'une nouvelle ligne. Cet ajout se produit si, dans la ou les colonnes en question, l'utilisateur valide le champ, tout en étant sur la dernière ligne.

Pour supprimer une ligne, il suffit de noircir avec la souris la delete mark qui se trouve juste à gauche de la première colonne.

Le module compilé ci-inclus peut être placé, après adaptation à votre cas particulier, dans le répertoire DATA de Mercator. Ainsi, il s'auto-installe dans le menu "Outils / Modules".

En version SQL, les adaptations suivantes doivent être apportées :

  • Remplacer les lignes

    select 0
    use (rep_data+'\tableperso') alias tableperso_br shared again


    par

    if !zprepview('tableperso','tableperso_br','','select * from tableperso')
         return
    endif


    (création d'une vue dynamique qui sera utilisable comme une table locale de FoxPro)

  • Avant le use situé juste avant le endproc, insérer les lignes suivantes (validation sous transaction du contenu de la table) :

    =sqlSetProp(m.M_SQL,'Transactions',2)
    if tableupdate(.T.)
         =sqlCommit(m.M_SQL)
    else
         =zstoperror('Erreur validation tableperso')
         tableRevert(.T.)
         =sqlRollback(m.M_SQL)
    endif
    =sqlSetProp(m.M_SQL,'Transactions',1)




A télécharger : 0000000736.zip (0 Kb - 11/02/2004)



Cookies fonctionnels : Cookies nécessaires à l'utilisation du site et cookies de préférence. Ils ne contiennent aucune donnée à caractère personnel. (En savoir plus)

Cookies statistiques : Captation de statistiques liées aux comportements des internautes. (En savoir plus)

Cookies marketing : Pour effectuer le suivi des visiteurs au travers des sites web, à des fins publicitaires. (En savoir plus)

Vous consultez une page relative à une version de Mercator qui n'est plus commercialisée ni supportée.

Mercator est une application .net qui utilise une base de données SQL Server. Les informations sur cette page ne correspondent plus à ces caractéristiques.