FVERS = 2
REFOBJET : ID = 660010786 ; ID_INIT = 660010779 ; NOM = Txxbloc2 ; VERSION = B2 ; DATE = 13/08/12-13:16:50 ( 1344863810 ) ; CAT = 7 ; ETAT = 0 ; NB_FILS =0 ; ID_FILS = 
ID_EST = 660000277
COMMENT = "DRE creation 01/03/06 FO1728"
CREATEUR = dbertrand
# DEBUT_CORPS
PCODE_PERE=
####################################################################
#       article Entete type bloc 2 
#		MESPLUS
#
#   URS -DRE- 01/03/2006   Creation FO1728
#
####################################################################
#
# Definitions du rang des champs dans l'artobj. T0 est le champ numero 0
#
DEFINITION   ic_bloc         2
DEFINITION   ic_MINE         8

#
# Definitions de variables
#
REGISTRE   ENTIER   erreur
REGISTRE   ENTIER   bloc
REGISTRE   ENTIER   type_mine
REGISTRE   ENTIER   type_mine_ok
REGISTRE   ENTIER   code_rejet

#
# Definitions de pointeur
#
REGISTRE   POINTEUR pt_domaine
REGISTRE   POINTEUR pt_article

#
# allocation pointeur
#
pt_domaine = "1111111111111111111111111111111111111111111111111111111111111111111111111111"
pt_article = "2222222222222222222222222222222222222222222222222222222222222222222222222222"
#
# initialisation pointeur
#
i_strcpy(pt_domaine, " ") 
i_strcpy(pt_article, " ") 

#
# initialisation de variables
#
type_mine_ok 	= 0
type_mine	= 0


# On recupere le numero de bloc pour le suivi dans les traces
bloc = i_get_art_field(g_iartin,ic_bloc)
trace1("ARTICLES bloc no= %06d",bloc)


# le choix du pt_domaine est effectue a partir du champ MINE
# Si ce champs vaut:
# 0x46: les articles sont de type MESPLUS et le pt_domaine associe est Dmesplus
# Toutes autres valeurs est consideree comme une erreur


type_mine    = i_get_art_field( g_iartin, ic_MINE )

SI type_mine == 0x46
ALORS
	i_strcpy(pt_article, "MESPLUS") 
	i_strcpy(pt_domaine, "Dmesplus") 
	type_mine_ok = 1
FINSI




SI ( type_mine_ok == 0 )
ALORS
	trace("type machine (champ MINE) en entree inconnu dans bloc Txxbloc2")
	RETOUR BAD_BLOC

FINSI

	
####################################################################
# Teste de la date: dans le calendrier courant
####################################################################

# controle metachamp
SI (i_get_art_field(g_iartin,$ddebut) == -1)
ALORS
	trace("erreur metachamp ddebut, Pcode=Txxbloc2")
	code_rejet = 0x5062
	erreur = i_PlvMessEmettre( 8510, 2, g_iartin,"", 3,code_rejet, pt_article, "erreur metachamp ddebut, Pcode=Txxbloc2" )
#	8510:M:pcode:D:JCT:AD:JCT:10000:"ERR=0x %04x ARTICLE Entete <%s>, Erreur <%s>":"Desactivation d'alarme":
	erreur = i_stocke_art( g_iartin, 0, PT_ERRONE, 0)
	RETOUR TRAIT_OK
FINSI


erreur = i_test_date_bloc(g_iartin)
SI erreur
ALORS
	trace("erreur date, Pcode=Txxbloc2")
	code_rejet = 0x5062
	erreur = i_PlvMessEmettre( 8510, 2, g_iartin,"", 3,code_rejet, pt_article, "erreur date, Pcode=Txxbloc2" )
	code_rejet = 0x5062
#	8510:M:pcode:D:JCT:AD:JCT:10000:"ERR=0x %04x ARTICLE Entete <%s>, Erreur <%s>":"Desactivation d'alarme":
   	RETOUR BAD_BLOC 
FINSI

####################################################################
# Changement pt_domaine
####################################################################

trace2( "Changement de pt_domaine en %s", pt_domaine, "" )
i_strcpy( g_idomain, pt_domaine )
erreur = i_stocke_art( g_iartin, 0, PT_ELIMINE, 0)
trace("Fin de traitement Txxbloc2")

RETOUR TRAIT_OK


# FIN_CORPS
