Loading...

jueves 18 de agosto de 2011

Nereo y Transacciones con Microsoft.NET

Siguiendo nuestras demostraciones con Nereo Framework,  esta vez explicaremos sobre Transacciones en Nereo.


Iniciamos explicando que en Nereo Framework existen 3 tipos: None, Local y Distributed.


None, Significa que la Operación como Insert,Update o Delete no forman parte de una Transacción.

   Ejemplo:
            objOperacion.Transaction = CoreData.TransacctionProvider.None  

   Por defecto la configuración es "None"
  
Local, Significa que la Operación como Insert,Update o Delete representan una Transacciòn de Transact-SQL en la Base de Datos SQL Server, lo simpático de esto es que el desarrollador tiene que decirle a Nereo que usara transacción Local y este se encargará de realizar Commit() o Rollback

   Ejemplo:
            objOperacion.Transaction = CoreData.TransacctionProvider.Local
  
Distributed, Significa que la Operación como Insert, Update o Delete representan un bloque de código transaccional, esta opción utiliza System.Transactions , el cual puede crear una transacción (local o distribuida).

   Ejemplo:

         objOperacion.Transaction = CoreData.TransacctionProvider.Distributed

Ejemplo: Código Fuente









Solo decirle a Nereo que tipo de Transacción utilizara y  todo listoooo

Nos vemoss

Deyvi TM



martes 16 de agosto de 2011

Utilizando Nereo Framework JussCT para el Acceso a Datos

Hoy les presentare el uso del Servicio de Acceso a Datos usando Nereo Framework JussCT de la Empresa JussCT Consultants & Trainer.

Como Demostración  crearemos un Proyecto  en Microsoft Visual Studio 2010,  para la demo utilizaré una libreria que la llamaré DataAccess luego crearé un Cliente en WindowsForms  demo.


0. Script para tabla y Stored Procedure de SQL 
 1. Crear Proyecto Library en Visual Studio 2010

Agregar la referencia de la librería de Nereo Framework JussCT:      
   Nereo.FrameWork.Services.DataAccess.dll



Ahora programamos para usar la librería:
Solo Importamos Nereo.FrameWork.Services.DataAccess,  luego llamamos a Context.SQLServer (Proveedor para SQL) y al final adicionamos parámetros y la cadena de conexión , stored procedure y la operación es muy sencilla, hay mas cosas , pero por el momento les mostrare esta funcionalidad



 2 Crear Proyecto Windows Forms y consumir la librería





Como resultado aparece el registro: 6 y DemoABC




Estas es una de las características que tiene Nereo Framework JussCT


Saludos,


Deyvi

2 Cursos excelentes de .NET

Estimados Desarrolladores y gente interesada en Microsoft.NET,  hoy le pasare una información sobre 2 Cursos muy buenos que la Empresa JussCT Consultants & Trainers empezará a dictar desde su Área de Capacitación InHouse(Consultores van a las empresas a dictar el curso), en el Web Site de la Empresa (www.jussct.com) todavía no están  actualizados, pero desde ya les comento, ellos ya tienen los 2 cursos listos para iniciar.

Lo bueno que la Empresa JussCT utilizará para el curso un Framework propietario de nombre Nereo Framework JussCT orientado a Microsoft.NET, este framework tiene servicios de Acceso  a Datos, Herencia Visual, Controles, y Servicios de framework utilizando Buenas prácticas y patrones, muy bueno para mejorar la productividad al momento de desarrollar Aplicaciones.

Los cursos son los siguientes:

 - Construyendo un Sistema Real con Microsoft.NET y  Nereo Framework JussCT
   Contenido:
         -  Nereo Framework  - JussCT
         - Tecnología .Netframework 4.0  y Microsoft Visual Studio 2010
         - SQL Server 2008 y Reporting Services
         - Desarrollo de un Proyecto Real basado en:
               Nereo Framework
                   Nereo.Framework.Services.DataAccess
                   Nereo.Framework.WindowsForms.Forms
                   Nereo.Framework.Services       
                   Nereo.Framework.WindowsForms.Controls
                   Nereo.Framework.Master
                  Nereo.Framework.Code.Generator
              Arquitectura de la Aplicación.
             WCF (Windows Communication Foundation).
             Patterns & Practices  - Enterprise Library.
             Windows Forms
             ASP.NET, WPF (Windows Presentation Foundation), Silverligth.
             Proxy Integration.
             SQL Server, Reporting Services.

 - Microsoft.Net Real desde Cero 
    Para desarrolladores no .NET
    .net 4.0 y Microsoft Visual Studio 2010 desde Cero

    Contenido:
    Introducción a Microsoft.NET (.Netframework 4.0)
    Acceso a Datos(ADO.NET,LINQ, EntityFrameWork, Isolation level, SQL CLR)
    Patrón de Capas
    Tecnología Windows forms
    Tecnología ASP.NET
    SQL Server e Integraciónón con Reporting Services
    Deployment de Aplicaciones

   
Cualquier consulta sobre estos 2 Cursos:

ò
Llamar o enviar lo correo a la información:
Telefono  : 984251767
Email      : informes@jussct.com
JuSs Consultants & Trainers
Lima, Perú 

o en todo caso me pueden contactar para comunicarlos con la Empresa

Saludos,

Deyvi TM

sábado 21 de agosto de 2010

ASP.NET a volar!!!!

Hoy quisiera exponer un poco una solución de ASP.NET basada en Javascript y Código ligero(ScriptManager+EnablePageMethods+asmx), algo interesante si se trata de optimizar las aplicaciones asp.net.

El escenario presentado es el comun denominador de las Aplicaciones Web; tanto para Intranet, Extranet, Internet, donde existe siempre la posibilidad de validar registros, como Registro de Usuarios, Preguntar si un dato existe, consultar clientes, etc, etc, etc... ; Existen muchos escenarios donde nuestro ejemplo funcionaría.

La idea es que cuando el Usuario ingrese un valor, ej. "pepe",  la aplicación web sea capaz de " IR A LA BASE DE DATOS Y DEVOLVER NUESTRO RESULTADO LO MAS RAPIDO POSIBLE", menos de un segundo!!!, que creen??? ustedes??  recordemos tiempos pasados cuando usabamos en ASP el famoso "Microsoft.XMLHTTP", recuerdan?? que por cierto se sigue usando, para que recuerden un poquito:

var objXmlhttp;
objXmlhttp=new XMLHttpRequest();
ó
if (window.ActiveXObject){
   objXmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
En fin viejos tiempos, :)

Lo que usaremos nosotros para resolver este problema de rendimiento de las aplicaciones con la base de datos, seria usando a nuestro gran amigo: ScriptManager (System.Web.UI)
El ScriptManager, es un ente importante y principal  para la funcionalidad de AJAX en ASP.NET, es el gran administrador de todos los recursos  AJAX como "bibliotecas de scripts, representación parcial de página, el proxy de cliente para los servicios Web y de aplicación", como verán es el mas mas o el papa








Usaremos una caracteristicas del ScriptManager llamada: "EnablePageMethods" (System.Web.UI), significa que nosotros tenemos a gran posibilidad de llamar desde un codigo cliente "JavaScript" a métodos de la página  o mas conocidos como "page methods" de una aspx:


Tiene esta propiedad de tipo System.Boolean, que si se encuentra en True,  nos da la posibilidad de llamar a los métodos de una pagina aspnet, por defecto esta en False

A continación crearemos nuestro Web Site para iniciar:
Paso 1.- Crear Web Site













Paso 2.- Crear Archivo JS de nombre validardatos.js














Paso 3.-Agregar Código al archivo validardatos
La idea es programar el método Cliente(validardatos.js) que se encargará de realizar la llamada al PageMethod de la pagina aspx















Paso 4.- En la pagina default.aspx( que por defecto crea el Web Site de ASPNET), agregamos lo siguiente:
              Recordar amigos que este parte el ScriptManager ya tiene configurado la propiedad 
              EnablePageMethods a True













Tendra un Diseño como este:











Paso 5.- Agregaremos el siguiente código en la pagina default.aspx, en el Evento PageLoad de la página
 y agregaremos tambien un WEBMETHOD, el que tendra la llamada del cliente.
En el método GetClienteInfo, se le ha agregado un atributo:

[System.Web.Services.WebMethod()]
Nota.- El atributo WebMethod se asocia a un método Public para indicar que se desea exponer dicho método como parte del servicio Web XML

El método está llamando a otro Método del mismo nombre, significa que estamos llamando a un AppCode que tiene el codigo, por lo tanto el AppCode está llamando a una Librería de Datos, el cual tiene la Implementación con LINQ to SQL, para SQL Server 2008

Métodos y Eventos de la Página Default.aspx

















Método del AppCode: Aquí realiza la llamada a la Librería de Datos "DataAccess"




















Libreria de Datos:



 
 
 
 
 
 
 
 
 
 
 
 
 
 
Paso 6.- Lo que nos queda, solo es testear nuestra aplicación y ver que tan veloz es:
              Recordar que al final del articulo estare adjunto el Código Fuente del Web Site, Libreria de Datos
               y Script para la BD  
Debug de la página,
 Debug 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Debug 2 Listos para agregar el valor que vamos a validar con la bd  
 
 
 
 
 
 
 
 
 
 
 
 
  

Debug 3, Agregamos el valor "deyvi", y presionamos la tecla tab con el click con el mouse a otro sitio de la pagina o click a boton  validar, como resultado ingresará a validar si el usuario existe o esta disponible en el archivo Javascript, para luego ir a la libreria de datos y obtener el resultado.    
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
   
 
 
 
 
 
 
 
 
 
 
   
 
 
 
 
 
 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
   

Resultado del codigo :)
 
 
 
 
 
 
 
 
 

La idea de todo es gente, es que ahora la aplicaciones aspnet, son rapidas como cualquier tecnología en el mercado ( en realidad siempre ha existido la forma de implementar app web ligeras)
 
Saludos, y ya nos veremos pronto para postear temas sobre Tecnologías del lado del Cliente usando librerías de la comunidad : AjaxDataControls.dll

Código Fuente:
http://www.4shared.com/file/fIe5paH-/_2__AspnetAVolar.html

 
Saludos,
 
Deyvi TM

viernes 13 de agosto de 2010

NET Framework 4.0

Hola nuevamente amigos de la Web.


Ultimamente he estado sumergido en Proyectos que me han quitado  tiempo necesario para seguir colaborando con la Comunidad de Desarrolladores Microsoft, a partir de hoy trataré de presentar Post sobre la Nueva Tecnología que nos aturde y nos impresiona cada día más :).

Trataré de estructurar los Post basándome en Puntos importantes para la Comunidad.
Ok, luego de la breve pre y pre y pre presentación, empezaremos hablar sobre el Nuevo FrameWork 4.0
Que viene con nuestro amigo Visual Studio 2010.
Algunas de las nuevas características del .NETFrameWork 4.0 como : Client, Parallel Computing, Data, Application Compatibility and Deployment, Web, Networking, Managed Extensibility Framework y otras más (Core New Features and Improvements), estaremos conversando en el transcurso de este tiempo (incluyendo claro, WPF, ADONET, WCF, LINQ, EF, etc,)

Un primero punto es cuando se tratan los temas de Compatibilidad de Aplicaciones anteriores al este FrameWork, que pasa si yo tengo una App NET con FrameWork 2.0, 3.0, 3.5, 4.0 ¿???, Okis la idea del .NET Framework 4.0 es que es muy compatible con aquellos Sistemas o Aplicaciones que se han construido con las versiones anteriores.

Esta nueva versión trabaja de forma ejecutiva , El alto nivel de la gerencia no usa sus conocimientos para decirle al nuevo gerente como son las cosas por aca , simplemete le dice “Hay mucho porque trabajar en esta empresa y la idea es seguir la misma filosofía, cualquier cosa esta es mi tarjeta jeje ”, quiere decir que nuestro amigo NETFramework no usa de forma automática su CLR(versión) para ejecutar los Sistemas que se han compilidado con las versiones anteriores, sino que es muy necesario compilar nuestro Sistema con la versión NF hacia dónde va (Destino) o lo que la mayoría no hace ()

Este punto se configura de la siguiente forma.

Ej1, Para esta versión no tendría problemas























Eje2. Cambiaremos la versión a 3.5












En tal caso utilizar el elemento: Especifica la versión del motor de ejecución en un archivo de configuración




















Comentario importante de Microsoft:

Las aplicaciones compiladas para ser compatibles únicamente con la versión 1.0 del runtime deben usar el elemento .Las aplicaciones compiladas utilizando la versión 1.1 o posterior del runtime deben utilizar el elemento

Saludos,
Deyvi TM

martes 23 de febrero de 2010

UltraGrid en Acción

Holas!!!!.

Ahora explicare más características del control UltraGrid.


Vamos!!!!

Paso 1. Crear Proyecto Windows Forms
          
















Paso 2. Agregar control UltraGrid, SplitContainer, Button
















Paso 3. Agregar una Clases con Property























Paso 4. Crear Método para Cargar Datos


















Paso 5. Agregar Método en el Evento Load del Formulario

Paso 6. Adicionar Código en el evento InitializeLayout, para asignarle las carácteristicas de Filtrado, Agrupación y configuración de columnas, estas con algunas de las carácteristicas que tiene el control UltraGrid



Paso 7. En el evento InitializeRow de la Grilla, adicionamos el código para Setear valores mediante verificación de datos.

Paso 8. Finalmente obtendremos el siguiente resultado:

Filtrado mediante tipo:
















Filtrado mediante registro "Jurídico":
















Filtrado personalizado:

















Filtrado, Edición de Celda y Agrupación

Case "NroCliente"
       column.Header.Caption = "Cliente"
       column.Header.VisiblePosition = 2
       column.Width = 250

Le decimos que esta celda no sea Editable
       column.CellActivation = Activation.NoEdit
 















Espero les ayude.

Código Fuente:

http://www.4shared.com/file/228570126/b3a321af/UltraGridMas.html

Saludos,

Deyvi TM

UltraGrid como Arbol

Holas visitantes del internet!!! NET
Esta vez, trabajaremos con otra característica sobre el control UltraGrid comportandose como un treeview.

En primer lugar crearemos un Proyecto Windows Forms

















Luego, agreramos un control: SplitContainer1 y el Control UltraGrid

















Luego adicionaremos código de una Clase con Propiedades para utilizarla como Lista





















Como siguiente paso, Adicionaremos el siguiente código para CargarDatos:













Luego en el Evento Load del formulario, adicionaremos el siguiente Código:




Como ultimo paso, adicionaremos el Código que nos brindara la funcionalidad de TreeView ante el control UltraGrid, para ello programaremos el el Evento InitializeLayout de la Grilla:


El siguiente código:  dgArbol.DisplayLayout.Bands(0).SortedColumns.Add("Pais", True, True), nos brinda la funcionalidad, el SortedColumns.Add("Pais", True, True),  mostrará como grupo al Pais y asi hará lo mismo como Departamento y Provincia.

El resultado final es el siguiente:


Con un poco de formato y diseño queda espectacular!!!

Codigo fuente:
http://www.4shared.com/file/228532199/9f618bbe/GrillaComoTreeView.html


Saludos,

Deyvi TM

Vídeos de Tecnología Microsoft: Visual Studio y SQL Server

Loading...