El Blog del Leo

Compartiendo lo que aprendo

Generando una salida para Microsoft Project desde ASP.NET


A veces nos hemos encontrado la necesidad de utilizar componentes de otros programas para nuestros trabajos, por lo general, cuando tenemos que generar algun tipo de reporte en Excel, Word, Project, PDF, etc.

Bueno, aqui les traigo un ejemplo cuando necesiten generar un reporte para Microsoft Project


  1. Lo primero que tenemos que hacer en nuestra aplicación es tener la referencias a las librerias COM de Project, para ello, debemos instalar (si no lo hemos hecho) los componentes de desarrollo de Office. Para instalarlo, seguir el siguiente tutorial: Instalar Office PIAs.
  2. Luego debemos importar al proyecto que queremos la referencia a Project.
    Imports Micr
    osoft.Office.Interop.MSProject
  3. Luego,
Private Sub ExportarProject()
     Dim aplicacion As ApplicationClass

     'Verificamos si tiene instalado MS Project
     Try
            aplicacion = New ApplicationClass
            aplicacion.AppMaximize()
            aplicacion.FileNew(, , , )
            aplicacion.Visible = True
     Catch ex As Exception
            MsgBox("No es posible exportar a Project")
            Exit Sub
     End Try
      'Buscar la instancia del proyecto activo
      Dim proyecto As Project = aplicacion.ActiveProject
      'Asociamos tareas al proyecto, el primer parametro nombre de la tarea, segundo parametro posicion
      Dim tarea As Task = proyecto.Tasks.Add("Nombre Tarea",1)
      'Podemos asociar subtareas tambien de la siguiente manera
      Dim subTarea As Task = proyecto.Tasks.Add("Nombre Sub Tarea",2)
      subTarea.Start = "10/10/2009"
      subTarea.Finish = "12/12/2009"  
      subTarea.OutlineIndent()
      'Podemos crear otro subtarea

      Dim subTarea2 As Task = proyecto.Tasks.Add("Nombre Sub Tarea", 3)
      subTarea2.Start = "13/12/2009"
      subTarea2.Finish = "25/12/2009"
      subTarea2.OutlineIndent()     
      'Podemos guardar el proyecto y salir
      aplicacion.FileSaveAs(proyecto.Title, PjFileFormat.pjMPP)
      aplicacion.Quit(PjSaveType.pjPromptSave)
End Sub

Espero les sirva, les adjunto el codigo de prueba.
Descargar Ejemplo Project [Link 1]
Descargar Ejemplo Project [Link 2]
Saludos.

Las 7 Maravillas de Windows 7


  1. Rápido y ligero: En comparación con su antecesor se ha mejorado el comportamiento con equipos de menor rendimiento y la utilización de espacio que era una problema en equipo con Windows Vista. Se puede asegurar que muchos equipos que no funcionaban con Windows Vista ahora podrán funcionar con Windows 7.
  2. Nueva Barra de Tareas: Ahora la barra de tareas es más fácil de ver, flexible y avanzada. Al colocarte sobre el ícono de un programa, el cual lo puedes "anclar" a la barra de tareas, podrás ver la vista previa de lo que se esta ejecutando. También, puedes reorganizar los programas anclados solo con "arrastrar y soltar".
  3. Gestión de Ventanas: ¿Te sientes agobiado por las ventanas abiertas? Windows 7 incluye tres nuevas características simples pero poderosas, denominadas Aero Shake, Aero Peek y Snap para ayudarte a eliminar la acumulación de elementos en el escritorio de manera instantánea.
  4. Mejora en sistemas de menu: Si te gustó el sistema de menús de 2007 Microsoft Office, también te interesarán estos cambios. Por primera vez en diez años, programas clásicos como Paint y Wordpad han sido remodelados , ya ahora incluyen por defecto el ribbon. Paint también admite ahora la utilización de interfaces táctiles, y gracias a ello podremos emplear el ratón y las manos para desarrollar nuestra creatividad.

  5. Jump Lists: Para acceder a los documentos, sitios web, canciones que recurres dia a dia se añadio esta nueva caracteristica. Haciendo clic con el boton secundario del mouse sobre uno de los programas anclado a la barra de tareas verás las tareas mas frecuente, también disponible en el menú de inicio.
    Las Jump Lists no solo muestran accesos directos a los archivos. A veces también ofrecen acceso rápido a comandos para componer nuevos mensajes de correo electrónico o reproducir música.
  6. Centro de Actividades: Consolida el tráfico de mensajes desde funciones clave de seguridad y mantenimiento de Windows, entre ellas, Windows Defender y Control de cuentas de usuario. Si Windows requiere tu atención, el icono del Centro de actividades aparecerá en la barra de tareas.
  7. Grupo Hogar: Para evitar la molestia de compartir archivos e impresoras en una red doméstica. Conecta dos o más equipos que ejecuten Windows 7; se facilita el inicio automático del uso compartido de música, imágenes, vídeo y documentos bibliotecas con otras personas del hogar. El nuevo menú “Compartir con”, además, ofrece una forma rápida de compartir archivos individuales.

Eliminar 'Proyectos Recientes' de Visual Studio 2008



Dada la pregunta que me hizo un compañero de trabajo, ¿Cómo puedo eliminar los proyectos recientes que me aparecen en Visual Studio si yo quiero que me aparezcan los dos con que trabajo?
Me puse a investigar como hacerlo, pense... "No está demás saberlo" y aqui les muestro como hacerlo.





  • Se ejecuta en el linea de comando la instrucción regedit, para invocar al editor de registro.
  • En la siguiente ruta de nuestro registro HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList
  • Alli se encontrarán con archivos con nombres tales como File1, File 2, etc.. Deja solo los que quieres que te aparezcas y el resto los puedes borrar.
  • A considerar, si tu borras, por ejemplo, File2 tienes que renombrar los Files3, File4 y asi consecutivamente.
Espero que este dato geek les sirva para personalizar mas su Visual Studio.
Saludos.

ConnectionString en el webconfig en ASP.NET

En nuestras aplicaciones ASP.NET a algo que le sacamos poco provecho es al archivo de configuración de la web, más conocido como web.config.
Existe una sección especial, en este XML de configuración, para la adición de las cadenas de conexion a nuestras base de datos o ActiveDirectory para luego poder ser accesadas a través de nuestra aplicación .NET

<connectionStrings>
'La propiedad name es el que despues va a ser el identificador del ConnectionString desde la aplicacion .NET
       <add name="ActiveDirectory" connectionString="CadenaConexionActiveDirectory"/>
       <add name="BaseDatos" connectionString="CadenaConexionBaseDatos"/>
</connectionStrings>

'Importar el espacio de nombres System.Configuration
Imports System.Configuration
'Y utilizar la instruccion siguiente, con el nombre de tu cadena de coneccion como parametro del método ConnectionStrings.
Shared cadenaConexionThno = ConfigurationManager.ConnectionStrings("BaseDatos").ConnectionString


De esta manera, podras tener tus cadenas de conexion en un solo lado sin necesidad de escribirla cada vez que hagas una conexion.

Espero que les sirva, saludos.

Seguidores

Certificaciones

Microsoft Certified Professional

Mis Tweets

Twitter