Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Forms
Forms Forum d'entraide sur Oracle Forms
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/01/2008, 16h51   #1
Invité régulier
 
Inscription : décembre 2007
Messages : 16
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : décembre 2007
Messages : 16
Points : 5
Points : 5
Par défaut [PB CONTOURNE !]Envoi de mail avec mutt sous forms

Bonjour,
J'ai un bug incompréhensible en forms 10g:
-J'ai besoin d'envoyer des mails avec des pièces jointes à partir de forms :
Dans l'ancienne version en 9i, on utilisait sendmail, tout se passait bien.
Depuis la 10g, on nous demande d'utiliser l'utilitaire MUTT :
on construit la ligne de commande et on l'exécute avec la comamnde forms HOST(commande,NO_SCREEN) sur un répertoire tempo du serveur d'appli

Dans 90% des cas, tout se déroule normalement.
Mais parfois pour une raison totalement indéterminée la fonction de mail renvoie un code erreur alors que :
- on se connecte toujours dans les mêmes conditions
- le corps du mail est générique (avec accents...)
- l'utilisateur choisit le destinataire du mail dans une liste

Le mail part ou ne part pas selon les cas !!
A priori, les droists sur les répertoires sont bons car aucun mail ne partirait...

J'ai redirigé les erreurs dans un fichier de log :
la comamnde MUTT renvoie systématiquement
"sh: gettext: command not found
sh: tr: command not found"
Ce sont des fonctions de transformation de chaines de caractères utilsées dans mutt mais connues de la machine ...

Est-ce que quelqu'un a déjà eu un cas similaire? ou une idée de génie?

Je peux mettre le code si vous voulez...
Merci d'avance!
nono592303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2008, 16h59   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
Quel rapport avec Forms ?
__________________
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2008, 17h30   #3
Invité régulier
 
Inscription : décembre 2007
Messages : 16
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : décembre 2007
Messages : 16
Points : 5
Points : 5
Par défaut complément d'infos sur le pb

Bonjour,
en fait, on écrit dans un fichier ksh la commande d'envoi de mail puis on exécute via forms le script.
Lorsqu'on écécute le script à partir de la machine (via putty), le mail est systématiquement envoyé.
Lorsqu'on éxécute le script via forms avec l'instruction HOST(commande,NO_SCREEN), il se produit une erreur (de temps en temps).

Code :
1
2
3
4
5
6
7
 
  host (l_commande, NO_SCREEN);
  IF NOT Form_Success THEN 
   	 l_result :=  3; 
	ELSE 
	   l_result :=  0;
	END IF;
l_commande contient le nom du fichier ksh qui contient :
Code :
1
2
 
/bin/cat RepTmp/corp20080117-103923.txt |  /usr/bin/mutt  -a RepTmp/DEVIS223124-10:39:20.pdf  -F RepTmp/TOTO.txt -s "titre du mail" toto@toto.fr
Je me demandais si cette commande de forms était fiable...

J'espère que c'est un peu plus clair...
nono592303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2008, 17h40   #4
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 534
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 534
Points : 6 471
Points : 6 471
HOST() est exécuté avec les droits de l'utilisateur de Forms Runtime, donc généralement Oracle, et de toute façon cela ne devrait pas être un problème de droits sinon aucun mail ne partirait.
Cette commande est fiable dans la mesure ou elle ne fait que passer une commande système.
__________________
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 13h09   #5
Invité régulier
 
Inscription : décembre 2007
Messages : 16
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : décembre 2007
Messages : 16
Points : 5
Points : 5
Par défaut complément d'infos

Je viens de refaire un tas de test.
1- je demande l'excecution de mon fichier ksh dans forms :
HOST(commande,no_screen)
du style :
Code :
1
2
3
4
 
le fichier de commande ksh est du style :
/bin/cat /RepTmp/corp20080118-115758.txt |  /usr/bin/mutt  -a /RepTmp/DEVIS323339-11:57:55.pdf  -F /RepTmp/toto.txt -s "titre du mail" toto@toto.fr
echo toto  $? /RepTmp/envoi_mail.log
je trace le retour de la commande mutt dans un fichier de log => renvoie 0 dans tous les cas (même si forms renvoie forms_success à faux!!)

2- sous forms, je teste le form_success à l'issue de l'exécution de la commande host d'exécution d'envoi de mail
=> forms ne semble pas positionner correctement la variable form_success (pas à tous les coups...)
Pourtant dans la majorité des cas le mail est bien envoyé !!

Une idée?
Merci d'avance
nono592303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 17h21   #6
Invité régulier
 
Inscription : décembre 2007
Messages : 16
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : décembre 2007
Messages : 16
Points : 5
Points : 5
Par défaut solution trouvée

Après un tas de test/recherches...
Il semblerait que le form_success ne renvoie pas toujours une réponse fiable dans le cas de résultats de commandes HOST...
Je suis tombé sur un post sur un autre forum, une autre personne a eu le cas...
Finalement, je ne vais plus tester le forms_success (ni le form_failure d'ailleurs => ne marche pas non plus).

J'exécute un script ksh sur le serveur d'appli qui fait:
- envoi du mail
- test du code retour :
si code retour different de 0, je fais un touch d'un "fichier de controle" => cela s'est mal passé
sinon je ne fais rien

dans le forms :
exécution du script via HOST(...)
si présence fichier de controle (fonctions du package txt_io.xx)
=> envoi d'une erreur

ça a l'air de fonctionner comme ça...
Si vous avez d'autres idées....

En tous cas, merci pour votre aide !!
nono592303 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h54.


 
 
 
 
Partenaires

Hébergement Web