archivos mensuales: Octubre 2007

SharePoint Designer — Actividad personalizada para ejecutar funciones definidas por el usuario C#

ACTUALIZACIÓN: Esto ha sido lanzado a CodePlex aquí: http://www.codeplex.com/spdwfextensions

ACTUALIZACIÓN: Consulte aquí para notas de la versión más recientes: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

ACTUALIZACIÓN: Consulte aquí para mis reflexiones sobre la comercialización de este proyecto: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Este proyecto proporciona una actividad personalizada en SharePoint Designer. Utilizar esta actividad personalizada para invocar (envío) cualquier función de C# que incorporado en el conjunto vinculado.

Finales de octubre, 2007, Esto es sólo una versión inicial del proyecto. Voy a ampliar con una serie de funciones adicionales, incluida la subcadena, índice, reemplazar, invocación de servicios web y cualquier cosa que parezca útil o interesante. También planeo publicar esto en codeplex una vez tengo mi acto juntos en ese frente. Esto también será desplegable como una solución en algún momento.

Si tienes cualquier comentario, preguntas o sugerencias, por favor dejar en los comentarios o enviarme un correo electrónico.

Descargo de responsabilidad:

No hacer absolutamente ninguna reclamación en cuanto a la idoneidad de éste para cualquier propósito. Usar bajo su propio riesgo.

Pasos de instalación (que deben seguirse para cada WFE en la granja):

1. Descargar el .zip y extraer.

2. Instalar el .dll en la GAC. Generalmente abro c:\WindowsAssembly utilizando el explorador de windows y copia TI allí.

3. Modificar el archivo web.config para agregar el ensamblado a los controles de seguridad:

<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>

<authorizedType Asamblea = "SpdGenericInterface, Versión = 1.0.0.0, Cultura = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Autorizado = "True" />

4. Copia "SpdGenericInterface.actions" a c:\Programa de programaArchivos comunesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Tenga en cuenta que la ubicación anterior es específica para las instalaciones en inglés.

5. Cierre de SharePoint Designer (Si ya está abierto).

6. iisreset

7. Abrir SPD y crear un nuevo flujo de trabajo.

Si todo va bien, Usted debe ser recompensado con una nueva categoría de acción:

imagen

Notas:

Ver aquí (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) para una visión increíble del proceso de creación, instalación y configuración de una solución como ésta.

El .zip está diseñado para extraer directamente a usted c:\ en coche. Si haces esto, puede abrir el proyecto y todas las rutas serán coherentes.

Para utilizar esto en visual studio, probablemente deba instalar "Extensiones de Windows WF".

La carga inicial contiene sólo una "función de distribuidor", "ToLower()". Para agregar más funcionalidad, Agregue el método Execute como se muestra:

 protegido reemplazar ActivityExecutionStatus
          Ejecutar(ActivityExecutionContext executionContext)
        {

            cadena functionToDispatch;
            functionToDispatch = Esto.DispatchFunction.ToLower();

            conmutador (functionToDispatch)
            {
                caso "tolower()":
                    {
                        Esto.OutResult1 = Esto.InParam1.ToLower();
                        salto;
                    }

                predeterminado:
                    {
                        Esto.OutResult1 = "Función desconocida: [" + Esto.DispatchFunction + "].";
                        salto;
                    }
            }

            retorno ActivityExecutionStatus.Cerrado;
        } // ActivityExecutionStatus

    }

A continuación, volver a construir el proyecto y copiar el ensamblado a la GAC. Espero que se requeriría un iisreset.

Acción personalizada de flujo de trabajo de SPD – Obtenga el <WorkflowInfo> derecho de la etiqueta para evitar la frustración

Parte del proceso para crear una acción personalizada para SharePoint Designer implica crear un .actions"" archivo.

He encontrado e intentó utilizar una plantilla de ejemplo que comienza como:

<?XML Versión="1.0" codificación="UTF-8" ?>
<
WorkflowInfo xmlns="http://schemas.Microsoft.com/SharePoint/">
<
Acciones Secuencial="a continuación" Paralelo="y">

Sin embargo, ese atributo xmlns evita que mi entorno de trabajo. Mis acciones no se muestran en SPD.

La solución consiste en eliminar el atributo xmlns, hacer un iisreset y cierre/re-libre SPD.

Rápida y sencilla: Configurar MOSS para buscar una biblioteca de documentos específica

Ver actualización (ME) por debajo de (11/24/07) en Cómo configurar Microsoft Office SharePoint Server 2007 a las carpetas de red de arrastre para la búsqueda e índice

Objetivo: Quiero ejecutar una búsqueda restringida a una biblioteca de documentos específica. En este caso, la biblioteca de documentos contiene documentos de entrenamiento.

Pasos:

1. Anote la dirección URL de la biblioteca de documentos.

2. Crear un ámbito de aplicación:

Ir a la administración central.

Acceso a la SSP.

Vaya a "Configuración de búsqueda".

Desplácese hasta la sección alcance y seleccione "Ver alcances".

Crear un ámbito nuevo. Dar un nombre y una descripción útil.

3. Definir reglas de rastreo de alcance:

Agregar una regla que define la biblioteca de documentos para este ámbito.

Seleccione "dirección web" para "Tipo de regla de alcance".

Introduzca el nombre de la carpeta (ver #1 por encima de).

Acepte el valor predeterminado de "Include".

Esperar a que el ámbito actualizar (o iniciarlo manualmente).

4. Activar el visor en una colección de sitios.

Ir a la colección de sitios donde desea utilizar este ámbito.

Añadir tu nuevo alcance a la pantalla apropiada o más grupos.

5. Búsqueda!

En este punto, listo. Suponiendo que el alcance se define correctamente, estará disponible en los ámbitos gota downs para búsquedas simples y avanzadas y cuando usted busca usando ese alcance, sólo obtendrá resultados que esperas.

Notas:

Escribí esta entrada de blog porque mis búsquedas para la configuración simple ámbito aparecido en seco utilizando frases como:

  • configurar ámbitos en MOSS
  • configurar la búsqueda alcance musgo
  • alcances en sharepoint 2007
  • alcances en sharepoint
  • buscar un musgo de biblioteca de documentos
  • musgo de cartilla de alcances

Se puede crear un ámbito de búsqueda en una carpeta, no sólo la biblioteca de todo el documento.

Un ámbito puede ser compartido a través de colecciones de sitios múltiples (por lo tanto, un "servicio compartido").

Puede crear el alcance en el nivel de colección de sitio propio. Sin embargo, Prefiero ir a administración central porque puedo comenzar el rastreo de ahí. No se puede iniciar el rastreo de la colección de sitios.

ACTUALIZACIÓN (ME) como de 11/24/07:

Kai Shang juntar que un gran post titulado Cómo configurar Microsoft Office SharePoint Server 2007 a las carpetas de red de arrastre para la búsqueda e índice @ http://kaishenghoo.spaces.live.com/blog/cns!8A7458DB12CA5AC9!206.entry

Etiquetas de Technorati: , ,

No hay sopa para ti! Es Cisco los productos Nazi de la sopa de NLB?

Hoy en día, He intentado acceder a una biblioteca de documentos desde el explorador de windows. Este lib doc vive dentro de un sistema que consiste en carga de dos ETF equilibrada por algún tipo de solución Cisco NLB. (Si/cuando los asistentes red Dime lo que es, Podrá actualizar este post).

Explorador de Windows no pudo conectarse. Hice algunas investigaciones y eventualmente, los asistentes de la red dijeron WebDAV está desactivado por / no compatible con / debajo de la dignidad de la NLB.

Por lo tanto, Suponiendo que los asistentes de la red no sólo me dice el equivalente de Asistente de red de "tomar una caminata desde un puente corto", Tengo que saber — hace NLB, por la naturaleza, deshabilitar WebDAV? Perdemos nuestra interfaz de explorador de archivos de windows SharePoint? Es Cisco el Nazi de la sopa?

Administración de MOSS / Entornos de WSS — mantenerse al día con la base de conocimientos de Microsoft

Microsoft crea día artículos de conocimiento base en y día y algunos de los son muy importantes para conocer si vives en el mundo de SharePoint.

Sigo avanzando con ellos mediante un servicio de brindar por la buena gente de www.kbalertz.com. KBAlertz le permite inscribirse para su tecnología de MS favorita y mandan que digerir las versiones de los artículos de Microsoft KB por correo electrónico.

Directiva de aplicación Web, Recorte de seguridad y sitios de seguridad — Conocer la configuración

(ACTUALIZADO 11/29 para explicar cómo acceder a configuración de directivas de aplicación web a través de la interfaz de usuario)

Tuve uno de esos "¿por qué es MOSS haciendo esto a mí????" momentos de hoy. En el final, es toda mi culpa.

Tenemos un proyecto de musgo de la empresa pasa y queremos asegurar "el marcador de posición" sitios para que ningún usuario puede acceder a él o verlo. Es fácil:

  1. Ir al sitio.
  2. Romper la herencia de seguridad.
  3. Quite cada usuario o grupo de permisos de sitio.

Lo anterior debe dejar sólo el administrador de la colección de sitios con permiso para ver el sitio.

Si nadie inicia sesión, ya no debe ver el sitio y debe ser recortado por seguridad de todos los lugares habituales.

Pero … no era. Al mismo tiempo, De repente me doy cuenta que mi usuario de Joe"" cuenta de usuario estándar de prueba con no priv que no sea de acceso restringido de lectura tiene un "acciones del sitio" elección por todas partes que él va. Doble comprobar una cosa y comprobar algo más. Recoger el teléfono para llamar a un colega, pero ponlo hacia abajo y ver algo más. Yo dar un paseo y vuelva a intentarlo todo todo. Llamo a un colega y dejar un mensaje. Y entonces, Finalmente, Me parece en Blog de Ethan, su gráfico de apertura hace que sea bastante sencillo:

MOSS 2007 una nueva característica llama directivas de aplicación Web. Estos son los permisos de seguridad que está ligada a una aplicación Web. Estas configuraciones de seguridad anulación cualquier configuración de seguridad que se establece en el sitio o colección de sitios (Web) nivel de usuario.

Una rápida visita a web aplicación políticas muestra "NT Authorityauthenticated users" había sido concedido leer completo. Quité de la lista y finalmente todo comenzó a trabajar como se esperaba. Creo que se agregaron en primer lugar por alguien con la impresión equivocada de que es el mejor método para conceder acceso de lectura a todos los miembros de la empresa. Lo hace, pero, forzar una cotización, "No significa lo que crees que significa."

Directivas de aplicación web de acceso así:

  1. Vaya a Administración Central
  2. Seleccione Administración de aplicaciones
  3. Seleccione "Directiva para la aplicación Web"
  4. En esa pantalla, Asegúrese de que elegir la aplicación web correcta. Para mí, el valor predeterminado para la aplicación web de administración central que no puede ser el que quieras.

Cuando tuve este problema, Busqué las siguientes frases y consiguió sorprendentemente poco en términos de ayuda directa en este tema:

Acciones del sitio visibles para todos los usuarios

Acciones visibles para todos los usuarios del sitio

acciones del sitio no son recortado de seguridad

proteger un sitio MOSS

Introducción a la seguridad de moss

Etiquetas de Technorati:

Rápida y sencilla: Uso fijo consulta de palabra clave en los resultados de búsqueda básicas

Rápidas y sencillas instrucciones:

Editar una página y agregar un elemento web de núcleo de resultados de búsqueda.

Editar elemento web y ampliar "Consulta fija de palabra clave".

Agregar la palabra clave fija de consulta (por ejemplo:. ContentType:"Factura de formación" TrainingInvoiceNumber:1111)

Amplíe las opciones de consulta de resultados y cambiar "Cross-Web parte consulta ID" un valor distinto de "consulta de usuario" (por ejemplo:. "Consulta 2").

Notas:

Utilizando resultados de la búsqueda de base de esta manera me permitida crear una página que muestra información de otra colección de sitios. El cliente tiene dos colecciones de sitios importantes: Departamentos y productos.

Contiene la colección de sitios de producto, Naturalmente, información de producto. Cada producto en la colección de sitios agregados de datos provenientes de múltiples fuentes.

Uno de los departamentos, códigos y pruebas, es en esa fuente. Cuando los usuarios acceder a producto XYZ, deben ver los códigos y datos de prueba directamente en la Página principal de XYZ. Desde los códigos y la prueba está alojados en otra colección de sitios, es un poco torpe. Decidimos utilizar la parte central búsqueda resultados web desde búsqueda abarca colecciones de sitios. Códigos y prueba maneja datos del producto a través de una lista personalizada que está limitado por un tipo de contenido específico. Consulta de palabra clave AA que utiliza primero el tipo de contenido y luego el número de producto estrecho la búsqueda a una sola fila en la lista personalizada.

La consulta de palabra clave anterior es una y. Devuelve documentos de contenido tipo "formación factura" y donde el número de factura es igual a "1111".

Un bonito se benefician de este enfoque: Podemos editar el XSL de la parte central búsqueda resultados web y generar cualquier formato que quieras.

Ver aquí (http://devcow.com/blogs/jdattis/archive/2007/04/17/SharePoint_2007_How_to_Rollup_Content_from_multiple_Site_Collections.aspx) para la discusión de otro blogger sobre este tema.

</final>Suscribirse a mi blog.

Háblame de tu blog!

Si mantienes un blog que está conectado al menos mínimamente a SharePoint, por favor hágamelo saber en los comentarios. Me encantaria agregarte a mi lista de blog.

Si mantienes un blog que no está conectado a SharePoint pero quieres agregar de todos modos, házmelo saber. Yo te puede crear una lista de blog independiente.

Por favor dar:

  • URL de tu blog (Obviamente)
  • Una breve descripción de tu blog.

Quiero mantener el vínculo a "activo" blogs, que más o menos estoy definiendo como un post por semana y mínimo tres meses de edad. Si no cumples con ese requisito"" añade tu nombre a los comentarios de todos modos. Es * mi * lista así puedo rompo mi propia regla si quiero.

Gracias!

Programa de capacitación de empleados y la plantilla de materiales — Error de decremento en la plantilla

El cliente notó un error hoy en día con la plantilla de dicha.

Crear de los jefes de curso cursos. Al crear un curso, el administrador especifica el número máximo de plazas disponibles.

Proporciona la plantilla para la inscripción de auto servicio. Me inscribo y un flujo de trabajo vinculados a los decrementos de la lista de inscripción los asientos disponibles"" asociado con ese curso.

También pueden anular el registro de individuos de un curso. El fallo se encuentra aquí. Del registro de un curso no incrementará el contador de asientos disponibles. Como un resultado, asientos disponibles no es exacta. Este error se agrava por el hecho que cuando disminuye de asientos disponibles a cero, se permite el registro de autoservicio no más.

Afortunadamente, Microsoft proporciona el flujo de trabajo para este proceso. Mejor aún, es un flujo de trabajo directo creado a través de SharePoint Designer.

Siga estos pasos de alto niveles para arreglarlo:

  1. Enciende SDP.
  2. Acceso al sitio basado en la plantilla de formación.
  3. Acceso "asistente baja" flujo de trabajo.
  4. Insertar estos pasos (Les hice los dos primeros pasos):
    1. Calcular Cursos:Asientos llenos menos 1 (Salida a Variable:Calc)
    2. (a continuación) Elemento de actualización en Cursos

Haga clic en finalizar y te hayas terminado.

Capturas de pantalla:


SharePoint Designer:

imagen

Flujo de trabajo terminado:

imagen

Calcular el desglose:

imagen

Artículo de actualización en cursos:

imagen

Dar buenas noticias con frecuencia; dar malas noticias pronto

He estado un consultor para un montón de años y como cualquier Consultor experimentado sabe, la buena comunicación es uno de los pilares fundamentales para la entrega exitosa de un proyecto. Es tan obvio, es realmente casi aburrido hablar de. Esto no es un post acerca de la comunicación genérica. En su lugar, Estoy escribiendo sobre el lado oscuro de la comunicación — comunicar malas noticias.

Hace falta decir que dar buenas noticias al cliente se realiza todo el tiempo, tan a menudo como sea posible. Quién no quiere dar buenas noticias? Que no le gusta escuchar buenas noticias?

En el otro lado, malas noticias no es divertido en absoluto. Siempre he luchado con esto. En los inicios de mi carrera, Sabría que algo andaba mal con un proyecto y en vez de decirle al cliente, Que trabajaría más horas para tratar de solucionar el problema. Prohibir mi equipo a trabajar más duro. Es un impulso bastante natural pensar que un esfuerzo súper humano puede salvar el día. Algunas veces esto funciona, algunas veces no lo. Incluso cuando "funciona" a menudo es un grupo heterogéneo. Es la calidad de la entrega realmente hasta piezas Especificaciones cuando clave se han desarrollado durante varios 60 Para 80 horas a la semana?

¿Cuál es la mejor manera de manejar malas noticias? La respuesta es: Dile temprano. No esperes hasta una semana antes de que el presupuesto del proyecto será consumido. Si conoces a seis semanas que allí simplemente no es suficiente tiempo para entregar un poco de funcionalidad prometida, decirle al cliente justo allí y. El cliente puede se molestan (Probablemente será), puede haber incriminaciones y acusaciones y herir los sentimientos. Pero, Cuando se enfríen las emociones, allí queda aún seis semanas en el proyecto. Seis semanas es una buena parte del tiempo. Hay tiempo para ajustar los planes, cambiar los horarios, Haz rodar el balón de las extensiones de presupuesto (Buena suerte!) y venir a los apretones con los "hechos sobre el terreno en general" y elaborar un nuevo plan que todavía los resultados en un proyecto exitoso.

En este caso: Estoy trabajando en un proyecto caracterizado por:

  • T&Presupuesto E con un tapado "no exceda de" cantidad en dólares.
  • Un "mejores se realizarán esfuerzos" promete entregar X, Y y Z por final del proyecto.
  • Falta de recursos claves prometidas por parte del cliente. Estos recursos no fueron retenidos a propósito, ni ningún mal"" razón, Pero ellos fueron retenidos.
  • Una realización amanecer como el proyecto pasado el punto medio que no íbamos a ser capaces de entregar "Z" (principalmente porque los recursos prometidos no eran realmente disponibles).
  • Informes de estado regular y "CYA" documentación que nos apoyaron (el equipo de consultores) hasta.
  • Muy unida equipo de implementación con miembros de la organización de consultoría (mi compañía) y el cliente.
  • Equipo directivo lejanas, en un sentido metafórico y físico. El equipo directivo se centró en otro proyecto de gran empresa y por limitaciones de espacio, el equipo de implementación fue construido en un edificio separado en el campus, abajo de una colina y relativamente lejos de la "civilización".

Con aproximadamente seis semanas en el presupuesto del proyecto, nos (el equipo de implementación) sabía que teníamos problemas para. El contrato dijo que teníamos que entregar "Z". A pesar de que el proyecto es tiempo & materiales y aunque sólo habíamos prometido "mejores esfuerzos" entregar Z e incluso aunque tuvimos gran justificación para la falta de la entrega … la conclusión es que no ve bien — No íbamos a entregar Z en forma de una calidad que haría orgulloso a cualquiera.

Reconociendo este hecho, Fuimos a la gestión y les dije que se consumiría el presupuesto del proyecto por una fecha determinada y que estábamos en problemas con Z.

Una mini tormenta estalló en los próximos días.

Día 1: Equipo directivo llama en su personal para una reunión especial (nos, No se invitan a los consultores). Contratos son impresos y entregados a todo el mundo y sobreviene una revisión línea por línea. Administración pone al personal a la defensiva. No creo que la frase "Síndrome de Estocolmo" es * realmente * usado, Pero tienes la foto. Somos un grupo muy Unido, Después de todo, y el personal ha estado trabajando con nosotros Consultores día entrando y saliendo por varios meses.

Día 2: Gestión convoca otra reunión de personal. Se sienten un poco mejor. Quieren opciones e ideas para seguir adelante. Se dan cuenta que todavía hay seis semanas restantes en el presupuesto actual del proyecto, que es todavía un decente poco de tiempo. Uno de los elementos de la acción: programar una reunión con el equipo de implementación completa (incluyendo consultores).

Día 5: Cumple con equipo completo, sobreviene la reunión constructiva y un posible nuevo plan puesto en marcha. Mejor aún, ya hemos empezado discutiendo la fase dos y el cliente nos invita a preparar propuestas para esa fase inmediatamente.

Si hubiesemos esperado hasta que quedaron sólo tres semanas, o peor aún, una o dos semanas, hubiera sido muy diferente. En lugar de una reunión constructiva para realinear el proyecto, habría sido sacar informes de estado, analizar el contrato y revisar correos electrónicos antiguos para justificar este o esa decisión. Habría "ganado" Pero es realmente "ganando" en este caso?

Por lo tanto, Si tienes que dar malas noticias, dar temprano. Malas noticias da tarde no es sólo malo, es horrible.