lunes, 18 de mayo de 2015

Problemas Sintax Highlighting para código < y > como parte del lenguaje c-sharp

Problems Sintax Highlighting with code < and > in c-sharp language for example.
Cuando se trabaja con Sintax Highlighting para un lenguaje como c-sharp, en ocasiones utilizamos código como List listado = new List(). En este caso, se mostrará Sintax Highlighting cerrará ambas etiquetas de manera automática, generándose 2 lo que no debería formar parte de nuestro código, en este caso es conveniente reemplazar: "<" y ">" con < and >
C#
Posted by InfoTacticas Soluciones  |  No comments

5/18/2015 07:56:00 a. m. Share:

0 comentarios:

Generar archivo de texto en MVC.NET para ser descargado

En un nuevo Proyecto MVC, generamos el Controlador: GenerarArchivo, cuyo método index invocará a la vista GenerarArchivo, que es una vista sencilla, y contiene un link para descargar el archivo de texto, y su contenido es mostrado a continuación:
//
//
@{
    ViewBag.Title = "GenerarArchivo";
}

Generación de Archivos

Descargar Archivo de Texto
El link lnkDescargarArchivoTexto, está referenciando a la acción DescargarExportableTXT del controller: GenerarArchivo. Está acción o método debe devolver un FileContentResult que creamos en memoria en dicho método. El contenido del controller GenerarArchivo es mostrado a continuación:
//
//
public class GenerarArchivoController : Controller
    {
        //
        // GET: /GenerarArchivo/

        public ActionResult Index()
        {
            return View("GenerarArchivo");
        }

        public FileContentResult DescargarExportableTXT()
        {
            List<string> listado = new List<string>();
            listado.Add(new String[]{"Carlos Alvarado Ferreiros", "52632030", "27/10/1990"});
            listado.Add(new String[]{"Franciso Larios Loaiza", "20205263", "15/02/1982"});
            listado.Add(new String[]{"Deysi Zárate Ríos", "42635120", "10/01/1975"});
            listado.Add(new String[]{"Marcela Morán Flores", "20435230", "26/05/1985"});

            Int32 numeroItems = listado.Count();
            StringWriter sw = new StringWriter();
            using (sw)
            {
                for (Int32 i = 0; i < numeroItems; i++)
                {
                    sw.WriteLine(listado[i][0] + "|" + listado[i][1] + "|" + listado[i][2]);                   
                }

            }
                        
            String contenido = sw.ToString();
            String NombreArchivo = "ListadoClientes_" + DateTime.Now.Date;
            String ExtensionArchivo = "txt";
            return File(new System.Text.UTF8Encoding().GetBytes(contenido), "text/" + ExtensionArchivo, NombreArchivo + "." + ExtensionArchivo);
        }
    }

Puede descargar el proyecto desde: https://www.dropbox.com/s/gnm4sooawcejfut/ProyectoGenerarArchivoTexto.rar?dl=0
C#
Posted by InfoTacticas Soluciones  |  1 comment

5/18/2015 07:14:00 a. m. Share:

1 comentarios:

miércoles, 13 de mayo de 2015

Pasar Datos de Prodecimiento Almacenado a una Tabla Temporal o Variable Tabla

Si un Procedimiento Almacenado devuelve como resultado un conjunto de registros obtenidos con SELECT, este resultado puede ser obtenido y utilizado dentro de otro procedimiento almacendado, para ello este resultado debe ser almacenado en una tabla temporal o una variable tabla que tenga la misma estructura de campos que el procedimiento almacenado a ejecutar devuelve.
A continuación se muestra un ejemplo de su uso. Espero les sirva.
--
--
---exec spr_ObtenerAgendaPorTipoContacto 2
-- Crear el Procedimiento almacenado
create procedure spr_ObtenerAgendaPorTipoContacto  
@Tipo varchar(2) 
as

 SELECT 1, 'VARGAS', 'DAVILA', 'CARLOS', '949685100', 'CE' -- Compañero Estudios
 UNION 
 SELECT 2, 'DURAND', 'ALVA', 'LUCIA', '949685002', 'CT' -- Compañero Trabajo
 UNION 
 SELECT 3, 'FLORES', 'CASTRO', 'CESAR', '949452200', 'CT' -- Compañero Trabajo
GO

-- CON TABLA TEMPORAL
CREATE TABLE #AgendaTemporal (
 Id INT, 
 ApePaterno VARCHAR(20), 
 ApeMaterno VARCHAR(20), 
 Nombres VARCHAR(30), 
 Telefono varchar(20),
 TipoContacto varchar(2)  
) -- crear tabla temporal

INSERT #AgendaTemporal (Id, ApePaterno, ApeMaterno, Nombres, Telefono, TipoContacto)
EXEC spr_ObtenerAgendaPorTipoContacto 'CT'

select Id, ApePaterno, ApeMaterno, Nombres, Telefono, TipoContacto 
from #AgendaTemporal

drop table #AgendaTemporal -- Eliminar la tabla temporal

-- CON VARIABLE TABLA
DECLARE @AgendaTemporal2 TABLE (Id INT, ApePaterno VARCHAR(20), 
 ApeMaterno VARCHAR(20), 
 Nombres VARCHAR(30), 
 Telefono varchar(20),
 TipoContacto varchar(2) 
) -- crear variable tabla

INSERT @AgendaTemporal2 (Id, ApePaterno, ApeMaterno, Nombres, Telefono, TipoContacto)
EXEC spr_ObtenerAgendaPorTipoContacto 'CE'

select Id, ApePaterno, ApeMaterno, Nombres, Telefono, TipoContacto 
from @AgendaTemporal2
--------------------------------
-------------------------------- 

Siempre es bueno mencionar las referencias de donde uno se guía para aprender, en este caso: https://fuentedeconocimientos.wordpress.com/2013/02/09/pasar-datos-de-procedimiento-almacenado-a-tabla-temporal/comment-page-1/
sql server
Posted by InfoTacticas Soluciones  |  No comments

5/13/2015 03:15:00 p. m. Share:

0 comentarios:

martes, 12 de mayo de 2015

En base a una fecha de un mes dado, obtener la fecha del ultimo día de ese mes - SQL Server

En base a una fecha de un mes dado, como por ejemplo el 11 de enero del 2015, deseamos obtener la fecha del último día de ese mes: 31/01/2015, para eso emplearemos el código SQL que se muestra a continuación
--
--
DECLARE @FechaInicioPeriodo datetime = convert(datetime, '11/01/2015', 103) 
(select dateadd(day,-1,left(convert(varchar(8),dateadd(month,1,@FechaInicioPeriodo),112),6)+'01'))
 

La fecha 11/01/2015 es convertida a datetime, con la estructura 103, a fin de que sea reconocida como una fecha en formato dd/mm/yyyy, tal como lo estamos ingresando, porque de otra manera seria tomada como el 01/11/2015 y nos devolvería como resultado el 30/11/2015, y no es el resultado que esperamos.
sql server
Posted by InfoTacticas Soluciones  |  No comments

5/12/2015 04:30:00 a. m. Share:

0 comentarios:

jueves, 7 de mayo de 2015

Tiempo Transcurrido entre FechaInicio y FechaFin en Años, Meses, Días y horas, minutos, segundos

En esta oportunidad les dejo el código en T-SQL para obtener el tiempo Transcurrido entre 2 fechas. Esta solución la copie del siguiente enlace y me sirvió mucho, fue la mas simple que encontré. https://social.msdn.microsoft.com/Forums/es-ES/c3830d57-7943-4172-816d-2852dc48a22b/como-obtener-el-tiempo-transcurrido-de-varias-fechas-horas-de-inicio-y-fechas-horas-fin-y-sumar-los?forum=sqlserveres
--
--
set dateformat dmy

declare @fechaInicio as datetime = '01/01/2014 02:00'
declare @fechaFin as datetime = '30/03/2015 08:00'
declare @fechaDiferencia as datetime = @fechaFin - @fechaInicio 
declare @difSegundos as bigint = DATEDIFF( SECOND, @fechaInicio, @fechaFin )

select @fechaInicio as fechaInicio, @fechaFin as fechaFin
, @fechaDiferencia as fechaResultado
--tiempo transcurrido en años, meses, días y en horas:minutos:segundos
, DATEDIFF( YEAR, '19000101', @fechaDiferencia ) as anios
, MONTH( @fechaDiferencia ) -1 as meses
, DAY( @fechaDiferencia ) -1 as dias
, CAST( @fechaDiferencia AS TIME ) as tiempo

El resultado de la consulta lo muestro en la siguiente imagem:

sql server
Posted by InfoTacticas Soluciones  |  No comments

5/07/2015 07:28:00 a. m. Share:

0 comentarios:

miércoles, 6 de mayo de 2015

Obtener el número de días de un mes dado en SQL Server

Para obtener el número de días del mes de una fecha determinada, una opción es:
  • De una fecha determinada, obtener el primer día de ese mes y con esa fecha se va a trabajar. Sumarle un mes a dicha fecha.
  • Encontrar la diferencia en días entre la fecha aumentada un mes y la fecha inicial.
  • El resultado es el número de días del mes de la fecha especificada.
set dateformat dmy -- para usar la fecha en formato dd/mm/yyyy

declare @fecha datetime
set @fecha = '31/03/2016'
-- Obtenemos el primer dia del mes de interés
declare @fecha_dia_uno date = DATEADD(day, -datepart(day, @fecha) +1, @fecha)

-- A la fecha del primero del mes le sumamos un mes
-- y luego especificamos la diferencia en días entre la fecha del primer dia aumentada un mes y la fecha del primer dia
-- el resultado es el número de dias del mes de la fecha inicial
select DATEDIFF(dd, @fecha_dia_uno, DATEADD(mm, 1, @fecha_dia_uno))

sql server
Posted by InfoTacticas Soluciones  |  No comments

5/06/2015 02:23:00 a. m. Share:

0 comentarios:

Get updates in your email box
Complete the form below, and we'll send you the best coupons.

Deliver via FeedBurner
back to top