viernes, 31 de julio de 2015

Instalar Windows 10 Directamente

Hola como sabemos el 19 de Julio se ha lanzado a nivel mundial Windows 10, un sistema operativo que promete mucho.

Me he encatrado con vario escenarios.

1 Surface con Windows 8.1 "NO actualizaba a Windows 10".
Solución:
-Se eliminan todos los archivos de la carpeta C:\Windows\SoftwareDistribution\Download
-Se ejecuta el comando "wuauclt /updatenow" Desde el símbolo de sistema.

2 Maquina Virtual en Mac OSX "Se Actualizo perfectamente sin hacer nada"

3 Equipo nativo con Windows 8.1 "En este equipo cuando intentaba descárgalo automáticamente el agente de Windows daba un fallo "

error 0x80240020: Actualizar a Windows 10
Y un error cuando intentaba hacerlo por Windows Update


Solución:
Descargas Windows 10 desde este Link
https://www.microsoft.com/es-es/software-download/windows10


 
 
Con esto ya podrías disfrutar de Windows 10.
 
Disfruten Windows 10.
 
Saludos
Aldo Flores Reyes
@alduar


 

miércoles, 22 de julio de 2015

Visual Studio 2015



El pasado Lunes Microsoft Libero 3 productos que revolucionar el software.
Visual Studio 2015
Team Foundation Server 2015
.NET FrameWork 4.6.

Porque digo que estos productos revolucionaran el software. lo mas importante es que los desarrollos hechos en .NET ya pueden ejecutarse en sistemas UNIX y Linux. Esto punto lleva que .NET no solo es multi lenguaje de programación si no también multi sistema operativo.

Y por parte de IDE Visual estudio ya tenemos la posibilidad de ejecutarlos también en MAC OSX y Linux. Llamado Visual Studio Code.
dejo el link para que lo descarguen.
https://code.visualstudio.com/

También dejo el link de descarga para Visual Studio.
https://www.visualstudio.com/products/visual-studio-enterprise-vs

En futuros post veremos las nuevas funcionalidades que tiene Visual Studio 2015

Saludos
Aldo Flores Reyes



 

martes, 14 de abril de 2015

SSO ADFS 2.0 SalesForce

Abecés es necesario integrar sistemas en la nube con sistemas que están en nuestra corporación. Uno de estos casos es integrar SalesForce "Nube", con ADFS 2 para poder hacer SSO con aplicaciones como SharePoint. En esta guía vamos a ver como hacer esta integración.

1) Exportamos el certificado que generamos en ADFS, esto permitirá a SalesForce decrepitar el token generado por ADFS.

Guardamos el archivo.cer "posteriormente lo vamos a necesitar para SalesFoce"

2) Configuración SalesForce
  1. Iniciamos sección con un usuario administrador en SalesForces.
  2. Ir a Configuración.

 
    3. Control de Seguridad / Configuración de inicio de sesión único
 
 
 
          4. Nuevo



 
       5. Agregar certificado.
 
Elegimos el Certificado que en el paso dos exportamos.
 
 
 
                6. Descargar metadatos
 
 
3 Configuración de ADFS.
 
  1. Agregar relación de Confianza

  2.  
    2. Seleccionamos el XML donde esta la configuración de SalesForce "Esto lo hicimos en el apartado 1-6"
     
    3. Next/Next/Next/Next/Close
     
     
     
     
     
     
    3. Agregar Reglas de Claims
     
     
     
     
    Apply/OK
     
     
    4. Cambiamos el algoritmo SHA-1 en la pestaña Avdvanced
     
     
     
     
    Con esto tenemos configurado SalesForce para que pueda hacer SSO utilizando ADFS 2.0
     
     
     
     
     
     
     
     
     
     
     
    
 
 
 
 

 


 

jueves, 12 de febrero de 2015

OData Entity Framework 6.1.2

Con la nueva versión de Entity Framework 6.1.2 los proyectos de OData tiene una particularidad.
Hace unos meses cree un tutorial de como hacer implementar OData con POCO.
OData POCO.

Algunas cosas han cambiado con la nueva versión de Entity Framework.
Lo primero es que hay una nueva dll. Entity Framework OData Provider.
La forma  de instalar esta dll es desde nuged. Mas adelante veremos como hacerlo.

Para desarrollar este tutorial nos basaremos en las capas de acceso a datos del pasado post.
En este tutorial solo veremos como crear el servicio de OData.
Nota: Este tutorial ser relazara con Visual Studio 2013.

Primero creamos un proyecto Web vacío.

 
 
Después agregamos un proyecto de WCF Data Service 5.6
 
 
Posteriormente agregamos las recrecías de nuestro Contexto
 

Agregamos la referencia de Entity Framework OData provider desdes nuget. con el siguiente comando
Install-Package Microsoft.OData.EntityFrameworkProvider -Pre
 
Posterior mente en el servicio tenemos que cambiar algunas cosas como se muestra a continuación.
 
 
Tenemos que configurar la cadena de conexión "Web.Config" donde estas nuestra Base de Datos.
 
 
Finalmente probáramos el servicio de OData.
 
 

 Como podemos observar podemos acceder a las entidades que tenga nuestro contexto así como sus datos.
 
Espero que sea de ayuda
Aldo Flores Reyes
@alduar
"La nube no es el futuro es el presente"


 
 

martes, 5 de agosto de 2014

Visual Studio 2013 Update 3

Dego el link para la nueva actualizacion de Visual Studio Update 3
http://www.microsoft.com/es-es/download/details.aspx?id=43721
Saludos
Aldo Flores Reyes


lunes, 5 de mayo de 2014

Business Intelligence para Visual Studio 2013

Como saven estamos estrenando visual studio. Y lo que faltaba es que pudueramos desarrollar cosas de BI en VS 2013. Aqui les dejo el link para que lo descargen.

http://www.microsoft.com/en-us/download/details.aspx?id=42313



jueves, 20 de febrero de 2014

Llamar Reporte SSRS desde SSIS

En ocasiones es necesario en una solución de BI, Generar los reportes dentro de un mismo flujo de #SSIS.
En este caso practico veremos como hacer para que desde un Flujo de #SSIS se puedan generar reportes en formato excel ó PDF. En la segunda parte de este post tambien veremos como distribuir estos reportes a #SharePoint 2013 o vía Email.

Para que este componente que vamos a desarrollar sea re utilizable  lo que tenemos que hacer es empaquetar la lógica en un DLL.

1) Creamos un proyecto de tipo Biblioteca de clases.


2) Agregamos la referencia "Microsoft.ReportViewer.WebForms"


3)Agregamos una clase con el nombre Get con el siguiente código.

using Microsoft.Reporting.WebForms;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
namespace Helper.SSRS
{
    public static class Get
    {
        private static void Generate(Dictionary<string,string> parameters,string pathOutPut,string typeFile)
        {
            try
            {
                string url = ConfigurationManager.AppSettings.Get("Url ReportServer");
                string path = ConfigurationManager.AppSettings.Get("Path Report");
                string extention=string.Empty;
                ReportViewer reportViewer = new ReportViewer();
                reportViewer.ServerReport.ReportServerUrl = new Uri(@url);
                reportViewer.ServerReport.ReportPath = path;
                if (parameters!=null || parameters.Count>0)
                {
                    reportViewer.ServerReport.SetParameters(GetParameters(parameters));
                }
                switch (typeFile.ToUpper())
           {
           case "PDF":
                        extention="pdf";
                        break;
                    case "EXCELOPENXML":
                        extention="xlsx";
                        break;
                    case "MHTML":
                        extention="mhtml";
                        break;
                    case "WORDOPENXML":
                        extention = "docx";
                        break;
                        default:
                            break;
           
                }
                string mimeType;
                string encoding;
                string extension;
                string[] streams;
                Warning[] warnings;
                
                byte[] pdfBytes=reportViewer.ServerReport.Render(typeFile.ToUpper(), string.Empty, out mimeType,out encoding, out extension, out streams, out warnings);
                // save the file
                using (FileStream fs = new FileStream(string.Format("{0}.{1}", pathOutPut, extention), FileMode.Create))
                {
                    fs.Write(pdfBytes, 0, pdfBytes.Length);
                    fs.Close();
                }
                
                
            }
            catch (Exception ex)
            {
                Logger.Write(TraceLevel.Error, "", ex);
            }
        }

        public static void Html(Dictionary<string, string> parameters, string pathOutPut)
        {
            Generate(parameters, pathOutPut, "MHTML");
        }
        public static void PDF(Dictionary<string, string> parameters, string pathOutPut)
        {
            Generate(parameters, pathOutPut, "PDF");
        }
        public static void Excel(Dictionary<string, string> parameters, string pathOutPut)
        {
            Generate(parameters, pathOutPut, "EXCELOPENXML");
        }
public static void Word(Dictionary<string, string> parameters, string pathOutPut)
        {
            Generate(parameters, pathOutPut, "WORDOPENXML");
        }
        private static List<ReportParameter> GetParameters(Dictionary<string,string> parameter)
        {
            List<ReportParameter> res=new List<ReportParameter>();
            foreach (var item in parameter)
            {
                res.Add(new ReportParameter(item.Key, item.Value));
            }
            return res;
        }
        
    }
}

Este código nos permite guardar un reporte en los formatos Excel, HTML, Word y PDF.
Como menciona vamos antes este condigo nos permite que configurar el servidor de reportes y el reporte.
También nos permite enviar parámetros si es que nuestros reportes tuvieran parámetros .Con esto podríamos utilizar esta funcionalidad en otros proyectos.
Registramos la ddl con el comando #gacutil.exe "esto se describe post anteriores".
 
4) tenemos que firmar el ensamblado.


Con esto tenemos la parte del el helper que nos ayudara a generar el Reporte.

Los siguiente que nos queda es consumir este componente desde el Flujos SSIS.
Tenemos que hacer los siguiente

1) En el flujo de integración #SSIS agregamos una Script Task

2) Damos click botón derecho en La caja de Scrip Task [Edit] despues en la ventana emergente damos click [Edit...]


Se abrirá un visual estudio donde podemos llamar a nuestro componente Helper.SSRS.

3) Agregamos la referencia del componente Helper.SSRS


4) Agregamos Archivo de configuración


5) Agregamos las siguientes entradas en el archivo de configuración.


6) Finalmente agregamos el siguiente condigo para hacer la llamada al componente.



Compilamos y cerramos con esto ya podemos generar el reporte en formato excel y guardarlo.
En este caso como mi reporte tiene un parámetro que se llama ID_PLAN se agrega en el diccionario de parámetros.
El helper esta diseñado para agregar n parámetros. o bien ninguno.
El segundo parámetro de el método es la ruta con el nombre que queremos que se guarde el reporte.

En la segunda parte de el post agregaramemos la funcionalidad de distribución.
Saludos

Aldo Flores Reyes
@alduar

"La nube no es el futuro es el presente" Aldo Flores Reyes