• PROJECT SERVER 2010. PROBLEMAS AL ACCEDER A MIS TAREAS SI TENEMOS UN PROYECTO CON Nº DE DIAS AL MES = 0. FOUND INVALID DATA WHILE DECODING. SET_DAYSPERMONTH.

    Buenas,

    En el post de hoy queríamos tratar un asunto curioso, que nos ocurrió hace poco. En un incidente de soporte, teniamos un cliente con varios usuarios que no podían acceder a su página de “Mis Tareas” en PWA. 

    Al intentar acceder a dicha página (PWA \ Tareas) se recibía un mensaje indicando que no se podía acceder a a la vista, como se indica en la captura de pantalla a continuación:

     

    20130123-153034-0001

     

    En los logs ULS configurados en modo detallado, podíamos leer lo siguiente:

     

    Exception occurred in method Microsoft.Office.Project.Server.BusinessLayer.Statusing.StatusingGetMyWorkForGridJson System.IO.InvalidDataException: Found invalid data while decoding. at Microsoft.Office.Project.Conversion.TextConverter.set_DaysPerMonth(Int32 value) at Microsoft.Office.Project.Server.BusinessLayer.MyWorkQueryInfo.GetTextConvForRecord(DataRow row) at Microsoft.Office.Project.Server.Utility.JsGridPopulationManager.<>c__DisplayClass94.<ConstructGridFieldLocalizer>b__8d(DataRow row, Object dataValue) at Microsoft.SharePoint.JSGrid.GridSerializer.LocalizeField(DataRow dr, GridField field, Object dataValue) at Microsoft.SharePoint.JSGrid.GridSerializer.CreateLocalizedData(IEnumerable`1 unlocalizedSlicedRows) at Microsoft.SharePoint.JSGrid.GridSerializer.Bui......ldOutput() at Microsoft.SharePoint.JSGrid.GridSerializer.ToJson(Serializer s) at Microsoft.SharePoint.JsonUtilities.Serializer.SerializeToJson(Object o) at Microsoft.Office.Project.Server.BusinessLayer.Statusing.GetMyWorkForGridJson(JsGridSerializerArguments gridSerializerArgs, String gridChangesJson, String projectAssignmentsMap, Guid viewUid, String timephasedStart, String timephasedEnd, Byte pane, Int32 durationType, Int32 workType, Int32 dateFormat, Boolean clearPersistedProperties, Nullable`1 rowFilterType) at Microsoft.Office.Project.Server.Wcf.Implementation.PWAImpl.StatusingGetMyWorkForGridJson(JsGridSerializerArguments gridSerializerArgs, String gridChangesJson, String projectAssignmentsMap, Guid viewUid, String timephasedStart, String timephasedEnd, Byte pane, Int......32 durationType, Int32 workType, Int32 dateFormat, Boolean clearPersistedProperties, Nullable`1 rowFilterType)

     

    Sin entrar demasiado en consideraciones de código, o cómo localizamos la causa del problema, indicaros que el problema es debido a haber tenido configurado el número de días al mes para este proyecto a “0”

    20130123-152842-0001

     

    Una manera de localizar si tenemos algún proyecto con esta característica es ejecutando la siguiente consulta SQL:

    SELECT PROJ_UID, PROJ_OPT_DAYS_PER_MONTH FROM MSP_PROJECTS WHERE PROJ_OPT_DAYS_PER_MONTH = 0

    Si no nos sale ningún resultado, podemos estar tranquilos, pero si tenemos alguno, lo recomendable será abrir dicho/s proyecto/s, ir a las opciones, y en “Programación”, indicar un valor distinto de cero para el concepto de “días al mes”, y guardar y publicar dicho proyecto. Os pido disculpas por ofreceros la captura de pantalla en inglés, pero es el idioma que tenía en la máquina de pruebas donde he estado reproduciendo esto.

     

    Bueno, espero os resulte de interés, y pueda ayudaros en el futuro, en el caso de que os ocurra un problema similar.

     

    Un saludo

     

    Jorge Puig

     

  • PROJECT ONLINE. OFFICE 365.

    Buenas,

    En este post queríamos hacer llegar, para quien no lo tuviera controlado todavía, este enlace donde se trata como funcionará Project online, en el ecosistema de Office 365. Antes de proseguir, indicar que éste contenido aplica a la “vista previa” de Microsoft Office.

    El artículo original se puede encontrar aquí:

    http://technet.microsoft.com/en-us/library/jj819260.aspx

    Al no existir esta información en castellano, me permito hacer una traducción en este post.

     

    Microsoft ofrece un servicio flexible, o soluciones “on-premise” para el día a día del trabajo de la administración de proyectos, o para la administración de la cartera de proyectos (Project Portfolio Management.)

    Las características de la administración de proyectos están soportadas al adquirir la aplicación Project de escritorio; esta adquisición puede ser realizada como una licencia individual para Project Professional 2013, o los usuarios de Office 365 pueden comprar una licencia de subscripción mensual para Project PRO en Office 365.

    Las características de la administración de la cartera de proyectos están soportadas al usar la Aplicación Web de Project (PWA = Project Web Access.) Para conseguir Project Web Access, existen dos opciones:

    • Instalarte tu propio entorno de Project Server “on-premise” (esta opción se corresponde con la que estamos acostumbrados, instalando la aplicación en nuestro entorno físico.)
    • Eligiendo la opción de Project Online, el cual se trata de un servicio “online” que está albergado en “datacenters” de Microsoft.

     

    Los clientes de Office 365 tienen las siguientes opciones para la administración de proyectos, o de la cartera de proyectos:

    • Microsoft Project Online: Project online es una solución flexible para la gestión de la cartera de proyectos (PPM) y el trabajo diario. Permite a las organizaciones dar prioridad a las inversiones de la cartera de proyectos, y cumplir los objetivos del valor de negocio previsto. Project online incluye la aplicación web de proyectos (PWA), la cual otorga a los miembros del equipo con acceso a los datos del proyecto desde cualquier lugar con conexión a Internet. Project online también puede incluir Microsoft Project Pro para Office 365 – para aquellas personas que necesiten las características completas para administrar proyectos en el escritorio, y quieran participar desde virtuamente cualquier lugar, en casi todos los dispositivos.
    • Microsoft Project PRO para Office 365: Microsoft Project PRO para Office 365 es un servicio de subscripción mensual, capaz de transmitir inmediatamente la versión más actual de la aplicación de escritorio de Project, a vuestra estación de trabajo de Windows. La subscripción de Office 365 te permite adquirir licencias mensuales para cualquier persona usando Project Pro para Office 365 en tu organización. Tu suscripción de Office 365 permite adquirir licencias mensuales para cualquier persona que use Project Pro para Office 365 en tu organización. Cada licencia de suscripción permite hasta cinco instalaciones simultáneas.

     

    Si tenemos ya las subscripciones para Project online y SharePoint online, podemos añadir la aplicación web de proyectos (PWA) a un sitio online de SharePoint. Podemos leer más al respecto aquí.

    Para aprender más acerca de Project online, debemos ir a este enlace.

     

    A continuación tenemos un par de comparativas, sobre las características en la administración de proyectos (Project Management) y en la administración de la cartera de proyectos (Project Portfolio Management.) Os ruego me disculpéis, pero me he permitido copiar el contenido directamente en inglés, al no existir todavía su correspondiente traducción oficial:

     

    Características de la administración de proyectos:

    Feature

    Project Professional 2010

    Project Professional 2013

    Project Pro for Office 365

    Microsoft Fluent user interface, the Ribbon

    Yes

    Yes

    Yes

    Contextual right-click menus

    Yes

    Yes

    Yes

    Online help

    Yes

    Yes

    Yes

    Zoom controls

    Yes

    Yes

    Yes

    Backstage™

    Yes

    Yes

    Yes

    Project templates

    Yes

    Yes

    Yes

    Identity management plus SkyDrive

    No

    Yes

    Yes

    Start experience

    No

    Yes

    Yes

    Custom fields

    Yes

    Yes

    Yes

    Enhanced copy/paste across Microsoft Office applications

    Yes

    Yes

    Yes

    Automatic scheduling

    Yes

    Yes

    Yes

    User-controlled/Manual scheduling

    Yes

    Yes

    Yes

    Top down summary tasks

    Yes

    Yes

    Yes

    Placeholder text in Project Fields

    Yes

    Yes

    Yes

    Active/Inactive Tasks

    Yes

    Yes

    Yes

    Multiple level undo

    Yes

    Yes

    Yes

    Budget planning

    Yes

    Yes

    Yes

    Manage non-working time

    Yes

    Yes

    Yes

    Gantt chart, calendar, and task sheet views

    Yes

    Yes

    Yes

    Network diagram view

    Yes

    Yes

    Yes

    Deadlines

    Yes

    Yes

    Yes

    Formulas and graphical indicators

    Yes

    Yes

    Yes

    Group and sort Project data

    Yes

    Yes

    Yes

    Filtering

    Yes

    Yes

    Yes

    Auto-complete

    Yes

    Yes

    Yes

    Add columns

    Yes

    Yes

    Yes

    Text wrap

    Yes

    Yes

    Yes

    Change highlighting

    Yes

    Yes

    Yes

    Formulas and graphical indicators

    Yes

    Yes

    Yes

    Baseline rollup

    Yes

    Yes

    Yes

    Master projects on SharePoint

    No

    Yes

    Yes

    Cross-project Critical Path

    Yes

    Yes

    Yes

    Calendar date extended to 2149

    No

    Yes

    Yes

    Work, Generic, and Material Resources

    Yes

    Yes

    Yes

    Cost resources

    Yes

    Yes

    Yes

    Team resources

    Yes

    Yes

    Yes

    Team Planner

    Yes

    Yes

    Yes

    Resource sheet and usage views

    Yes

    Yes

    Yes

    Resource leveling

    Yes

    Yes

    Yes

    Resource substitution

    Yes

    Yes

    Yes

    Timeline View

    Yes

    Yes

    Yes

    Reports

    Yes

    Yes

    Yes

    Compare project versions

    Yes

    Yes

    Yes

    Task inspector

    Yes

    Yes

    Yes

    Update progress

    Yes

    Yes

    Yes

    Task Path

    No

    Yes

    Yes

    PDF/XPS output

    Yes

    Yes

    Yes

    Presence with Lync

    No

    Yes

    Yes

    Create a Project site

    No

    Yes

    Yes

    Task List Sync to SharePoint

    Yes

    Yes

    Yes

    Publish Projects to Project Server/Project Online

    No

    Yes

    Yes

    Save a file to SharePoint

    Yes

    Yes

    Yes

    Click-to-Run

    No

    No

    Yes

    Project On Demand

    No

    No

    Yes

    Office Store

    No

    Yes

    Yes

     

    Características de la administración de la cartera de proyectos:

    Feature

    Project Server 2010 with Project Professional 2010

    Project Server 2013 with Project Professional 2013

    Project Online with Project Pro for Office 365

    Getting Started

    No

    Yes

    Yes

    Click-to-Run

    No

    No

    Yes

    Project On Demand

    No

    No

    Yes

    Demand Management

    Yes

    Yes

    Yes

    Portfolio Analytics & Selection

    Yes

    Yes

    Yes

    Resource Management

    Yes

    Yes

    Yes

    Schedule Management

    Yes

    Yes

    Yes

    Financial Management

    Yes

    Yes

    Yes

    Time and Task Management

    Yes

    Yes

    Yes

    Collaboration

    Yes

    Yes

    Yes

    Issues and Risk Management

    Yes

    Yes

    Yes

    Reporting and Business Intelligence

    Yes

    Yes

    Yes

    Program Management

    Yes

    Yes

    Yes

    Administration, Deployment, and Extensibility

    Yes

    Yes

    Yes

    Project and Portfolio Management Partner Ecosystem

    Yes

    Yes

    Yes

     

    Bueno, esperamos os resulte de interés, un saludo

     

    Jorge Puig

  • PROJECT 2013. ADMINISTRADOR DE ESTADO.

    Buenas,

    En el post de hoy queríamos tratar un asunto que no ha cambiado en esta nueva versión de Project 2013, comparado con la versión anterior, Project 2010. Hemos recibido mensajes de usuarios que no tenían esto muy claro, y es por eso que hemos decidido crear este post en el blog.

    El asunto en cuestión trata sobre la necesidad de cambiar el Administrador de Estado, si existe una persona que ha generado un determinado número de proyectos, con sus tareas correspondientes, y resulta que no se pretende sea dicha persona, al final, quien se encargue de ser el responsable de esas tareas. Debemos ser conscientes de que, por defecto, el que cree el proyecto y las tareas será quien aparecerá como Administrador de Estado, a no ser que le indiquemos explícitamente lo contrario, y pongamos en esta columna, a quien queramos asuma este rol.

    La situación es la siguiente: el jefe de proyecto A genera una serie de proyectos para que el resto de jefe de proyectos en la empresa los use. Las tareas que existieran en estos proyecto tendrán por defecto, como Administrador de Estado, al jefe de proyecto A. Cuando otro jefe de proyecto trabaja con estos proyectos, en las tareas que cree, aparecerá él o ella como Administrador de Estado, pero en las anteriores, no. Si quiere (como tiene todo el sentido, ya que el jefe de proyecto A no tiene nada que ver con este proyecto/tareas, etc) aparecer como Administrador de Estado, tendrá que ir manualmente, tarea por tarea, cambiando esto, para que aparezca él, y evitar que se manden las aprobaciones de tareas, por ejemplo, al jefe de proyecto A.

    La manera de hacer esto es:

    1. Abrir el proyecto empresarial en cuestión en Project Professional 2010.
    2. Añadir una nueva columna; para ello, situamos el cursor encima de la columna de nombre de tarea (o cualquier otra) y seleccionamos “Insertar columna”, indicando que sea la correspondiente a “Administrador de Estado”
    3. Para cada tarea que consideremos conveniente cambiar, deberemos corregir el nombre de Administrador de Estado, y poner el que se considere conveniente.
    4. Una vez hecho esto, tendremos que guardar y publicar el proyecto, para que queden reflejados los cambios

    Una manera automática de hacer esto, implicaría el uso de macros, por ejemplo.

     

    Esperamos esto nos ayude a entender cómo funciona el uso del “Administrador de Estado” en nuestros proyectos.

     

    Un saludo

     

    Jorge Puig

  • ACTUALIZACION A PROJECT SERVER 2013.

    Buenas,

    En el post de hoy queríamos hablar de los recursos que se nos ofrecen para ir planificando la actualización a Project Server 2013. Si hacemos una búsqueda rápida en Bing, podemos encontrarnos los siguientes enlaces:

  • Novedades sobre actualizaciones de Project Server 2013
  • Planificación de la actualización a Project Server 2013
  • Actualización a Project Server 2013
  • Preparación del entorno para la actualización a Project Server 2013
  • Actualización de las bases de datos y de las colecciones de sitios de Project Web App (Project Server 2013)
  • Tareas posteriores a la actualización- abordar un problema conocido con proyectos de empresa (Project Server 2013)
  •  

    Las cuales recomiendo leer, antes de embarcarnos en la actualización. Me permito indicar a continuación los puntos que me han parecido más relevantes, a fin de que tengamos una mínima idea acerca de las consideraciones a tener en cuenta, antes de realizar la actualización.

     

    REQUISITOS

  • La actualización a Project Server 2013 no admite una opción de actualización en contexto (en la que los archivos de Project Server se actualicen en el mismo hardware)
  • La actualización de Project Server 2010 a Project Server 2013 incluye la consolidación de la base de datos en una única base de datos
  • La actualización a Project Server 2013 se realiza únicamente a través del método de conexión de una base de datos, según el cual hay que instalar un “entorno de destino” de Project Server 2013
  • Project Server 2013 admite la conectividad de cliente a partir de Project Professional 2013. Los usuarios de Project Professional 2010, o versiones anteriores, no se podrán conectar a Project Server 2013
  • Más información acerca de los requisitos del sistema para Office 2013 (en nuestro caso, nos interesa la información referente a Project 2013
  • RECOMENDACIONES:

  • Se debe notificar a los usuarios que no podrán tener acceso a los datos durante la actualización (por ejemplo, durante el fin de semana). También se debe notificar a los usuarios que han de dejar los datos en un estado que esté listo para la migración. (Por ejemplo, todos los proyectos deben protegerse y deben aprobarse o rechazarse todas las actualizaciones de estado y partes de horas pendientes). Esto ayuda a eliminar problemas que pudieran producirse durante la actualización.
  •  

    Como puntos clave, por favor, tengamos en cuenta lo siguiente:

     

  • Al actualizar a Project Server 2013, se usa una actualización completa con bases de datos adjuntas (a veces conocida como "con cinco bases de datos adjuntas"). Esto significa que se requieren para la actualización la base de datos de contenido de SharePoint que incluye los datos de sitios de Project Web App y las bases de datos de Project Server 2010. Es necesario usar la base de datos de contenido de SharePoint, ya que de lo contrario no funcionarán las páginas de detalles de proyectos ni los flujos de trabajo. Además, no estará disponible ningún área de trabajo de proyectos, junto con los documentos, las listas, los riesgos, las emisiones y las entregas asociados.
  • No existe ninguna ruta de acceso directo para la actualización desde Office Project Server 2007 a Project Server 2013. Al actualizar desde Office Project Server 2007, primero tiene que actualizar a Project Server 2010 y después actualizar las bases de datos necesarias a Project Server 2013.
  • Al completar la actualización de Project Server 2010 a Project Server 2013, si hace clic en Nuevo en la cinta de PWA, solamente verá el Plan del proyecto básico y el Tipo de proyecto empresarial (EPT). No verá otros tipos de proyecto disponibles en Project Server 2013. La solución a este problema consiste en agregar manualmente los EPT de Project Server 2013. Para obtener más información sobre esta solución, vea Tareas posteriores a la actualización: abordar un problema conocido con tipos de proyecto empresarial (Project Server 2013).
  • Cuando actualice sus bases de datos de Project Server 2010 a Project Server 2013, las bases de datos de Project Server 2010 deben estar en modo nativo (no en modo de compatibilidad con versiones anteriores). Si sus bases de datos de Project Server 2010 están en modo de compatibilidad con versiones anteriores (BCM) al actualizar, puede que observe problemas en los sitios tras la actualización (por ejemplo, que falten páginas); esto se debe a que el BCM no es una característica compatible con Project Server 2013. Para obtener más información sobre este problema, vea Preparación del entorno para la actualización a Project Server 2013
  • Si su base de datos Publicados de Project Server 2010 contiene cuentas de recursos en las que el campo WRES_Account contenga una cadena vacía (el valor esperado es NULL), se producirá un error en la actualización de esta base de datos. Le recomendamos que compruebe esta condición antes de intentar una actualización, especialmente si había actualizado cuentas de recursos de Office Project Server 2007 a Project Server 2010 en el pasado.
  •  

    Preparación del entorno para la actualización a Project Server 2013:

  • Implementación de su entorno de destino de Project Server 2013
  • Preparación de su entorno con Windows PowerShell
  • Deshabilitación del modo de compatibilidad con versiones anteriores en su entorno de Project Server 2010
  • Comprobación de sus datos de Project Server 2010 en búsqueda de problemas que puedan provocar errores en la actualización
  •  

    Información general del proceso de actualización:

    La actualización a Project Server 2013 desde Project Server 2010 puede dividirse en las siguientes fases consecutivas:

  • Crear la granja de servidores de Project Server 2013.

  • Copiar las bases de datos necesarias de la granja de servidores de Project Server 2010.

  • Restaurar las bases de datos en el equipo que ejecuta SQL Server y hospeda las bases de datos de Project Server 2013.

  • Actualizar las bases de datos.

  • Actualizar la colección de sitios de Project Web App.

  •  

    Por último, recomendar a nuestros Partners, los cuales son, junto a MCS (Microsoft Consulting Services) los más adecuados para ayudaros con este tipo de migraciones.

     

    Microsoft Gold Certified Partners

    Microsoft ha autorizado a varias empresas asociadas como expertas para implementaciones de EPM y migraciones de sistemas. Para encontrar socios en el sitio web de Microsoft, busque proveedores de soluciones EPM en Marketplace de soluciones de Microsoft (http://go.microsoft.com/fwlink/?linkid=187521&clcid=0xC0A).

     

    Permitidme repetir que lo recomendable es leer los artículos mencionados anteriormente, ya que la información es mucho más completa; esto ha sido un breve resumen de lo que me ha parecido más relevante tener en cuenta, a la hora de planificar la migración a Project Server 2013.

     

    Esperando os haya resultado de interés, recibid un cordial saludo

     

     

    Jorge Puig

  • PROJECT SERVER. USO DE LA AUDITORIA DE SQL SERVER 2008 R2 PARA UN TRIGGER DE UNA TABLA DE PROJECT SERVER.

    Buenas,

    Primero de todo, desearos Feliz Año. Vamos a empezar el blog este 2013 de la misma manera que acabamos el año pasado, con un excelente artículo de nuestro colega Marc Biarnes, que trata acerca del uso de la auditoría y triggers de SQL Server, para monitorizar  y obtener más información, que nos pueda ayudar a entender por qué nos encontramos con determinados comportamientos. Podéis encontrar su post original (en francés) en su blog:

    http://blogs.technet.com/b/frenchpjblog/archive/2012/12/24/3542471.aspx

     

    “Los triggers de SQL Server son una solución simple y eficaz para extender la funcionalidad de Project Server, como alimentar una tabla externa o enviar una notificación por correo electrónico; se recomienda usar esto con moderación, debido al impacto significativo que puede tener en el rendimiento; que puede, en casos extremos, llegar a causar interbloqueos. El trigger puede resultarnos de interés también a la hora de buscar la razón de una acción de la cual no se sabe la causa.

     

    En el ejemplo que trataremos hoy, consideraremos un caso en el que se eliminan registros de una tabla, sin que sepamos por qué, pero que hace que no aparezcan algunas líneas en el parte de horas en al acceder a Mis Tareas. En nuestro caso, se eliminan registros de las tabla MSP_TASKS_SAVED de la base de datos Published, creando registros huérfanos en las tabla MSP_ASSIGNED_SAVED

     

    Como tenemos el escenario para reproducir a voluntad este fenómeno, tenemos la posibilidad de elegir entre:

    1. Capturar una traza con el Profiler de SQL Server para registrar la actividad de esta base de datos, y detener la traza tan pronto se detecte el problema.
    2. Crear un trigger DDL (el trigger DML no puede usarse en una acción DELETE) que registre la acción en una tabla temporal.
    3. Usar la función auditoría de SQL Server 2008 (R2) para iniciar la acción, capturando la información complementaria que disparó el trigger

     

    La primera solución es la más fácil de implementar, pero el resultado puede variar considerablemente dependiendo de la actividad sobre la base de datos, y lo más importante: si se tarda demasiado en buscar el rastro, se puede perder información interesante. Además, esta solución tiene un impacto significativo en el rendimiento y por lo tanto, no se puede utilizar durante un período largo.

    La segunda solución es también muy fácil de implementar, pero el resultado seguirá siendo bastante limitado, porque no se puede obtener información sobre el evento: quién y cuándo ha generado esto. Pero no se puede saber el qué, porque la función SQL EVENTDATA puede ser utilizada en un trigger DML, pero recordemos que no puede ser asociado con una acción DELETE en una tabla.

     

    La última solución es la mejor porque, además de dar información sobre el quién y cuándo, también nos dirá el qué. A continuación tenemos los detalles para esta solución:

     

    Creación del fichero de Log:

    El primer paso es crear el archivo de registro donde se almacenará la información de auditoría:

    use master

    go

    -- Create the server audit.

    CREATE SERVER AUDIT Audit_mytrig

    TO FILE ( FILEPATH = 'C:\' ) ;

    GO

    -- Enable the server audit.

    ALTER SERVER AUDIT Audit_mytrig

    WITH (STATE = ON) ;

    GO

    Creación del trigger:

    USE PROJECTSERVER_PUBLISHED ;

    GO

    CREATE DATABASE AUDIT SPECIFICATION Audit_mytrig_Table

    FOR SERVER AUDIT Audit_mytrig

    ADD (DELETE

    ON MSP_TASKS_SAVED by dbo)

    WITH (STATE = ON) ;

    GO

    Después de hacer esto, cualquier acción de DELETE en la tabla MSP_TASKS_SAVED escribirá la información en el archivo de log

    Recuperación del archivo de registro:

    Para leer el contenido del archivo de registro, podemos utilizar el siguiente procedimiento:

     

    USE master

    GO

    -- get the audit file

    DECLARE @filepattern VARCHAR(300)

    DECLARE @folder VARCHAR(255)

    DECLARE @auditguid VARCHAR(36)

    SELECT @auditguid = audit_guid,@folder = log_file_path

    FROM sys.server_file_audits WHERE name = 'Audit_mytrig'

    SELECT @filepattern = @folder + '*_' + @auditguid + '*'

    -- view the results

    SELECT event_time,session_id,a.name AS Action,c.class_type_desc AS ObjectType,

    f.server_principal_name,f.schema_name,f.OBJECT_NAME,f.statement,f.additional_information

    FROM fn_get_audit_file(@filepattern,NULL,NULL) AS f

    JOIN sys.dm_audit_class_type_map c ON f.class_type = c.class_type

    JOIN sys.dm_audit_actions a ON f.action_id = a.action_id

    AND c.securable_class_desc = a.class_desc

    WHERE f.action_id <> 'AUSC'

    ORDER BY event_time DESC,sequence_number

    Además de la información básica de quién y cuándo, resulta una información muy interesante saber el qué. Esto  puede ser una consulta o un procedimiento almacenado. En este último caso, el nombre del procedimiento almacenado aparece en la columna Statement.

    Conclusiones:

    Podemos concluir que este procedimiento puede resultar muy útil para saber la razón de un fenómeno que no podemos explicar. ¿Se trata de una consulta, o procedimiento almacenado, vinculado al código personalizado? ¿Cuál es el código relacionado con una acción en particular realizada en Project Server?

    La información en Statement puede ayudarnos mucho a entender lo que está ocurriendo y puede ser un muy buen punto de partida a la hora de buscar una causa o un escenario de reproducción.”

    Bueno, esperamos os haya resultado tan útil e interesante como nos lo ha parecido a nosotros.

    Un saludo

    Jorge Puig