{"id":249,"date":"2013-03-11T13:06:11","date_gmt":"2013-03-11T12:06:11","guid":{"rendered":"http:\/\/sam-soul.fr\/Info\/?p=249"},"modified":"2013-03-11T13:06:11","modified_gmt":"2013-03-11T12:06:11","slug":"remonte-des-erreurs-sql-dans-vtom","status":"publish","type":"post","link":"http:\/\/les-fougs.com\/wordpress\/2013\/03\/11\/remonte-des-erreurs-sql-dans-vtom\/","title":{"rendered":"Remont\u00e9 des Erreurs SQL dans VTOM"},"content":{"rendered":"<p>Attention pour remonter les erreurs SQL dans VTOM, il faut ajouter la ligne :<\/p>\n<p><strong>WHENEVER SQLERROR EXIT SQL.SQLCODE<\/strong><\/p>\n<p>apr\u00e8s la connexion sqlplus, stocker le resultat dans une variable <strong>err_sql=$?<\/strong> puis sortir avec la valeur de la variable.<\/p>\n<p><span style=\"font-size: 10.8333px;\">exemple : <\/span><\/p>\n<p>sqlplus ${1}\/${2} &lt; $0.txt<br \/>\n<span style=\"font-size: 10.8333px;\"><strong>WHENEVER SQLERROR EXIT SQL.SQLCODE<\/strong><br \/>\n<\/span><span style=\"font-size: 10.8333px;\">EXEC csv.generate(&lsquo;DIR_EXPORT_CSV&rsquo;, &lsquo;${3}.csv&rsquo;,&rsquo;SELECT * FROM ${4}&rsquo;);<br \/>\n<\/span><span style=\"font-size: xx-small;\">exit<\/span><span style=\"font-size: 11px;\"><br \/>\n<\/span><span style=\"font-size: 9.16667px;\">EOSQL<\/span><\/p>\n<p><span style=\"font-size: 10.8333px;\"><strong>err_sql=$?<\/strong><\/span><\/p>\n<p><span style=\"font-size: 10.8333px;\">&#8230;..<\/span><\/p>\n<p><span style=\"font-size: 11px;\"><strong>exit $err_sql<\/strong><\/span><\/p>\n<p><span style=\"font-size: 10.8333px;\">\u00a0<\/span><\/p>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;\">sqlplus $1\/$2 &lt;<\/p>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;\">WHENEVER SQLERROR EXIT SQL.SQLCODE<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;\">exec Pack_Batch_Quotidien.p_quotidien($3);<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;\">exit<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;\">EOSQL<\/div>\n<p><span style=\"background-color: #ffff00;\"><em>sqlplus $1\/$2 &lt;<span style=\"font-style: normal;\"><strong>WHENEVER SQLERROR EXIT SQL.SQLCODE<\/strong><\/span><br \/>\nexec Pack_Batch_Quotidien.p_quotidien($3);<br \/>\nexit<br \/>\nEOSQL<\/em><\/span><\/p>\n<p>si l&rsquo;instruction sqlplus est suivie d&rsquo;une autre instruction, envoi de mail par exemple, il faut m\u00e9moriser la valeur de l&rsquo;erreur sql et la transmettre en fin de script.<\/p>\n<p><em><span style=\"background-color: #ffff00;\">sqlplus $1\/$2 &lt;<span style=\"font-style: normal;\"><strong>WHENEVER SQLERROR EXIT SQL.SQLCODE<\/strong><\/span><br \/>\nexec Pack_Batch_Quotidien.p_quotidien($3);<br \/>\nexit<br \/>\nEOSQL<\/span><\/em><\/p>\n<p><span style=\"background-color: #ffff00;\"><strong>err_sql=$?<\/strong><\/span><\/p>\n<p><em><span style=\"background-color: #ffff00;\">${ABM_BIN}\/tmail -c ${ABM_BIN}\/tmail.ini -cc $4 -sub &laquo;&nbsp;Traitement $TOM_JOB Termin\u00e9&nbsp;&raquo; -msg &nbsp;&raquo;<br \/>\nBonjour,<br \/>\nLe traitement est termin\u00e9, v\u00e9rifier les fichiers logs joints.*<br \/>\nBonne journ\u00e9e.&nbsp;&raquo;<\/span><\/em><\/p>\n<p><span style=\"background-color: #ffff00;\"><strong>exit $err_sql<\/strong><\/span><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Attention pour remonter les erreurs SQL dans VTOM, il faut ajouter la ligne : WHENEVER SQLERROR EXIT SQL.SQLCODE apr\u00e8s la connexion sqlplus, stocker le resultat dans une variable err_sql=$? puis sortir avec la valeur de la variable. exemple : sqlplus ${1}\/${2} &lt; $0.txt WHENEVER SQLERROR EXIT SQL.SQLCODE EXEC csv.generate(&lsquo;DIR_EXPORT_CSV&rsquo;, &lsquo;${3}.csv&rsquo;,&rsquo;SELECT * FROM ${4}&rsquo;); exit EOSQL &hellip; <a href=\"http:\/\/les-fougs.com\/wordpress\/2013\/03\/11\/remonte-des-erreurs-sql-dans-vtom\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;Remont\u00e9 des Erreurs SQL dans VTOM&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[43],"tags":[],"_links":{"self":[{"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/posts\/249"}],"collection":[{"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/comments?post=249"}],"version-history":[{"count":0,"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/posts\/249\/revisions"}],"wp:attachment":[{"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/media?parent=249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/categories?post=249"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/les-fougs.com\/wordpress\/wp-json\/wp\/v2\/tags?post=249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}