Bienvenidos

Recuerda que tus comentarios son importantes y recuerda agradecer si te fue útil algun artículo publicado aquí.

L1f3 15 a D@nc3 Flo0r

martes, 29 de julio de 2008

Presentar el número de fila en un DataGridView (winform) y un GridView


Para una aplicacion Winform utilizamos los siguientes pasos

1) Ir a la configuracion de columnas del DataGrid
2) Agregar una columna (Unbound Column) y ponerla de primera
3) Asignar un nombre
4) Propiedad: ReadOnly = True
4) Asignar la propiedad VirtualMode del DataGrid con valor True
5) En el evento CellValueNeeded usar el siguiente código:

V.B.

Private Sub DataGridView1_CellValueNeeded(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellValueEventArgs) Handles DataGridView1.CellValueNeeded

If e.RowIndex >= 0 AndAlso e.ColumnIndex = Me.
columna.Index Then
e.Value = e.RowIndex + 1

End If
End Sub

C#
private
void dataGridView1_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)

{

if (e.RowIndex >= 0 && e.ColumnIndex == columna.Index)

{
e.Value = e.RowIndex + 1;
}
}

====================================================================

Para hacerlo en una aplicación Web

1) Ir a la configuración de columnas del GridView
2) Agregar una columna tipo TemplateField y asignar un Header
3) En el html agregar el siguiente código


miércoles, 9 de julio de 2008

Obtener solo la hora de un campo datetime


Si queremos obtener solamente la parte de la hora en un campo datetime en sql hacemos:

SELECT CONVERT(VARCHAR,getdate(),108)

Recuerda.. que si es de un campo en especifico solo cambias el [getdate()] por el nombre del [campo]

Aquí una tabla con las diferentes formatos de datetime en sql server
http://www.mssqltips.com/tip.asp?tip=1145

domingo, 1 de junio de 2008

Encriptar secciones del Web.config en asp.net 2.0

Muchas veces tenemos en nuestro web config nuestras credenciales para la conexión a la Base de Datos

Esto es posible encriptarlo de manera que ningún intruso pueda ver esta información:

Hay dos maneras de hacerlo:

La primera es utilizando el aspnet_regiis.exe

Utilizando esta sentencia

aspnet_regiis -pef [sección del web.config] [ruta del web.config]

Ej.: aspnet_regiis –pef ConnectionStrings c:\aplicacion

Si deseamos desencriptar simplemente cambiamos pef por pdf

Ej.: aspnet_regiis –pdf ConnectionStrings c:\aplicacion

Pero si en nuestro servidor no podemos ejecutar comandos por ejemplo si nuestra página esta hosteada en un servidor remoto, podemos hacer esto mismo por programación con la siguiente secuencia

Configuration config = ConfigurationManager.OpenExeConfiguration(Request.ApplicationPath);

ConfigurationSection section = config.Sections["connectionStrings"];

section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");

config.Save();

lunes, 19 de mayo de 2008

Cannot resolve the collation conflict

Este es un error muy frecuente que se nos presenta cuando queremos trabajar con dos Bases de Datos que tienen COLLATION diferentes.

el error que nos da el query es: Cannot resolve the collation conflict between "SQL_Latin1_General_CP1250_CI_AS" and "Latin1_General_CI_AS" in the equal to operation.

Esto se resuelve con la clausula COLLATE.

Ej.:
SELECT <>
FROM TableA A
JOIN TableB B ON A.col=B.col
COLLATE SQL_Latin1_General_CP1250_CI_AS

sábado, 10 de mayo de 2008

Shrinking a log file to a specified target size

USE [DB_NAME];

GO

-- Truncate the log by changing the database recovery model to SIMPLE.

ALTER
DATABASE [DB_NAME]

SET RECOVERY SIMPLE;

GO

-- Shrink the truncated log file to 1 MB.

DBCC SHRINKFILE ([DATABASE LOG LOGICAL NAME], [TAMANO FINAL EN MB]);

GO

-- Reset the database recovery model.

ALTER
DATABASE [DB_NAME]

SET RECOVERY FULL;

GO

CLAUSULA: CASE WHEN

CLAUSULA: CASE WHEN

Es parecida al CASE que utilizamos en programación, con la ventaja de que el mismo puede ser utilizado en un campo de la consulta.

Caso de uso: Imagine que tiene un campo dentro de la tabla en el que usted quiere desplegar un valor en específico en el caso en el que ese campo tenga valor (es decir no desea desplegar el valor del campo sino un valor especificado por usted). En ese caso utilizamos el CASE WHEN el campo en cuestión tenga valor le decimos que despliegue la letra "P" de lo contrario que despliegue un espacio.

Ej.:

SELECT [campo1], [campo2], CASE WHEN [campo3] IS NOT NULL THEN 'P' ELSE ' ' END
FROM [tabla]

miércoles, 16 de abril de 2008

AutoRefresh una pagina web

Para autorefrescar una pagina web tenemos dos maneras

La primera es simple HTML

<META HTTP-EQUIV="Refresh" CONTENT="10;URL=http://www.dotnetspider.com";>

Esto se pone en el head de la pagina y se especifica el tiempo en segundos

La segunda por .NET

Response.AppendHeader("Refresh", "10; URL=http://www.dotnetspider.com")


 

Cheers :D