Projet

Général

Profil

Actions

Bug #3780

fermé

Import csv d'utilisateurs : Limitation de longeur du champs adresse

Ajouté par Mathis FIBLEUIL il y a plus de 11 ans. Mis à jour il y a presque 11 ans.

Statut:
Closed
Priorité:
Normal
Assigné à:
Catégorie:
Administration
Début:
03/10/2012
Echéance:
% réalisé:

100%

Temps estimé:
Navigateur:
Tous
Votre version de Silverpeas:
5.8.1
Système d'exploitation:
Votre base de données:
PostgreSQL
Livraison en TEST:
Livraison en PROD:

Description

Bonjour,

Lors de l'import d'un fichier csv contenant des utilisateurs à créer, l'import bloque lorsque la longueur du champs adresse dépasse 50 caractères. J'obtiens le message suivant :
@Le fichier CSV est non conforme à ce qui est attendu :

- Ligne = 6, Colonne = 14, Valeur = XXXXXXXXXXXXX, La valeur ne doit pas dépasser 50 caractères@

Pourtant le champs de la base de données peut contenir 500 caractères. S'agit-il d'un paramétrage à modifier?

Mis à jour par David Lesimple il y a plus de 11 ans

  • Statut changé de New à Feedback

Quel base de données utilisez-vous ? car sur Postgres, le champ adresse est bien limitée à 50 caractères.

Mis à jour par Mathis FIBLEUIL il y a plus de 11 ans

Nous utilisons Postgres 9.1. La structure de la table domainsp_user me fait penser que la limite est de 500 caractères.

-- Table: domainsp_user

-- DROP TABLE domainsp_user;

CREATE TABLE domainsp_user
(
id integer NOT NULL,
firstname character varying(100),
lastname character varying(100) NOT NULL,
phone character varying(20),
homephone character varying(20),
cellphone character varying(20),
fax character varying(20),
address character varying(500),
title character varying(100),
company character varying(100),
"position" character varying(100),
boss character varying(100),
login character varying(50) NOT NULL,
password character varying(32),
passwordvalid character(1) NOT NULL DEFAULT 'Y'::bpchar,
loginmail character varying(100),
email character varying(100),
CONSTRAINT pk_domainsp_user PRIMARY KEY (id ),
CONSTRAINT un_domainsp_user_1 UNIQUE (login )
)

Mis à jour par David Lesimple il y a plus de 11 ans

  • Tracker changé de Support à Bug
  • Catégorie mis à Administration
  • Votre base de données mis à PostgreSQL

elle est bien de 500 dans la table domainsp_user mais de 50 dans les tables domainXXX_user crées pour d'autres domaines SQL.
Il y a bien un incohérence.

Mis à jour par Stéphanie Fariello il y a environ 11 ans

  • Statut changé de Feedback à Qualified

Mis à jour par Nicolas Eysseric il y a presque 11 ans

  • Statut changé de Qualified à Assigned
  • Assigné à mis à Yohann Chastagnier
  • Version cible mis à Version 5.13

Mis à jour par Yohann Chastagnier il y a presque 11 ans

  • Statut changé de Assigned à In progress...

Mis à jour par Nicolas Eysseric il y a presque 11 ans

Dans tous les cas, le champ adresse doit être de 500 caractères.
Lors de la création/modification, cette limite doit être utilisée.
Afin d'être générique, je pense qu'il serait également intéressant d'ajouter un nouveau paramètre optionnel sur chaque champ : property_XX.MaxLength
Il permettrait de pouvoir aller plus loin dans la personnalisation. S'il n'est pas renseigné et/ou absent, la valeur par défaut actuelle est alors utilisée.
Dans le cas où MaxLength > 100, le champ devrait être présenté grâce à un textarea.

Ces modifications n’entraîneront pas de modifications des tables existantes.
Si besoin, elles seront modifiées manuellement...

Mis à jour par Yohann Chastagnier il y a presque 11 ans

  • Statut changé de In progress... à Resolved
  • Version cible changé de Version 5.13 à Version 5.12.2
  • % réalisé changé de 0 à 100

Pour rappel, les modifications ci-dessous décrites n’entraînent pas de modifications des tables existantes.

La proposition de Nicolas a été mise en place : un nouveau paramètre optionnel property_XX.MaxLength est géré sur chaque champ.
Il permet de définir la taille maximum en nombre de caractères que peut avoir une information complémentaire d'un utilisateur. Il est utilisé lors :
  • de la création d'un domaine pour la définition des tables dans la base de données
  • de l'affichage des informations complémentaires dans le profil d'un utilisateur (en mode modification)
  • de l'affichage des informations complémentaires dans la fiche de modification d'un utilisateur dans la partie administration
  • de l'import des utilisateurs via un fichier d'import au format csv

Si ce paramètre n'est pas défini, la taille maximum est de 50 (cas de tous les domaines SQL créés avant la mise à jour de Silverpeas qui contient cette correction).

Par défaut, la partie du fichier de propriétés des domaines SQL qui définie les informations complémentaires d'un utilisateur se présente de la manière suivante :

property_1.Name = title
property_1.Type = STRING
property_1.MapParameter = title
property_1.MaxLength = 100

property_2.Name = company
property_2.Type = STRING
property_2.MapParameter = company
property_2.MaxLength = 100

property_3.Name = position
property_3.Type = STRING
property_3.MapParameter = position
property_3.MaxLength = 100

property_4.Name = boss
property_4.Type = USERID
property_4.MapParameter = boss
property_4.MaxLength = 100

property_5.Name = phone
property_5.Type = STRING
property_5.MapParameter = phone
property_5.MaxLength = 20

property_6.Name = homePhone
property_6.Type = STRING
property_6.MapParameter = homePhone
property_6.MaxLength = 20

property_7.Name = fax
property_7.Type = STRING
property_7.MapParameter = fax
property_7.MaxLength = 20

property_8.Name = cellularPhone
property_8.Type = STRING
property_8.MapParameter = cellPhone
property_8.MaxLength = 20

property_9.Name = address
property_9.Type = STRING
property_9.MapParameter = address
property_9.MaxLength = 500

L'affichage des informations d'un utilisateur dans la partie administrative a été modifiée afin de présenter séparément celles principales de celles complémentaires.
Aussi, au niveau de l'import CSV, la valeur reportée dans un message d'erreur est tronquée au delà de 100 caractères.

Mis à jour par Nicolas Eysseric il y a presque 11 ans

  • Statut changé de Resolved à Closed
  • Priorité changé de Low à Normal

Validé et intégré.

Actions

Formats disponibles : Atom PDF