martes, 7 de septiembre de 2010
The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
Os dejo el link a la página de descarga del componente de conexión para datos de Office
http://www.microsoft.com/downloads/details.aspx?FamilyID=7554F536-8C28-4598-9B72-EF94E038C891&displaylang=en
Como dije en el párrafo anterior, una de las soluciones es recompilar en modo 32 bits, pero hay otra que me ha gustado más. El componente de conexión de datos de Office 2010 está disponible en 64 bits, por tanto, no hace falta recompilar nada y de esta forma, el desarrollo ya está preparado para leer archivos de Office 2010. Este componente se puede descargar de la página:
http://www.microsoft.com/downloads/en/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en
Saludos
jueves, 17 de junio de 2010
Comandos STSADM
En muchos casos necesitamos ejecutar comandos STSADM y, a mí por lo menos, en más de una ocasión se me ha olvidado ir al directorio “C:\Archivos de programa\Archivos comunes\Microsoft Shared\web server extensions\12\BIN” antes de ejecutar el comando.
Para evitar esto (que a mí personalmente se me hace algo pesado) os propongo dos soluciones:
1. Crear un script
Una opción para no tener que introducir la ruta a mano es crear un ficheo de texto (.txt), introducir la siguiente línea
cd C:\Archivos de programa\Archivos comunes\Microsoft Shared\web server extensions\12\BIN
y renombrar este fichero a .bat.
Desde mi punto de vista, esto es bastante útil para introducirlo en scripts de despliegue para que los administradores de los servidores sólo tengan que hacer doble-click en un archivo.
2. Variables de entorno
La segunda opción es agregar la ruta (“C:\Archivos de programa\Archivos comunes\Microsoft Shared\web server extensions\12\BIN”) como Variable de Sistema. Esto permitirá que el comando stsadm.exe esté disponible desde cualquier ubicación.
Hacer esto es tan sencillo como:
- Pinchar con el botón derecho del ratón en Mi PC y después con el izquierdo en la opción "Propiedades".
- Seleccionar la pestaña "Opciones avanzadas" y pulsar en el botón "Variables de entorno".
- En la tabla "Variables del sistema" seleccionar la variable PATH y pulsar en el botón modificar.
- En el formulario que ha aparecido, pinchar en el segundo cuadro de texto "Valor de la variable", ir hasta el final y agregar la siguiente línea:
;C:\Archivos de programa\Archivos comunes\Microsoft Shared\web server extensions\12\BIN
Esta opción viene muy bien para las máquinas virtuales en las que desarrollamos y hacemos pruebas.
jueves, 10 de junio de 2010
Obtener valores web.config
<appSettings>
<add key="Clave" value="Valor"/>
</appSettings>
Cuando necesitemos recuperar el valor introducido para esa clave sólo tendremos que poner la siguiente línea de código:
string valor = System.Configuration.ConfigurationManager.AppSettings[“Clave”];
lunes, 25 de enero de 2010
Delay Workflow Sharepoint - Hotfix
System.Threading.Thread.Sleep(SleepTime);
Pero esto tampoco funciona. El flujo nunca sale de esa actividad, es como si muriera cuando termina el bucle... Ante esta situación me puse a buscar en Google y lo pimero que encontré fue el siguiente Hotfix:
http://support.microsoft.com/default.aspx?scid=kb;en-us;932394
Como había actualizaciones posteriores no se podía instalar pero, tras instalar el SP2 del framework 3.0 (que en teoría incluye este hotfix) siguió sin funcionar así que volví a Google pero lo que he encontrado esta vez no es muy alentador:
http://social.msdn.microsoft.com/Forums/en/sharepointworkflow/thread/2390dcee-d2f3-4a55-a024-6ad14913568e
¿Realmente Microsoft no ha sido capaz de sacar una solución para este problema en 3 años?
jueves, 19 de noviembre de 2009
Macro actualizar campos Ms Word
El otro día me comentó un cliente que estos campos no se actualizaban automáticamente y muchos usuarios guardaban el documento sin actualizar los campos, lo cual era un problema para ellos. La solución fue práctiacamente instantánea; una macro que actualice dichos campos al abrir el documento de forma automática:
Dim rango As Range
Dim campo As Field
For Each rango In ActiveDocument.StoryRanges
For Each campo In rango.Fields
campo.Update
Next campo
Next rango
Espero que os resulte útil.
Un saludo.
Subir archivos grandes a Sharepoint
Para poder subir arhivos grandes (en mi caso los más grande tiene unos 500 mb) hay que realizar otros dos cambios:
- Incrementar el tiempo de espera de la aplicación en el IIS (en la pestaña sitio web, apartado conexiones).
- Modificar en el web.config, dentro del apartado System.Web, los atributos executionTimeout y maxRequestLength de la etiqueta httpRuntime:
domingo, 25 de octubre de 2009
SPQuery no filtra, devuelve todos los elementos de la lista
Para construir las querys hay un programa muy útil de U2U llamado Caml Query Builder, pero hay que tener cuidado, ya que este programa devuelve la query incluyendo la etiqueta <query></query> y si queremos que la consulta funcione debemos quitarla, es decir, debería quedar así:
SPQuery query = new SPQuery();
query.Query = ""; Item1
SPListItemCollection collItems = list.GetItems(query);
Un saludo.