archivos mensuales: Febrero 2011

Cambiar grupos de columnas de sitio en SharePoint Designer 2010

He creado una serie de columnas de sitio utilizando SharePoint Designer 2010 esta mañana y se dio cuenta de que les había dado todo el grupo equivocado.  Fue vergonzosamente difícil de averiguar.  No sabía dónde a click…

image

Seguí queriendo haga doble clic en la misma fila o haga clic en el botón Configuración de la columna en la cinta de opciones.

Como resulta, la respuesta correcta (o al menos una respuesta correcta) es solo clic en el propio grupo.  Espere un momento y luego le permitirá introducir un valor, como se muestra:

image

Bastante fácil una vez que sepa qué hacer, pero me eludió un poco.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Editar manualmente el archivo XOML SPD para limpiar Variables

En este post aquí ("Volviendo respuestas de la actividad de proceso de aprobación de inicio"), He mencionado que accidentalmente puede agregar toda una serie de variables de flujo de trabajo para el flujo de trabajo de SharePoint Designer.  Las cosas pueden volverse rápidamente confuso y difícil de leer.  Específicamente, Si se agrega la acción de "Iniciar la actividad del proceso de aprobación" para el flujo de trabajo, eliminar y agregar nuevo, terminas con todas las variables de flujo de trabajo de que la actividad dos veces. 

Es un dolor real para recorrer y eliminar todos aquellos manualmente, así aunque sería tratar de eliminarlos directamente desde el archivo XOML.  Esto resultó para ser bastante fácil de hacer. 

Primero, necesita localizar el archivo XOML.  Escribí sobre ese tema aquí: http://www.mstechblogs.com/paul/how-to-find-and-edit-spd-2010-workflow-xoml-files.  Una vez encontrado, abrir el archivo XOML y busque una variable que desee quitar.  En este caso, He añadido la actividad de "Iniciar el proceso de aprobación" para mi flujo de trabajo dos veces.  Quiero quitar una variable de flujo de trabajo denominada "isItemApproved", puesto que ya no sirve y hay una duplicado variable denominada "isItemApproved1". 

Simplemente hacer una búsqueda de texto de la variable.  Mi pantalla este aspecto:

image 

Si desea buscar en el archivo XOML, verá que "IsItemApproved1" se utiliza en muchos lugares distintos, mientras que el original "IsItemApproved" es simplemente define una vez y nunca se utiliza.

Eliminar y, a continuación, guarde el archivo.

La parte difícil sólo es que tuve que realmente cierre SPD por completo y vuelva a abrirla antes de SPD reconoció que el campo eliminado.

Claro, eliminación de campos no es lo único que puede hacer con el XOML y puede blog sobre otros temas como este en el futuro.

Desea ser muy cuidadosos con lo que hacemos aquí y tener copias de seguridad de su trabajo.  Puede hacer que un aparentemente menor / sutil cambio aquí trashes el flujo de trabajo en lo que respecta a SPD se refiere y podría perder a horas de esfuerzo mientras que reconstruirlo.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Cómo buscar y editar SPD 2010 Archivos XOML de flujo de trabajo

Estaba investigando la forma fácil para sacar un montón de variables de flujo de trabajo sin tener que pasar mi tarde en una sesión de tortura de clic SPD completo soplada.  Mi pensamiento fue editar directamente la XOML, que es flujos de trabajo declarativos el XML archivo subyacente del SPD.  Se trata de cómo pareció.

Primero, vaya a la opción todos los archivos bajo sitio objetos de navegación.  Necesita los permisos adecuados para ver esto, así que si falta para usted, apelar a la persona correcta admin para que le conceda la priv.  Esto es lo que parece:

image

 

Todos los archivos de muestra una lista de... todos los archivos:

image

Seleccione la carpeta de los flujos de trabajo y verá una lista de carpetas para cada flujo de trabajo:

image

Haga clic en la carpeta correcta y  ver una lista de todas las golosinas interesantes que componen un flujo de trabajo declarativo de SPD.  Haga clic con el botón derecho en el archivo .xoml y seleccione "abrir con:> SharePoint Designer (Abiertos como XML)"para editar directamente la XOML:

image

Puede que desee hacer una copia de seguridad manual antes de violín con las cosas.  Un regular copiar/pegar del archivo directamente en el SPD es probablemente suficiente, o puede copiar pegar todo el texto XML y guárdelo en el escritorio o cualquiera que sea su costumbre en estos casos.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Volviendo a las respuestas de la actividad de proceso de aprobación de inicio

Has jugando con actividad de "Iniciar el proceso de aprobación" nueva fantasía del flujo de trabajo de SharePoint Designer y rápidamente fue obstaculizado porque enseguida no podía responder a la pregunta, "se aprobó o no?”. 

La respuesta corta es que es muy fácil obtener la respuesta.  Al agregar esta actividad a su flujo de trabajo principal, SPD agrega un variables de montón a las Variables de flujo de trabajo y el origen de datos de parámetros, como puede ver aquí:

SNAGHTML2350fe72

También observará si agrega más de uno de estos, SPD anexa un "1" y así sucesivamente para todas las variables. 

Descubrí cuando he eliminado la primera actividad de "Iniciar el proceso de aprobación", el primer conjunto de variables permanecieron del flujo de trabajo asociado (Lamentablemente).  Por lo tanto, Tenga cuidado de cómo utilizar esto porque de lo contrario, acabará con  una lista muy congestionada de variables de flujo de trabajo.

Doy crédito de Microsoft para el seguimiento de la Convención de nomenclatura "es" para una variable booleana.  Este Convenio hace bastante claro qué tipo de datos se supone que hay.

En la investigación, Encontré este artículo útil: http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx.  Realmente no aborde esta cuestión específica, pero tiene buena información sobre el tema, por lo que sería ir allí si desea obtener más información sobre esta actividad específica y sus hermanos.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

SharePoint Designer 2010 Función MOD

Estoy trabajando en algunos registro donde los empleados pueden solicitar vacaciones, tiempo enfermo, etc.. Una regla de validación requiere que siempre debe pedir tiempo fuera en 4 intervalos de horas.  Esto es fácil de utilizar: un módulo de función.  Módulo función indica el resto en la División.  Si no hay ningún resto, módulo es cero, de lo contrario, es lo que queda.  Por ejemplo, 8 mod 4 = 0 (8 / 4 = 2 con ninguna fracción).  Por otro lado, 8 mod 5 es 3.

Necesitaba hacer esto una vez con SPD 2007 una vez y realmente acabé utilizando un formulario de InfoPath para resolver, por lo que se maneja en el front-end al tiempo.  En el caso actual, puede ser un formulario de InfoPath en la imagen, pero eso no es claro aún.  Por lo tanto, Estuve trabajando una técnica para garantizar que las solicitudes son siempre en 4 incrementos de hora.  Iba a hacer los cálculos, Guardar en una cadena y, a continuación, algunos subcadena cosas. 

Tire hacia arriba de SPD 2010 y para mi sorpresa (y un poco vergüenza) existe un módulo función ya:

image

Me sorprende gratamente una vez más que algo que necesitaba existe ya fuera de la caja.  Parece como una función rara para Microsoft incluir en la mezcla.  Tiene una especie de "Esto es fácil, así que vamos a tirar "sentir a ella.  Me solidarizo con los, como lo hago yo todo el tiempo.  Este proyecto de CodePlex tiene un montón de funciones poco que derivan del principio de ItsEasy.  Al mismo tiempo, Microsoft sigue apoyando la evidencia el efecto "95% de la forma" con el producto.  Implementan la función Mod, pero no la función round, por ejemplo.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Proyecto de CodePlex – SP2010 Explorer

Como parte de un esfuerzo continuo para conocer los detalles técnicos de niveles bajos de SharePoint 2010, He creado un "Explorador de SharePoint"tipo de herramienta.  La idea no es nueva.  He utilizado este proyecto más de una vez: http://sharepointexplorer.codeplex.com/.  Mi idea es crear una versión de SharePoint que utiliza conecta elementos web para mostrar todos los detalles de bajo nivel que puede ofrecer el modelo de objetos. 

Esta entrada de blog sirve como ambos un anuncio del proyecto así como un llamado para voluntarios.  Si estás interesado en trabajar en este proyecto, Avísame por correo electrónico (Galvin.Paul@gmail.com) y trabajaremos.

Aquí está el proyecto: http://sp2010explorer.codeplex.com/

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

SharePoint Designer 2007 Proyecto de CodePlex extensiones de flujo de trabajo

Estoy poniendo juntos mi segundo proyecto de CodePlex (detalles se anunciarán el miércoles de esta semana, más o menos) y tuve un vistazo a mi primer proyecto, "Extensiones de SharePoint Designer flujo de trabajo". Estaba sorprendido y avergonzado al ver que se ha descargado sobre 4,800 veces:

image

Olvidé básicamente sobre este proyecto en los últimos 12 meses. Me da vergüenza porque esencialmente he abandonado lo.

Voy a tener otra mirada y recordarme de lo que es todo acerca de.

Si alguien está interesado en trabajar en esto, me avisas y vamos a ver sobre colaborar en ella. 4,800 descargas no es una cantidad gigante, pero es más que nunca comprendí y probablemente valga algún esfuerzo cogerlo y llevarlo hacia adelante.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Exportación SPWeb Me dice "InvalidData” Pero los datos no son válidos

Estoy en el proceso de escribir un artículo para la gente buena de www.sharepointbriefing.com y se trata de implementar una lista de una granja de desarrollo a una granja de producción.  Soy todavía acostumbrado a usar stsadm y necesito romper ese hábito, así despidió a hasta los SharePoint 2010 Shell de administración y jugó alrededor usando SPWeb de exportación para hacer backup de mi lista.  ¿Qué cosa extrañamente difícil que resultó ser!

Yo seguí recibiendo este error:

image

Ese error, "InvalidData: (Microsoft.Share…CmdletExportweb"") me estaba matando.  Estoy avergonzado en cuánto luchado con esto.

He tenido anteriormente ejecutar en una pared con PowerShell y stsadm usado para obtener alrededor de ella.  Esta vez lo intenté y obtuve buenos resultados.

Pasé mucho tiempo toquetear alrededor de la opción de –Identity y luego finalmente con –ItemURL.  Resulta que la opción de ItemURL requiere una ruta de acceso completa de la biblioteca de lista le  desea exportar Sin el http://bit de servidor.  Por lo tanto, a pesar de que el argumento de identidad está apuntando a un subsitio, el ItemURL es no relativa a la identificación, sino relativa a la colección de sitios.

Hubiera sido bueno para el cmdlet para decirme lo que era mínimamente válido (la identidad en este caso) y lo que no es válido (ItemUrl).  Estos pequeños toques ayudan a abrazar el producto.  No un gran ding contra SharePoint, but a little one at least 🙂

Ojalá este post salvará alguien un poco de dolor en el futuro.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Trabajo con TreeNodeBinding en ASP.Control Treeview NET

He estado trabajando en lo que espero que sea un poco-liberado CodePlex proyecto que proporciona un agradable poco integrado de elementos web hablando entre sí a través de conexiones de proveedor y consumidor con el fin de explorar un sitio de SharePoint en las portadas.  (Esto, sin duda, se ha hecho antes, pero este es un proyecto de aprendizaje tanto como cualquier otra cosa).  Este pretende ser un reemplazo para la vista del explorador de windows SharePoint 2010 bibliotecas de documentos.

El código tiene la recursiva habitual llamar abajo el SPWeb y SPLists inicien un determinado punto.  El objeto que tiene atravesar acumula una cadena XML que este aspecto:

<colecciónsitio url =’http://demo2010a:9090′>
 
<Web
     Título = 'Hola mundo Sandbox' 
     Plantilla =' un sitio para organizar rápidamente los equipos, autor, y compartir información, BLA BLA BLA '>

     <lista
        Título ='BCC_Health_Services_FAQs’
        Plantilla =' listaPersonalizada’
       
ListId =’http://demo2010a:9090/helloworldsandbox[DELIM]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</lista>

     <lista
        Título = 'BCC_Notifications' 
        Plantilla = 'ListaPersonalizada' 
        ListId =’
http://demo2010a:9090/helloworldsandbox[DELIM]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
     </lista>

  </Web>

</colecciónsitio>

Espero que limpiar que XML antes de todo está dicho y hecho.

Quiero finalmente obtener esa información arriba y en un control Treeview.  No es exactamente la tierra cosas demoledor.

El reto que tuvo aquí fue conectar un control de origen de datos XML en lugar de construir manualmente mi treenodes medida que navega en el árbol de la vista de árbol.  Hice esto en parte porque estoy deliberadamente haciendo las cosas más difíciles en mí (Esto es después de todo un proyecto de aprendizaje) y en parte porque tengo esta noción vaga que la construcción de nodos de árbol, que recorrer el árbol no es una buena idea a largo plazo.

El problema con este enfoque es que el control Treeview no sabe acerca de los atributos en los nodos interesantes como "lista" o "web" buenos por lo que muestra esta salida predeterminada:

 

image

No es útil.  Esto es donde ayuda la clase TreeNodeBinding.  Puedo utilizar esto para indicar que el control Treeview de cómo debe interpretar el código XML.  Aquí hay un ejemplo:

TNB = TreeNodeBinding nuevo();
TNB.DataMember = "lista"; // Esta es la etiqueta en el archivo xml para un sitio.
TNB.TargetField = "listid";
TNB.ValueField = "title";
TNB.ToolTipField = "Plantilla";

Este enlace dice treeview que cuando encuentre un <lista> nodo en el archivo XML, aplicar los enlaces de TargetField, ValueField y ToolTipField.  En mayo app, Estos mapas como sigue:

  • TargetField: Cuando alguien hace clic en un valor de nodo, Esto es lo que obtendrá para SelectedNode.Value.  Esto no es debe ser confundido con…
  • ValueField: Esto es lo que desea el Treeview para mostrar al usuario.
  • ToolTipField: El valor de los datos XML que desea como una información sobre herramientas.

Añadir que TreeNodebinding a DataBindings la vista de árbol y obtener salida como este:

 

image

A tener más información sobre todo esto como continuar en el proyecto y finalmente ponerlo en Codeplex.

</final>

Suscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin