Posts recientes

El contenido de este blog tiene una licencia Creative Commons.
Creative Commons

Desplegables en cascada en Infopath 2010

Aunque con Infopath 2007 ya se podían realizar listas desplegables en cascada aplicando filtros en el campo correspondiente, teníamos la limitación de que no se podía utilizar para los formularios web (como desde una intranet Sharepoint).

Sin embargo, en la nueva versión de Infopath, esto ya está resuelto, ya que se ha trabajado bastante la integración entre Sharepoint 2010 e Infopath 2010.

Para ver cómo podemos hacer un desplegable en cascada, os dejo unos sencillos pasos, con unas capturas de pantalla:

En nuestro entorno, tenemos un típico caso con una lista Paises, y una Provincias, en la que cada una de las provincias pertenece a un país. Así que al control desplegable "Pais", le asignamos el Origen de datos que devuelve los países de la lista, de forma convencional.

Y al campo Provincias, seguimos el mismo procedimiento.

Sólo debemos tener en cuenta que al elegir los campos, en el asistente para la conexión de datos, tendremos que seleccionar también el campo Pais de la lista de Provincias:

Ahora, aplicamos un filtro. Haciendo click en el icono "Seleccionar XPath" de "Entradas":

En esta ventana, añadimos un filtro de datos:

Y seleccionamos mostrar los datos que cumplan las siguientes condiciones:

El Pais de la provincia, debe ser igual al país seleccionado en el anterior desplegable (del origen de datos principal)

En la segunda parte de la igualdad seleccionamos un campo:

 

Aceptamos la creación del filtro:

 

 

Dándole una vuelta de tuerca más al tema de los desplegables en cascada, es posible que los necesitemos insertar en una Tabla extensible.

En este caso, nostros tenemos unos "tipos de actividad", de los que dependen "subtipos de actividad" como entidades débiles en base de datos.

 

En este caso, el desplegable no se puede hacer en cascada simplemente con filtros, así que después de enlazar cada control con su fuente de datos, igual que en el apartado anterior, la carga de los datos en el control de la entidad débil (subtipo) hemos decidido hacerla con código.

Para ello, usamos el evento "Changed" del desplegable de la entidad fuerte (en nuestro caso el tipo de actividad):

 

 

Dentro del código: public void ExperienciaTipusActivitat_Changed (object sender, XmlEventArgs e) tendremos en cuenta de que si queremos que sea compatible con web, no podemos identificar el control que genera el evento (XmlEventArgs e) por su dirección con la propiedad Match.

public void ExperienciaTipusActivitat_Changed(object sender, XmlEventArgs e) { 
	XPathNavigator form = MainDataSource.CreateNavigator(); 
	XPathNavigator selectedSubtipusActivitat = e.Site.SelectSingleNode("../my:ExperienciaSuptipusActivitat", NamespaceManager); 
	if (selectedSubtipusActivitat != null){ 
		string subtipo = selectedSubtipusActivitat.Value; 
		string tipo = e.Site.Value; 
		XPathNavigator navProv = DataSources["ObtenirTipusActivitatsSubtipus"].CreateNavigator(); 
		if (navProv.Select("//d:SharePointListItem_RW[d:TipusActivitat='" + tipo + "' and d:ID='" + subtipo + "']", NamespaceManager).Count == 0)
		{selectedSubtipusActivitat.SetValue(""); }
	} 
}
Autor: Isabel Cabezas
Publicado: 25/01/2011  10:16 | 0  Comentarios | 0  Enlaces a este post

Mensaje "Se ha detectado que "fichero.csv" es un archivo SYLK, pero no se puede cargar...." al abrir con MS Excel un fichero CSV

Este es un error que me ha traído de cabeza un par de horas, y la verdad es que el mensaje de error no da muchas pistas sobre la causa real. Microsoft da la explicación a este mensaje en su página de soporte http://support.microsoft.com/kb/323626/en-us/, pero cuidado, en la traducción automática al español existe una pequeña incorrección que nos puede enredar aún más.
En resumen, y sin necesidad de entrar en explicar lo que es un fichero SYLK y otros detalles, el problema radica en que los dos primeros caracteres que se encuentran en el fichero son exactamente "ID" y es lo que provoca el error.
Solución: Microsfot propone insertar delante el carácter apóstrofo (es decir, 'ID); pero también bastaría con cambiar estos caracteres, por ejemplo, podemos utilizar "Id" o también "id" o "iD". Pues eso, que (alguna vez) os sea útil.
Autor: Emilio Martín
Publicado: 03/12/2010  9:39 | 0  Comentarios | 0  Enlaces a este post

Máquinas virtuales para desarrollo en Office 2010, SharePoint 2010 and Project Server 2010.

Os paso un link desde el que podréis obtener dos máquinas virtuales con:

  • Windows Server 2008 R2 Standard Evaluation Edition x64
  • Microsoft SQL Server 2008 R2 Enterprise Edition with Analysis, Notification, and Reporting Services
  • Microsoft Office Communication Server 2007 R2
  • Microsoft Visual Studio 2010
  • Microsoft SharePoint Server 2010 Enterprise Edition
  • Microsoft Office Web Applications
  • Microsoft FAST Search for SharePoint 2010
  • Microsoft Project Server 2010
  • Microsoft Office Professional Plus 2010
  • Microsoft Visio 2010
  • Microsoft Project 2010

 

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=751fa0d1-356c-4002-9c60-d539896c66ce&displaylang=en

Tened en cuenta que la descarga es bastante pesada y que se trata de una versión de evaluación para sólo 180 días.

Autor: Anna Vilalta Gili
Publicado: 25/11/2010  16:33 | 0  Comentarios | 0  Enlaces a este post

Microsoft lanza el Office 2010 que llegará a España el 9 de julio

Microsoft ha anunciado el lanzamiento de la versión para particulares del Office 2010 en 240 países y 10 idiomas. El pasado mes de mayo salió al mercado la versión para empresas y como se había previsto ya está disponible para los particulares, aunque en España no se tendrá acceso a la compra hasta el próximo 9 de julio, cuando se espera que esté en todas las tiendas.

La última versión de la suite Office 2010 es la que mayor éxito ha alcanzado en toda la historia del producto. Así lo avalan los resultados del número de descargas del software, desde que se lanzó la versión beta en noviembre de 2009. Con casi 10 millones de descargas (sólo en España más de 150.000), Office 2010 ha multiplicado por siete las descargas de la anterior versión del producto (Office 2007).

El Office 2010 vendrá preinstalado en las principales marcas de PCs en un intento de Microsoft por lograr que comprar Office 2010 sea más fácil que nunca para los consumidores. Para activar Office 2010 preinstalado en los nuevos PCs,estarán disponibles tarjetas de clave en las principales cadenas de tiendas. "A finales de este año, el 80% de los PCs en todo el mundo tendrán el Office 2010 preinstalado”, asegura David Negrete, director de la Unidad de Negocio de Productividad y Colaboración de Microsoft Ibérica.

Oportunidad para las empresas

Microsoft ha puesto en marcha a través del su programa de Garantía Tecnológica una interesante oferta para las empresas. Ofrece a los clientes que compren hasta el 30 de septiembre Office 2007 la posibilidad de actualizar su producto, sin coste adicional, a Office 2010, aprovechándose de las ofertas actuales que hay de Office 2007.

Autor: David Acosta Lesmes
Publicado: 28/06/2010  10:18 | 0  Comentarios | 0  Enlaces a este post

Anunciado el lanzamiento de Office 2010 y SharePoint 2010

Por fin Microsoft ha anunciado el lanzamiento de la primera versión no beta de los productos de la línea Office 2010 y SharePoint 2010. La esperada fecha es el 12 de mayo según Stephen Elop, presidente de la Microsoft Business Division.

Vía: http://sharepoint.microsoft.com/businessproductivity/proof/pages/2010-launch-events.aspx#fbid=5QApU9G64wB

Autor: Rubén Claramunt Vicente
Publicado: 19/04/2010  10:39 | 0  Comentarios | 0  Enlaces a este post

Impersonación a la hora de trabajar con Exchange

Para invocar a los Web Services propios de Exchange 2007 es necesario crear un usuario de servicio que cuente con permisos de impersonación sobre las mailbox databases. Para cada entorno se creará el usuario llamado ExchangeWSuser (sin incluir en ningún grupo de seguridad, únicamente en “domain user” ) y desde el servidor de Exchange 2007 se deberán ejecutar estas dos sentencias en PowerShell. Estos comandos será preciso ejecutarse cada vez que se cree una BBDD de Exchange 2007.
1.------------------------------------------------------------------
Get-MailboxDatabase | ForEach-Object {Add-ADPermission -Identity $_.DistinguishedName -User ExchangeWSUser -ExtendedRights ms-Exch-EPI-May-Impersonate}
2.------------------------------------------------------------------
Add-ADPermission -Identity (get-exchangeserver -Identity SERVER_NAME).DistinguishedName -User (Get-User -Identity ExchangeWSUser | select-object).identity -extendedRight ms-Exch-EPI-Impersonation
El documento en el msdn es el que sigue:
http://msdn.microsoft.com/en-us/library/bb204095.aspx
Una vez tenemos el usuario ExchangeWSUser creado, se debe usar al instanciar el ExchangeServiceBinding de la siguiente forma:
ExchangeServiceBinding esb = new ExchangeServiceBinding();private static string usuarioEx;
// summary
// Crear el Objeto de enlace con Exchange 2007
// summary
// param name="UserName" Nombre de Usuario
// param name="Domain Dominio del usuario
// param name="Url" Url De Exchange. Parámetro opcional. Se cogerá la Url por defecto en caso de estar vacío.
private void CreateExchangeServiceBinding(string UserName, string Domain, string Url)
{
usuarioEx = UserName;
esb.ExchangeImpersonation = new ExchangeImpersonationType();
ServicePointManager.ServerCertificateValidationCallback = delegate(Object obj, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
// Replace this line with code to validate server certificate.
return true;
};
esb.ExchangeImpersonation.ConnectingSID = new ConnectingSIDType();
esb.ExchangeImpersonation.ConnectingSID.PrimarySmtpAddress = UserName + "@" + Domain;
if (Url != null && Url != string.Empty)
{
esb.Url = Url;
}
else
{
esb.Url = ConfigurationManager.AppSettings["EWSUrl"].ToString();
}
// Se identifica el enlace del servicio y el usuario Exchange que reealizará la impersonación
esb.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["ExchangeWsUser"].ToString(), ConfigurationManager.AppSettings["ExchangeWsPass"].ToString(), ConfigurationManager.AppSettings["ExchangeWsUserDomain"].ToString());
}
Como se ve se accede al config en algunos casos:
ConfigurationManager.AppSettings["ExchangeWsUser"]
Obteniendo el username, pass y domain al que pertenece el usuario impersonador.
Espero les sirva de ayuda.
Autor: David Acosta Lesmes
Publicado: 27/03/2010  16:38 | 0  Comentarios | 0  Enlaces a este post

Lanzamiento SharePoint 2010

Microsoft ya ha anunciado la fecha de lanzamiento de SharePoint 2010 & Office 2010. Stephen Elop, Presidente de la División de Negocios de Microsoft, hará público el lanzamiento a las 11:00am del 12 de Mayo del 2010. Igualmente comunican que el RTM estará disponible en el mes de Abril.
 
Autor: Emilio Martín
Publicado: 10/03/2010  17:13 | 0  Comentarios | 0  Enlaces a este post

Abrir documentos Office 2010 desde un sitio SharePoint

Desde que estoy trabajando con la versión Beta de Microsoft Office 2010 he tenido problemas para abrir los documentos de Office de mi sitio SharePoint. Cada vez que quería  abrir un documento de Office, me aparecía un mensaje indicándome que era imposible abrir el documento, obligándome a descargarlos en local antes de poder trabajar con ellos.  Hoy en encontrado la solución y os hago un resumen para resolver el problema rápidamente.
    1. Abrir Internet Explorer
    2. Seleccionar [Herramientas] -> [Opciones de Internet]
    3. Seleccionar la pestaña [Conexiones]
    4. Hacer click en [Configuración de LAN]
    5. Marcar el check "Usar un servidor proxy para LAN"
    6. Informar la "Dirección" con el valor 127.0.0.1
    7. Hacer click en [Opciones avanzadas]
    8. En "Excepciones" teclear: *.*
    9. Pulsar [Aceptar], [Aceptar] y otra vez [Aceptar].

Y tema resuelto.

Vía: http://www.benstegink.com/2009/08/28/office-2010-and-sharepoint-2007/

Autor: Emilio Martín
Publicado: 18/02/2010  12:08 | 2  Comentarios | 0  Enlaces a este post