risultati del sondaggio in SharePoint

voti
2

Come faccio ad avere un elenco di utenti che hanno completato o non completata o meno risposto a un sondaggio.

Così ho un sondaggio, diciamo sondaggio A. in questa indagine ho un elenco di persone o gruppi che devono compilare il sondaggio. SharePoint già ci dà un elenco degli intervistati, ma voglio fare una lista di persone che non hanno risposto o meno completato il sondaggio.

sto usando C #, grazie ..

È pubblicato 02/12/2008 alle 04:47
fonte dall'utente
In altre lingue...                            


2 risposte

voti
2

Supponendo che si indagine è contrassegnato come non annonymous, e che la gente non può rispondere al sondaggio più di una volta, è possibile effettuare le seguenti operazioni:

  1. Prendete la lista delle persone che devono compilare il sondaggio.
  2. Un'iterazione sulle voci del sondaggio (ogni articolo è una risposta da una sola persona).
  3. Rimuovere la persona che ha creato l'elemento dal lsit di persone dalla sezione 1. (SharePoint sondaggio di mantenere la persona che ha risposto al sondaggio come il "Creatore" / "Autore" di proprietà della voce)

Il risultato sarà la lista delle persone che deve rispondere l'indagine, ma non hanno ancora fatto.

Risposto il 28/12/2008 a 09:43
fonte dall'utente

voti
2
private DataTable GetUser()
{
    //SPGroup User = null;

    DataTable dt = new DataTable();
    dt.Columns.Add("Survey Remeaning User");

    DataTable dtuser = new DataTable();
    dtuser.Columns.Add("Survey Completed User");


    try
    {
        SPSecurity.RunWithElevatedPrivileges(delegate()
        {
            using (SPSite objSubSite = new SPSite(SPContext.Current.Site.Url))
            {
                SPUserCollection userCollection = SPContext.Current.Web.Groups["Survey Members"].Users;
                foreach (SPUser user in userCollection)
                {
                    StringBuilder sb = new StringBuilder();
                    sb.Append("<Where>");
                    sb.Append("<Eq>");
                    sb.Append("<FieldRef Name='Author' />");
                    sb.Append("<Value Type='User'>" + user + "</Value>");
                    sb.Append("</Eq>");
                    sb.Append("</Where>");

                    // query.ViewFields = "<FieldRef Name='Author'/>";
                    SPQuery query = new SPQuery();
                    query.Query = sb.ToString();

                    using (SPWeb objWeb = objSubSite.OpenWeb())
                    {
                        int i = objWeb.Lists["SurveyList"].GetItems(query).Count;
                        if (i == 0)
                        {
                            dt.Rows.Add(user);
                            GvUser.DataSource = dt;
                            GvUser.DataBind();
                        }
                        //if (i == 1)
                        else
                        {
                            //DataTable dtuser = new DataTable();
                            //dt.Columns.Add("SurveyCompleted");
                            dtuser.Rows.Add(user);
                            GvComUser.DataSource = dtuser;
                            GvComUser.DataBind();
                        }
                    }
                }
            }
        });
    }
    catch (Exception)
    {


    }
    return dt;
}

è necessario creare un gruppo di utenti e di gruppo e aggiungere utenti in questo. e poi u può può utente sopra funzione e aggiungere th funzione del carico pagina .... ho visualizza il risultato in vista griglia aggiungendo coloums in essa

Risposto il 18/02/2011 a 14:42
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more