Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > SDK
SDK Forum d'entraide pour la programmation des outils BO par des API (VBA, ASP, Java)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/01/2008, 13h17   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 1
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 1
Points : 0
Points : 0
Par défaut [BO 6.5.1][VBA]Import données BO sous EXCEL. HELP

Bonjour,

Alors voilà je vous expose mon problème. J'ai une vingtaine de rapport BO, dans lesquels, je fais apparaitre un certain nombre de calcul, que je nepourrais pas faire en traitant les données directement sous excel notemment parceque j'ai pas mal de section et de sous section dans mes rapports BO.

En gros, voici ce que j'aimerai faire:
  1. Raffraichir mes rapports B.O
  2. Exporter les données qui m'interressent dans un tableau EXCEL, tout en conservant le mise en forme de mon tableau EXCEL
  3. le tout de manière automatique

Alors j'ai quelque piste déjà mais je me demande s'il existe pas un moeyn plus simple que ce à quoi j'ai pensé.
  1. Créer une macro dans BO qui raffraichirait mes rapports, et appliquerait des filtres de sortes à me retrouver avec une seule section. Puis le sauvarder sous Excel. Et répéter l'action autant de fois qu'il de section dans mon rapport, et ce pour chaque rapport
  2. une fois que j'ai mes sauvegardes sous Excel j'utilise des relations pour récupérer les données qui m'interressent et les envoyer vers mon tableau
  3. Puis créer une macro, qui me raffraichirait mon tableau excel après mes rapports BO


Pensez que c'est possible? Est ce que je suis sur la bonne voie ou pas du tout?

Personnellement, bien que je m'y connaissent pas bcp je suis sur qu'il doit y avoir plus simple et plus sur.

Alors si vous avez des iées je suis preneuse.
sweetsugar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 20h04   #2
Rédacteur
 
Avatar de Bruno2r
 
Bruno ROMAN-RUIZ
Inscription : décembre 2006
Messages : 2 185
Détails du profil
Informations personnelles :
Nom : Bruno ROMAN-RUIZ
Âge : 57

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : décembre 2006
Messages : 2 185
Points : 2 724
Points : 2 724
Citation:
Envoyé par sweetsugar Voir le message
Bonjour,

Alors voilà je vous expose mon problème. J'ai une vingtaine de rapport BO, dans lesquels, je fais apparaitre un certain nombre de calcul, que je nepourrais pas faire en traitant les données directement sous excel notemment parceque j'ai pas mal de section et de sous section dans mes rapports BO.
.........
Si j'ai bien compris BO utilisé
  • pour récupérer les données
  • pour les distribuer par section (de façon à correspondre avec tes différentes feuilles Excel)
  • et au passage faire quelques calculs
...

Citation:
Créer une macro dans BO qui raffraichirait mes rapports,
Oui


Citation:
et appliquerait des filtres de sortes à me retrouver avec une seule section.
Oui
Pour cela voici la démarche basée sur poser un filtre sur l'année
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Sub Document_AfterRefresh()
 
Dim doc As Document
Dim reps As Reports, rep As Report
Dim nbr As Integer, nir As Integer
 
'ces 3 premières déclarations seraient mieux positionnées 
' dans Général Déclarations
 
Dim anneenum As Integer
 
Set doc = Application.ActiveDocument
Set reps = doc.Reports
nbr = reps.Count
anneenum = 2006
 
For nir = 1 To nbr
Set rep = reps.Item(nir)
rep.Activate
rep.AddComplexFilter "Exercice", "=<Exercice)> = " & anneenum
rep.ForceCompute
Next
 
End Sub
Citation:
Puis le sauvarder sous Excel.

Bon je te laisse chercher un peu pour la suite
Citation:
Et répéter l'action autant de fois qu'il de section dans mon rapport, et ce pour chaque rapport

c'est le sens de la boucle
Citation:
1. une fois que j'ai mes sauvegardes sous Excel j'utilise des relations pour récupérer les données qui m'interressent et les envoyer vers mon tableau
Alors si vous avez des iées je suis preneuse.
Une autre méthode consisterait à créer une invite dans la requête pour remplacer le filtre par une condition.
VB ferait une boucle sur les différentes valeurs à appliquer à la condition comme réponse à l'invite à la place de l'utilisateur

A +
S'il te plait Dis nous en quelle version tu es .....
__________________
Précisez la VERSION ! Règles du forum Business Objects et FAQ BO
"A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"
Bruno2r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2008, 13h37   #3
Invité de passage
 
Inscription : décembre 2004
Messages : 4
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 4
Points : 2
Points : 2
Citation:
Envoyé par Bruno2r Voir le message
Une autre méthode consisterait à créer une invite dans la requête pour remplacer le filtre par une condition.
VB ferait une boucle sur les différentes valeurs à appliquer à la condition comme réponse à l'invite à la place de l'utilisateur

[/U][/B]....[/COLOR]
Tiens je cherche à faire exactement ça avec un rapport qui comporte 4 invites (lancement et refresh du rapport depuis excel ) mais je n'arrive pas à trouver la ligne de commande VB pour les remplir.
Tu aurais ça en carton (BO 6.5.1 pour ma part) ?

Merci d'avance.
Pierre
punglas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h04.


 
 
 
 
Partenaires

Hébergement Web