Trabajando con Codigo C# en Formularios Infopath 2010

Hola a todos  si alguna vez quisieran integrar codigo en C#, en infopath 2010  que implique interactuar con listas o bibliotecas, en otras palabras que utilicen las librerias Microsoft SharePoint,  estas solo funcionaran si los formularios que esten desarrollando sean  WEB, ya que si utlizan el  Infopath Filler no funcionara en los clientes ya que la librerias deberian estar instaladas en cada cliente que utilice el Infopath Filler.

Slds.

Comentarios

  1. Buenas tardes.

    Disculpa, no se si puedas ayudarme, estoy intentando publicar en SharePoint un formulario web que tiene código C# para hacer unos cálculos de campos de una tabla extensible. El problemaes que en el infopath al ejecutar el código funciona correctamente, pero una vez publicado el formulario no hace ningún cálculo.

    Qué podría estar faltando?

    Este es el código que utilizo:

    XPathNodeIterator nodes = MainDataSource.CreateNavigator().Select

    ("/my:misCampos/my:Evaluacion_Actividades_Puesto/my:Seccion_Evaluacion_Actividades_Puesto", this.NamespaceManager);

    double MetaPeriodo = 0;
    double Cumplidos = 0;
    double PorcentajeCumplimiento = 0;

    foreach (XPathNavigator node in nodes)
    {
    MetaPeriodo = Convert.ToDouble(node.SelectSingleNode("my:MetaPeriodo", this.NamespaceManager).Value);
    Cumplidos = Convert.ToDouble(node.SelectSingleNode("my:Cumplidos", this.NamespaceManager).Value);

    if (Cumplidos < 0 || (Cumplidos.Equals("") || MetaPeriodo.Equals("")))
    {
    node.SelectSingleNode("my:PorcentajeCumplimiento",

    this.NamespaceManager).SetValue("0");
    }
    else
    {
    if (Cumplidos > MetaPeriodo)
    {
    node.SelectSingleNode("my:PorcentajeCumplimiento", this.NamespaceManager).SetValue("100");
    }
    else
    {
    PorcentajeCumplimiento = System.Math.Round(((Cumplidos * 100) / MetaPeriodo), 0);
    node.SelectSingleNode("my:PorcentajeCumplimiento", this.NamespaceManager).SetValue(PorcentajeCumplimiento.ToString());


    }
    }
    }

    ResponderBorrar
    Respuestas
    1. Hola como estas, bueno podrías probar la opción habilitar Compatibilidad web y verificar si alguno de los componentes no es compatible en la web, y si todo es compatible podríamos revisar la manera, como estas publicando el formulario.
      Sdls.

      Borrar
  2. Hola cómo estás? gracias x responder y disculpa la demora no había visto tu respuesta y tuve que dejar el formulario de lado un tiempo.

    Habilité la compatibilidad web como indicaste pero solo me salen 2 advertencias sobre html no compatible nada mas.

    El formulario lo publique con nivel de seguridad de plena confianza, ya cargué el formulario en la consola de administración central y lo active en la granja. Cree una biblioteca de formularios y le puse como tipo de contenido el que tiene el formulario pero al utilizarlo en web el codigo sigue sin funcionar (simplemente no hace el calculo).

    No se que más hacer, según lo que he leido debería funcionar con lo que he hecho. Incluso si pongo editar la plantilla siempre al abrir el formulario me vuelve a pedir la ruta del proyecto de C# (pensaba que debería estar adjunto al formulario) será que me he saltado algún paso? Talvez ejecutar el codigo de algún modo? (le pongo generar antes de publicarlo talvez esa no sea la forma).

    Nunca antes había trabajado con formularios de infopath que incluyen programación. Será que mi formulario no es web? (aunque me parece que si escogí esta opción)

    Gracias de antemano =)

    ResponderBorrar
  3. Hola de nuevo =D te cuento seguí probando y encontré por ahí un comentario que probé y funcionó. Solo tenía que marcar "Siempre" en la pestaña Formularios del Explorador de los controles que intervienen en las fórmulas. Al parecer podré seguir avanzando =D

    Muchas gracias de todas formas ;)

    ResponderBorrar

Publicar un comentario

Entradas más populares de este blog

Que es un Webpart o Elemento Web en SharePoint?

The type or namespace name ‘SharePoint’ does not exist in the namespace ‘Microsoft’ (are you missing an assembly reference?) – SharePoint 2013 Client Object Model dlls

Extender el periodo de Evalución hasta 240 días en SQL Server y SharePoint Server