DEFINITION C_ARTICLE_860027522 "TwhaSelect"
DEFINITION C_NUMTAB_860027522 1
DEFINITION C_NUMTAB2_860027522 2
DEFINITION C_ZONEMETRO_860027522 7
DEFINITION C_NUMTABSEL_860027522 4
DEFINITION C_InstBSS1_860027522 "BSS1_PDZ"
DEFINITION C_InstBSS2_860027522 "BSS2_PDZ"
DEFINITION C_TbssPresDiv_860027522 "TbssPresDiv"
DEFINITION C_InstALLEGRO_NEW_860027522 "ALLEGRO_NEW"
DEFINITION C_CodEmet_860027522 "N57P"
DEFINITION C_TallegroPE_PO_860027522 "TallegroPE_PO"
DEFINITION C_TallegroUP_UR_860027522 "TallegroUP_UR"
DEFINITION C_REFTRI_860027522 "/service/ip/fti"
REGISTRE ENTIER erreur_860027522
REGISTRE ENTIER code_errone_860027522 
REGISTRE ENTIER code_rejet_860027522
REGISTRE ENTIER ICAR_METRO_860027522
REGISTRE ENTIER ICAR_LOCAL_860027522
REGISTRE ENTIER ICAR_UTC_860027522
REGISTRE ENTIER NUMZONE_860027522
REGISTRE ENTIER EFFICACE_860027522
REGISTRE ENTIER instBSS_860027522
REGISTRE ENTIER b_distri_Allegro_860027522
REGISTRE ENTIER b_distri_BSS_860027522
REGISTRE ENTIER duree_860027522
REGISTRE ENTIER date_locale_fin_860027522
REGISTRE ENTIER ddebut_860027522
REGISTRE ENTIER dfin_860027522
REGISTRE ENTIER instALLEGRO_NEW_860027522
REGISTRE ENTIER b_PE_PO_860027522
REGISTRE ENTIER b_UP_UR_860027522
REGISTRE POINTEUR pt_temp_860027522
REGISTRE POINTEUR pt_IDUS_NUM_860027522
REGISTRE POINTEUR pt_MONTANT_HT_860027522
REGISTRE POINTEUR pt_ICAR_LOCAL_860027522
REGISTRE POINTEUR pt_TIME_860027522
REGISTRE POINTEUR pt_GEOGRAPHIC_ZONE_860027522
REGISTRE POINTEUR pt_ZONE_GEO_860027522
REGISTRE POINTEUR pt_CODPRES_860027522
REGISTRE POINTEUR pt_TYPPRES_860027522
REGISTRE POINTEUR pt_DEBCRED_860027522
REGISTRE POINTEUR pt_TypeOpServ_860027522
REGISTRE POINTEUR pt_LibZ1_860027522
REGISTRE POINTEUR pt_LibZ2_860027522
REGISTRE POINTEUR pt_LibZ3_860027522
REGISTRE POINTEUR pt_LibZ5_860027522
REGISTRE POINTEUR pt_LibZ6_860027522
REGISTRE POINTEUR pt_Devise_860027522
REGISTRE POINTEUR pt_CodEmet_860027522
############################################################################
#	Pcode de Distribution TwhaSelect.src
#
# En entree :
#	Article : TwhaSelect 	DC ISSU DE LA PFS WHA Orange Select
#
# En sortie :
#		ALLEGRO_NEW	- g_iartout2	- TallegroPE_PO ou TallegroUP_UR
#		BSS_PDZ		- g_iartout5	- TbssTwha
#
# Historique
#
#	13/02/2015 - DRE - Creation
#	09/03/2015 - THE - G4R9C2 QC887 champ Z2 pour BSS_PDZ
#   	15/04/2015 - DRE - G4R9C4 QC895 Maj des criteres de valorisation de LibZ1, LibZ2
#
#
############################################################################
# Constantes


# Variables fonctionnelles globales

# Pointeurs

############################
# Affectation Pointeurs    #
############################
pt_temp_860027522			= "pt_temp111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111"
pt_IDUS_NUM_860027522		= "pt_IDUS_NUM11111111111111111111111111111111"
pt_MONTANT_HT_860027522		= "pt_MONTANT_HT6666666666666666666666666666666"
pt_ICAR_LOCAL_860027522		= "pt_ICAR_LOCAL7777777777777777777777777"
pt_TIME_860027522			= "pt_TIME8888888888888888888888888888888"
pt_GEOGRAPHIC_ZONE_860027522	= "pt_GEOGRAPHIC_ZONE888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888"
pt_ZONE_GEO_860027522		= "pt_ZONE_GEO9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999"
pt_CODPRES_860027522		= "pt_CODPRES2222222222222222222"
pt_TYPPRES_860027522		= "pt_TYPPRES3333333333333333"
pt_DEBCRED_860027522		= "pt_DEBCRED44444444444444"
pt_TypeOpServ_860027522		= "pt_TypeOpServ"
pt_LibZ1_860027522		= "pt_LibZ1pt_LibZ1"
pt_LibZ2_860027522             	= "pt_LibZ2pt_LibZ2"
pt_LibZ3_860027522             	= "pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3pt_LibZ3"
pt_LibZ5_860027522             	= "pt_LibZ5pt_LibZ5pt_LibZ5pt_LibZ5"
pt_LibZ6_860027522             	= "pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6pt_LibZ6"
pt_Devise_860027522		= "pt_Devise"
pt_CodEmet_860027522		= "pt_CodEmet"

############################
# Initialisation Variables #
############################
instBSS_860027522			= 0
NUMZONE_860027522			= 0
b_distri_Allegro_860027522 	= 0
b_distri_BSS_860027522 		= 0
duree_860027522 			= 0
date_locale_fin_860027522 	= 0
ddebut_860027522 			= 0
dfin_860027522 			= 0
b_PE_PO_860027522			= 0
b_UP_UR_860027522			= 0
instALLEGRO_NEW_860027522		= 0


############################
# Initialisation Pointeurs #
############################
i_strcpy(pt_temp_860027522,"")
i_strcpy(pt_IDUS_NUM_860027522,"")
i_strcpy(pt_MONTANT_HT_860027522,"")
i_strcpy(pt_ICAR_LOCAL_860027522,"")
i_strcpy(pt_TIME_860027522,"")
i_strcpy(pt_GEOGRAPHIC_ZONE_860027522,"")
i_strcpy(pt_ZONE_GEO_860027522,"")
i_strcpy(pt_CODPRES_860027522,"")
i_strcpy(pt_TYPPRES_860027522,"")
i_strcpy(pt_DEBCRED_860027522,"")
i_strcpy(pt_TypeOpServ_860027522,"")
i_strcpy(pt_LibZ1_860027522,"")
i_strcpy(pt_LibZ2_860027522,"")
i_strcpy(pt_LibZ3_860027522,"")
i_strcpy(pt_LibZ5_860027522,"")
i_strcpy(pt_LibZ6_860027522,"")        
i_strcpy(pt_Devise_860027522,"")        
i_strcpy(pt_CodEmet_860027522,"N57P")       


##################################################################
# Debut Distribution
##################################################################

# Duplication article entree 
erreur_860027522 = i_dup_art_id(g_iartin, g_iartout)
erreur_860027522 = i_cree_art("Conversion",g_iartout10)

##################################################################
# Identification de la provenance de l'article        
##################################################################

EFFICACE_860027522 = 2

##################################################################
# Recuperation des champs
##################################################################

erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::CodPres,pt_CODPRES_860027522)
erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::TypPres,pt_TYPPRES_860027522)
erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::DebCre,pt_DEBCRED_860027522)

erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::MontantHT,pt_MONTANT_HT_860027522)
erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::Devise,pt_Devise_860027522)


# creation et remplissage de l'enveloppe
erreur_860027522 = i_add_opt( "EnomEEC" )
ddebut_860027522 = i_get_art_field(g_iartout,$TwhaSelect::ddebut)
erreur_860027522 = i_set_attr_val( "date_Metro_deb", ddebut_860027522)

dfin_860027522 = i_get_art_field(g_iartout,$TwhaSelect::dfin)
erreur_860027522 = i_set_attr_val( "date_Metro_fin", dfin_860027522)

#pt_IDUS_NUM, b_distri_Allegro, b_distri_BSS
SI (i_valid_field_n(g_iartout, $TwhaSelect::AID_NBH) == 1)
ALORS
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::AID_NBH,pt_IDUS_NUM_860027522)
	b_distri_Allegro_860027522 = 1
SINON
	SI (i_valid_field_n(g_iartout, $TwhaSelect::AID_BSS) == 1)
	ALORS
		erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::AID_BSS,pt_IDUS_NUM_860027522)
		b_distri_BSS_860027522 = 1
	FINSI
FINSI

#CodEmet
SI (i_valid_field_n(g_iartout, $TwhaSelect::CodEmet) == 1)
ALORS
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::CodEmet,pt_CodEmet_860027522)
FINSI

#TypeOpServ
SI (i_valid_field_n(g_iartout, $TwhaSelect::TypeOpServ) == 1)
ALORS
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::TypeOpServ,pt_TypeOpServ_860027522)
FINSI

#TypPres, b_PE_PO, b_UP_UR
SI i_strcmp(pt_TYPPRES_860027522,"PE") == 0 || i_strcmp(pt_TYPPRES_860027522,"PO") == 0
ALORS
	b_PE_PO_860027522 = 1
SINON
	SI i_strcmp(pt_TYPPRES_860027522,"UP") == 0 || i_strcmp(pt_TYPPRES_860027522,"UR") == 0
	ALORS
		b_UP_UR_860027522 = 1
	FINSI
FINSI	
 
#QC895
SI i_strcmp(pt_TYPPRES_860027522,"PE") == 0 || i_strcmp(pt_TYPPRES_860027522,"UR") == 0
ALORS
	#LibZ1
	SI i_valid_field_n(g_iartout,$TwhaSelect::startPeriod)
	ALORS
		erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::startPeriod,pt_LibZ1_860027522)
	FINSI
	
	#LibZ2
	SI i_valid_field_n(g_iartout,$TwhaSelect::endPeriod)
	ALORS
		erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::endPeriod,pt_LibZ2_860027522)
	FINSI
FINSI
#\QC895

#LibZ3, LibZ6
SI i_valid_field_n(g_iartout,$TwhaSelect::LibProdServ)
ALORS
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::LibProdServ,pt_LibZ6_860027522)
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::LibProdServ,pt_LibZ3_860027522)
	SI i_strlen(pt_LibZ3_860027522) > 21
	ALORS
		i_get_sub_str( pt_LibZ3_860027522, 0, 20, pt_LibZ3_860027522 )
	FINSI	
FINSI

#LibZ5
SI i_valid_field_n(g_iartout,$TwhaSelect::EdiProdServ)
ALORS
	erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::EdiProdServ,pt_LibZ5_860027522)
FINSI


#DATES
ICAR_METRO_860027522 = i_get_attr_val("date_Metro_deb" )
ICAR_UTC_860027522 = i_DHgetCe2gTime(C_NUMTAB_860027522,C_ZONEMETRO_860027522,ICAR_METRO_860027522)
duree_860027522 = i_get_art_field(g_iartout,$TwhaSelect::dduree)

erreur_860027522 = i_get_art_str(g_iartout,$TwhaSelect::TimeZone,pt_GEOGRAPHIC_ZONE_860027522)
erreur_860027522 = i_recupererValeur(pt_GEOGRAPHIC_ZONE_860027522, pt_temp_860027522, i_strlen(pt_GEOGRAPHIC_ZONE_860027522),'/')
i_strcpy(pt_ZONE_GEO_860027522,UCASE_860026233(pt_GEOGRAPHIC_ZONE_860027522))
i_replace_str(pt_ZONE_GEO_860027522," ","_",pt_ZONE_GEO_860027522)

erreur_860027522 = i_set_art_str(g_iartout10, $Conversion::ZONE_GEO,pt_ZONE_GEO_860027522)

NUMZONE_860027522 = i_DHgetZoneID(C_NUMTABSEL_860027522, g_iartout10)

SI NUMZONE_860027522 == 0
ALORS
	#trace("##### Zone Grographique inconnue ########")
	code_rejet_860027522 = 0xA080
	erreur_860027522 = i_format_str2( pt_temp_860027522 , " La zone geographique <%s> est inconnue dans la Table de Selection des Decalages Horaires <%s>",pt_ZONE_GEO_860027522,"zones.4")
	erreur_860027522 = i_PlvMessEmettre( 8612, 2, g_iartin,"", 3,code_rejet_860027522, C_ARTICLE_860027522, pt_temp_860027522)
	SAUT DISTRI_ERR
FINSI
#trace1("################## NUMZONE = >%d< ####################",NUMZONE)

ICAR_LOCAL_860027522 = i_DHgetLocalTime(C_NUMTAB2_860027522,NUMZONE_860027522, ICAR_METRO_860027522)

date_locale_fin_860027522 = ICAR_LOCAL_860027522 + duree_860027522

erreur_860027522 = i_set_attr_val("date_Locale_fin", date_locale_fin_860027522)

##################################################################
# Recherche des instances des ECC  
##################################################################

#ALLEGRO_NEW
instALLEGRO_NEW_860027522 = i_LireInstanceECC(C_InstALLEGRO_NEW_860027522)

SI (!instALLEGRO_NEW_860027522)
ALORS
	#trace("Pas d'instance pour ALLEGRO_NEW !")
	erreur_860027522 = i_PlvMessEmettre(8501,2,g_iartin,"",3,C_InstALLEGRO_NEW_860027522,C_ARTICLE_860027522,g_ieec)
	SAUT DISTRI_ERR
FINSI	
#trace1("__FILE__:__LINE__ : instALLEGRO_NEW=<%d>",instALLEGRO_NEW)

#BSS_PDZ
SI b_distri_BSS_860027522  == 1
ALORS
	SI i_strplcmp(pt_IDUS_NUM_860027522,"1",0,1) == 0
	ALORS
		instBSS_860027522 = i_LireInstanceECC(C_InstBSS1_860027522)
		SI (!instBSS_860027522)
		ALORS
			#trace("Pas d'instance pour BSS_PDZ !")
			erreur_860027522 = i_PlvMessEmettre(8501,2,g_iartin,"",3,C_InstBSS1_860027522,C_ARTICLE_860027522,g_ieec)
			SAUT DISTRI_ERR
		FINSI
	SINON
		SI i_strplcmp(pt_IDUS_NUM_860027522,"2",0,1) == 0
		ALORS
			instBSS_860027522 = i_LireInstanceECC(C_InstBSS2_860027522)
			SI (!instBSS_860027522)
			ALORS
				#trace("Pas d'instance pour BSS_PDZ !")
				erreur_860027522 = i_PlvMessEmettre(8501,2,g_iartin,"",3,C_InstBSS2_860027522,C_ARTICLE_860027522,g_ieec)
				SAUT DISTRI_ERR
			FINSI
		FINSI
	FINSI
FINSI

#trace1("__FILE__:__LINE__ : instBSS = <%d>",instBSS)

##################################################################
# CRITERES DE DISTRIBUTION
##################################################################

# ALLEGRO_PDZ

SI b_distri_Allegro_860027522
ALORS
	erreur_860027522 = i_AjouterCouranteECC(instALLEGRO_NEW_860027522)
FINSI 

SI b_distri_BSS_860027522
ALORS
	erreur_860027522 = i_AjouterCouranteECC(instBSS_860027522)
FINSI 

##################################################################
# Validation de la liste des ECCs destinataires
##################################################################

erreur_860027522=i_ValiderListeECC( 0, 0, 0, 0)

##################################################################
# Mises au format
##################################################################

#--------------------------------------------------------------------------
# ALLEGRO_NEW
#--------------------------------------------------------------------------
SI ( !i_ChercherCouranteECC(instALLEGRO_NEW_860027522) )
ALORS
	#mise au format TallegroPE_PO
	SI b_PE_PO_860027522 == 1
	ALORS
		SI ( i_dup_art( g_iartout, C_TallegroPE_PO_860027522, g_iartout2 ) )
		ALORS
			code_errone_860027522 = 0xA0D1
			erreur_860027522 = i_PlvMessEmettre(8602,2,g_iartin,"",3,code_errone_860027522,C_TallegroPE_PO_860027522,C_ARTICLE_860027522)
			SAUT DISTRI_ERR
		FINSI
		#CODART
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::CODART,"E1")
		
		#AID
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::AID,pt_IDUS_NUM_860027522)
		
		#INDAID
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::INDAID,"1")
			
		#CODPRES
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::CODPRES,pt_CODPRES_860027522)
		
		#DEBCRED
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::DEBCRED,pt_DEBCRED_860027522)
	
		#DATPREST
		erreur_860027522 = i_set_art_field(g_iartout2,$TallegroPE_PO::DATPREST,ICAR_LOCAL_860027522)
	
		#CODEMET
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::CODEMET,pt_CodEmet_860027522)
	
		#MONTANT
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::MONTANT,pt_MONTANT_HT_860027522)
	
		#DEVISE
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::DEVISE,pt_Devise_860027522)
		
		#DUREE filler de 7 caracteres a espaces
	
		#HEURE
		erreur_860027522 = i_set_art_field(g_iartout10,$Conversion::DATE_ASC,ICAR_LOCAL_860027522)
	
		erreur_860027522 = i_get_art_str(g_iartout10, $Conversion::DATE_STR,pt_ICAR_LOCAL_860027522)
		i_get_sub_str(pt_ICAR_LOCAL_860027522,8,11,pt_TIME_860027522)
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::HEURE,pt_TIME_860027522)
		
		#Z1
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::Z1,pt_LibZ1_860027522)
	
		#Z2
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::Z2,pt_LibZ2_860027522)
	
		#Z3
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroPE_PO::Z3,pt_LibZ3_860027522)
		
		
	FINSI
	
	#mise au format TallegroUP_UR
	SI b_UP_UR_860027522 == 1
	ALORS
		SI ( i_dup_art( g_iartout, C_TallegroUP_UR_860027522, g_iartout2 ) )
		ALORS
			code_errone_860027522 = 0xA0D1
			erreur_860027522 = i_PlvMessEmettre(8602,2,g_iartin,"",3,code_errone_860027522,C_TallegroUP_UR_860027522,C_ARTICLE_860027522)
			SAUT DISTRI_ERR
		FINSI
		#CODART
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::CODART,"E1")
		
		#AID
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::AID,pt_IDUS_NUM_860027522)
		
		#INDAID
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::INDAID,"1")
			
		#CODPRES
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::CODPRES,pt_CODPRES_860027522)
		
		#DEBCRED
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::DEBCRED,pt_DEBCRED_860027522)
	
		#DATPREST
		erreur_860027522 = i_set_art_field(g_iartout2,$TallegroUP_UR::DATPREST,ICAR_LOCAL_860027522)
	
		#CODEMET
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::CODEMET,pt_CodEmet_860027522)
	
		#MONTANT
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::MONTANT,pt_MONTANT_HT_860027522)
	
		#DEVISE
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::DEVISE,pt_Devise_860027522)
		
		#DUREE filler de 7 caracteres a espaces
	
		#HEURE
		erreur_860027522 = i_set_art_field(g_iartout10,$Conversion::DATE_ASC,ICAR_LOCAL_860027522)
	
		erreur_860027522 = i_get_art_str(g_iartout10, $Conversion::DATE_STR,pt_ICAR_LOCAL_860027522)
		i_get_sub_str(pt_ICAR_LOCAL_860027522,8,11,pt_TIME_860027522)
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::HEURE,pt_TIME_860027522)
		
		#Z1
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::Z1,pt_LibZ1_860027522)
	
		#Z2
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::Z2,pt_LibZ2_860027522)
				
		#Z5
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::Z5,pt_LibZ5_860027522)
	
		#Z6
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::Z6,pt_LibZ6_860027522)
		
		#TYP_OP
		erreur_860027522 = i_set_art_str(g_iartout2,$TallegroUP_UR::TYP_OP,pt_TypeOpServ_860027522)

		#FILLER filler de 2 caracteres a espace
		
	
	FINSI
FINSI


#-----------------------------------------------------------------
# BSS_PDZ
#-----------------------------------------------------------------

#trace("Stockage vers BSS_PDZ")

SI !i_ChercherCouranteECC(instBSS_860027522)
ALORS
	SI ( i_dup_art( g_iartout, C_TbssPresDiv_860027522, g_iartout5 ) )
	ALORS
		code_errone_860027522 = 0xA0D1
		erreur_860027522 = i_PlvMessEmettre(8602,2,g_iartin,"",3,code_errone_860027522,C_TbssPresDiv_860027522,C_ARTICLE_860027522)
		SAUT DISTRI_ERR
	FINSI

	#CODART
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::CODART,"E1")

	#NOLIG

	#CODPRES
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::CODPRES,pt_CODPRES_860027522)

	#DEBCRED
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::DEBCRED,pt_DEBCRED_860027522)

	#DATPREST
	erreur_860027522 = i_set_art_field(g_iartout5,$TbssPresDiv::DATPREST,ICAR_LOCAL_860027522)

	#CODEMET
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::CODEMET,C_CodEmet_860027522)

	#MONTANT
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::MONTANT,pt_MONTANT_HT_860027522)

	#DEVISE
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::DEVISE,pt_Devise_860027522)

	#HEURE Heure locale (HHMM)
	erreur_860027522 = i_set_art_field(g_iartout10,$Conversion::DATE_ASC,ICAR_LOCAL_860027522)

	erreur_860027522 = i_get_art_str(g_iartout10, $Conversion::DATE_STR,pt_ICAR_LOCAL_860027522)
	i_get_sub_str(pt_ICAR_LOCAL_860027522,8,11,pt_TIME_860027522)
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::HEURE,pt_TIME_860027522)

	#Z1 
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::Z1,pt_LibZ1_860027522)
	
	#Z2 
#G4R9C2 QC887
	#erreur = i_set_art_str(g_iartout5,$TbssPresDiv::Z1,pt_LibZ2)
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::Z2,pt_LibZ2_860027522)

	#Z3 
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::Z3,pt_LibZ3_860027522)

	#Z4 ";;", cadre a gauche et complete par des espaces.
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::Z4,";;")

	#REFEMET 
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::REFEMET,pt_IDUS_NUM_860027522)

	#REFTRI "/service/ip/fti", cadre a gauche et complete par des espaces.
	erreur_860027522 = i_set_art_str(g_iartout5,$TbssPresDiv::REFTRI,C_REFTRI_860027522)

	#IDENT

	#NUMPREST
FINSI

##################################################################
# Envoi vers IECC
##################################################################

#-----------------------------------------------------------------
# ALLEGRO_NEW
#-----------------------------------------------------------------

SI ( !i_ChercherCouranteECC(instALLEGRO_NEW_860027522) )
ALORS
	erreur_860027522=i_stocke_art_iecc(g_iartout2, instALLEGRO_NEW_860027522)
	trace("Emission vers ALLEGRO_NEW reussie")
FINSI

#-----------------------------------------------------------------
# BSS_PDZ
#-----------------------------------------------------------------

SI ( !i_ChercherCouranteECC(instBSS_860027522) )
ALORS
	erreur_860027522=i_stocke_art_iecc(g_iartout5, instBSS_860027522)
	trace("Emission vers BSS_PDZ reussie")
FINSI

#=======================================================================================
# FIN DISTRIBUTION
#=======================================================================================

#trace2( "Fin du Pcode de distribution %s ",C_ARTICLE,"" )

RETOUR TRAIT_OK

##################################################################
# POINT de branchement : stockage PT_ERRONE
##################################################################

POINT DISTRI_ERR

#IFDEF trace_niv1 = 1
trace2( "Stockage de l'article %s en ERRONE",C_ARTICLE_860027522,"" )
#ENDIF

erreur_860027522 = i_make_art_rej(g_iartin, g_iartout7, code_rejet_860027522)
erreur_860027522 = i_stocke_art(g_iartout7,0,PT_ERRONE,0)

RETOUR TRAIT_OK

