Bonjour à tous,
Avant de poster dans "IHM", j'ai longuement douté... mais je me lance finalement.
Dans mon application, je rédige des devis.
Pour ce faire, il y a un formulaire "entête" du devis, avec un sous-formulaire listant les lignes du devis, en visu seule, et un formulaire "ligne de devis" pour la saisie d'une ligne.
Dans le formulaire "entête", j'ai disposé deux boutons permettant d'ouvrir le formulaire "ligne de devis" dans deux modes différents : AJOUT ou INSERT.
AJOUT ajoute la ligne en fin de devis, alors qu'INSERT insère la ligne au-dessus de la ligne en cours (inutile de dire que mes lignes sont numérotées et triées sur ce numéro).
L'ajout se passe sans problème, et l'insertion également, d'ailleurs, sauf dans un contexte bien particulier que voici.
Dans le formulaire "ligne de devis", un petit moteur constitué de cases à cocher, d'une zone de saisie des critères et d'un bouton d'exécution, permet d'effectuer des recherches multi-critères dans le catalogue choisi.
Une fois le bouton cliqué, les listes de choix de l'article sont alimentées à l'aide d'une requête composée à la volée après décomposition lexicale du contenu de la zone de saisie des critères, en fonction des cases cochées (certaines indiquant sur quels champs effectuer le recherche, d'autres précisant les opérateurs à utiliser entre les champs et entre les critères ainsi que le type de recherche, commençant par ou contenant).
Depuis peu (je dirais depuis que j'ai fractionné la base, mais sans certitude), l'utilisation de ce moteur de recherche - en mode insertion - provoque une erreur au moment où je tente d'enregistrer mon formulaire. Il s'agit de l'erreur 3188 "Impossible de mettre à jour; actuellement verrouillé(e) par une autre session sur cette machine.
Pour compléter cette description, il faut que j'indique que l'insertion se traduit par une requête qui sélectionne toutes les lignes du devis dont le numéro est supérieur ou égal à celui de la ligne en cours, et pour chacune d'elles, incrémente ce numéro.
Cette erreur apparaît depuis que j'ai mis le formulaire en Verrouillage = Enr modifié.
Auparavant, c'était l'erreur 3197, conflit d'écriture, qui se produisait.
Laquelle est réputée être réglée par Verrouillage = Enr modifié. De fait, cela fonctionne bien puisqu'elle ne se produit plus, mais que la 3188 s'y substitue ne me convient de très modérément !
Quelqu'un (entre)verrait-il une solution à mon calvaire ?
Partager