Compartir a través de


Exportar datos de usuario de Project Server

Importante:: en este artículo se describe cómo exportar datos de usuario de Project Server 2016, Project Server 2013 o Project Server 2010. El proceso para exportar datos de usuario de Project Server 2019 es muy diferente de la versión anterior y no está incluido en este artículo. Para obtener información sobre cómo exportar datos de usuario de versiones anteriores de Project Server 2019 Public Preview, consulte Exportación de datos de usuario en Project Server 2019 Public Preview.

Su organización puede exportar el contenido de un usuario específico desde el entorno de Project Server. Para exportar este contenido, un administrador de la granja de servidores de Project Server puede seguir estos pasos:

Paso 1: Descarga de los archivos de script de exportación

Paso 2: Buscar las instancias de Project Web App en la granja de servidores de SharePoint Server

Paso 3: Exportación de elementos del área de trabajo para el usuario

Paso 4: Buscar el identificador de recurso del usuario o la cuenta de notificaciones en cada sitio de PWA

Paso 5: Buscar proyectos que contengan el usuario que está buscando

Paso 6: Consultas adicionales para exportar datos

Paso 7: Elementos archivados

Paso 8: Buscar y guardar datos adjuntos, vistas y archivos VBA

Información general sobre los procesos

A continuación se muestra información general del proceso para exportar la información de un usuario específico de Project Web App:

  1. Descargue los scripts de exportación: descargue los scripts .sql y Microsoft PowerShell para exportar datos de usuario.

  2. Buscar los sitios de PWA en su entorno: busque una lista de instancias de Project Web App en la granja de servidores de Project Server.

  3. Buscar el identificador de recurso del usuario: en cada instancia de Project Web App, busque el identificador de recurso único para el usuario. También puede elegir especificar la notificación de usuario.

  4. Realizar una exportación de los datos del usuario: exporte la información que desea revisar mediante los scipts.

    Uso de scripts para diferentes versiones de Project Server

Este artículo se aplica a Project Server 2016, Project Server 2013 y Project Server 2010. Aunque el proceso general se aplica a las tres versiones, hay detalles que se pueden aplicar a las distintas versiones, especialmente cuando se ejecutan los scripts SQL. Estos se indican en las secciones siguientes. Asegúrese de que ha implementado las actualizaciones más recientes en la granja de servidores y Project Profesional clientes.

Nota:

Project Author no se exporta como parte de los procedimientos de este artículo.

Paso 1: Descarga de los archivos de script de exportación

Descargue los scripts de exportación del Centro de descarga de Microsoft.

La descarga contiene un archivo ZIP con carpetas independientes para cada versión de Project Server. Use los scripts para la versión o Project Server como se describe en el paso 5, a continuación.

Notas importantes sobre cómo ejecutar los scripts de exportación:

  • La carpeta script contiene varios archivos .wsdl. Estos son necesarios para los scripts de PowerShell. Asegúrese de que están en el mismo directorio que los scripts de PowerShell al ejecutarlos.

  • El script SetupReportingProcedures201x.sql crea temporalmente algunos procedimientos almacenados globales en memoria que están disponibles en la sesión sql. Estos procedimientos almacenados son necesarios para los siguientes scripts:

    • ExportReportingProject201x.sql

    • ExportReportingResource201x.sql

    • ExportTimesheetReporting201x.sql

Nota:

Ejecute SetupReportingProcedures201x.sql antes de ejecutar cualquiera de estos scripts.

  • Cada script tiene una o varias variables que deben definirse (como UserID o nombre de base de datos) antes de ejecutarlo. Compruebe la sección de descripción en el propio script para ver los parámetros necesarios.

  • Ejecute cada script .sql en el contexto de la base de datos donde reside la información. Debe tener permisos de db_datareader en la base de datos.

  • Es posible que tenga que "desbloquear" el archivo ZIP porque, de forma predeterminada, no se permite ejecutar scripts descargados de Internet. Haga lo siguiente para desbloquear los archivos:

  1. En Explorador de archivos, vaya a la ubicación donde guardó el archivo ZIP.

  2. Haga clic con el botón derecho en el archivo ZIP y haga clic en Propiedades.

  3. En la pestaña General , seleccione Desbloquear. Desbloquear el archivo.

  4. Haga clic en Aceptar.

    Todos los archivos incluidos en el archivo ZIP ahora deben estar desbloqueados. Para comprobarlo en los archivos individuales, compruebe si la opción Desbloqueo ya no aparece en la pestaña General de la página Propiedades del archivo.

    Nota:

    Si solo tiene acceso a archivos descomprimidos, también puede desbloquear cada archivo individualmente.

Paso 2: Buscar las instancias de Project Web App en la granja de servidores de SharePoint Server

Use el cmdlet Get-SPProjectWebInstance con los filtros siguientes para obtener la dirección URL, el identificador de sitio y el nombre de la base de datos de los sitios de PWA que existen en la granja de servidores de SharePoint Server:

 Get-SPProjectWebInstance | ft -a Url,SiteId,DatabaseName,DatabaseServer

Necesitará la información de cada sitio cuando elimine los datos personales del usuario en un paso posterior.

Por ejemplo, la ejecución del cmdlet en nuestra granja de servidores de Ejemplo de Contoso Project Server podría devolver los tres sitios PWA siguientes:

URL SiteID Base de datos DatabaseServer
https://contoso/pwa1
63ed0197-3647-4279-ed5e80855fc7
WSS_Content
SQL01
https://contoso/pwa2
67fd0727-5279-3321-ef4e90956fc8
WSS_Content
SQL01
https://contoso/pwa3
63ed0197-3647-4279-eg7e20233fg9
WSS_Content
SQL02

Buscar las instancias de Project Web App en una granja de servidores de SharePoint Server 2010

Para Project Server 2010, también debe encontrar el identificador de aplicación de servicio de la aplicación de servicio PSI de Project Server . Para ello, ejecute el cmdlet Get-ServiceApplication de PowerShell con los parámetros siguientes:

Get-SPServiceApplication | ? { $_.TypeName -eq "Project Server PSI Service Application" } | ft -a

Esto también devolverá el nombre de la aplicación de servicio de Project Server. A continuación, puede usar el cmdlet Get-SPProjectWebInstance para devolver los nombres de las cuatro bases de datos de Project Server especificando el nombre de la aplicación de servicio con el parámetro -ServiceApplication:

Get-SPProjectWebInstance -ServiceApplication "Project Server"  | ft -a Url,PrimaryServer,PublishedDatabase,DraftDatabase,ArchiveDatabase,ReportingServer,ReportingDatabase

Debe poder hacer referencia a los nombres de base de datos de cada base de datos.

Nota:

La base de datos de informes de Project Server 2010 se puede encontrar en una instancia diferente de SQL Server que las otras tres bases de datos.

Paso 3: Exportación de elementos del área de trabajo para el usuario

Ejecute el script ExportWorkspaceItemsByDisplayName201x.sql y busque datos con posibles nombres para mostrar del usuario (búsquedas parciales de nombres).

Ejecute el script en la base de datos de informes para Project Server 2010 o en la base de datos del sitio PWA relacionado para versiones posteriores. En los resultados de ejemplo proporcionados en el paso 1, la base de datos de las tres instancias de Project Web App se WSS_Content .

Proporcione valores para los parámetros siguientes en el script:

Parámetro Descripción
@siteID (solo Project Server 2016)
Identificador de sitio de PWA para el sitio en el que desea encontrar el identificador de recurso del usuario. En el paso 1, encontró los valores de id. de sitio de PWA para los sitios de PWA.
@resDisplayName
Nombre para mostrar, o nombre para mostrar parcial, del usuario de Project Server.

Paso 4: Buscar el identificador de recurso del usuario o la cuenta de notificaciones en cada sitio de PWA

Después de obtener información de todos los sitios PWA de la granja de servidores de Project Server, a continuación, debe encontrar el identificador de recurso (ResID) o la cuenta de notificaciones del usuario cuyos datos personales desea eliminar. Haga esto en cada uno de los sitios de PWA detectados en el paso 1 (ya que los resID difieren en cada instancia de PWA).

Ejecute el script SQL FindUser201x.sql para buscar el identificador de recurso o la cuenta de notificaciones del usuario.

Nota:

Debe ejecutar el script SQL FindUser201x.sql en SQL Server Management Studio y debe tener permisos de administrador de granja de servidores para tener acceso a la base de datos adecuada.

Ejecute el script en la base de datos publicada para Project Server 2010 o en la base de datos del sitio PWA relacionado para versiones posteriores. En los resultados de ejemplo proporcionados en el paso 1, la base de datos de las tres instancias de Project Web App se WSS_Content .

Proporcione valores para los parámetros siguientes en el script:

Parámetro Descripción
@siteID (solo Project Server 2016)
Identificador de sitio de PWA para el sitio en el que desea encontrar el identificador de recurso del usuario. En el paso 1, encontró los valores de id. de sitio de PWA para los sitios de PWA.
@searchName
Nombre para mostrar del usuario de Project Server.

Por ejemplo, si desea encontrar el id. de usuario para Adam Barr en el sitio PWA1 de Contoso que encontró en el ejemplo del paso 1, editaría los valores de los parámetros del script de la siguiente manera:

DECLARE @siteId uniqueidentifier = '63ed0197-3647-4279-ed5e80855fc7'
DECLARE @searchName nvarchar(255) = 'Adam Barr'

El script devuelve los valores Nombre del recurso, Id. de recurso, dirección de correo electrónico y Cuenta de notificaciones para el usuario.

Paso 5: Buscar proyectos que contengan el usuario que está buscando

Puede usar el identificador de recurso que encontró en el paso 4 para buscar los proyectos con los que el usuario participó. Esto se hace mediante scripts SQL para consultar los datos de Project almacenados para obtener una lista de proyectos.

Hay scripts independientes para cada uno de los almacenes de datos en Project Server. Es probable que los resultados de los scripts sean similares, aunque es posible que vea algunas diferencias si tiene proyectos de borrador que no se han publicado.

Antes de ejecutar los scripts, actualícelos con el identificador de recurso que está buscando.

Para Project Server 2010, ejecute estos scripts:

(Asegúrese de leer la descripción en la parte superior de cada script. Algunos scripts requieren que agregue el nombre de la base de datos o actualice otros parámetros).

  • ExportDraftProjectList2010.sql

  • ExportPublishedProjectList2010.sql

  • ExportReportingProjectList2010.sql

Para Project Server 2013, ejecute estos scripts:

  • ExportDraftProjectList2013.sql

  • ExportPublishedProjectList2013.sql

  • ExportReportingProjectList2013.sql

Para Project Server 2016, ejecute estos scripts:

  • ExportDraftProjectList2016.sql

  • ExportPublishedProjectList2016.sql

  • ExportReportingProjectList2016.sql

Examine la salida de las consultas y determine los proyectos en los que desea encontrar datos de usuario específicos. Es posible que desee exportar la lista de SQL Server a un archivo CSV para mayor comodidad.

Cuando haya determinado qué proyectos desea buscar información de usuario, ejecute los siguientes scripts para cada proyecto mediante el ProjectUID devuelto por los scripts anteriores:

Para Project Server 2010, ejecute estos scripts:

(Asegúrese de leer la descripción en la parte superior de cada script. Algunos scripts requieren que agregue el nombre de la base de datos o actualice otros parámetros).

  • ExportDraftProject2010.sql

  • ExportPublishedProject2010.sql

  • ExportReportingProjects2010.sql

  • ExportReportingProjectTimephasedData2010.sql

Para Project Server 2013, ejecute estos scripts:

  • ExportDraftProject2013.sql

  • ExportPublishedProject2013.sql

  • ExportReportingProjects2013.sql

  • ExportReportingProjectTimephasedData2013.sql

Para Project Server 2016, ejecute estos scripts:

  • ExportDraftProject2016.sql

  • ExportPublishedProject2016.sql

  • ExportReportingProjects2016.sql

  • ExportReportingProjectsTimephased2016.sql

Para obtener información sobre los valores de salida de estas consultas, consulte Datos de usuario específicos del proyecto de los datos de informes.

Si necesita información adicional del usuario, consulte el paso 6 para obtener scripts para recuperar información sobre recursos, partes de horas, estado, etc.

Paso 6: Consultas adicionales para exportar datos

Ejecute estas consultas adicionales para encontrar información adicional sobre recursos, partes de horas, estado, etc.

Consulte Ejecución de los scripts de PowerShell a continuación para obtener información sobre cómo ejecutar los scripts de PowerShell.

Exportación de datos desde Project Server 2010

Para exportar datos de Project Server 2010, use los scripts .sql y los scripts de Microsoft PowerShell, como se indica en la tabla siguiente. Para obtener más información sobre cada uno de los campos de la salida, vea el vínculo de la columna Definiciones de salida .

(Asegúrese de leer la descripción en la parte superior de cada script. Algunos scripts requieren que agregue el nombre de la base de datos o actualice otros parámetros).

Opción de exportación Ejecute estos scripts: Definiciones de salida
Cartera
ExportPortfolioModels2010.sql
Controladores
Priorizaciones
Análisis
Planeamientos de recursos
Export-ResourcePlanTimephasedData2010.ps1
ExportResourcePlans2010.sql
ExportReportingResourcePlans2010.sql
ResourcePlan
Recursos
ExportResource2010.sql
ExportReportingResource2010.sql
Recursos
ReportingResource
Seguridad
ExportSecurity2010.sql
Seguridad
Configuración del servicio
ExportServerSettings2010.sql
QueueJobs
CustomFields
LookupTables
Calendarios
UnsubscribedAlerts
SubscribedReminders
ReminderEmails
Delegaciones
Informes de estado
ExportStatusReports2010.sql
Informes de estado
TaskStatus
ExportAssignmentsSavedData2010.sql
ExportSubmittedTaskStatusUpdates2010.sql
ExportAssignmentTransactionHistory2010.sql
ExportAssignmentHistoryData2010.ps1
ExportSavedTaskStatusUpdates2010.sql
Export-SavedTaskStatusUpdates2010.ps1 (Nota)
StatusAssignSaved
StatusAssignHistory
Partes de horas
ExportTimesheets2010.sql
ExportReportingTimesheets2010.sql
Partes de horas
Timesheets_Reporting
Configuración de la vista de usuario
Export-UserViewSettings2010.ps1
UserViewSettings
Flujo de trabajo
ExportWorkflow2010.sql
Flujo de trabajo
Elementos del área de trabajo
ExportWorkspaceItemsByDisplayName2010.sql
WorkspaceItems

Exportación de datos desde Project Server 2013

Para exportar datos de Project Server 2013, use los scripts .sql y los scripts de Microsoft PowerShell, como se indica en la tabla siguiente. Para obtener más información sobre cada uno de los campos de la salida, vea el vínculo de la columna Definiciones de salida .

Opción de exportación Ejecute estos scripts: Definiciones de salida
Cartera
ExportPortfolioModels2013.sql
Controladores
Priorizaciones
Análisis
Planeamientos de recursos
ExportResourcePlanTimephasedData2013.ps1
ExportResourcePlans2013.sql
ResourcePlan
Recursos
ExportResource2013.sql
ExportReportingResource2013.sql
Recurso
ReportingResource
Seguridad
ExportSecurity2013.sql
Seguridad
Configuración del servicio
ExportServerSettings2013.sql
QueueJobs
CustomFields
LookupTables
Calendarios
UnsubscribedAlerts
SubscribedReminders
ReminderEmails
Delegaciones
Informes de estado
ExportStatusReports2013.sql
Informes de estado
TaskStatus
ExportAssignmentsSavedData2013.sql
ExportSubmittedTaskStatusUpdates2013.sql
ExportAssignmentTransactionHistory2013.sql
ExportAssignmentHistoryData2013.ps1
ExportSavedTaskStatusUpdates2013.sql
Export-SavedTaskStatusUpdates2013.ps1 (Nota)
StatusAssignSaved
StatusAssignHistory
Partes de horas
ExportTimesheets2013.sql
ExportReportingTimesheets2013.sql
Partes de horas
Timesheets_Reporting
Configuración de la vista de usuario
Export-UserViewSettings2013.ps1
UserViewSettings
Flujo de trabajo
ExportWorkflow2013.sql
Flujo de trabajo
Elementos del área de trabajo
ExportWorkspaceItemsByDisplayName2013.sql
WorkspaceItems

Exportación de datos desde Project Server 2016

Para exportar datos de Project Server 2016, use los scripts .sql y los scripts de Microsoft PowerShell, como se indica en la tabla siguiente. Para obtener más información sobre cada uno de los campos de la salida, vea el vínculo de la columna Definiciones de salida .

Opción de exportación Ejecute estos scripts: Definiciones de salida
Contrataciones
ExportEngagementScripts2016.sql
Contrataciones
Cartera
ExportPortfolioModels2016.sql
Controladores
Priorizaciones
Análisis
Planeamientos de recursos
ExportResourcePlans2016.sql
ResourcePlan
Recursos
ExportResource2016.sql
ExportReportingResource.sql
Recurso
ReportingResource
Seguridad
ExportSecurity2016.sql
Seguridad
Configuración del servicio
ExportServerSettings2016.sql
QueueJobs
CustomFields
LookupTables
Calendarios
UnsubscribedAlerts
SubscribedReminders
ReminderEmails
Delegaciones
Informes de estado
ExportStatusReports2016.sql
Informes de estado
TaskStatus
ExportAssignmentsSavedData2016.sql
ExportSubmittedTaskStatusUpdates2016.sql
ExportAssignmentTransactionHistory2016.sql
ExportAssignmentHistoryData.ps1
ExportSavedTaskStatusUpdates2016.sql
Export-SavedTaskStatusUpdates2016.ps1
StatusAssignSaved
StatusAssignHistory
Partes de horas
ExportTimesheets2016.sql
ExportReportingTimesheets2016.sql
Partes de horas
Timesheets_Reporting
Configuración de la vista de usuario
Export-UserViewSettings2016.ps1
UserViewSettings
Flujo de trabajo
ExportWorkflow2016.sql
Flujo de trabajo
Elementos del área de trabajo
ExportWorkspaceItemsByDisplayName2016.sql
WorkspaceItems

Paso 7: Elementos archivados

ExportArchievdData201x.sql devolverá los siguientes datos almacenados en la base de datos archivada relacionada con el recurso.

Opción de exportación Definiciones de salida
Elementos archivados: calendario Calendarios
Elementos archivados: campos personalizados CustomFields
Elementos archivados: tablas de búsqueda Tabla de consulta
Elementos archivados: proyectos Lista de proyectos
ProjectVersionId (id. de versión de archivo)
ProjectVersionDescription (fecha y hora de la copia de seguridad)
ProjectVersionDate (fecha de la copia de seguridad)
Elementos archivados: recurso Recurso
Elementos archivados: campos personalizados de recursos Recurso: campos personalizados

Datos de proyecto archivados: para exportar proyectos archivados:

  1. Archive el proyecto actual. (2010)
  2. Restaure la versión archivada. (2010)
  3. Exporte los datos relacionados con el usuario.
  4. Restaure el proyecto desde el archivo.

Datos archivados que no son de proyecto:

  1. Use la copia de seguridad y recuperación de SharePoint (2010) para crear un clon de la granja actual.
  2. Restaure los elementos archivados desde Copia de seguridad y restauración administrativas (consulte el procedimiento anterior).
  3. Exporte los datos relacionados con el usuario.

Paso 8: Buscar y guardar datos adjuntos, vistas y archivos VBA

Para buscar datos adjuntos y vistas, se recomienda exportar un proyecto determinado a XML. Para ello, ábralo en Project Profesional y guárdelo como un archivo XML. Una vez que tenga archivos XML para los proyectos que desea revisar, consulte Buscar elementos de usuario personalizados en Project Online y Datos de exportación de usuarios de Project Server.

Ejecución de scripts de PowerShell

En la tabla siguiente se muestran los parámetros necesarios para un script determinado. Ejecute cada script en un Shell de administración de SharePoint como administrador de la granja de servidores.

Script Parameters
ResourcePlanTimephasedData201x.ps1
Export-SavedTaskStatusUpdates201x.ps1
ExportTaskStatusUpdateHistory201x.ps1
ProjectServerURL
Resnum
OutputPath
PromptForCredential
UseWebLogin
Sync-ProjectWorkspace201x.ps1 ProjectServerURL
ProjectId
PromptForCredential
UseWebLogin
Export-UserViewSettings201x.ps1 ProjectServerURL
Resnum
OutputPath

Estos parámetros se describen en la siguiente tabla.

Parámetro Descripción
ProjectServerURL Dirección URL del sitio PWA
Resnum Identificador de recurso del usuario
OutputPath Ubicación para almacenar los archivos de exportación.
ProjectId Área de trabajo del proyecto que se va a sincronizar

Incluya también uno de los siguientes parámetros de autorización cada vez que ejecute un script:

Parámetro Auth Descripción
[nada pasado] Autentíquese con NTLM y el protocolo Kerberos como el usuario actual.
PromptForCredential Autentíquese mediante el protocolo básico o de síntesis o mediante NTLM o Kerberos con un usuario diferente.
UseWebLogin Autentíquese mediante formularios y el protocolo ADFS/SAML.

Por ejemplo:

.\Export-UserViewSettings2016.ps1 -ProjectServerURL "https://pwa" -resId "55efd6ff-853c-4fec-8abd-6df2c90b94e5" -OutputPath "C:\"

Consulte cada archivo de script de PowerShell para obtener más ejemplos e información sobre los parámetros.

Ejecución de Export-SavedTaskStatusUpdates201x.ps1 (solo 2010 y 2013)

Para ejecutar el script de Export-SavedTaskStatusUpdates201x.ps1, debe ejecutarse como delegado del usuario que se va a exportar para ver la asignación guardada. Haga lo siguiente:

  1. Activar la delegación en Project Server
  2. Habilitación de permisos de delegación en el usuario que se va a exportar
  3. Habilite los permisos de delegación en sí mismo para delegar como ese usuario. (Como administrador, es posible que ya tenga permisos).
  4. Configurarse como delegado del usuario que se va a exportar
  5. Inicie sesión en Project Web App.
  6. Haga clic en el icono de engranaje y, a continuación, haga clic en Actuar como delegado.
  7. Inicie una sesión de delegado.
  8. Ejecute el script de PowerShell Export-SavedTaskStatusUpdates201x.ps1.
  9. Detenga la sesión de delegado.

Vea también

Eliminar datos de usuario de Project Server