enquêteresultaten in sharepoint

stemmen
2

Hoe krijg ik een lijst van de gebruiker die of hebben afgerond niet voltooid of niet gereageerd op een enquête.

dus ik heb een enquête, laten we zeggen survey A. in dit onderzoek heb ik een lijst van mensen of groepen die de enquête moet invullen. sharepoint al geeft ons een lijst van de respondenten, maar ik wil een lijst van mensen die niet hebben gereageerd of de enquête niet ingevuld te maken.

Ik gebruik C #, thanks ..

De vraag is gesteld op 02/12/2008 om 04:47
bron van user
In andere talen...                            


2 antwoorden

stemmen
2

Ervan uitgaande dat u de enquête is gemarkeerd als niet-annonymous, en dat mensen de enquête niet meer dan één keer kunt beantwoorden, kunt u het volgende doen:

  1. Neem de lijst van mensen die de enquête moet invullen.
  2. Itereren over de items in de enquête (elk item is een reactie van een enkele persoon).
  3. Verwijder de persoon die het item gemaakt op basis van de lsit van de mensen van afdeling 1. (SharePoint enquête te houden van de persoon die antwoordden op de enquête als de "Schepper" / "Author" eigenschap van het item)

Het resultaat zal de lijst van mensen die het onderzoek moet beantwoorden, maar hebben dat nog niet gedaan.

antwoordde op 28/12/2008 om 09:43
bron van user

stemmen
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;
}

moet je een groep van gebruikers en groepen maken en toevoegen gebruiker dat. en u kunt kunnen gebruikers bovenstaande functie toevoegen ste functie paginalaadtijd .... Ik heb tonen het resultaat rasterweergave door toevoeging coloums erin

antwoordde op 18/02/2011 om 14:42
bron van user

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