# Fonction PCODE ID = 660004265
REGISTRE POINTEUR pt_alphanum
REGISTRE ENTIER ic_champ
REGISTRE ARTOBJ artobj

REGISTRE POINTEUR pt_val
REGISTRE ENTIER erreur
REGISTRE ENTIER indice
REGISTRE ENTIER digit
REGISTRE ENTIER longueur


pt_alphanum = depilerPOINTEUR()
ic_champ = depilerENTIER()
artobj = depilerARTOBJ()
pt_val="1234567890123456789012345"
indice=0

trace("Appel affectation_tab")
trace2("chaine passee = <%s>", pt_alphanum, "")

# Longueur de la chaine:
longueur=i_strlen(pt_alphanum)

trace1("Longueur de la chaine passee: <%d>", longueur)

# Bourrage possible avec "F":
SI (longueur % 2)
ALORS
  trace("Nb octets impair, bourrage avec F")
  erreur=i_format_str2(pt_alphanum,"%s%s",pt_alphanum,"F")
  longueur=longueur+1
FINSI
trace2("chaine apres bourrage = <%s>", pt_alphanum, "")

POINT BOUCLE

i_get_sub_str(pt_alphanum,indice,indice,pt_val)
digit=conversion2_660004265(pt_val)
erreur=i_set_art_fieldtab(artobj,ic_champ,indice,digit)

trace1("index <%d>",indice)
trace2("chaine = <%s>",pt_val,"")
trace1("DCB = <%d>", digit)

indice=indice+1

SI (indice>=longueur)
ALORS
  SAUT TAILLE_MAX
FINSI

SAUT BOUCLE

POINT TAILLE_MAX

trace1("Nb elements du tableau: <%d>",longueur)

RETOUR longueur

