|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Bonjour à tous.
Je voudrais simplement vous demander, y a t'il une possibilité de gérer les messages oracle forms ? C'est à dire, quand je quitte un formulaire Forms, celui-ci m'affiche un message 'Do you want to save the changes you have made ?', alors est ce je que je peux bien personnaliser ce message (par exmeple : afficher ce message en français ou changer les textes inclus). Je vous remercie d'avance mille et une fois pour votre aide. Respectueusement à vous. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Il suffit d'installer forms en français pour avoir les messages en français.
Sinon tu peux utiliser les triggers ON-ERROR et ON-MESSAGE Lis l'aide en ligne de forms sur ces triggers pour comprendre leur fonctionnement.
__________________
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
|
|
|
#3 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Bonjour,
Tout d'abord, je tiens à vous remercier infiniment pour votre aide. Ben, avant tout je vous informe que je suis encore débutant en forms. Voilà le code (ON-MESSAGE) que j'ai intégré : declare alert_button number; lv_errtype varchar2(3) := message_type; lv_errcod number := message_code; lv_errtxt varchar2(80) := message_text; begin alert_button := Show_Alert ('Voulez-vous enregistrer les modifications apportées ?'); if alert_button = alert_button1 then commit_form; go_block('type_instruction'); execute_query; msg_box_ok('Enregistrement efféctué avec succès'); new_form('DEMARRAGE'); else msg_box_ok('Enregistrement annulé par l''utilisateur'); new_form('DEMARRAGE'); end if; IF form_fatal or form_failure then raise form_trigger_failure; end if; end; Mais c'est pas ce que recherchais normalement, parce que je voulais changer le message afficher par oracle forms "Do you want to save the chages you have made ?". Chose que j'ai pas pu encore faire Je ne sais pas est que c'est possible déjà ou non! Rappel : le problème est : Quand je quitte un formulaire Forms, celui-ci m'affiche un message dont je voudrais bien le personnaliser !!! Merci mille et une fois pour votre aide. Respectueusement à Vous. |
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Si c'est UNIQUEMENT ce message, quand tu quittes un module, sur le trigger KEY-EXIT, tu peux faire:
Code :
Pour tous les messages du types frm-xxxx, comme je te l'ai dit dans mon premier post tu peux les personnaliser avec les triggers ON-MESSAGE et ON-ERROR.
__________________
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
|
|
|
#5 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Bonjour,
Je vous remercie bcp pour la réponse. Je vais essayé, mais le fait d'installer Forms en Français (je voudrais bien afficher le message en Arabe par exemple). Donc pour cela, il fallait trés bien à ce que je passe par une personnalisation du message Forms. Merci encore. |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Re-bonjour,
Je vous remercie bcp pour votre aide. Voilà le code : declare ret number; begin IF :system.form_status = 'CHANGED' then ret := show_alert('MESSAGE'); IF ret = alert_button1 then commit_form; go_block('type_instruction'); execute_query; msg_box_ok('Modifications ont bien été enregistrées avec succès'); new_form('DEMARRAGE'); elsif ret = alert_button2 then clear_form(no_validate, full_rollback); msg_box_ok('Modifications annulées'); new_form('DEMARRAGE'); else raise form_trigger_failure; end IF; exit_form; end IF; new_form('DEMARRAGE'); end; J'ai une petite question : lorsque je clique sur le Bouton1, oracle enregistre et m'affiche le message 'Modifications ont bien été enregistrées avec succès',,, sauf que juste après, il m'affiche un message oracle forms quio dit que : "FRM-40400 : Transaction completed: 1 record applied and saved" Est-il possible d'éviter à ce que ce message soit affiché ou peut être qu'il foudra ajouter une ligne de code ??? Je tiens vraiment à vous remercier mille et une fois. Respectueusement à vous. |
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Ou il faut modifier le niveau de message avec la variable system.message_level :
Code :
__________________
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
|
|
|
#8 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Bonjour,
Comme d'habitude, je tiens à vous remercier bcp pour votre aide. Je vous informe que ça a marché, mais j'ai une petite question concernant le même souci, c'est lorsque je clique sur Annuler : je voudrais bien avoir le formulaire avec l'état initial(avant que je fasse les modifs). Alors j'ai pensé à faire ça mais ça n'a pas marché : else raise form_trigger_failure; select count(*) into n from type_instruction; if n=0 then msg_box('La liste est vide'); end if; go_block('type_instruction'); execute_query; Ou s'il y a autre solution qui fait un rafraîchissement du formulaire!! Merci et excellente journée à Vous. Respectueusement à vous. |
|
|
00
|
|
|
#9 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
La seule solution pour raffraichier le formulaire est de faire un execute_query. Tu retrouveras les valeurs telles quelles sont dans la base.
__________________
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
|
|
|
#10 | |||||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 13 ![]() |
Citation:
Je suis parfaitement d'accord avec vous du fait qu'il faut faire un EXECUTE QUERY pour avoir les valeures telles sont dans la base, mais, je l'ai intégré avant et ça n'a pas marché, alors, je ne sais pas est ça a une relation avec le code du bouton SUPPRIMER(par exemple) ou non, en outre, peut être que dans le code du bouton ANNULER,manquera quelque chose. Code SUPPRIMER : WHEN BUTTON PRESSED : Code :
Code :
Merci. Respectueusement à vous (plaineR). |
|||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com