Bonjour,
Je dois develloper un script sh qui accede a une base y effectue differente modification (apres des verifications) et affiche le resultat (ou les echec dans un fichier de log.
Pour le moment les log qui apparaissent ne sont pas tout a fait ce que je souhaite:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| set serveroutput on;
sqlplus ROZE_DBA/ROZE_DBA@ROZNAT << EOF_SQL >> $FileLog
set sqlprompt ""
Declare
nbFich integer;
Begin
SELECT count(*) into nbFich FROM FICH_CONT WHERE P_TRIG_SITE='PAL' AND TR_NO_TRAN='1' AND S_TRIG_SYS='RPE' AND FC_NO_REP_MAT='084' AND FC_SUFF_REP_MAT='34M7';
If nbFich = 1 then
SELECT count(*) into nbFich FROM FICH_CONT WHERE P_TRIG_SITE='PAL' AND TR_NO_TRAN='1' AND S_TRIG_SYS='RPE' AND FC_NO_REP_MAT='084' AND FC_SUFF_REP_MAT='34M7' AND FC_SUPPRE_LOGI='N';
If nbFich = 0 then
dbms_output.put_line('coucou');
UPDATE FICH_CONT SET FC_SUPPRE_LOGI='N' WHERE P_TRIG_SITE='PAL' AND TR_NO_TRAN='1' AND S_TRIG_SYS='RPE' AND FC_NO_REP_MAT='084' AND FC_SUFF_REP_MAT='34M7' AND FC_SUPPRE_LOGI='O';
UPDATE ZONE SET Z_SUPPRE_LOGI='N', Z_DATE_SUPPRE='', Z_NO_REP_REMPLAC='' WHERE FC_ID_FICHE_CONT = 108855;
Else
dbms_output.put_line('La fiche n est pas supprimé logiquement on ne peut donc pas la réactiver');
End if;
Else
dbms_output.put_line('Il n y a pas de fiche correspondant aux données saisies');
End if;
End ;
/
commit;
/
exit
EOF_SQL |
Ce qui me donne le log suivant:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
Connecté à :
Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
JServer Release 8.1.7.4.0 - Production
SQL> 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 La fiche n est pas supprimé logiquement on ne peut donc pas la réactiver
Procédure PL/SQL terminée avec succès.
Validation effectuée.
Validation effectuée.
Déconnecté de Oracle8i Enterprise Editi |
Comme vous vous en doutez la partie
SQL> 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
ne m'interresse pas et je souhaiterais ne pas la retrouver dans mes logs.
Si qq'un a une idée je suis preneur 
D'avance merci
Raph
Partager