DEFINITION NUMTAB_660004598 1
REGISTRE ENTIER erreur_660004598  
REGISTRE ENTIER res_660004598  
REGISTRE ENTIER cause_660004598  
REGISTRE ENTIER codeEEC_660004598   
REGISTRE ENTIER ideb_660004598  
REGISTRE ENTIER ifin_660004598  
REGISTRE ENTIER ref_660004598
REGISTRE ENTIER EEC_AI_660004598
REGISTRE ENTIER date_660004598
REGISTRE POINTEUR pt_SGTQS_660004598
REGISTRE POINTEUR pt_resul_660004598
REGISTRE POINTEUR pt_deb_660004598
REGISTRE POINTEUR pt_fin_660004598
REGISTRE POINTEUR pt_Buf_660004598
############################################################################ 
# 
# Fichier : Tgeneconv_dis.src
# 
# Version : Adaptation pour METEOR 
# 
# Date    : Le 10/05/2005
# 
# Distribution : 
#    Article genere 
# 
# En entree : 
#    Article : TgeneConv 
#    Header:  
# 
# En sortie: 
#	Les alarmes supervision sont envoyees pour tous les services
#	Pas d'?mission d'article
#
# HISTORIQUE :
# 31/08/06 JLG G3R0CcME : report FO 242 idem objet N267 de G3R0C126 modif numeros alarmes 75xx au lieu de 85xx
# 28/11/06 PKH G3R0CcME : FO 355 Activer l'alarme 7512 pour les arrets collecte
# 27/03/07 DRE G3R0CdME : FO 451 Emission d'alarmes immediates 
#			7513 (trou de collecte) et 7514 (arret de collecte) pour certaines EEC
# 22/11/2010 - JLG - G3R1lot4 Verification/Correction des variables (constantes, entiers, pointeurs)
#######################################################################  
  
############################################################################  
# Declaration des variables  
############################################################################  


# FO 451

# FO 451



pt_SGTQS_660004598 	= "1111111111111111111111111111"
pt_resul_660004598 	= "4444444444444444444444444444444"
pt_deb_660004598          ="66666666666666666666666666666666"
pt_fin_660004598	        ="55555555555555555555555555555555"
pt_Buf_660004598    = "2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"

i_strcpy(pt_deb_660004598,"")
i_strcpy(pt_fin_660004598,"")


##################################################################################  
# Recuperation des codes internes EEC 
##################################################################################  
# Recuperation du numero interne platine de l'EEC  
codeEEC_660004598= i_get_art_field(g_iartin,$TgeneConv::eec)  
#trace1("[Tgene] : Numero interne platine de l EEC:%d", codeEEC)  
 
# Recuperation de la cause d'evenement  
 cause_660004598= i_get_art_field(g_iartin,$TgeneConv::cause)  
#trace1("[Tgene] : Cause d'evenement:%d", cause) 

####################################################################################  
# RECUPERATION DU CODE SGTQS   
####################################################################################  
  
i_strcpy(pt_SGTQS_660004598,i_LireEECSGTQS( codeEEC_660004598 ))  
#trace2("[Tgene] : SGTQS=<%s>",pt_SGTQS,"")  

# Recuperation de la reference de l'article
ref_660004598= i_get_art_field(g_iartin,$TgeneConv::ref)
#trace1("[Tgene] : Reference de l'article:%d", ref)
  
# FO 451
#Recuperation de la date de l'article  
date_660004598 = i_get_art_field(g_iartin,$TgeneConv::DATE)

#Recuperation de la date de debut de l'article  
ideb_660004598 = i_get_art_field(g_iartin,$TgeneConv::ideb)  
#trace1("[Tgene] : Date de debut de l'article :%d", ideb)  

# Recuperation de la date de fin de l'article  
ifin_660004598 = i_get_art_field(g_iartin,$TgeneConv::ifin)  
#trace1("[Tgene] : Date de fin de l'article :%d", ifin)  
  
####################################################################################
# Lecture table APACHE pour confirmer si EEC FTLD
####################################################################################
# FO 451
# EEC avec Alarme Immediate. 
# Recherche dans la table 'VariableContexte' avec "AI_" suivi du codeSGTQS de l'EEC
erreur_660004598 = i_format_str2( pt_Buf_660004598, "%s%s", "AI_", pt_SGTQS_660004598 )
i_strcpy(pt_resul_660004598, i_get_tab_field( "VariableContexte", date_660004598, pt_Buf_660004598 ))
SI(i_strcmp(pt_resul_660004598,g_inull) != 0)
ALORS
# SI EEC presente dans la table
	EEC_AI_660004598 = 1
FINSI



####################################################################################
#Traitement des alarmes supervision 
####################################################################################  

# ****1er argument de la 7511 et 7512 : EEC
erreur_660004598 = i_format_str2(pt_resul_660004598,"%s%s"," ",pt_SGTQS_660004598)
erreur_660004598 = i_cree_art("Conversion",g_iartout10)

# **** 2eme argument de la 7511 et 7512 : date de debut heure platine
ideb_660004598 = i_DHgetLocalTime(NUMTAB_660004598,7,ideb_660004598)
#trace1("[Tgene] : Date de debut de l'article pour Wanadoo UK METRO :%d",ideb)

erreur_660004598 = i_set_art_field(g_iartout10, $Conversion::DATEN, ideb_660004598)
erreur_660004598 = i_get_art_str(g_iartout10, $Conversion::DATE, pt_deb_660004598)

# ****3eme argument de la 7511 : date de fin heure platine
ifin_660004598 = i_DHgetLocalTime(NUMTAB_660004598,7,ifin_660004598)
erreur_660004598 = i_set_art_field(g_iartout10, $Conversion::DATEN, ifin_660004598)
erreur_660004598 = i_get_art_str(g_iartout10, $Conversion::DATE, pt_fin_660004598)

#************************Article genere de debut de trou de collecte  *********************
SI (cause_660004598 == 0)  
ALORS  
#	trace("[Tgene] : Il s agit d un article de debut de trou de collecte")  
#***** emission de l alarme a la supervision pour tous les services
	SI EEC_AI_660004598 == 1
	ALORS
		erreur_660004598 = i_PlvDesactiverAlarme(7513,codeEEC_660004598,ref_660004598,0,0)
		erreur_660004598 = i_PlvMessEmettreAvecCodeSourceEEC(7513,codeEEC_660004598,ref_660004598,0,0,0,1,codeEEC_660004598,g_iartin,"",3,pt_resul_660004598,pt_deb_660004598,pt_fin_660004598)
	SINON
		erreur_660004598 = i_PlvDesactiverAlarme(7511,codeEEC_660004598,ref_660004598,0,0)
		erreur_660004598 = i_PlvMessEmettreAvecCodeSourceEEC(7511,codeEEC_660004598,ref_660004598,0,0,0,1,codeEEC_660004598,g_iartin,"",3,pt_resul_660004598,pt_deb_660004598,pt_fin_660004598)
	FINSI
FINSI  
  
#********************** Article genere de fin de trou de collecte  *********************
SI (cause_660004598 == 1 )  
ALORS  
#	trace("[Tgene] : Il s agit d un article de fin de trou de collecte")	  
#	trace("[Tgene] : Desactivation d'alarme pour supervision") 
	SI EEC_AI_660004598 == 1
	ALORS
		erreur_660004598 = i_PlvDesactiverAlarme(7513,codeEEC_660004598,ref_660004598,0,0)
	SINON
		erreur_660004598 = i_PlvDesactiverAlarme(7511,codeEEC_660004598,ref_660004598,0,0)
	FINSI
FINSI  
  
#**********************Article genere de debut arret de collecte *************************
SI (cause_660004598 == 2)
ALORS
	SI EEC_AI_660004598 == 1
	ALORS
    		erreur_660004598 = i_PlvMessEmettreAvecCodeSourceEEC(7514,codeEEC_660004598,ref_660004598,0,0,0,1,codeEEC_660004598,g_iartin,"",3,pt_resul_660004598,pt_deb_660004598,pt_fin_660004598) 
	SINON
		erreur_660004598 = i_PlvMessEmettreAvecCodeSourceEEC(7512,codeEEC_660004598,ref_660004598,0,0,0,1,codeEEC_660004598,g_iartin,"",3,pt_resul_660004598,pt_deb_660004598,pt_fin_660004598) 
	FINSI
FINSI

#**********************Article genere de FIN arret de collecte *************************
SI (cause_660004598 == 3)
ALORS
	SI EEC_AI_660004598 == 1
	ALORS
		erreur_660004598 = i_PlvDesactiverAlarme(7514,codeEEC_660004598,ref_660004598,0,0)
	SINON
		erreur_660004598 = i_PlvDesactiverAlarme(7512,codeEEC_660004598,ref_660004598,0,0)
	FINSI    
FINSI

RETOUR TRAIT_OK  
#----------------------------- fin Tgeneconv_dis.src --------------------
