Vincular Vistas de Sharepoint desde Access 200730/12/2008Dejar un comentario Si desde Access 2007, en vez de vincular una Lista de Sharepoint, vinculamos una Vista de ésta, obenemos claras ventajas, la más evidente limitar el tráfico de datos por la red a los que realmente queremos, pero también otras bastante interesantes, como restringir los datos a los del usuario registrado en el sitio Sharepoint. Sin embargo, los asistente de Access sólo facilitan vincular Listas, debiendo recurrir al método TransferSharePointList para poder conseguirlo. La misma ayuda de Access sobre TransferSharePointList nos informa de cómo obtener algunos de los paramátros necesarios:
(Me he permitido recortar la URL que la ayuda usa de ejemplo para que me quepa mejor y porque, en el mismo ejemplo de la ayuda, ya la URL está truncada al final) Le faltan unas imágenes que ayuden un poco ¿no? Pues se las ponemos: Seguir las instrucciones “a mano alzada”, cortando y pegando con el ratón y editando una cadena tan larga, se hace aguantando la respiración y, al final, casi seguro que sale mal (a mí nunca me ha salido bien). Pero para seguir instrucciones al pie de la letra está la programación y en Access contamos con VBA, así que me he hecho el siguiente procedimiento que sólo necesita que copiemos la URL y se la pasemos como cadena de texto: '--------------------------------------------------------------------------------------- ' Procedure : VincularVistaWSS ' DateTime : 30/12/08 20:36 ' Author : Chea ' Purpose : Vincula una Vista de Sharepoint a partir de una URL ' Para vincular una Vista de Sharepoint, debemos, en primer lugar, ir al ' sitio de Sharepoint, a la página de configuración de dicha vista y copiar ' la URL completa: Esa URL, delimitada por comillas, es el argumento que ' debemos pasar a esta función en el parámetro CadenaURL '--------------------------------------------------------------------------------------- ' Public Sub VincularVistaWSS(CadenaURL As String, Optional NombreTabla) Dim GUIDList As String Dim GUIDView As String Dim strSite As String Dim v As Variant, V2 As Variant, V3 As Variant, i As Integer Dim stTmp As String ' "Traducimos" caracteres de la cadena URL CadenaURL = Replace(CadenaURL, "%7b", "{") CadenaURL = Replace(CadenaURL, "%7d", "}") CadenaURL = Replace(CadenaURL, "%252E", ".") CadenaURL = Replace(CadenaURL, "%252F", "/") CadenaURL = Replace(CadenaURL, "%253A", ":") CadenaURL = Replace(CadenaURL, "%2D", "-") ' Obtenemos la segund parte de la URL, desde el aspx? v = Split(CadenaURL, "aspx?") stTmp = v(1) 'Obtenemos las distintas secciones, que van separadas por "&" v = Split(stTmp, "&") For i = 0 To UBound(v) V2 = Split(v(i), "=") If Trim(V2(0)) = "List" Then GUIDList = V2(1) End If If Trim(V2(0)) = "View" Then GUIDView = V2(1) End If If Trim(V2(0)) = "Source" Then strSite = V2(1) V3 = Split(strSite, "/Lists/") strSite = V3(0) End If Next i ' Vinculamos la vista DoCmd.TransferSharePointList acLinkSharePointList, strSite, GUIDList, GUIDView, NombreTabla |
Trucos > Access y Sharepoint 2007 >