Importer un report BO depuis access en VBA

Importer un report BO depuis access en VBA - VB/VBA/VBS - Programmation

Marsh Posté le 25-03-2004 à 17:31:30    

Bonjour les génis du VB,
 
Je cherche à importer un report ou un cube de données de BO 5.1.5 depuis Access 2000/2002 en VBA. Comme j'ai du mal à trouver ce genre de code en ligne, je fais appel à votre génie. Donc si l'un d'entre vous à un code valable pour ça je suis arch preneur.
 
Merci à tous.
 
PS: vous pouvez me l'envoyer sur mon mail

Reply

Marsh Posté le 25-03-2004 à 17:31:30   

Reply

Marsh Posté le 25-03-2004 à 17:40:09    

Deux possibilités :
 
1 - tu enregistre le résultat de ta requête BO en .txt et tu importe le fichier texte sous Access, de la façon classique.
 
2 -  pour les fénéants comme moi qui veulent que tout se fasse tout seul (cad : ouverture BO + execution de la requête + enregistrement en fichier .txt qui est déjà attaché à ma base access) le code suivant :
 
 
'-----------------------------------------------------------------------------------
'-- Prés-requis : Référencement de la bibliotheque "BusinessObjects 5.1 Object Library"
'-----------------------------------------------------------------------------------
Private appBO As busobj.Application
Private docBO As busobj.Document
Private repBO As busobj.Report
 
 
' ----------------- ouvre Businessobject 5.1.4   ----------------------------------
 
Function Fct_InitBO_var()
 
Set appBO = New busobj.Application
 
  appBO.Interactive = True
 
  appBO.LoginAs "MonLog", "MotdePasse", False
     
  appBO.Visible = True
 
 
 
'--------------------  Calcul dates  ------------------------------------------------
 
Dim datDB
datDB = Now - 30
 
 
Dim datFIN
datFIN = Now - 2
 
 
'---------------------  lance requête BO  -------------------------------------------
 
Set docBO = appBO.Documents.Open("C:\Chemin\NomReqêteBO.rep" )
 
 
  docBO.Variables.Item("DB" ).Value = datDB
  docBO.Variables.Item("FIN" ).Value = datFIN
 
 
appBO.Interactive = False
docBO.Refresh
 
 
Set repBO = docBO.Reports.Item(1)
 
repBO.ExportAsText ("C:\Chemin\NomFichierSorti.txt" )
 
'---------------------  ferme BO  --------------------------------------------------
 
docBO.Close
appBO.Quit
 
Set docBO = Nothing
Set repBO = Nothing
Set appBO = Nothing
 
End Function

Reply

Marsh Posté le 30-03-2004 à 10:28:12    

C'est du bon ça,  :D je te remercie, mais je vois que tu passes toujours par un fichier texte. Je pensais que l'on pouvait exporter directement vers access, vu que dans le cube de données il y a la fonction exporter vers une SGBDR. :bounce: J'ai déjà crée une connexion ODBC vers ma base Access, et c'est vrai qu'il me manque le code pour automatiser l'export de BO vers ma base.
 
En tout cas merci, je vais essayer ton code de ce pas
 
Fab

Reply

Marsh Posté le 31-03-2004 à 18:29:06    

Ton code marche Nickel et le fait de passer par un fichier .txt ne ralentit pas trop le process en fait
 
Encore merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed