DEFINITION ERR_SYNTAX_780042400 0x5041
DEFINITION INCREMENT_780042400 1
DEFINITION CPT_780042400 1501
DEFINITION PREFIXE_780042400 "MLPResultCode"
DEFINITION NUMTAB_780042400 4
DEFINITION NUMZONE_780042400 7
REGISTRE ENTIER X_780042400
REGISTRE ENTIER Y_780042400
REGISTRE ENTIER Z_780042400
REGISTRE ENTIER date_audit_780042400
REGISTRE ENTIER date_plat_780042400
REGISTRE ENTIER erreur_780042400
REGISTRE ENTIER code_rejet_780042400
REGISTRE POINTEUR pt_cle_780042400
REGISTRE POINTEUR pt_resultcodeIN_780042400
REGISTRE POINTEUR pt_resultcodeOUT_780042400
################################################################
# Pcode de TRAITEMENT Tmlp.src
# Service MLP 
# Article : Tmlp
################################################################
# 
# URS/PSA	03/02/06	Creation
# URS/PSA	09/03/06	FO 115
# 17/01/11 - BEA - G3R1 lot4 Verification/Correction des variables (constantes, entiers, pointeurs)
#
################################################################

# tous les DC sont efficaces










pt_cle_780042400 = "11111111111111111111111111111111111"
pt_resultcodeIN_780042400 = "22222222"
i_strcpy(pt_resultcodeIN_780042400,"")
pt_resultcodeOUT_780042400 = "333333333"

##############################################################################################

trace("Pcode de traitement de Tmlp")


# Test syntaxique sur les champs :
# - DATE (duration)
# - LocTimeStamp
#  
erreur_780042400=i_test_art(g_iartin)
SI erreur_780042400
ALORS
#        trace("test_art en erreur")
	code_rejet_780042400 = ERR_SYNTAX_780042400 
	erreur_780042400 = i_PlvMessEmettre(6350,2,g_iartin,"",1,code_rejet_780042400,0,0)
        SAUT STOCKE_ERRONE
FINSI

#
# Test sur le champ ResultCode
#
i_strcpy(pt_resultcodeOUT_780042400, "")
SI i_valid_field_n(g_iartin,$Tmlp::ResultCode)
ALORS
	erreur_780042400 = i_get_art_str(g_iartin, $Tmlp::ResultCode, pt_resultcodeIN_780042400)
	erreur_780042400 = i_format_str2(pt_cle_780042400, "%s%s", PREFIXE_780042400, pt_resultcodeIN_780042400)
	i_strcpy(pt_resultcodeOUT_780042400, i_get_tab_field("VariableContexte", i_get_art_field(g_iartin,$Tmlp::DATE), pt_cle_780042400))
FINSI

SI (i_strcmp(pt_resultcodeOUT_780042400, g_inull) == 0)
ALORS
	code_rejet_780042400 = ERR_SYNTAX_780042400 
	erreur_780042400 = i_PlvMessEmettre(6351,2,g_iartin,"",2,code_rejet_780042400,pt_resultcodeIN_780042400,0)
       	SAUT STOCKE_ERRONE
FINSI


########################################################
# Cpt applicatifs
########################################################
date_audit_780042400 = i_date_audit()
date_plat_780042400 = i_DHgetLocalTime(NUMTAB_780042400, NUMZONE_780042400, date_audit_780042400)

X_780042400=0x50
Y_780042400=g_ieec
Z_780042400=0

erreur_780042400=i_incr_cpt(CPT_780042400,X_780042400,Y_780042400,Z_780042400,date_plat_780042400,INCREMENT_780042400)
erreur_780042400 = i_stocke_art(g_iartin, 0, PT_OK, 0)


RETOUR TRAIT_OK

#####################################################################
# POINT de branchement : stockage PT_OK
#####################################################################

POINT STOCKE_OK

erreur_780042400 = i_stocke_art(g_iartin, 0, PT_OK,0)


RETOUR TRAIT_OK

#####################################################################
# POINT de branchement : stockage PT_ERRONE
#	       correspond au cas d'erreur syntaxiques et semantiques
#####################################################################
POINT STOCKE_ERRONE

trace("Stockage de l'article en ERRONE")

erreur_780042400 = i_make_art_rej(g_iartin, g_iartout, code_rejet_780042400)
erreur_780042400 = i_stocke_art(g_iartout, 0, PT_ERRONE, 0)


RETOUR TRAIT_OK
#---------------------------- FIN Tmlp.src -------------------------------------
