# Fonction PCODE ID = 660003942
REGISTRE ENTIER type_cra
REGISTRE ENTIER date_fin
REGISTRE POINTEUR pt_formatECC
REGISTRE ENTIER instanceECC
REGISTRE ARTOBJ tapin_2p5
REGISTRE ARTOBJ tapin_2pp
REGISTRE ARTOBJ artin_tlv

DEFINITION   CPT_1511  1511
DEFINITION   CPT_1508  1508
DEFINITION   STCK_KO    0
DEFINITION   STCK_OK    1

REGISTRE	ENTIER	res
REGISTRE	ENTIER	date_cour
REGISTRE	ENTIER	erreur

type_cra = depilerENTIER()
date_fin = depilerENTIER()
pt_formatECC = depilerPOINTEUR()
instanceECC = depilerENTIER()
tapin_2p5 = depilerARTOBJ()
tapin_2pp = depilerARTOBJ()
artin_tlv = depilerARTOBJ()

	date_cour = i_cur_time()

	SI (pt_formatECC != g_inull)
	ALORS
		SI (i_strplcmp(pt_formatECC, "TAP2++", 7, 6) == 0)
		ALORS
			trace("Format TAP2++")
			res = i_stocke_art_iecc(tapin_2pp, instanceECC)
			SI (res != 0)
			ALORS
				trace("Erreur de stockage de l'article")
				RETOUR   STCK_KO
			FINSI
# -- incrementation du compteur 1508
			trace("MAJ du compteur :1508")
			erreur = i_incr_cpt(CPT_1508, type_cra, instanceECC, 0, date_cour, 1)
			SI (erreur != 0)
			ALORS
				trace1("Erreur de mis a jour du compteur :%d",CPT_1508)
				RETOUR   STCK_KO
			FINSI
# -- incrementation du compteur 1511
			SI ( (type_cra != 82) && (type_cra != 84) && (type_cra != 86) && (type_cra != 88) )
			ALORS
				trace1("MAJ du compteur :1511 pour le type %d", type_cra)
				erreur = i_incr_cpt(CPT_1511, type_cra, instanceECC, 0, date_fin, 1)
				SI (erreur != 0)
				ALORS
					trace1("Erreur de mis a jour du compteur :%d",CPT_1511)
					RETOUR   STCK_KO
				FINSI
			FINSI
			RETOUR STCK_OK
		FINSI

	SI (i_strplcmp(pt_formatECC, "TAP2.5", 7, 6) == 0)
	ALORS
		trace("Format TAP2.5")
		res = i_stocke_art_iecc(tapin_2p5, instanceECC)
		SI (res != 0)
		ALORS
			trace("Erreur de stockage de l'article")
			RETOUR   STCK_KO
		FINSI
# -- incrementation du compteur 1508
		erreur = i_incr_cpt(CPT_1508, type_cra, instanceECC, 0, date_cour, 1)
		SI (erreur != 0)
		ALORS
			trace1("Erreur de mis a jour du compteur :%d",CPT_1508)
			RETOUR   STCK_KO
		FINSI
# -- incrementation du compteur 1511
		SI ( (type_cra != 82) && (type_cra != 84) && (type_cra != 86) && (type_cra != 88) )
		ALORS
			trace1("MAJ du compteur :1511 pour le type %d", type_cra)
			erreur = i_incr_cpt(CPT_1511, type_cra, instanceECC, 0, date_fin, 1)
			SI (erreur != 0)
			ALORS
				trace1("Erreur de mis a jour du compteur :%d",CPT_1511)
				RETOUR   STCK_KO
			FINSI
		FINSI
		RETOUR STCK_OK
	FINSI

	SI (i_strplcmp(pt_formatECC, "TLV16", 7, 5) == 0)
	ALORS
		trace("Format TLV")
		SI ( (type_cra != 82) && (type_cra != 84) && (type_cra != 86) && (type_cra != 88) )
		ALORS
			res = i_stocke_art_iecc(artin_tlv, instanceECC)
			SI (res != 0)
			ALORS
				trace("Erreur de stockage de l'article")
				RETOUR   STCK_KO
			FINSI
		FINSI
# -- incrementation du compteur 1508
		erreur = i_incr_cpt(CPT_1508, type_cra, instanceECC, 0, date_cour, 1)
		SI (erreur != 0)
		ALORS
			trace1("Erreur de mis a jour du compteur :%d",CPT_1508)
			RETOUR   STCK_KO
		FINSI
# -- incrementation du compteur 1511
		SI ( (type_cra != 82) && (type_cra != 84) && (type_cra != 86) && (type_cra != 88) )
		ALORS
			trace1("MAJ du compteur :1511 pour le type %d", type_cra)
			erreur = i_incr_cpt(CPT_1511, type_cra, instanceECC, 0, date_fin, 1)
			SI (erreur != 0)
			ALORS
				trace1("Erreur de mis a jour du compteur :%d",CPT_1511)
				RETOUR   STCK_KO
			FINSI
		FINSI
		RETOUR STCK_OK
	FINSI

	trace("Format de stockage invalide")
	RETOUR STCK_KO
	FINSI

	trace("Format de stockage invalide")
	RETOUR STCK_KO

