Bonjour,
Voila, je développe actuellement un outil permettant de faire un tableau global à partir de plusieurs tableaux.
J'ai donc x objets 'facture' de type Array contenant chacun une liste d'objets 'colonne'.
Ces objets colonnes sont composés de la manière suivante:
- Variable id
- variable nom
- variable valeur
Voila, le but de mon outil est de sortir un fichier CSV avec en entête toute les colonnes (suivant l'id) et pour les lignes les valeurs correspondantes.
Cela à l'air facile, sauf que je peux avoir
- répétition de plusieurs blocs de colonnes. Dans ce cas, je dois 'aligner' les 1er colonnes de même ID puis ajouter les colonnes supplémentaires (en positionnant bien sur des valeurs vides dans les lignes précédentes).
- Avoir des colonnes n'apparaissant pas dans les factures précédentes.
Un petit exemple:
De haut en bas, id, nom, valeur.
Facture1 Array de 6 objets colonne
NF | NO | RBDD | RBDF | RBT | SE
NUM_FACT | NOM | RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | SEXE
155544545 | TOTO| 25/05/2013 | 27/05/2013 | 4.60 | M
Facture2 Array de 9 objets colonne
NF | NO | RBDD | RBDF | RBT | RBDD | RBDF | RBT | SE
NUM_FACT | NOM | RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | SEXE
155548686 | TITI | 28/05/2013 | 29/05/2013 | 8.68 | 01/06/2013 | 05/06/2013 | 1.80 | F
Facture3 Array de 9 objets colonne
NF | NO | MD | BAN | RBDD | RBDF | RBT | SE
NUM_FACT | NOM | MODE | IBAN | RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | SEXE
845548455 | TUTU | AUTO |415435434343434 | 29/05/2013 | 30/05/2013 | 8.33 | F
Je voudrais donc obtenir le résultat suivant:
NF | NO | MD | BAN | RBDD | RBDF | RBT | RBDD | RBDF | RBT | SE
NUM_FACT | NOM | MODE | IBAN |RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | RB_DATE_DEB | RB_DATE_FIN | RB_TAXE | SEXE
155544545 | TOTO| x | x | 25/05/2013 | 27/05/2013 | 4.60 | x | x | x | M
155548686 | TITI | x | x | 28/05/2013 | 29/05/2013 | 8.68 | 01/06/2013 | 05/06/2013 | 1.80 | F
845548455 | TUTU | AUTO |415435434343434 | 29/05/2013 | 30/05/2013 | 8.33 | x | x | x | F
Pour l'algo, je pense pouvoir m'en sortir, mais je me demande:
- N'existe t-il pas déjà une API pouvant réaliser cela?
- Si non, qu'elle type d'objet utiliser pour le tableau final? tableau (un peu galère pour ajouter les colonnes non?), les array (avec des objets mais bon même problématique pour gérer l'ajout de colonne?)
Bref, pourriez-vous m'orienter vers une solution efficace?
Merci à vous.
PS: Désolé pour l'alignement
Christophe
Partager