diff --git a/gestion_des_portfolios/config-creer-371.exemple b/gestion_des_portfolios/config-creer-371.exemple
new file mode 100755
index 0000000000000000000000000000000000000000..c099bcfa45236b4cf4cfc9de591fe7bc1bd7eb6b
--- /dev/null
+++ b/gestion_des_portfolios/config-creer-371.exemple
@@ -0,0 +1,3 @@
+zone_uri	371
+zone_uri_url	c
+zone_uri_note	a
diff --git a/gestion_des_portfolios/config-creer-856.exemple b/gestion_des_portfolios/config-creer-856.exemple
new file mode 100755
index 0000000000000000000000000000000000000000..2a61945dd15727a12b82f1a7065960b72737844f
--- /dev/null
+++ b/gestion_des_portfolios/config-creer-856.exemple
@@ -0,0 +1,3 @@
+zone_uri	856
+zone_uri_url	u
+zone_uri_note	z
diff --git a/gestion_des_portfolios/creer_portfolios.pl b/gestion_des_portfolios/creer_portfolios.pl
index b81b41998eac794318708554faf40b4204600662..996ff90c506f935bbf90f227c9d7754bec323528 100644
--- a/gestion_des_portfolios/creer_portfolios.pl
+++ b/gestion_des_portfolios/creer_portfolios.pl
@@ -13,6 +13,12 @@
 #	04/12/2023 : ajouter dans les logs une information de creation du portfolio
 #	29/11/2024 : passage du fichier de conf en parametre
 #	29/05/2025 : fichier cle.key dedié aux clés api. les clés api ne sont plus mise dans les fichier de conf. plus pratique pour la gestion GIT.
+#	29/05/2025 : passage à un paramétrage de la zone uri pour pouvoir travailler avec un autre champ que le 856
+#				ajout de 3 champs dans fichier de conf : 
+#				zone_uri	856
+#				zone_uri_url	u
+#				zone_uri_note	z
+#				cela permet au besoin de travailler sur le 371 au lieu du 856
 ###########
 #	passage de parametre -> creer_portfolio.pl	fichier-conf.conf	liste.csv
 ##############################
@@ -36,7 +42,7 @@ my $block_xml="";
 my $twig_bib="";
 my %tab_mms_id_url=(); # table de hash des mmd_id et url
 my %tab_mms_id_url_ordonnee=(); # table de hash des mmd_id et url avec l'ordre d'apparition dans la notice
-my $ordre_apparition_856=0;
+my $ordre_apparition_uri=0;
 my $nbr_portfolios=0;
 
 if (!(exists $ARGV[0])) {print "Manque des fichiers en parametre : perl creer_portfolio.pl	fichier-conf.conf	liste.csv.\n";exit(0)};
@@ -85,7 +91,7 @@ close(CSV);
 for ($i=1;$i<=$#tab_inter;$i++) { #supprimer les lignes vides ou sans mms_id
 	print "$tab_inter[$i] =>\n";
 	if ($tab_inter[$i]=~ /^\d.*/) { # si cela ne commence par par un chiffre
-		print "OK pour [".$tab_inter[$i]."]\n";
+		print "OK pour ".$tab_inter[$i]."\n";
 	} else {
 		print "delete [".$tab_inter[$i]."]\n";
 		delete $tab_inter[$i];
@@ -130,7 +136,7 @@ for ($i;$i<=$#tab_inter;$i++) {
 
 	#print $block_xml,"\n";
 	$twig_bib->parse($block_xml); # ici tout est dans la structure twig
-	# Parcourir le bloc xml pour extraire les URL des 856$u
+	# Parcourir le bloc xml pour extraire les URL des zone_uri$zone_uri_url (exemple 856$u)
 	my $root= $twig_bib->get_xpath('//bib/record/',0);
 	my @les_datafield= $root->children('datafield');  ### on récuperer une table de hash de tous les "enfants"
 	
@@ -139,9 +145,9 @@ for ($i;$i<=$#tab_inter;$i++) {
 				
 				my $tag = $un_datafield->{'att'}->{'tag'};
 				
-				if ($tag=="856") { # on est dans le bon datafield
-					print "\n##### 856 #######\n";
-					$ordre_apparition_856++;
+				if ($tag==$hash_conf{zone_uri}) { # on est dans le bon datafield
+					print "\n##### $hash_conf{zone_uri} #######\n";
+					$ordre_apparition_uri++;
 					#print $un_datafield->sprint;
 					#print "\n############\n";
 					my $url="";
@@ -151,25 +157,27 @@ for ($i;$i<=$#tab_inter;$i++) {
 						{
 						my $code = $un_subfield->{'att'}->{'code'};
 						#print $code,"\n";
-						if ($code=~ /^u$/) { # on est dans le bon subfield
-							print "\n\t##### sous champ u #######\n";
+						if ($code=~ /^$hash_conf{zone_uri_url}$/) { # on est dans le bon subfield
+							print "\n\t##### sous champ $hash_conf{zone_uri_url} #######\n";
 							$url=$un_subfield->text();
 							#print "\t".$un_subfield->text()."\n";
 							print "\t".$url."\n";
 
 							$tab_mms_id_url{"[".$mms_id."][".$url."]"}="";
-							$tab_mms_id_url_ordonnee{"[".$mms_id."][".$url."]"}=$ordre_apparition_856;
+							$tab_mms_id_url_ordonnee{"[".$mms_id."][".$url."]"}=$ordre_apparition_uri;
 							ecrire_log($mms_id,$url);
 							$nbr_portfolios++;
 						}
-						if ($code=~ /^z$/) { # on est dans le bon subfield
-							print "\n\t##### sous champ z #######\n";
+						if ($code=~ /^$hash_conf{zone_uri_note}$/) { # on est dans le bon subfield
+							print "\n\t##### sous champ $hash_conf{zone_uri_note} #######\n";
 							$note_public=$un_subfield->text();
 							print "\t".$note_public."\n";
-							$tab_mms_id_url{"[".$mms_id."][".$url."]"}=$note_public;
+							
 							
 						}
 					}
+					### comme on ne sait pas dans quel ordre apparaissent les sous champs, on stock la note public après avoir tout parcouru
+					$tab_mms_id_url{"[".$mms_id."][".$url."]"}=$note_public;
 				}
 		}
 	
@@ -248,15 +256,16 @@ my $v=0;
 my $url="";
 my $note_public="";
 my $portfolio_a_creer="";
-## Creer les portfolios dans l'ordre d'apparition des 856 grace à "tab_mms_id_url_ordonnee"
+## Creer les portfolios dans l'ordre d'apparition des zone_uri grace à "tab_mms_id_url_ordonnee"
 %tab_mms_id_url_ordonnee= reverse (%tab_mms_id_url_ordonnee); # on inverse la table , l'indice devient la clé
 foreach $v (sort keys %tab_mms_id_url_ordonnee) { # on parcourt avec sort
 	$c=$tab_mms_id_url_ordonnee{$v};
 	print $c,"\n";
+	print "note public : ".$tab_mms_id_url{$c},"\n";
 	$c=~/\[(.*)\]\[(.*)\]/;
 	$mms_id=$1;
 	$url=$2;
-	$note_public=Encode::encode_utf8 $tab_mms_id_url{$c};
+	$note_public=Encode::encode_utf8 $tab_mms_id_url{$c}; 
 	print "--->Creation du portfolio $url pour le mms_id $mms_id:\n";
 	$portfolio_a_creer=$bloc_modele_portfolio;
 	$portfolio_a_creer=~ s/\[MMS_ID\]/$mms_id/g;
@@ -265,7 +274,7 @@ foreach $v (sort keys %tab_mms_id_url_ordonnee) { # on parcourt avec sort
 	#print "\n$portfolio_a_creer\n";
 	$block_xml=post_create_portfolio_mms_id($mms_id,$portfolio_a_creer);
 	print $block_xml,"\n";
-	ecrire_log("Creation portfolio",$mms_id."==>".$url);
+	ecrire_log("Creation portfolio",$mms_id."==>".$url." ==> note :".$note_public);
 
 }