DEFINITION C_Article_860023177 "Tri2g118"
REGISTRE ENTIER code_errone_860023177
REGISTRE ENTIER erreur_860023177
REGISTRE ENTIER CATDC_860023177
REGISTRE ENTIER SCATDC_860023177
############################################################################
#	Article DC Tri2g118  (RI2G 118 FT)
#	Pcode de traitement
#
# Historique
# 07/07/2006	RHE	Creation
# 10/07/2006	RHE	FO1868 et FO1877 Tests sur champs optinnels pour metachamps
# 08/10/07	FAL ParamFTSA-G3R2 FO2238 controle pour OT sur IDUS / ICOM exploitabilite des alarmes
#
############################################################################

# DECLARATIONS

#FO2239



# INITIALISATIONS

code_errone_860023177 = 0
erreur_860023177 = 0

CATDC_860023177 = 0
SCATDC_860023177 = 0

################################################################################################
#
#  Controle pour le metachamp Dduree et pour le metachamp Tax :
#    en cas d erreur sur l une des operandes (absence, mauvais format des champs concernes),
#    envoi de l article en errone.
#    Modifie suite FO1868 et FO1877: test de DCONV uniquement
################################################################################################
CATDC_860023177 = i_get_art_field(g_iartin, $Tri2g118::CATDC)
SCATDC_860023177 = i_get_art_field(g_iartin, $Tri2g118::SCATDC)
SI ((CATDC_860023177 == 1) && (SCATDC_860023177 == 2))
	ALORS
	SI (! i_valid_field_n(g_iartin, $Tri2g118::TRAA_DCONV))
	ALORS
		code_errone_860023177 = 0x5082
		#FO2239 erreur = i_PlvMessEmettre(7221, 2, g_iartin, "", 1, code_errone, 0, 0)
		erreur_860023177 = i_PlvMessEmettre(7221, 2, g_iartin, "", 2, code_errone_860023177, C_Article_860023177, 0)
		SAUT STOCKE_ERRONE
	FINSI
FINSI

################################################################################################
#	Controles croises des champs
################################################################################################

# [IDUS.NUM] ou [ICOM. LCNB]		Prisence de lun de ses 2 paramhtres au moins.

#FO2239 SI ((i_valid_field_n(g_iartin, $Tri2g118::IDUS_NUM) != 1) && (i_valid_field_n(g_iartin, $Tri2g118::ICOM_LCNB) != 1))
SI ( (i_valid_field_n(g_iartin, $Tri2g118::IDUS_NUM) != 1) 
     && (i_valid_field_n(g_iartin, $Tri2g118::ICOM_LCNB) != 1)
     && (i_valid_field_n(g_iartin, $Tri2g118::COM_INTGI) != 1) )
ALORS
	code_errone_860023177 = 0x50F2
	#FO2239 erreur = i_PlvMessEmettre(7222, 2, g_iartin, "", 1, code_errone, 0, 0)
	erreur_860023177 = i_PlvMessEmettre(7222, 2, g_iartin, "", 2, code_errone_860023177, C_Article_860023177, 0)
	SAUT STOCKE_ERRONE
FINSI

######################################
# Stockage OK
######################################

erreur_860023177 = i_stocke_art(g_iartin, 0, PT_OK, 0)
RETOUR TRAIT_OK

############################################
#  POINT de branchement : stockage ERRONE  #
############################################

POINT STOCKE_ERRONE

#trace("Stockage en ERRONE ")
erreur_860023177 = i_make_art_rej(g_iartin,g_iartout,code_errone_860023177)
erreur_860023177 = i_stocke_art(g_iartout, 0, PT_ERRONE,0)

RETOUR TRAIT_OK
