# Logiciels > Solutions d'entreprise > Business Intelligence > SAP Crystal Reports > [CR 2013] TCD et insertion d'une ligne  plusieurs colonnes

## James Daniel

Bonjour,

J'ai un TCD annuel sur 12 priodes, soit des rubriques en lignes (une trentaine) et 12 colonnes de montant (pas de total horizontal)
J'aurai besoin de mettre des montants sur la premire ligne, et sur chacune des 12 colonnes : montant janvier, montant fvrier etc ... montant dcembre.
Ces montants sont issus de 12 sous-rapports.

Est-ce que c'est possible d'envisager une solution ?

----------


## luc_chivas

Bonjour, 

Aurais tu un visu, je ne comprends pas "J'aurai besoin de mettre des montants sur la premire ligne"

----------


## James Daniel

Bonjour Luc,

Insrer une ligne au-dessus de B001, avec des montants pour chaque mois (colonne) (ces montants sont issus de sous-rapports, donc des variables)
Ou bien insrer  la fin du tableau.

----------


## luc_chivas

Bonjour

A la fin du tableau, tu slectionnes ton dernier champs de la colonne
membre calcul / insrer ligne

ensuite tu slectionnes ton nouveau champs / membre calcul/ modifier la formule d'insertion et tu mets 0
ensuite membre calcul / modifier la formule de calcul
et formule 
select CurrentColumnIndex
Case 1 : ton rsultat du mois de janvier
Case 2 : ton rsultat du mois de fvrier

Case 3 : ton rsultat du mars
........

----------


## James Daniel

Merci Luc,
Et serait-il possible de remplacer les valeurs d'une ligne (et les 12 colonnes correspondantes) ?
Par exemple : si j'arrive  mettre des donnes  montant 0 sur la ligne B000 que je mettrai en premire ligne
Et que par la suite je voudrais modifier les donnes 
- Ligne B000, janvier
- Ligne B000, fvrier etc ...

----------


## luc_chivas

Bonjour

si j'ai bien compris...

tu te places sur la colonne de droite et tu choisis membre calcul/ Modifier la formule d'entte... donc la tu pourras mettre B0000 dans ta colonne de doite
ensuite tu rpte la formule avec le "select case"

----------


## James Daniel

Re,
Cela devrait tre a. Mais le seul souci serait que la variable qu'on utilise pour stocker les montants (montant1, montant2 ... montant12) ne s'affichent qu' partir du niveau en-tte de page ; alors que le TCD se place sur l'en-tte du rapport.  :8O:

----------


## luc_chivas

bonjour

tu cres une deuxime section entte de rapport que tu place au dessus du TCD.
Dans ton sous rapport (dans la premire section), tu masques toutes les sections, dans les proprits de la section, tu mets supprimer section vide.
ou laors, j'ai mal compris, tu calcules toutes tes variables pour chaque page et tu utilises le rsultat dans le TCD ??

----------


## James Daniel

Bonjour Luc,

Voici la rsum de la situation suite au rajout de section sur l'en-tte du rapport
- insertion de ligne ou enfant avec modification de valeur pour chaque colonne, comme indique ci-dessus : OK
- j'ai opt pour enfant pour que le membre calcul soit au mme niveau qu'une rubrique composant

Je rencontre un problme que j'explique  la fin de ce post

Le TCD se regroupe sur trois niveau comme suit



*Au niveau de l'output*, voici ce que nous avons
- Ligne 2 de l'excel surligne en jaune : membre calcul insr
- Toutes les lignes correspondant  une cellule bleu (A000, B000 ...) sont des totaux automatique par regroupement
- La dernire ligne REGRP1 est un total automatique par regroupement des A000, B000, C000 et D000
- Je n'ai pas russi  modifier les montants mensuels (qui sont  zro) pour la ligne correspondant  A001 (donnes remontes automatiquement depuis la vue)



*Au niveau des donnes*, voici sa structure :
- Ligne 2 excel = membre calcul
- Ligne 3 excel : ces donnes proviennent de la vue (insertion de donnes forces  montant zro)



*Le dernier souci pour cet tat* : je voudrais que la ligne "membre calcul" insre (A001), (surligne en jaune) soit calcul:
- Au niveau du Headcod A000
- Et ensuite au niveau du REGROUP REGRP1
Je pense que ce total ne se fait pas car HEADCOD et REGROUP n'est pas renseign pour ce membre calcul.
- Autre question : comment supprimer une ligne sans utiliser l'option "supprimer les lignes vides" ?

Merci d'avance

----------


## luc_chivas

Bonjour

il faut vrifier le label de ta colonne Namecode (toujours avec les fonction grid... tu en a une qui s'appelle gridlableat)
si A001 alors le rsultat de tes variables sinon, la fonction classique que tu as dfinie dans ton tableau croise
Quel type de ligne souhaites tu effacer, en fonction de quoi ??

----------


## James Daniel

Luc,

Je n'arrive pas  voir ce dtail de Grid. Il me semble l'avoir vu une ou deux fois auparavant, mais je n'arrive pas  reproduire.

Pour la suppression de ligne, ce sera uniquement si on utilise le membre calcul, qui fait que la ligne A001 n'est plus utile (avec les valeurs  0)

----------


## luc_chivas

Il faut que dans personnaliser le style dans expert tableau, tu donnes un alias de ta colonne (ex :Namecode)
ensuite ta formule va commencer par 
if gridrowcolumnvalue("Namecode") = "A001" then.....

----------

