Exportation de rapports vers MS Word<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
Je dois exporter un rapport que je crée vers MS Word dans un format très spécifique.Je peux l'exporter sous forme de fichier PDF, ce qui est très fermer à quoi je souhaite qu'il ressemble dans MS Word, mais je dois l'améliorer autant que possible, afin de minimiser la quantité de modifications dont il aura besoin après avoir été exporté. Pour illustrer ce que j'essaie de faire, je joins ci-dessous un court script qui crée un rapport simple contenant quelques titres, quelques tableaux et un pied de page, puis exporte ce rapport dans trois formats différents, à savoir un fichier PDF, un fichier MS. Document Word et un fichier HTML.
La version PDF du rapport est créée à peu près comme je souhaite qu'elle apparaisse dans la version MS Word, avec des titres centrés, des polices de différentes tailles et les styles de tableau ("séparateur de titre" et "bordé") spécifiés dans le script.La version MS Word a cependant perdu le centrage des titres, les paramètres de taille de police et les styles de tableau - et j'aimerais conserver toutes ces fonctionnalités si possible.
Également dans la version MS Word, chaque ligne est en fait une boîte de texte (vous pouvez le voir en ouvrant le document dans Word, en mettant tout en surbrillance avec -A puis en ajoutant des bordures à la sélection).C'est bien sûr ainsi que tout a été exporté en premier lieu et ce n'est donc pas du tout surprenant ; cependant Je note que la version HTML n'a pas considérez les deux titres et le pied de page comme des cases, mais simplement des lignes de texte - et c'est en fait ainsi que j'aimerais qu'ils apparaissent dans la version MS Word.
Mes questions sont donc :
- Est-il possible de conserver (a) le centrage et/ou (b) les paramètres de taille de police lors de l'exportation vers MS Word ?
- Est-il possible d'exporter simplement des lignes de texte (par opposition aux zones de texte) vers MS Word ?
- Est-il possible de conserver le style de tableau désigné (par exemple « bordé » ou « séparateur de titre ») lors de l'exportation vers MS Word ?
Je suppose que certains, sinon tous, ne seront pas possibles - mais je sais par expérience qu'il existe souvent un moyen de contourner de si petits problèmes si vous savez comment le faire.Quelqu'un peut-il m'aider avec l'un des points ci-dessus ?
Merci beaucoup – voici le script de démonstration que j'ai mentionné :
maTableBox1 = boîte de table (
boîte de col de chaîne ( "Position" , { "D'abord" , "Deuxième" , "Troisième" , "Quatrième" , "Cinquième" }) ,
boîte de col de chaîne ( "Description" , { "Eau" , "Acide sulfurique" , "Oxygène" , "Sulfure d'hydrogène" , "Chlorure de sodium" }) ,
boîte de col de chaîne ( "Formule" , { "H2O" , "H2SO4" , "O2" , "H2S" , "NaCl" }) ,
<< style de tableau ( "séparateur de titre" )
) ;
maTableBox2 = boîte de table (
boîte de col de chaîne ( "Ville" , { "Aberdeen" , "Cardiff" , "Londres" , "Manchester" }) ,
boîte de numérotation ( "Population" , [ 212125 , 324800 , 8174000 , 512000 ]) ,
<< style de tableau ( "bordé" )
) ;
monTitre = zone de texte ( "C'est mon titre principal" , << justifier le texte ( centre ) , << définir la taille de la police ( 14 ) , << couleur de la police ({ 0 , 0 , 0,5 }) , << définir la largeur ( 200 )) ;
monSous-titre = zone de texte ( "C'est mon sous-titre" , << justifier le texte ( centre ) , << définir la taille de la police ( 9 ) , << couleur de la police ({ 0 , 0 , 1 }) , << définir le style de police ( "italique" )) ;
maLigneBlanque = zone de texte ( " " , << définir la taille de la police ( 12 )) ;
manote de bas de page = zone de texte ( "C'est ma note de bas de page" , << définir la taille de la police ( 9 ) , << justifier le texte ( centre )) ;
lubrifier = boîte d'alignement ( ncol ( 1 ) ,
monTitre ,
monSous-titre ,
maLigneBlanque ,
maTableBox1 ,
maLigneBlanque ,
maTableBox2 ,
maLigneBlanque ,
manote de bas de page
) ;
maintenant = nouvelle fenetre ( "Ma fenêtre" , lubrifier ) ;
lubrifier << enregistrer le PDF ( "C:\Documents\Mon rapport.pdf" ) ;
lubrifier << enregistrer MS Word ( "C:\Documents\Mon Rapport.doc" ) ;
lubrifier << enregistrer le HTML ( "C:\Documents\Mon rapport.html" ) ;
Re : Exporter des rapports vers MS Word<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Du point de vue de JMP, deux types d'exportation sont utilisés ici. HTML et DOC sont exportés sous forme de texte structuré avec un minimum d'informations de style. Les PDF (et d'autres comme EPS et SVG) sont exportés sous forme de graphiques, qui préservent les styles et la mise en page mais pas la structure.
Que le texte soit sur des lignes séparées ou non, JMP essaie de les placer sur des lignes distinctes en émettant des séparateurs de ligne entre eux, mais HTML traite les séparateurs de ligne comme des espaces normaux, ce qui explique la différence avec DOC. Si vous recherchez vraiment une solution de contournement extrême, j'ai trouvé un endroit dans JMP qui exporte du texte sans séparateurs de ligne ni autres ornements, à savoir lors de l'exportation d'une ComboBox. Cependant, si vous allez à de telles longueurs et perdez le style, vous pourriez aussi bien créer une zone de texte géante.
Bel exemple clair, au fait.
Re : Exporter des rapports vers MS WordSi vous êtes prêt à faire un peu de programmation, vous pouvez obtenir le format exact avec l'approche suivante :
- Créez un rapport dans MS-Word au format souhaité.
- Enregistrez-le sous forme de fichier XML, en utilisant le format Word 2003 XML Document
- En JSL, créez ce fichier XML en utilisant les données réelles. Enregistrez le texte avec une extension .XML
J'ai utilisé cette approche pour produire des feuilles de calcul Excel à plusieurs onglets. Cela demande un peu de programmation mais ça marche.
Ré: Exportation de rapports vers MS WordMerci pour votre proposition !!
Cela fonctionne. J'ai juste besoin de renommer le fichier de filename.doc.jmp en .doc
Pouvez-vous me dire comment ajuster la page en paysage, s'il vous plaît ?
Et peut-être que je devrai mettre les pages à l'échelle...
Re : Exportation de rapports vers MS WordSalut Xan,
Merci pour ces conseils ; il semble que je vais devoir être un peu plus astucieux pour obtenir les effets souhaités, car je ne pense pas qu'une zone de texte géante résoudra mon problème à moins d'y intégrer un tableau – et je ne vois pas comment faire. Je continuerai mes expérimentations et je posterai à nouveau ici si j'y parviens. En attendant, pourriez-vous développer votre commentaire sur les zones de liste déroulante ? J'ai essayé d'en ajouter une à ma zone de liste déroulante, mais elle ne semble pas du tout exportable, ni dans Word ni dans HTML.
Merci beaucoup
Re : Exportation de rapports vers MS WordCela semble ingénieux - je n'ai presque aucune expérience de l'écriture de fichiers XML pour le moment, mais je vais certainement essayer.
Merci beaucoup!
Re : Exportation de rapports vers MS WordSalut,
J'ai été informé qu'il existe déjà un sujet sur la génération de rapports.
J'ai besoin de générer un rapport (MS Mord ou enregistré sous forme de fichier PDF) pour plusieurs paramètres (la quantité de paramètres peut varier de 1 à 500).
Une page pour un paramètre. La navigation dans le document s'effectue à l'aide de signets.
L'approche XML semble très intéressante. Je ne suis pas très à l'aise avec XML et je viens de débuter avec JSL.
Pouvez-vous s'il vous plaît présenter votre approche avec des exemples que je peux modifier en fonction de mes besoins ?
Peut-être en utilisant les documents que j'ai joints ?
L'ensemble de données ci-joint contient un script pour plusieurs « graphiques quantiles normaux ».
J'aimerais pouvoir générer un document MS Word à l'aide de JSL selon un certain modèle, qui peut être remplacé par un modèle arbitraire.
J'ai joint :
Ensemble de données avec un script pour générer plusieurs graphiques (BTW : merci à la communauté pour son aide)
PDF converti à partir d'un fichier « modèle » MS Word
Fichier XML converti à partir du « modèle » MS Word (fichier .zip)
Le fichier XML peut être ouvert avec MS Word.
@martindemel
Re : Exportation de rapports vers MS WordJ'ai essayé de faire quelques essais, et je recommande d'exporter simplement la sortie JMP au format Word. Il serait très difficile de générer du code XML pour les graphiques.
Jetez un œil à cet exemple de programme. Cette approche pourrait bien être la solution. Vous devrez apprendre ce que sont les boîtes d'affichage JSL. Astuce : l'index de script est votre meilleur allié !
dt = open("$sample_data\Big Class.jmp");
nw = new window("Sample",
panelbox("Actions",
hlistbox(
msword_button = buttonbox("Save to MS-Word",
sample_output << save msword("", Native);
),
close_button = buttonbox("Close this window",
nw << close window;
),
),
),
sample_output = vlistbox(
tb = table box(
string col box("Name", (dt:name << get values)),
number col box("Age", (dt:age << get values)),
string col box("Name", (dt:sex << get values)),
),
page break box(),
dist = dt << Distribution(
Continuous Distribution( Column( :weight ) ),
Nominal Distribution( Column( :age ) )
),
),
msword_button << set icon("WinFileSave"),
close_button << set icon("Stop"),
tb << set underline headings(1) << set column borders(1)
<< Set Shade Alternate Rows(1);
);
Re : Exportation de rapports vers MS WordPourriez-vous partager un exemple ? Cette approche m'intéresse beaucoup.
Merci beaucoup,
John
Re: Exportation de rapports vers MS Word
Dodo wrote:
...in the meantime, could you elaborate on that comment about Combo Boxes please? I've tried adding one to my Line Up Box, but it doesn't seem to be exported at all in either Word or HTML.
Il semblerait qu'elles soient exportées dans JMP 11 mais pas dans JMP 10. Raison de plus pour les ignorer.