Friday, June 28, 2013

Formato fecha "dia de mes del Año"

En Visual Basic .NET tenemos la función ToString() para dar formato a la fecha. Y el formato más común es "dd/MM/yyyy" pero y si quiero algo así como "28 de junio del 2013"? 

Como sigue:

Now.Date.ToString("dd \de MMMM \del yyyy", CultureInfo.CreateSpecificCulture("es-ES"))

HaPPy CoDiNg =)

Consulta SQL entre 2 servidores distintos

Vaya, qué tragedia que me pasó hoy. Mas bien que no lo hice en el servidor de producción sino en el de test. 

Hice un update sin where y afectó alrededor de 1500 registros jajaj. Haber grabado mi reacción de ese momento. Lo único que me consolaba era que se trataba de una copia de base de datos. Pero de todas maneras esa copia la estamos utilizando más de uno, no solo yo. Y pedir una nueva copia es re-dificil. Mucho trámite. 

Lo que hice fue hacer un insert de los registros de la base de datos del servidor de producción. Le hice un truncate a la tabla y luego el insert. En realidad, hice el truncate a dos tablas y el insert a estas mismas dos ya que es un maestro-detalle. 

Sin embargo, primero hay que agregar el servidor al que queremos acceder desde nuestro servidor. En este caso, yo desde el servidor de test al servidor de producción. Cómo lo hacemos? 

EXEC sp_addlinkedsrvlogin 'NombreDeTuServidor', 'false', NULL, 'UsuarioConElQueTeConectas', 'ContrseniaDeEseUsuario'

Lo ejecutas y ahora estás apto para realizar tu consulta de esta manera:

insert into parametro (spar_id, spar_dom_id, spar_descripcion, iCreateBy, dtCreatedt, iUpdateBy, dtUpdatedt, iEstadoReg, iConcurrency_id, bActivo, bActivoMovil) 
(select * from BOSCZDB00.Boveda.dbo.parametro)

Nota para que puedas acceder a la tabla de otro servidor va de la siguiente manera:

SERVIDOR.BASE_DE_DATOS.ESQUEMA.TABLA

HaPPy CoDiNg!

Monday, March 4, 2013

Rotar como La interfaz metro de windows8 con CSS3

La interfaz que utiliza Windows 8 es la Modern UI (Metro) que hace uso de efectos 3D. Podemos copiar esos efectos para agregarlos a nuestros diseños web y que se vean chulos utilizando CSS3.

Vamos a rotar 3 cajas. Una rotará desde el centro, la segunda rotará desde el lateral y se desplazará y la tercera rotará desde el lateral.



Código HTML

    
  
        
Rota desde el centro  
Rota desde el lateral y se desplaza  
Rota desde el lateral  
Código CSS
.cobertor {
        display: table;
        background: #112E86;
        text-align: center;
        padding: 15px;
        margin: 20px auto;
        box-shadow: inset 0px 0px 20px black;
        -moz-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
      }
      .cobertor div {
        display: inline-block;
        background: #cccccc;
        padding: 15px;
        margin: 15px;
        /*color: #111111;*/
        text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.6);
        box-shadow: 0px 0px 20px black, inset 0px 1px 0px rgba(255, 255, 255, 0.6), inset 0px 2px 0px rgba(255, 255, 255, 0.1);
        -moz-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
      }
      .cobertor div,
      .cobertor div > div {
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        transition: all 0.5s ease;
        -webkit-transform-style: preserve- 3 d;
        -moz-transform-style: preserve- 3 d;
        transform-style: preserve- 3 d;
        -webkit-transform: perspective(600px);
        -moz-transform: perspective(600px);
        transform: perspective(600px);
      }
      
      .cobertor .rotar span {
        display: inline-block;
      }
      
      .cobertor .rotar div {
        -webkit-transition: all 1s ease;
        -moz-transition: all 1s ease;
        transition: all 1s ease;
        margin: 10px;
        padding-top: 40px;
        height: 80px;
        width: 120px;
                          background: #2E9AFE;
        -webkit-transform: perspective(300px);
        -moz-transform: perspective(300px);
        transform: perspective(300px);
        -webkit-transform-origin: 100% 50%;
        -moz-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
      }
      .cobertor .rotar span:hover .rotar-1 {
        -webkit-transform: perspective(300px) rotateY(-180deg);
        -moz-transform: perspective(300px) rotateY(-180deg);
        transform: perspective(300px) rotateY(-180deg);
      }
      .cobertor .rotar span .rotar-2 {
        -webkit-transform-origin: 50% 50%;
        -moz-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
      }
      .cobertor .rotar span:hover .rotar-2 {
        -webkit-transform: perspective(300px) rotateY(-180deg);
        -moz-transform: perspective(300px) rotateY(-180deg);
        transform: perspective(300px) rotateY(-180deg);
      }
      .cobertor .rotar span:hover .rotar-3 {
        -webkit-transform: perspective(300px) rotateY(-180deg) translateX(100%);
        -moz-transform: perspective(300px) rotateY(-180deg) translateX(100%);
        transform: perspective(300px) rotateY(-180deg) translateX(100%);
      }

Este artículo fue basado en el post de mi querido amigo Pedro Gutierrez. Gracias!

Wednesday, February 20, 2013

Numerar registros De una consulta con particion

Hay una función SQL que se llama ROW_NUMBER(). Nos permite numerar en orden (ascedente o descendente) las filas o registros de un query sql ejecutado.

Por ejemplo, en un mes mis empleados hicieron sus visitas de mantención a nuestros clientes. Quiero numerar sus visitas.

Visita Empleado Cliente
1 Juan Perez  Empresa001
2 Juan Perez Empresa002
3 Juan Perez EmpresaAAA
4 Juan Perez Empresa951
5 Pedro Palotes Empresa357
6 Pedro Palotes Empresa555
7 Tobias Sanchez EmpresaXYZ
8 Julio Cortez EmpresaQWE

Pero resulta que el ROW_NUMBER está numerando las filas sin hacer alguna distinción. Yo quisiera que se numeren de acuerdo a cierto campo en este caso el empleado. Quedería así...

Visita Empleado Cliente
1 Juan Perez Empresa001
2 Juan Perez Empresa002
3 Juan Perez EmpresaAAA
4 Juan Perez Empresa951
1 Pedro Palotes Empresa357
2 Pedro Palotes Empresa555
1 Tobias Sanchez EmpresaXYZ
1 Julio Cortez EmpresaQWE

Muy bien, para ello utilizamos el "partition by" del ROW_NUMBER... así (parte del SELECT):

  row_number() over (partition by v.id_responsable order by v.fecha asc) as Visita




Había sido sencillo, no?
HaPPy CoDiNg

Wednesday, February 6, 2013

Insertar número De página desde La segunda hoja en word

La primer página es nuestra página de presentación o carátula por tanto no queremos que tenga un número de página. Queremos que se inicie a contar las páginas desde la segunda hoja. 

 Dentro de nuestro documento en Microsoft Word nos vamos a la pestaña "INSERTAR", a continuación hacemos clic sobre la opción "Número de página" y elegimos nuestro formato favorito, ya sea si queremos que el número de página se visualice arriba, abajo, izquierda, etc.



Ahora hacemos clic sobre la opción "Número de página" que es la tercer opción de izquierda a derecha.



Luego clic en Formato del número de página y Activamos la opción Iniciar en: y allí colocamos el 0 para que luego empiece a contar desde 1. 


Aceptamos y activamos la casilla "Primera página diferente" que se encuentra ubicada ahí mismo en el submenú "Opciones" del menú principal "Diseño".




Fácil, cierto?