L’exemple JScript suivant montre comment charger un document existant et générer différents types de code de mappage pour celui-ci.
// ------------------- commencer l’exemple JScript --------------------- // Générer le code pour le mappage existant. // fonctionne avec Windows scripting host. // ----------------- fonction d’aide ------------------ function Exit(strErrorText) { WScript.Echo(strErrorText); WScript.Quit(-1); } function ERROR(strText, objErr) { if (objErr != null) Exit ("ERROR: (" + (objErr.number & 0xffff) + ")" + objErr.description + " - " + strText); else Exit ("ERROR: " + strText); } // --------------------------------------------------- // ----------------- PRINCIPAL ------------------ // ----- crée le Shell et FileSystemObject du windows scripting try { objWshShell = WScript.CreateObject("WScript.Shell"); objFSO = WScript.CreateObject("Scripting.FileSystemObject"); } catch(err) { Exit("Can't create WScript.Shell object"); } // ----- ouvrir MapForce ou accéder à une instance d’exécution et la rendre visible try { objMapForce = WScript.GetObject ("", "MapForce.Application"); objMapForce.Visible = true; // supprimer cette ligne pour effectuer le traitement en arrière-plan } catch(err) { WScript.Echo ("Ne peut pas accéder à ou créer MapForce.Application"); } // ----- ouvrez un mappage existant. adaptez ceci à vos besoins ! objMapForce.OpenDocument(objFSO.GetAbsolutePathName ("Test.mfd")); // ----- accédez au mappage pour avoir accès aux méthodes de génération de code var objDoc = objMapForce.ActiveDocument; // ----- définir les propriétés de sortie de génération de code et appeler toutes les méthodes de génération de code. // ----- adaptez les répertoires de sortie à vos besoins try { // ----- la génération de code utilise quelques-unes de ces options var objOptions = objMapForce.Options; // ----- générer XSLT ----- objOptions.XSLTDefaultOutputDirectory = "C:\\test\\TestCOMServer\\XSLT"; objDoc.GenerateXSLT(); // ----- générer le code Java ----- objOptions.CodeDefaultOutputDirectory = "C:\\test\\TestCOMServer\\Java"; objDoc.GenerateJavaCode(); // ----- générer le code CPP, utiliser les mêmes options de code cpp comme la dernière fois ----- objOptions.CodeDefaultOutputDirectory = "C:\\test\\TestCOMServer\\CPP"; objDoc.GenerateCppCode(); // ----- générer le code C#, utiliser les options de code C# code comme la dernière fois ----- objOptions.CodeDefaultOutputDirectory = "C:\\test\\TestCOMServer\\CHash"; objDoc.GenerateCHashCode(); } catch (err) { ERROR ("en générant XSL ou le code de programme", err); } // masquer MapForce pour permettre son arrêt objMapForce.Visible = false; // -------------------- fin de l’exemple --------------------- |