Importación y exportación de proyectos a Primavera

Formato de intercambio propietario de Primavera (XER), desarrollado por Oracle Inc., se utiliza ampliamente en el Primavera P6 Project Management solución. En muchos entornos empresariales, los datos del proyecto deben intercambiarse entre Microsoft Project y Primavera, que usan diferentes formatos internos.

Aspose.Tasks for .NET proporciona una forma fiable de importar y exportar proyectos entre estos sistemas, admitiendo XER, XML (P6XML), MPX y bases de datos de Primavera (incluyendo DBs independientes de SQLite). Esto garantiza una colaboración fluida cuando están involucradas múltiples plataformas de gestión de proyectos.

Importación de datos desde archivo de Primavera

Importación de datos desde formatos de archivo XML de Primavera

Aspose.Tasks puede importar XML de Primavera de forma similar a los formatos XML y MPP de Microsoft Project. La clase Project ofrece la capacidad de cargar este tipo de archivo usando el mismo constructor que se emplea para otros archivos de Project.

1Project project = new Project("Project.xml");
2ProjectFileInfo info = Project.GetProjectFileInfo("Project.xml");
3Console.WriteLine(info.ProjectFileFormat);

Importación de datos desde formatos de archivo MPX de Primavera

Este ejemplo muestra cómo cargar un proyecto almacenado en formato MPX.

1Project project = new Project("Primavera1.mpx");
2ProjectFileInfo info = Project.GetProjectFileInfo("primavera1.mpx");
3Console.WriteLine(info.ProjectFileFormat);

Lectura de UIDs de proyectos desde archivo XML de Primavera

Un archivo XML de Primavera puede contener múltiples proyectos, cada uno con su propio UID. Aspose.Tasks for .NET API proporciona la capacidad de leer todos esos UIDs del proyecto y luego cargar un proyecto usando un id específico de la lista de UIDs.

1PrimaveraXmlReader reader = new PrimaveraXmlReader("Project.xml");
2List<int> listOpProjectUids = reader.GetProjectUids();

Lectura de archivo XML de Primavera con múltiples proyectos

El siguiente ejemplo muestra cómo manejar archivos XML de Primavera que contienen múltiples proyectos.

1PrimaveraXmlReadingOptions options = new PrimaveraXmlReadingOptions();
2options.ProjectUid = 4557;
3// Returns project with special Uid
4Project project = new Project("Project.xml", options); 

Importación de datos de proyectos desde la base de datos de Primavera

Aspose.Tasks for .NET API proporciona la capacidad de leer datos de Project desde la base de datos de Primavera. El siguiente código de ejemplo muestra cómo usar la clase Project para leer desde la base de datos.

 1SqlConnectionStringBuilder sb = new SqlConnectionStringBuilder();
 2sb.DataSource = "192.168.56.3,1433";
 3sb.Encrypt = true;
 4sb.TrustServerCertificate = true;
 5sb.InitialCatalog = "PrimaveraEDB";
 6sb.NetworkLibrary = "DBMSSOCN";
 7sb.UserID = "privuser";
 8sb.Password = "***";
 9
10// Initialize a new instance of the PrimaveraDbSettings class with connection string and project id
11PrimaveraDbSettings settings = new PrimaveraDbSettings(sb.ConnectionString, 4502);
12
13// Initialize a new instance of the Project class
14Project project = new Project(settings);

Soporte para la base de datos SQLite de Primavera

También se admiten bases de datos SQLite independientes de Primavera P6, lo que permite el acceso a los datos del proyecto sin conexión.

1const int projectId = 4502;
2// Create Primavera DB Settings using connection string and project id
3PrimaveraDbSettings primaveraDbSettings = new PrimaveraDbSettings("Data Source=\\PPMDBSQLite.db", projectId);
4primaveraDbSettings.ProviderInvariantName = "System.Data.SQLite";
5// Create new project using primavera db settings
6Project project = new Project(primaveraDbSettings);

Exportación de datos de proyectos en formatos de Primavera

Aspose.Tasks admite exportar datos de proyectos utilizando el SaveFileFormat enumerador, con opciones para los formatos XML, XER y MPX.

Exportación de datos de proyectos al formato XML de Primavera

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToXMLFormat_out.xml", SaveFileFormat.PrimaveraP6XML);

Exportación de datos de proyectos al formato XER de Primavera

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToXERFormat_out.mpp", SaveFileFormat.PrimaveraXER);

Exportación de datos de proyectos al formato MPX de Primavera

1Project project = new Project("New Project.mpp");
2project.Save("ExportProjectDataToPrimaveraMPXFormat_out.xml", SaveFileFormat.MPX);

Opciones de guardado de XML de Primavera

Si un archivo XML de Primavera no contiene ningún WBS (solo Actividades), Aspose.Tasks no puede leer correctamente este tipo de archivo, porque la API necesita una tarea raíz para crear un árbol de tareas. En este caso, la API crea un RootTask, incluso si no existe en el archivo, para poder leer estos archivos particulares. Si el usuario desea guardar después de la lectura, se guardará con el RootTask creado, que no existía antes de la lectura. Esta opción ayuda a decidir cómo guardar en el archivo con el RootTask creado o no. Por defecto está establecido en true.

1Project project = new Project("project.xml");
2
3// Specify xml save options
4PrimaveraXmlSaveOptions options = new PrimaveraXmlSaveOptions();
5options.SaveRootTask = false;
6project.Save("UsingPrimaveraXMLSaveOptions_out.xml", options);

Al usar Aspose.Tasks for .NET, puede:

Esto hace de Aspose.Tasks una herramienta esencial para organizaciones que necesitan interoperabilidad fluida entre los entornos de Microsoft Project y Primavera, garantizando un intercambio de datos fluido y minimizando el trabajo manual.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.