SharePoint Latin Rotating Header Image

Workflow

Inspirado por el artículo Peter Bright sobre WinRT

microsoft-_net-framework-4

 

En mi caso todo empezó con MS-DOS 3.0 pero esa es otra historia. Yo tomé el barco de Microsoft desde 1997, como programador inicié con Visual Basic 5, tuve la oportunidad de utilizar la suite de Office 97 y experimentar lo que fue OLE 2.0, ya como programador Visual Basic 6 construí aplicaciones profesionales que hacían uso de componentes COM construidos por mí y también tuve la oportunidad de compartir con PowerBuilder funcionalidad gracias a COM. El primer libro de programación que compré fue Developing COM/ActiveX Components With Visual Basic 6 de Dan Appleman. Ya durante los cursos oficiales de Visual Basic 6 pude conocer lo que fue Distributed COM (DCOM) y Microsoft Transaction Server (MTS).  A la par HTML y lo que Microsoft llamó DHTML también eran parte de las técnicas de programación que tuve que aprender y dominar, en particular ASP y VBScript fueron para mí una gran oportunidad profesional, en la universidad pude construir aplicaciones web para procesos escolares, así que mí experiencia en ASP mejoró mucho. Después de durar un tiempo construyendo aplicaciones Windows y Web tanto para empresas como para los últimos semestres de pronto escuchamos del Beta de .NET en MSDN, un buen amigo mío lo descargó no sé de dónde y pudimos ver en primer instancia lo que significó el nuevo modelo e acceso a datos, la evolución de DAO por ADO y de ADO a ADO.NET. Recuerdo que el simple el hecho de tener DataSets y DataTables con respecto a Recordsets fue increíble. La posibilidad de trabajar Offline y usar DataSet.WriteXml() para llevarnos los datos en XML y poder trabajar fuera de línea nos dio una y refrescante alternativa. El poder serializar objetos para persistirlos también fue algo emocionante. Tratar de asimilar los tipos de datos por valor y por referencia también fue retador. El 13 de Febrero de 2002 se liberó Visual Studio .NET 2002 en San Francisco, CA donde Bill Gates presidio el lanzamiento y dejó ver la visión que ha venido empujando a Microsoft desde ya hace mucho tiempo "La información disponible a cualquier hora, en cualquier lugar y desde cualquier dispositivo". En ese lanzamiento Grady Booch tuvo una participación durante una demostración justamente hablando de modelado y de ahí conocí el mundo de UML, Design Patterns, etc. También a Tim Huckaby fue parte del Iron Developer contest con quien después tuve la oportunidad de trabajar aquí y algunos otros Speakers en especial a Ari Bixhorn y Chris de DPE de Microsoft. Increíble el lanzamiento y dejó ver todo una nueva visión. En aquel entonces los recursos de capacitación disponibles eran pocos, el .NET Show con Robert Hess y Erica Wiechers, LearVisualStudio.NET con Bob Tabor que después lo hicieron MVP, también me fascinó el concepto del programa VBTV Cheap Show de Chris and Ari donde de una manera muy cómica y relajada dieron a conocer Visual Basic .NET. Tuve la oportunidad de hacer un proyecto en ASP.NET usando Visual Studio .NET 2003 para un evento nacional de la universidad, ahí fue mi primer presentación técnica ante ejecutivos y director nacional de la institución, toda una experiencia nueva pero tan familiar a la vez. Estuve trabajando por un tiempo como programador ASP y de pronto llegó la oportunidad para ser programador .NET de una empresa de software para gobierno importante en mi ciudad. Inicie con Visual Studio .NET 2003 creando aplicaciones ASP.NET 1.1. En ese entonces surge Pattern & Practices y pude conocer el podcast de .NET Rocks de Carl Franklin. Los blogs empezaron a ser más populares. Trabaje bastante con Visual Studio .NET 2003, recibí el nombramiento MVP en el 2004, tome el riesgo y me fui a la ciudad de México a trabajar como instructor y conferencista, surgió Visual Studio 2005 y tuve la oportunidad de participar en el lanzamiento del producto dando platica de ASP.NET 2.0 y conociendo a personas con las sigo frecuentando y que también son MVPs. Lo que más me llamó la atención en aquel entonces fue el modelo proveedor de ASP.NET para soportar la extensibilidad y la implementación de mecanismos muy interesantes para fortalecer la integración. Una vez más Visual Studio 2005 y .NET Framework 2.0 introdujeron muchas mejoras para los programadores en especial el modelo proveedor y sin duda el uso de Generics como parte del modelo de programación y en el caso de Windows Forms el Clickonce Deployment, de hecho .NET Framework 2.0 fue la base de otras versiones de .NET Framework, básicamente se han ido apilando nueva funcionalidad. A mediados entre 2005 y 2008 Microsoft busca unificar los paradigmas de desarrollo y crea WCF, WF, WPF y CardSpace como parte del .NET Framework 3.0. Cabe mencionar que SharePoint 2007 fue construido sobre .NET Framework 2.0 y 3.0. Un cambio radical de nuevo en el modelo de programación y en la forma de construir soluciones conectadas, visualmente atractivas y procesos de negocio. En el 2008 se liberó Visual Studio 2008 con el .NET Framework 3.5 donde por fin LINQ pudo florecer y posicionarse como la respuesta para abstraer el lenguaje que normalmente usamos para manipular una base de datos. LINQ nos dio la posibilidad de seguir usando el lenguaje de programación que conocemos para expresar de forma unificada consultas a bases de datos, colecciones de objetos, archivos XML y cualquier otra fuente de datos para la cual existiera un proveedor, adicional fue la base de Entity Framework como el ORM de Microsoft. Sin duda .NET Data Services (la implementación RESTFull) fue otro nuevo y refrescante enfoque para facilitarnos la construcción de aplicaciones conectadas. También .NET Framework 3.5 y Visual Studio 2008 han sido críticos para la evolución de la plataforma .NET ya que se introdujo de forma muy básica la posibilidad del paralelismo y la noción de facilitarnos la escritura de programas capaces tomar ventaja de los diferentes procesadores y núcleos que el hardware tiene. Se introdujo extensiones para trabajar con patrones como MVC y MVVM para web como para cliente. Ya en la versión .NET Framework 4.0 y Visual Studio 2010 florecieron los patrones con nuevas plantillas de proyecto, pudimos tener integrado en el lenguaje una serie de clases para facilitarnos la escritora y uso de aplicaciones paralelas y asíncronas. Y sin duda Visual Studio fue re construido ofreciendo una UI basada en WPF con un bonche de mejoras para depuración, visualización de código, documentación, análisis, diagramas etc. Visual Studio 2012 también ya fue liberado y sus características a la par del sistema operativo han venido a revolucionar la forma en que construimos aplicaciones así como también el ecosistema para distribuirlas.

Todo este texto ha sido inspirado por un artículo que leí hace un par de días y que quiero recomendar ampliamente para aquel programador avanzado y principiante. Este artículo se llama "Turning to the past to power Windows’ future: An in-depth look at WinRT" y da una explicación del pasado para entender mejor el presente y sin duda el futuro. Si realmente estas interesado en el mundo Microsoft tienes que leerlo.

Recursos CodeCamp

Para los que asistieron al CodeCamp el día de hoy y que recibieron el DVD de recursos en el encontraran todo los archivos, ejecutables, herramientas y demás que requieren para iniciar el desarrollo en .NET 3.0 les dejo unas indicaciones:

Seleccionen el cuadro de Recursos y Herramientas:

Despues instalen la edicion de Visual Studio 2005 que ustedes prefieran:

Despues instalen los requisitos para desarrollar con .NET 3.0 y haganlo en el orden mostrado:

Tambien en el mismo DVD de recursos encontraran la herramienta Expression Blend que estuvimos viendo.


** cross posting desde geeks.ms

New WF Web Workflow Approvals Starter Kit

Paul Andrew one of the WF experts publish in his blog a post about a new starter kit release. The name is Windows Workflow Foundation Web Workflow Approvals Starter Kit. Just imagine what you can learn here.

This starter kit is a Visual Studio 2005 project that demonstrates using Windows Workflow Foundation for simple task oriented workflow in an ASP.NET web application. A workflow model is used to automate work order requests at a small example company. It includes three pre-defined roles which each play a part in the work order creation, approval and monitoring. The starter kit may be modified for other workflow models to suit other small web based task management systems.

Some friends will love this. Enjoy!

un momento emocionante para todos

Conforme pasa el tiempo más emocionante se vuelve el mundo de las tecnologías de información. Es increíble el pasado, presente y futuro que en la industria estamos percibiendo. Antier vi este video en Channel 9 sobre WCF solo Doug Purdy plática sobre Workflow Foundation donde dice que WF es el nuevo VB para su mama. En otras palabras la tan esperada herramienta visual para el modelado de diagramas de flujo que se integrar fácilmente al mundo administrado de .NET. Comentan que parte de la visión de este componente es hacer que las personas no escriban código alguno sino simplemente modelen el diagrama de flujo y conecten las piezas de funcionalidad que el programa debe de realizar cuando he platicado de WF normalmente utilizo palabras más complicadas para describir lo que acabo de decir, con este video encontraras verdaderas palabras y formas relajadas de comunicar lo que WCF y WF es y representa desde la perspectiva relajada de los arquitectos de Microsoft.

También como tengo la oportunidad de participar en el programa de Testing de algunas tecnologías de Microsoft desde hace tiempo encuentro una pieza de tecnología que en lo particular me pareció interesante desde la perspectiva de alcance e impacto que tendrá. Hablo de la tecnología con nombre de código “Grava” las nuevas herramientas para la creación de contenido educacional de Microsoft que en definitiva atenderá a un mercado más en la industria que requiere innovación y desarrollo. Imagina la idea de que ahora cualquier estudiante, académico, catedrático, etc. puede utilizar un software que simplifica la expresión y pensamiento de ideas así como su publicación. Así que muy pronto tendremos una nueva ola de desarrollo en las academias.

En fin insisto en que estamos en un momento emocionante en términos tecnológicos como ejemplo veamos este video que muestra como gracias a las tecnologías de información investigadores y científicos pueden colaborar para lograr que el cáncer sea un padecimiento administrado.


** cross posting desde geeks.ms

Round Table de .NET 3.0

Estamos a unos minutos de iniciar una sesión de mesa redonda sobre .NET Framework 3.0. Gente de Latinoamérica nos justamos para comentar las características de las nuevas tecnologías incluidas en esta versión y además estaremos respondiendo preguntas en vivo.

  • Edgar Sánchez, Ecuador
  • Alfonso Goyeneche, Colombia
  • Daniel Reynaldo, República Dominicana
  • Haarón González, México

La invitación está abierta y estaremos para responder tus dudas.

El link de la sesión es: https://msevents.microsoft.com/cui/WebCastRegistrationConfirmation.aspx?culture=es-AR&RegistrationID=1288314363

 

 


** cross posting desde geeks.ms

Writting a basic Workflow in SharePoint Server 2007

Maybe is a good time to start a new phase on my blogging experience. My friend Luis Du Solier MVP in SharePoint has a blog in English as well, so I think from now on I will write and share some information in English language. The reason is just for fun and just for share content about Microsoft technology with the entire world.  I need to learn how to express myself in new ways and I think blogging it’s a great opportunity to do that.


 


Ok, let’s talk about the workflow capabilities of Microsoft Office SharePoint Server 2007.


 


First, let me tell you that a workflow it’s a concept for describing a set of steps and conditions that a certain process can have for ensure the accomplishment of several rules that are enforce in any aspect of a business.


 


In Microsoft Office SharePoint Server 2007 a.k.a MOSS 2007 we can enable workflow scenarios for automate a business process. In this post I will create a very basic workflow and share how can you use the Microsoft Office SharePoint Designer 2007 to create a custom workflow.


As a developer you write workflows in your apps. If you take the time to see your code, you will find from an overall perspective a workflow existing in your application that represents the business rules that you need to enforce in order to stream line a business process. Microsoft in the new version of the .NET Framework called .NET Framework 3.0, has integrated a full workflow engine that developer can use to understand and represent business process or program flow. MOSS 2007 uses Workflow Foundation from the Microsoft .NET Framework 3.0 to enable rich and extensible Workflow scenarios applied to the collaboration space.


 


Let’s see.


Crescencio Estrada owner of Mexican Curios Shop needs to be aware of some of the most expensive artisanal items that he sells and also buy from local artisans. He has several people doing this job, but, for really expensive items he needs to approve the purchase. To do so, he wants to see some relevant information about the item and most important, the cost and base on that he approve or deny the purchase.

curius01.jpg


As you can see, we have too special items in the Document Library and also we have a cost column. This document library has enable the content approval feature. We will use SharePoint Designer 2007 Beta to enable a very basic workflow that has the following condition:


  • If the Cost is less than $1, 000 then they are approve
  • If the Cost is greater than $1, 000 then needs to be approve

  1. Open the Microsoft Office SharePoint Designer 2007 Beta
  2. Select File – Open Web Site and type the Web Site Url.  

curius02.jpg


Now SharePoint Designer loads the site structure.


  1. Select File – New
  2. Select the SharePoint Content Tab and select Workflow from the category list
  3. Select the Blank Workflow Template and click Ok 

curius03.jpg


SharePoint Designer 2007 will load a new windows called Workflow Designer.


curius05.jpg


In the Workflow Designer we can give a name for our workflow and select on which component of our site we want to enable this custom workflow. And also, we can define some of the start options for our workflow.


curius06.jpg


There are some useful command button we can use to enable variables and initialization parameters for our workflow. But we only are going to click Next.


Now we will design the steps of our workflow, we have two options Condition and Actions.


When we click the Condition button several options are displayed:


curius07.jpg


This condition can help us to evaluate any value or state of each document that is in Special Items document library. We will select Custom Condition (Special Items).


curius08.jpg


In the field link we are going to select the Cost field that we have in the Special Items Document Library.


curius09.jpg


Then select the equals link to chose the condition. 


curius10.jpg


Now type the value we define for this condition.


curius11.jpg


Ok, now we have a condition configured and it’s time to set the action that will fire when this condition it’s true.  There are some available actions when a condition occurs.


curius12.jpg


In this case we will define a Set Moderation Status action allowing us to select the approve, pending or denied status for our document base on the condition previously evaluated. Because the cost of our Special Item is less than 1000 we will select Approved and define some comment.


curius13.jpg curius14.jpg There is a link called Add “Else If” Condition Branch so we can still evaluate other values. So click this link to create another branch. And select the same condition (Custom Condition) but whit the Is greater than condition criteria. We also can define more actions for the same condition. In this case I will send a email to Mr. Crescencio Estrada.curius15.jpg Then, just click the Finish button. And the Workflow designer will compile and save this workflow.


Image 17


Upload some document to our Special Items Document Library don’t forget to specify a cost lower than 1000 a greater than 1000. You will see that the status column is Pending or Approved base on the condition.


Image 18


Well, in this basic post we see how can define a custom workflow for a Document Library in MOSS 2007.

verdaderamente valioso

Special Holiday Episode III: Connecting People, Programs and Devices Using WinFX