Bonjour,
J'utilise un petit script VBS (pas développé par moi mais je que reprends) pour rafraîchir et exporter des rapports en HTML.
Voici ce qu'on veut : 1 répertoire par rapport du document, 1 fichier HTML par section. Nos documents sont très divers et comportent aussi bien 1 à 4 rapports, pour 1 à 1000 sections...
En BO 5.1.9, pas de problème particulier, l'export crée un répertoire du nom du document, et un sous-répertoire par rapport, et place les HTML comme il faut avec ExportSheetsAsHtml.
On vient de migrer en XI. Plus de 5.1.9 dispo. C'est pas pareil... Je n'arrive pas à faire fonctionner ExportSheetsAsHtml, j'ai une erreur Cette variable utilise un type automation non géré par VBScript, code 800A01CA. La recherche de ces erreurs dans Google ne m'a pas aidé...
Avec ExportAsHtml et les mêmes paramètres, plus de création de répertoire, il faut préciser le chemin complet, boucler sur les rapports, etc. J'ai réussi mais il génère toujours un fichier supplémentaire qui contient toutes les données, alors que je lui envoie 1 (Génération du Html par section), ça fait exactement comme si on utilisait l'option 2 de HtmlLayout (par section + tout). Problématique en terme de taille pour certains rapports.
On peut donc se poser les questions suivantes :
- qu'est-ce qui cloche dans la fonction ExportSheetsAsHtml en XI ? elle existe toujours ?
- si je veux utiliser ExportAsHtml, pourquoi on dirait qu'il ne prend pas en compte le paramètre HtmlLayout ?
- J'ai remarqué qu'en passant par BO, "enregistrer en fichier HTML", il faisait un CSS bien pratique car il fait fondre la taille des fichiers générés. Pourquoi ExportAsHtml ne le fait pas ? Problème de paramètre ? Ou alors c'est avec ExportSheetsAsHtml ?
Ici le code avec ExportSheetsAsHtml :
Merci d'avance pour vos idées !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
25
26
27
28
29
30 Set AppBO = CreateObject("BusinessObjects.Application") AppBO.Application.Interactive = True Call AppBO.Logon(Usrnm, Pswrd, CMS, "Enterprise", False, False) NameFic = "C:\BO\test.rep" Set boDoc = AppBO.Documents.Open(NameFic) Set Variables = AppBO.Variables AppBO.ActiveDocument.Refresh Graphs = 1 Borders = 1 Background = 1 Foreground = 1 Font = 1 FreeForm = 1 Frames = 0 AutoRefreshTime = 0 BusObjDoc = 0 HtmlLayout = 1 AppBO.ActiveDocument.ExportSheetsAsHtml "toto.htm", "", Graphs, Borders, Background, Foreground, Font, FreeForm, Frames, AutoRefreshTime, BusObjDoc, HtmlLayout comportement idem avec Call AppBO.ActiveDocument.ExportSheetsAsHtml("toto.htm", "", Graphs, Borders, Background, Foreground, Font, FreeForm, Frames, AutoRefreshTime, BusObjDoc, HtmlLayout) AppBO.ActiveDocument.Close AppBO.Quit