Problem with GetListItems

Dec 13, 2010 at 8:46 PM

Hi, I'm trying to use GetListItems, and it's fine with the administrator account, but if I'd use another user account doesn't work fine, I can only read some lists, for example:

 

$().SPServices({
    operation: "GetListItems",
    async: false,
    listName: "Proyectos",
    CAMLQuery: "<Query><OrderBy><FieldRef Name='IP' Ascending='False' /></OrderBy></Query>",
    completefunc: function (xData, Status) {
      $(xData.responseXML).find("z\\:row").each(function() {
        GestorDemanda = "";
        LiderUsuario = "";
        AnalistaNegocio = "";
        Auspiciador = "";
        GestorPlanes = "";
        codigo_ip = "";
        Fecha_creacion_propuesta = "";
        Fecha_envio_GD = "";
        IdEmpresa = "";
        IdUnidad = "";
        empresa = "";
        unidad = "";
        Iniciativa = "";
        if(typeof($(this).attr("ows_IP")) != "undefined"){
          codigo_ip = $(this).attr("ows_IP");     
         
          $().SPServices({
            operation: "GetListItems",
            async: false,
            listName: "Propuesta Proyecto",
            CAMLQuery: "<Query><Where><Eq><FieldRef Name='PY_IP'/><Value Type='Number'>"+codigo_ip+"</Value></Eq></Where></Query>",
            completefunc: function (xData, Status) {
              $(xData.responseXML).find("z\\:row").each(function() {               
                Numero_propuesta = $(this).attr("ows_Numero_propuesta");
                Fecha_creacion_propuesta = $(this).attr("ows_Fecha_creacion_propuesta");
                Fecha_envio_GD = $(this).attr("ows_Fecha_envio_GD");
                Fecha_creacion_propuesta = formatoImpresionFecha(Fecha_creacion_propuesta);
                Fecha_envio_GD = formatoImpresionFecha(Fecha_envio_GD);
                if((typeof($(this).attr("ows_IdUnidad")) != "undefined") && (typeof($(this).attr("ows_IdEmpresa"))!= "undefined")){
                  IdEmpresa = $(this).attr("ows_IdEmpresa");       
                  IdUnidad = $(this).attr("ows_IdUnidad");
                  id_empresa = IdEmpresa.split(";");
                  id_unidad = IdUnidad.split(";");
                  IdEmpresa = id_empresa[0];
                  IdUnidad = id_unidad[0];
                  empresa = nomEmpresaRequirente(IdEmpresa);
                  unidad= nomUnidadRequirente(IdUnidad);               
                }
               
                if(typeof($(this).attr("ows_Iniciativa")) != "undefined"){
                  Iniciativa = $(this).attr("ows_Iniciativa");           
                }
              });
            }
          });
         

          if(typeof($(this).attr("ows_IdAuspiciador")) != "undefined"){
            Auspiciador = $(this).attr("ows_IdAuspiciador");
            idAU = Auspiciador.split(";");
            Auspiciador = obtenerNombrePersona(idAU[0]);
          }
          if(typeof($(this).attr("ows_IdGestorPlanes")) != "undefined"){
            GestorPlanes = $(this).attr("ows_IdGestorPlanes");
            idGP = GestorPlanes.split(";");
            GestorPlanes = obtenerNombrePersona(idGP[0]);
          }
          html = html + "<tr>";
          html = html + "<td><a href='javascript:void(0);' id='link_iniciativa-"+codigo_ip+"' onClick='menuIniciativasVigentes("+codigo_ip+",event);' class='menu_contextual'>"+codigo_ip+"<span id='menu-"+codigo_ip+"'></span></a></td>";
          html = html + "<td>"+Iniciativa+"</td>";
          html = html + "<td>"+portafolio+"</td>";
          html = html + "<td>"+empresa+"</td>";
          html = html + "<td>"+unidad+"</td>";
          html = html + "<td>"+programa+"</td>";
          html = html + "<td>"+Numero_propuesta+"</td>";
          html = html + "<td>"+Fecha_creacion_propuesta+"</td>";
          html = html + "<td>"+Fecha_envio_GD+"</td>";
          html = html + "<td> </td>";
          html = html + "<td>"+Auspiciador+"</td>";
          html = html + "<td>"+LiderUsuario+"</td>";
          html = html + "<td>"+GestorPlanes+"</td>";
          html = html + "</tr>";
        }           
      });
    }
  });

 

Using an user account, with that code I can't read Propuesta Proyecto List, but if I use administrator account I can read all lists.

Hopefully someone can help me out

Regards

Coordinator
Dec 13, 2010 at 8:50 PM

Web Service calls always happen with the current user's credentials. So if the current user doesn't have permission for this list, he won't see any results.

BTW, where you are using find("z\\:row"), you can have problems with other browsers. See my blog post on this:
http://sympmarc.com/2009/11/08/sharepoints-web-services-jquery-and-the-zrow-namespace-in-safari-and-chrome/

M.

Dec 13, 2010 at 9:31 PM

Problem solved.

I had fix the threshold lists of lookup field, in Propuesta proyecto list had more than 8 lookup field.

Regards.