2010/07/23

Error SQL Server linked Server

El proveedor OLE DB "Microsoft.Jet.OLEDB.4.0" para el servidor vinculado "x" devolvió el mensaje "La operación debe usar una consulta actualizable."

Cuando obtenemos este error al querer realizar sobre el linked server una operación de actualizacion debemos verificar dos cosas:

1) Los permisos del login remoto, es decir, en este caso del Access al cual queremos acceder; por default el login es 'admin' y password vacio.

2) Los permisos de escritura del archivo fisico, es decir el .mdb, en el filesystem

2010/07/19

Temas y ASP.NET MVC (Themes and ASP.NET MVC)

Si el tema por default que nos viene en nuestro proyecto MVC no nos gusta podemos cambiarlo por alguno de los temas disponibles en el sitio de oficial de ASP.NET

http://www.asp.net/mvc/gallery/


UPDATE:
Nuevo sitio con templates, gracias a la gente de MVCContrib
http://mvccontribgallery.codeplex.com/

Todos los templates completos los podemos descargar de el tab "Source":
http://mvccontribgallery.codeplex.com/SourceControl/list/changesets

2010/07/11

Validación de fechas con expresiones regulares (Regular Expression)

Para validar fechas en un textbox a traves de expresiones regulares podemos hacer uso de las siguientes simples expresiones:

Formato (MM/dd/yyyy):
([1-9]|1[012])[- /.]([1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d

Formato (dd/MM/yyyy):
(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d

Por supuesto estas validaciones son muy básicas, y no contempla la cantidad de días del mes así como tampoco el manejo de años bisiestos, por ello, para validaciones mas estrictas podemos usar las siguientes expresiones regulares bastante mas complejas:

Formato (MM/dd/yyyy):
^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:0?[1-9]|1[0-2])(\/|-)(?:0?[1-9]|1\d|2[0-8]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(0?2(\/|-)29)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$

Formato (dd/MM/yyyy):
^(?:(?:0?[1-9]|1\d|2[0-8])(\/|-)(?:0?[1-9]|1[0-2]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:31(\/|-)(?:0?[13578]|1[02]))|(?:(?:29|30)(\/|-)(?:0?[1,3-9]|1[0-2])))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(29(\/|-)0?2)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$

Considerar en caso de usar javascript para la validación el costo computacional en el cliente de una expresión y otra.

2010/07/10

Reset al Visual Studio

Reset Visual Studio

Para resetiar las configuraciones del Visual Studio (sin re-instalar) debemos utilizar los siguientes comandos, desde la linea de comandos.

Reset Settings


  1. El comando "devenv /resetsettings" resetea a la configuración original "de fabrica" de Visual Studio.
  2. El comando "devenv /setup" forza al Visual Studio a unificar la metadata de los paquetes de recursos.
  3. El comando "devenv /ResetSkipPkgs" resetea las opciones de los paquetes adicionales de Visual Studio.

Estos comando son especialmente útiles cuando el Visual Studio se cierra al querer hacer algo sin ninguna razón/error aparente.

Error de instalación SQL Server Management Studio Express

Para un sistema Windows 7 x64 se instalo Visual Studio 2010, el cual viene con la opción de instalar SQL Server 2008 Express.

Hasta ese momento tenemos solo la parte de servidor del SQL Server 2008 Express, ahora bien, si queremos tener una interfaz para interactuar con ese servidor, tenemos dos opciones, usar el Visual Studio 2010 o sino bajar el SQL Server Management Studio Express, esto ultimo se puede hacer directamente a través del Microsoft Web Platformhttp://www.microsoft.com/web/

El problema se presentara al querer instalar el  SQL Server Management Studio Express, con el siguiente error:


"SQL server setup media does not support the language of the OS or does not have ENU localized files."

En un principio el error parecía tratarse de un problema con el idioma.
Por eso, intente bajar la versión en español del mismo a través del siguiente enlace:
http://www.microsoft.com/downloads/details.aspx?displaylang=es&FamilyID=08e52ac2-1d62-45f6-9a4a-4b76a8564a2b

Fue ahí cuando salto la verdadera causa del error, la cual era que el SQL Server 2008 Express, que venia con el Visual Studio 2010 ya tenia una actualización.
Entonces, la verdadera solución para mi fue actualizar el SQL Server 2008 Express a SQL Server 2008 Express R2 (algo así como el service pack 2 actualizado para 2010 del SQL Server 2008 Express)


En esta nueva versión viene integrado el SQL Server 2008 Express R2, con su correspondiente SQL Server Management Studio Express, adicionalmente si bajamos la versión FULL también tendremos soporte para Reporting ServicesFull-Text Search 


http://www.microsoft.com/express/Database/InstallOptions.aspx


Finalmente, con este nuevo instalador, podemos hacer una instalación nueva o actualizar la versión que viene con Visual Studio 2010 si ya la hemos instalado.