Inquiridor
Formulario externo

Pergunta
-
Todas as Respostas
-
-
O usuário que vai realizar o pedido de compra não precisar navegar até o site, na lista e clica para adiciona um novo item, ao clicar em um link no site principal do SharePoint ele já abre direto o formulário e adiciona o item.
O que acontece: Hoje o funcionário ao pedir uma compra manda um requisição em papel e nosso departamento de compras usa uma lista no SharePoint para controlar as compras.
O que precisamos: que essa requisição seja feita direto pelo formulário de adicionar novo item da lista através de um link na pagina principal.
Não sei se fui claro, mas é isso, não sei como explicar de outra forma.
-
OK, primeiro tens de saber qual é o link para o "newform" da tua lista.
Exemplo: se a tua lista está num site chamado "Compras", e tem o nome "pedidos", o URL deve ser algo do genero: "/Compras/lists/Pedidos/newform.aspx".
Depois de teres o link, basta criares um botão numa qualquer página do sharepoint, e adicionares o seguinte código javascript, do click do botão:
<a href="javascript:;" onclick="SP.UI.ModalDialog.ShowPopupDialog('<your URL to new form>')" > TESTE </a>
se quiseres podes usar os botões do sharepoint:
<div class="ms-uploadbtnlink" style="width: 240px; float: right;"> <button onclick="javascript:SP.UI.ModalDialog.ShowPopupDialog(' <yourURL> ');return false;" type="submit" style="text-align: left"><nobr><img alt="Upload a Document" src="/_layouts/Images/ManageMyLinksButton.gif"/> <span>New Form</span> </nobr></button></div>
- Sugerido como Resposta Pedro Marques de Morais quinta-feira, 6 de novembro de 2014 19:30
-
Olá Bruno,
Obrigado pela ajuda, era isso mesmo que eu precisava, mas ... está acontecendo um probleminha, após executar uma ação: quando salva, salva o registro na lista e fecha o formulário (até ai ok), porém fica a janela de diálogo modal aberta e quando clicado o botão cancelar não faz nada, poderia me ajudar ?
valeu
-
-
-
os formulários do sharepoint já têm mecanismos para guardar ou cancelar o form.
esse código javascript foi colocado por ti? ou já pertence à página?
o comando correcto para fechar a janela deveria ser
SP.UI.ModalDialog.commonModalDialogClose(dialogResult, returnVal);
http://msdn.microsoft.com/en-us/library/office/ff409682(v=office.14).aspx
-
-
Isso é estranho... não havendo customização do código javascript deveria funcionar sem problema.
já vi problemas parecidos em ambientes com balanceadores, em que o balanceador não estava bem configurado, e dava problemas de "Same origin policy" - codigo js em https a tentar correr em http.
já tentaste fazer isso sem ser por https? não têm acesso por http?
-
A mensagem é bem parecida com essa: O acesso quadro solicitando tem um protocolo de "https", o quadro que está sendo acessado tem um protocolo de "http". Protocolos devem corresponder.
Porém estou logado, eu não tenho como fazer sem ser pelo https. Qual a solução do "Same origin policy"? posso tentar, pode funcionar.
-
Provavelmente existe um balanceador que trata os pedidos direcionados para a tua farm Sharepoint, que está a converter os pedidos https em http (entre o balanceador e a farm).
nesse caso o código javascript executado em https vai ser recusado pelo browser porque a resposta vem em http.
tenta esclarecer com a equipa de administração de sistemas, como está a farm configurada, e porque o sharepoint não está a responder em https, quando os pedidos são feitos em https.