Bonjour,
J'essaie de d’exécuter un VBScript au sein d'un XSLT en vain, le but étant d'aller chercher des informations dans un objet COM (CATIA) pour s'en servir dans une fonction java.
Je précise que le code vbscript s'éxécute très bien à partir d'un fichier VBS.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:lxslt="http://xml.apache.org/xslt" xmlns:PP="ARC-LH-COMAU" xmlns:my="urn:my-namespace" extension-element-prefixes="PP"> <lxslt:component prefix="PP" functions="comau" elements=""> <lxslt:script lang="javaclass" src="cmp.delmia.tools.ARC_LH_COMAU"/> </lxslt:component> <msxsl:script language="VBScript" implements-prefix="my"><![CDATA[ function xmlFileDirectory(task) Set CATIA = Wscript.GetObject(,"CATIA.Application") Set myProcess = CATIA.ActiveDocument Set mySP = myProcess.PPRDocument.Resources.Item(1) Set myProductRobot = mySP.Products.Item(1) Set RPM = myProductRobot.GetTechnologicalObject("ResourceProgramManager") RPM.GetTask task, oTask Set oOlp = myProductRobot.GetTechnologicalObject("OLPTranslator") xmlfileDirectory=oOlp.GetXMLFileDirectory end function ]]> </msxsl:script> <xsl:variable name="srcPath" select="/OLPData/Resource/GeneralInfo/TempPath"/> <xsl:variable name="TaskName" select="/OLPData/Resource/ActivityList/@Task"/> <xsl:variable name="destPath" select="my:xmlFileDirectory $TaskName"/> <xsl:template match="OLPData"> <xsl:value-of select="PP:comau($destPath,$srcPath)"/> </xsl:template> </xsl:stylesheet>
Merci d'avance à toutes les bonnes âmes passant par là.
Partager