|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() Inscription : avril 2005 Messages : 1 672 ![]() |
Salut tout le monde,
Je travaille sur forms6i avec Oracle Application 11.5.7 Dans un écran, j'ai une case à cocher qui est non base table et qui peut prendre 2 valeurs : - 'Y' = cochée - 'N' = non cochée Pour toutes les autres valeurs, cette checkbox doit être non cochée. A ma grande surprise, le trigger WHEN-CHECKBOX-CHANGED n'est jamais déclenché lorsque je clique sur cette case (que la case soit initialement cochée ou pas). J'ai néanmoins découvert que le trigger WHEN-VALIDATE-ITEM semblait s'activer lors de chaque clic. Pourriez-vous : 1/ m'expliquer pourquoi :SYSTEM.RECORD_STATUS = 'QUERY' et non 'CHANGED' après que j'ai cliqué sur cette case à cocher ? 2/ me confirmer que mon alternative est la bonne (i.e. elle n'a pas d'effet de bord dont je ne me serai pas rendu compte jusqu'à maintenant) ? Merci d'avance.
__________________
Modérateur des forums Oracle et Langage SQL Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum |
|
|
00
|
|
|
#2 | ||
![]() Salim Développeur et DBA Oracle Inscription : octobre 2006 Messages : 872 ![]() |
Salut Magnus,
J'ai fait un test est ça fonctionne bien pour le déclenchement du trigger WHEN-CHECKBOX-CHANGED Tu peux poster le contenu de ton trigger when-validate-tem? Il y a pas une instruction raise_application_error ou tu traites une exception dans ton when-validate-tem? Code :
l'item c'est un unbound ( non basé), il n'a pas besoin de sauvegarder les chamgement ???? |
||
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Salut Magnus,
Surprenant ton problème. As-tu essayé de supprimer ta case à cocher et de la recrééer ? Quelle est la valeur de la propriété "Execution hierarchie" de ton trigger WCC ?
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : avril 2005 Messages : 1 672 ![]() |
Bonjour à vous 2,
D'après ma maigre expérience de forms (cela fait 2 ans que je développe avec forms 6i et 10g), cela pourrait venir de Oracle Applications mais je crois être un des rares utilisateurs de ce forum à utiliser cet ERP (?). Salim>> j'ai créé cette case à cocher et le code que j'ai mis dans le trigger WVI est exactement le même que celui que j'avais mis dans le trigger WCC : Code SQL :
plaineR>>Hum... j'imagine que la propriété que tu me demandes de regarder est "Ordre d'exécution" - tu dois avoir forms en Anglais - et elle vaut "Substitué". Je vais essayer de recréer cette checkbox mais le problème demeurera quand bien même le trigger WCC se déclencherait "correctement" car lorsque je clique sur valider cela affiche qu'il n'y a pas de modificaions à sauvegarder. Ce message est partiellement vrai : aucune donnée base table n'a été modifié dans mon scénario simplifié mais d'un autre côté, j'ai modifié des données en base. Bref surprenant et je ne me rappelle pas avoir rencontré ce genre de problème que je n'étais pas sous Oracle Appli. Thanks buddies.
__________________
Modérateur des forums Oracle et Langage SQL Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum |
||
|
|
00
|
|
|
#5 | ||
![]() Salim Développeur et DBA Oracle Inscription : octobre 2006 Messages : 872 ![]() |
Salut,
peut être le code qui provoque une exception ??? Essaie de le mettre en commentaire. La subquery ramène un ou plusieurs enregistrements???? Code :
|
||
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Il t'affiche aucune modifications à enregistrer ce qui est logique puisque tu n'as pas modifié d'item basé, mais cela ne veut pas dire que ton update n'est pas pris en compte. Si tu veux qu'il ne t'affiche pas ce message, modifie le system.message_level ou fait un set_record_property (..., record_status, changed_status). Dans ce dernier cas il considèrera que ton enregistrement a été modifié.
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#7 | |||
|
Membre Expert
![]() Inscription : avril 2005 Messages : 1 672 ![]() |
Citation:
Concernant la solution, j'avais déjà essayé le SET_RECORD_PROPERTY mais il engendre un problème d'acquisition de verrou ou autre bizarrerie dans le genre. L'alternative que j'ai trouvé pour qu'il ne m'affiche pas dans ce message est de modifier le trigger ON-ERROR : Code SQL :
Je n'aime pas trop ce bricolage mais bon j'ai une solution alors je marque le topic 'Résolu' mais si l'un(e) d'entre vous a une explication sur le fait que le trigger WCC ne fonctionne pas dans ce contexte alors je suis preneur. Merci à vous 2.
__________________
Modérateur des forums Oracle et Langage SQL Forum SQL : je n'interviens PAS plus de 4 fois dans une discussion car si c'est nécessaire cela prouve généralement que vous n'avez pas respecté : les règles du forum |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com