Como você inserir um valor de consulta como um parâmetro no SharePoint Designer?

votos
0

Eu estou tentando criar uma fonte de dados no SharePoint Designer que se conecta a uma lista do SharePoint via Web Services XML. Eu criei a fonte de dados e conectado à lista em questão. Eu posso ver todos os dados usando GetListItems, e eu quero filtrá-la usando o parâmetro de consulta.

O parâmetro de consulta leva um XmlNode, e quando eu colocar isso como o valor que eu recebo um erro:

<Query>
    <Where>
        <Eq>
            <FieldRef Name=Title />
            <Value Type=Text>Foo</Value>
        </Eq>
    </Where>
</Query>

Claro, eu não introduziu quaisquer tabs ou newlines, como eu só tenho um campo de entrada de uma linha no SharePoint Designer. Eu recebo um erro com esta consulta:

O servidor retornou um erro não específico ao tentar obter os dados da fonte de dados. Verifique o formato eo conteúdo de sua consulta e tente novamente. Se o problema persistir, contate o administrador do servidor.

Eu simplesmente quero filtrar os itens da lista de resultados a ser aqueles com o campo Título de Foo. isso pode ser feito no SharePoint Designer?


Update: escapar da <e> desta forma também falha:

&lt;Query&gt;&lt;Where&gt;&lt;Eq&gt;&lt;FieldRef Name=&quot;Title&quot; /&gt;&lt;Value Type=&quot;Text&quot;&gt;Foo&lt;/Value&gt;&lt;/Eq&gt;&lt;/Where&gt;&lt;/Query&gt;

Update: Este parece ser um problema conhecido com componentes SoapDataSource e chamadas SOAP. Aparentemente, eles estão sobre-codifica a < 's e>' s antes de serem submetidos. A solução dada é para salvar a fonte de dados sem um parâmetro de consulta e, em seguida, adicioná-lo à página e criar um filtro na caixa de diálogo Tarefas comuns View Data. Eu era capaz de chegar a este trabalho usando a seguinte seqüência de filtro:

[@ows_Title = 'Foo']

Infelizmente, isso não me ajuda tanto quanto eu estou adicionando uma exibição de dados (mostrando os dados) em vez de uma fonte de dados que eu possa usar para apontar outros controles para (como uma lista drop-down).

Eu ainda estou procurando uma boa solução para este que me permite colocar uma fonte de dados usando o SharePoint Designer.

Publicado 09/12/2008 em 17:58
fonte usuário
Em outras línguas...                            


4 respostas

votos
1

Isso mostra como variáveis podem ser usadas para resolver um problema semelhante.

Respondeu 26/10/2011 em 06:27
fonte usuário

votos
1

Há um bug no SharePoint Designer. Você não pode passar um objeto de consulta a um SOAPDataSource como este - o XML fica overencoded. Nada que você pode fazer para corrigi-lo, a não ser usar o Visual Studio.

Eu vou deixar você saber se há sempre uma correcção disponível.

Se alguém quiser citar esta resposta em uma nova resposta, eu vou aceitar essa resposta.

Respondeu 22/12/2008 em 20:18
fonte usuário

votos
1

Você XML codificar a consulta? Eu acredito que você precisa para codificar caracteres como <,> e "tal que é XML válido, por exemplo:

&lt;Query&gt;&lt;Where&gt;

e

&lt;FieldRef Name=&quot;Title&quot; /&gt;
Respondeu 09/12/2008 em 21:00
fonte usuário

votos
0

Tendo trabalhado com o campo da lista de título, ele não retorna valores para mim, se eu usei "Contém".

Isto pode não corrigir o seu erro no entanto.

Respondeu 09/12/2008 em 22:18
fonte usuário

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