El pasado 23 de Abril tuve la oportunidad de compartir con ustedes el tema: Modelado de Aplicaciones Modernas e Introspreccion de Codigo Existente con Vistual Studio Ultimate
https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=es-AR&EventID=1032548188&CountryCode=AR
En aras de seguir apoyandolos y mostrarles las capacidades de la herramienta en mi canal de youtube estare publicando videos de las demos hechas en esta charla
Los invite a visitor mi canal en youtube: http://www.youtube.com/carloslonegt
Estimad@s:
Buenas noches. El próximo martes 23 y miércoles 24 de abril estaremos transmitiendo en vivo el evento Microsoft Partner Fest el cual se llevará a cabo en la ciudad Guatemala en la Universidad Galileo.
Para inscribirse a las transmisiones en línea utilizar la siguiente dirección: http://microsoftpartnerfestgt.eventbrite.com/
Contaremos con la participación de expositores de primer nivel. A continuación les detallo la agenda del evento:
Horario | Día 23 de Abril (Martes) Salón 401 | Día 24 de Abril (Miércoles) Salón 401 |
7:30 – 8:00 | REGISTRO |
08:00 - 9:30 | SQL Azure por Alumnos por Víctor Cárdenas | Office 365 por Oscar Acuña |
9:30 – 9:45 | Break |
09:45 - 11:15 | Always On Availability Groups de SQL Server por Víctor Cárdenas | Cloud Computing y Windows Azure por Marlon Ramos |
11:15 -12:45 | Demostración de Comunicaciones Unificadas CISCO por Luis Ochaeta y Alumnos LASI | Project Server por Oscar Acuña |
12:45 – 13:30 | Tiempo de Almuerzo |
13:30: 15:00 | MVC por Carlos Juan Orellana | Nuevas características de SharePoint 2013 por Juan Manuel Herrera |
15:00 - 16:30 | Mobile & Social Development with ASP.NET por Carlos Lone | Desarrollo de Aplicaciones para Windows 8 por Carlos Lone |
16:30 – 16:45 | Break |
16:45 – 18:15 | Windows 2012 por Jorge Guajardo | SQL BI Análisis geoespacial por Juan Alvarado. |
Contaremos con el patrocinio de Pluralsight:
Los Esperamos,
Carlos A. Lone
Buenas Noches,
Hoy se tuvo la oportunidad de realizer la primera reunión virtual de la Comunidad de Desarrolladores .NET de Guatemala, el tema que presenté fue ASP.NET MVC 4.
Para los que no pudieron acompañarnos, les comparto la presentación y la grabación del evento:
Grabación
http://sdrv.ms/12lJ9eI
Presentación
Saludos Cordiales,
Carlos A. Lone
ASP.NET MVP
Recientemente me solicitaron apoyo para resolver un problema que se estaba presentando en la creación de nuevo proyecto “Team Project” con Team Foundation Server 2012. Básicamente al llevar un 90% de avance en la creación del nuevo proyecto se generaba el siguiente mensaje de error:

Al revisar de primera mano el mensaje de error todo apunta a que existe un problema entre Team Foundation Server (TFS) y el servicio de Reporting Services. El primer paso fue verificar que toda la configuración del TFS con el servidor de Reporting Services, Sharepoint y el Datawarehouse estuviera funcionando correctamente. Esto se puede verificar en la consola de administración del TFS:

La cual como se puede observar estaba correcta, al revisar detalladamente el log que TFS genera de la creación del proyecto:
2013-03-18T16:14:34 | Módulo: Rosetta | Subproceso: 21 | Estableciendo orígenes de datos para el informe: /TfsReports/TFS2012/nuevo1234/Errores/Estado del error
---Inicio de la entrada de excepción---
Tiempo: 2013-03-18T16:14:35
Módulo: Engine
Descripción del evento: TF30162: Error en la tarea "Populate Reports" del grupo "Reporting"
Tipo de excepción: Microsoft.TeamFoundation.Client.PcwException
Mensaje de excepción: El Asistente para creación de proyectos detectó un error al crear informes en SQL Server Reporting Services en http://…/ReportServer/ReportService2005.asmx.
Detalles de la excepción: El Asistente para creación de proyectos detectó un problema
al crear informes en SQL Server Reporting Services en http://…/ReportServer/ReportService2005.asmx.
El motivo del error no se puede determinar en este momento.
Debido al error de la operación, el asistente no pudo finalizar la
creación del sitio de SQL Server Reporting Services.
Referencia de la pila:
en Microsoft.VisualStudio.TeamFoundation.PCW.RosettaReportUploader.Execute(ProjectCreationContext context, XmlNode taskXml)
en Microsoft.VisualStudio.TeamFoundation.PCW.ProjectCreationEngine.TaskExecutor.PerformTask(IProjectComponentCreator componentCreator, ProjectCreationContext context, XmlNode taskXml)
en Microsoft.VisualStudio.TeamFoundation.PCW.ProjectCreationEngine.RunTask(Object taskObj)
-- Excepción interna --
Mensaje de excepción: TF30225: Error al cargar el informe 'Estado del error': Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos. ---> System.Exception: Para obtener más información acerca de este error, vaya al servidor de informes en el equipo del servidor local o habilite los errores remotos (tipo ReportingUploaderException)
Seguimiento de la pila de la excepción: en Microsoft.TeamFoundation.Client.Reporting.ReportingUploader.UploadReport(XmlNode report)
en Microsoft.TeamFoundation.Client.Reporting.ReportingUploader.HandleCreateReports(XmlNode node)
en Microsoft.TeamFoundation.Client.Reporting.ReportingUploader.Run()
en Microsoft.VisualStudio.TeamFoundation.PCW.RosettaReportUploader.Execute(ProjectCreationContext context, XmlNode taskXml)
Detalles de la excepción interna:
Mensaje de excepción: Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos. ---> System.Exception: Para obtener más información acerca de este error, vaya al servidor de informes en el equipo del servidor local o habilite los errores remotos (tipo SoapException)Detalles de SoapException: <detail><ErrorCode xmlns="http://www.microsoft.com/sql/reportingservices">rsReportServerDatabaseError</ErrorCode><HttpStatus xmlns="http://www.microsoft.com/sql/reportingservices">400</HttpStatus><Message xmlns="http://www.microsoft.com/sql/reportingservices">Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos.</Message><HelpLink xmlns="http://www.microsoft.com/sql/reportingservices">http://go.microsoft.com/fwlink/?LinkId=20476&EvtSrc=Microsoft.ReportingServices.Diagnostics.Utilities.ErrorStrings&EvtID=rsReportServerDatabaseError&ProdName=Microsoft%20SQL%20Server%20Reporting%20Services&ProdVer=10.50.1617.0</HelpLink><ProductName xmlns="http://www.microsoft.com/sql/reportingservices">Microsoft SQL Server Reporting Services</ProductName><ProductVersion xmlns="http://www.microsoft.com/sql/reportingservices">10.50.1617.0</ProductVersion><ProductLocaleId xmlns="http://www.microsoft.com/sql/reportingservices">127</ProductLocaleId><OperatingSystem xmlns="http://www.microsoft.com/sql/reportingservices">OsIndependent</OperatingSystem><CountryLocaleId xmlns="http://www.microsoft.com/sql/reportingservices">1033</CountryLocaleId><MoreInformation xmlns="http://www.microsoft.com/sql/reportingservices"><Source>ReportingServicesLibrary</Source><Message msrs:ErrorCode="rsReportServerDatabaseError" msrs:HelpLink="http://go.microsoft.com/fwlink/?LinkId=20476&EvtSrc=Microsoft.ReportingServices.Diagnostics.Utilities.ErrorStrings&EvtID=rsReportServerDatabaseError&ProdName=Microsoft%20SQL%20Server%20Reporting%20Services&ProdVer=10.50.1617.0" xmlns:msrs="http://www.microsoft.com/sql/reportingservices">Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos.</Message><MoreInformation><Source></Source><Message>Para obtener más información acerca de este error, vaya al servidor de informes en el equipo del servidor local o habilite los errores remotos</Message></MoreInformation></MoreInformation><Warnings xmlns="http://www.microsoft.com/sql/reportingservices" /></detail>
Seguimiento de la pila de la excepción: en Microsoft.TeamFoundation.Client.Channels.TfsHttpClientBase.HandleReply(TfsClientOperation operation, TfsMessage message, Object[]& outputs)
en Microsoft.TeamFoundation.Client.Channels.TfsHttpClientBase.Invoke(TfsClientOperation operation, Object[] parameters, TimeSpan timeout, Object[]& outputs)
en Microsoft.TeamFoundation.Client.Reporting.ReportingService.Invoke(TfsClientOperation operation, Object[] outputs)
en Microsoft.TeamFoundation.Client.Reporting.ReportingService.SetCacheOptions(String Report, Boolean CacheReport, ExpirationDefinition Expiration)
en Microsoft.TeamFoundation.Client.Reporting.ReportingUploader.UploadReport(XmlNode report)
Poner especial atencion a las secciones remarcadas en Rojo. Partiendo del siguiente mensaje:TF30225: Error al cargar el informe 'Estado del error': Se produjo un error dentro de la base de datos del servidor de informes. Se puede deber a un error de conexión, a que se superó el tiempo de espera o a un bajo rendimiento del disco dentro de la base de datos podemos observar que al parecer el error se esta generando a partir de un tiempo de respuesta en la conexión o un bajo rendimiento en el disco duro de la instancia donde se ejecuta el motor de Reporting Services.
El problema con el mensaje anterior es que en realidad esta es una excepción genérica que se genera de lado del Webservice que es invocado desde el TFS, para poder ver la verdadera excepción original fue necesario habilitar el envio de errores remotos para ver el detalle del error.
Al poder tener este detalle VOILA:
library!WindowsService_30!aac!04/01/2013-12:35:08:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: , An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database.;
schedule!WindowsService_30!aac!04/01/2013-12:35:08:: Error processing event 'TimedSubscription', data = 3edab974-4f5c-4f51-adc3-fc48b506f804, error = Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database. ---> System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object 'xp_sqlagent_notify', database 'mssqlsystemresource', schema 'sys'.
Finalmente dimos con la causa principal del problema y es la falta de permisos en la base de datos sobre el objeto ‘xp_sqlagent_notify’, para resolver esto básicamente debemos brindar los permisos necesarios. En este caso lo que se opto fue por crear un Rol: RSExecRole y en su configuración de permisos "Securables" se brindaron los siguientes:
master:
xp_sqlagent_notify (execute)
xp_sqlagent_enum_jobs (execute)
msdb:
sp_add_category (execute)
sp_verify_job_identifiers (execute)
sysjobs (select)
Finalmente se asigno este rol a la cuenta de servicio (Network Service)
Al parecer este problema se genera al momento de actualizar el TFS de la versión RTM a RC, sin embargo esto no es 100% confirmado.
Como ven, al final siempre es necesario llegar al origen de los errores en las excepciones para no caer en la trampa de desviar nuestra atención a realizar otras validaciones o modificaciones en nuestros servicios para resolver el problema.
Espero que si alguien se topa con esta situación este post le sea de utilidad.
Las referencias utilizadas para encontrar solución a este problema las adjunto a continuación:
http://social.msdn.microsoft.com/Forums/en-US/tfssetup/thread/8205ff48-7893-4ef5-862b-395d21a53e55/
http://social.msdn.microsoft.com/forums/en-US/tfssetup/thread/1a270abd-48a0-4c73-a16d-ee01ce9c4ff9/
Para saber como habilitar los mensajes de error remotos en reporting services:
http://technet.microsoft.com/en-us/library/aa337165.aspx
Saludos Cordiales,
Carlos A. Lone
ASP.NET MVP

El próximo jueves 15 de noviembre tendre el honor de participar en el Webcast Nuevas Características de desarrollo en Visual Studio 2012, espero verlos conectados.
La información para el registro la comparto a continuación:
Registrarse para el evento
Inicio: jueves, 15 de noviembre de 2012 05:00 p.m.
Zona horaria: (GMT-05:00) Bogotá
Duración: 1 hora(s)
Registrarse

Saluidos Cordiales,
Carlos A. Lone
Mañana tendré el honor de presentar el evento de lanzamiento de Visual Studio 2012 para CIOs en Guatemala. En dicho evento estaré presentando algunas de las nuevas características disponibles con Visual Studio 2012 y Team Foundation Server 2012.
Espero ver caras conocidas mañana en el evento. Al finalizar estaré publicando las presentaciones y espero poder grabar unos screencasts con el contenido de las demostraciones realizadas.
Saludos
Carlos A. Lone

Estimados Lectores,
Mañana estaremos realizando el evento de lanzamiento de Visual Studio 2012 en la Ciudad de Guatemala. Al igual que en Costa Rica tendré el honor de ser speaker en el evento.
La infomación del evento la pueden encontrar aquí:
La agenda es la siguiente:
Keynote
Oracle Dot Net para Visual Studio
Windows 8 Application Development
Developing for Sharepoint 2010 with Visual Studio 2012
Web and Cloud Development
Espero verlos!!!
Saludos,
Carlos A. Lone

Estimados Lectores,
Mañana tendre el gusto de estar compartiendo el Evento de Lanzamiento de Visual Studio 2012 en San José, Costa Rica.
El evento se llevará a cabo en la oficinas de Microsoft y también será aprovechado para lanzar oficialmente la Comunidad de Desarrolladores de .NET de Costa Rica.
Gracias a Consulting Group por darme la oportunidad de atender en persona y compartir este importante evento para la Comunidad de Devs de Costa Rica.
El evento ya esta lleno.
Espero ver y conocer nuevas caras mañana!
Saludos Cordiales,
Carlos A. Lone
