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 03/01/2007, 17h19   #1
Invité de passage
 
Inscription : avril 2006
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 6
Points : 3
Points : 3
Par défaut [VBA]Supprimer le message de rafraichissement

Bonjour
et bonne année

je suis sous BO 5.1.6
j'ai un rapport avec 16 requêtes que je lance à partir d'excel pour rapatrier des données.

je lance bien le rafraichissement mais certaines requêtes sont vides ce qui a pour effet d'afficher le message :
"la requête ne retourne aucune donnée."

connaissez vous un moyen d'eviter ce message ?
car l'utilisateur est obliger de cliquer sur OK à chaque refresh

merci d'avance
alsips est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 17h45   #2
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 37
Points : 27
Points : 27
Bonjour,

L'instruction VBA : Application.Interactive = False devrait correspondre à ton besoin.

On la place généralement sur False avant le refresh (pour que l'utilisateur ne puisse plus intéragir avec l'ordinateur), puis sur True après le refresh (pour rendre la main à l'utilisateur).

Ce qui donne :

Code :
1
2
3
4
5
6
7
 Private Sub Document_BeforeRefresh(Cancel AS BOOLEAN) 
    Application.Interactive = False 
End Sub 
 
Private Sub Document_AfterRefresh() 
    Application.Interactive = True 
End Sub

Hop donc.
Ashaar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 18h10   #3
Membre Expert
 
Avatar de nuke_y
 
Inscription : mai 2004
Messages : 1 812
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 1 812
Points : 1 609
Points : 1 609
Par contre en mode "manuel" je ne sais pas si c'est possible... Reste la solution de programmer une macro qui fait le rafraîchissement avec la méthode d'Ashaar
__________________
Il vaut mieux monopoliser son intelligence sur des bêtises que sa bêtise sur des choses intelligentes.

Mon combat pour les droits des consommateurs face aux abus des grandes marques.
nuke_y est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 09h17   #4
Invité de passage
 
Inscription : avril 2006
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 6
Points : 3
Points : 3
ok merci ca m'aide bien
j'utilisais ca deja dans excel mais j'ai pas pensé a le reporter dans BO aussi
reste le probleme du message de l'acceptation des macro a l'ouverture de BO mais je vai voir ca
merci
alsips est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 09h33   #5
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 37
Points : 27
Points : 27
Bonjour,

Il me semble que dans Excel, l'instruction pour désactiver les alertes est : Application.DisplayAlerts = False

Tu utilisais : Application.Interactive = False ?
Ashaar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 10h13   #6
Invité de passage
 
Inscription : avril 2006
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 6
Points : 3
Points : 3
Par défaut c'est résolu merci

oui effectivement dans excel j'utilisais Application.DisplayAlerts
mais je vais peut'etre utiliser aussi Application.interactive pour d'autre problemes.

mais j'ai résolu mon probleme de rafraichissement BO et j'ai pas eu besoin de macro BO
j'ai ajouté le status interactive false dans ma macro XL
Code :
1
2
3
4
5
6
SET BOApp = CreateObject("BusinessObjects.Application")
AppActivate "BusinessObjects"
SET myBOreport = BOApp.Documents.Open(NomCompletFichierTemplateBO)
 
myBOreport.Application.Interactive = False
myBOreport.Refresh
alsips est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 10h38   #7
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 37
Points : 27
Points : 27
Bonjour,

Je me demandais dans quelle mesure tu arrives à piloter BO via XL ?

Arrives-tu à récupérer directement les données d'un cube BO à partir d'Excel ?
Ashaar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2007, 13h42   #8
Invité de passage
 
Inscription : avril 2006
Messages : 6
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 6
Points : 3
Points : 3
les données BO son exportés en fichier Text et ensuite reouvertes sous excel

Code :
1
2
3
4
5
6
 NomFichierExcelExportDepuisBO = CheminDeCeFichier & "\Export temporaire.xls"
myBOreport.Reports(NomOngletBoAExporter).Activate
myBOreport.activereport.ExportAsText NomFichierExcelExportDepuisBO
 
myBOreport.Close True
BOApp.Quit
'On importe les données
'On ouvre le fichier Excel à traiter
Code :
 Workbooks.Open NomFichierExcelExportDepuisBO
je ne sais pas si il est possible de récuperer les données autrement que par un export
alsips est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h17.


 
 
 
 
Partenaires

Hébergement Web