Publicando Formulário InfoPath no SharePoint 2010

O InfoPath e uma ferramenta muito poderosa para criação de formulários ricos, ele nos fornece várias funcionalidades que vão dar mais produtividade ao usuário final e aos adminitradores dos sites SharePoint. Mas como criar formulários e publicá-los no SharePoint?

Este post tem como objetivo mostrar a criação de um formulário novo, publicá-lo no SharePoint e mostrar como o usuários irá salvar o formulário.

Os procedimentos abaixo são válidos para publicação de formulários localmente ou no SharePoint Online (Office 365).

Abaixo tem um passo a passo de como criar os formulários no InfoPath e publicá-los no SharePoint:

   01. Abrir o InfoPath Designer e criar o formulário do tipo “Biblioteca de Formulários SharePoint”, conforme imagem 01;

infopath01

    Imagem 01: Criando um formulário

     

       02. O formulário será exibido e poderá ser editado, a imagem 02 mostra o formulário já editado;

    infopath02           

    Imagem 02: Formulário editado

     

          03. Para adicionar campos (controles) no formulário, o item marcado como “Controles” na imagem 03 é utilizado. Nessa opção é possível adicionar vários tipos de campos ao formulário. A área marcada como “Formulário”, é o formulário efetivamente. A área “Campos” exibe todos os campos do formulário, ou seja, se um controle adicionado ao formulário é um campo na lista de campos. É muito importante informar nomes legíveis para os campos, porque esses campos serão publicados no SharePoint mais tarde. Além dos campos foram adicionados os botões enviar e cancelar.

infopath03

Imagem 03: Áreas importantes para a edição dos formulários

 

   04. Depois do formulário criado conforme necessidade, no nosso caso uma solicitação de material, vamos configurar o botão cancelar. Ele irá simplesmente fechar o formulário. Conforme o passo a passo da imagem 04:

  1. Selecionar o botão cancelar;
  2. Na Ribbon, clicar na opção “Gerenciar Regras”;
  3. A janela de regras é exibida, clicar no botão “Novo” para ciar uma nova “Ação”;
  4. Clicar em “Adicionar” e selecionar a opção “Fechar este formulário sem prompt”.

infopath04 

Imagem 04: Configurando o botão cancelar

 

     05. O próximo passo é publicar o formulário. O botão enviar ainda não foi configurado, mas vamos publicar o formulário em um local e depois fazer o botão enviar gravar os dados lá. Por isso vamos primeiro publicar. Para publicar o formulário a primeira vez é necessário acessar o menu “Arquivo”, “Publicar” e selecionar a opção “Servidor SharePoint”, conforme a imagem 05;

infopath05

Imagem 05: Publicação do formulário no SharePoint

 

   06. Na próxima tela será necessário informar a url do site SharePoint que se deseja publicar o formulário, como mostra a imagem 06;

infopath06

Imagem 06: Informar o endereço do site SharePoint para a publicação

 

   07.  Os modelos de formulários podem ser publicados de três formas: biblioteca de formulários, onde o formulário é publicado diretamente em uma biblioteca de documentos; tipo de conteúdo do site, o formulário é publicado no site como um tipo de conteúdo e pode ser reaproveitado em mais de uma biblioteca; ou modelo de formulário aprovado pelo administrador, que publica o formulário a nível de farm (Administração Central) e pode ser publicado em vários aplicativos web SharePoint, é gerenciado pelo adminsitrador do SharePoint. No nosso exemplo, por facilidade, vamos publicar em uma biblioteca de formulários, como mostra a imagem 07;

infopath07

Imagem 07: Selecionando o tipo de publicação do formulário

 

   08. Após selecionar a opção de publicar em uma biblioteca é necessário selecionar se o formulário será publicado em uma biblioteca nova ou em uma existente. No nosso exemplo vamos publicar em uma biblioteca nova, conforme a imagem 08.

infopath08

Imagem 08: Publicando o formulário em uma nova biblioteca de documentos 

 

   09. Informar o nome e descrição da nova biblioteca de formulários, como mostra a imagem 09;

infopath09

Imagem 09: Infornando o nome e descrição da biblioteca de formulários

 

   10. Quando os formulários são publicados no SharePoint eles são publicados como um arquivo, dessa forma o SharePoint não irá reconhecer as informações dos seus campos como departamento e material. Para que essas informações sejam publicadas no SharePoint como colunas (metadados) é necessário fazer a publicação de todos os campos. As imagens 10 e 11 mostram como publicar os campos.

infopath10

Imagem 10: Publicando campos no SharePoint

 

infopath11

Imagem 11: Selecionado os campos para publicação e definindo o nome para publicação

   

   11. Ao final das configurações a tela de resumo é exibida, para confirmar a publicação clicar em “Publicar”, conforme a imagem 12, a imagem 13 será exibida quando a publicação for feita com sucesso.

infopath12

Imagem 12: Publicando o formulário

 

infopath13

Imagem 13: Formulário publicado com sucesso

 

   12. Agora é hora de iniciar a configurar o botão enviar para salvar o formulário na biblioteca de formulário, o primeiro passo é definir o nome do arquivo seguindo o passo a passo abaixo:

  1. Criar um campo chamado “nomeArquivo”, ele irá armazenar o nome do formulário;
  2. Selecionar o botão “Enviar”;
  3. Clicar na opção “Gerenciar Regras”;
  4. Clicar no botão “Novo” e selecionar “Ação”;
  5. Criar um condição que verifique se o campo “nomeArquivo” está em branco;
  6. Clicar em “Adicionar” e selecionar a opção de definir valor de um campo;
  7. Definir que o campo “nomeArquivo” irá receber uma formulá de concatenação concatenando alguns campos e a data atual. Dessa forma garantimos que nenhum arquivo será gravado com o mesmo nome. Ao clicar no botão “fx” um utilitário de formulás será exibido. Clicar em “OK” para fechar o formulário de regras.

infopath14

Imagem 14: Configurando o nome do arquivo

 

   13. O formulário será enviado para o SharePoint através de uma conexão de dados, para criar essa conexão é necessário clicar na oção “Gerenciar Conexões de Dados…” e em “Adicionar…”, conforme a imagem 15;

infopath15

Imagem 15: Criando a conexão de dados

 

   14. A conexão tem que ser do tipo “Enviar Dados”, conforme a imagem 16;

infopath16

Imagem 16: Configurando o tipo de conexão

 

   15. A conexão irá enviar os dados para uma biblioteca do SharePoint, conforme a imagem 17;

infopath17

Imagem 17: Configurando a conexão para enviar os dados para uma bilioteca do SharePoint

 

   16. Agora é necessário informar o endereço completo da biblioteca, o nome do arquivo – que será o campo “nomeArquivo” – e selecionar a opção “Permitir que o arquivo seja substituído saco já exista”, assim o usuário poderá editar e salvar o arquivo, sem criar um novo. A imagem 18 mostra em detalhes;

infopath18

Imagem 18: Configurando o local e o nome do arquivo de publicação

 

   17. Para finalizar, informar o nome da conexão e clicar em “Concluir”;

infopath19

Imagem 19: Finalizando a conexão de dados

 

   18. Agora vamos configurar o botão “Enviar” para utilizar a conexão de dados de envio para salvar o formulário no SharePoint, para isso seguir os passos abaixo:

  1. Selecionar o botão “Enviar”;
  2. Clicar na opção “Gerenciar Regras”;
  3. Clicar no botão “Novo” e selecionar “Ação”;
  4. Clicar em “Adicionar” e selecionar a opção de enviar dados;
  5. Selecionar a conexão “Enviar” e pressionar “OK”.

infopath20

Imagem 20: Associando a conexão de envio ao botão enviar

 

   19. O formulário está configurado e pronto para ser utilizado, mas antes disso é necessário republicá-lo no SharePoint, para isso é só usar a opão de publicação rápica, como mostra a imagem 21;

infopath21

Imagem 21: Atualizando o modelo do formulário no SharePoint

 

   20. Para testar e utilizar o formulário é necessário entrar no SharePoint e acessar a biblioteca em que o formulário foi publicado. Depois clicar na oção “Adicionar documento”, conforme a imagem 22;

infopath22

Imagem 22: Adicionando o formulário

 

   21. O formulário é exibido para ser preenchido, depois de preenchê-lo, clicar no botão “Enviar” para salvar o formulário no SharePoint;

infopath23

Imagem 23: Editando e salvando o formulário

 

   22. O formulário foi salvo conform o padrão de nomenclatura utilizado.

infopath24

Imagem 24: Formulário salvo no SharePoint

 

Observação: Para os formulários do InfoPath serem utilizados dessa forma com o SharePoint é necessário ter a licença do SharePoint Server Enterprise e o recurso de formulários InfoPath deve estar habilitado.

Observação2: Os botões enviar e cancelar foram utilizados para faciliar a vida do usuário, porque ele poderia muito bem utilizar os botões da Ribbon, só que lá o comportamento é um pouco diferente. Por exemplo, o nome do arquivo seria informado pelo próprio usuário, podendo salvar de qualquer maneira. Qualquer das opções pode ser utilizada, dependendo das necessidades.

Update: 14/08/2011 – Adição da descrição que o procedimento serve para o SharePoint Online também.

Update 31/8/2013 – Troquei as imagens para o WordPress.

Anúncios

57 Respostas to “Publicando Formulário InfoPath no SharePoint 2010”

  1. Eduardo Says:

    Material muito bom,

    Obs: Não serial possivel uma condição de verificar o nome do arquivo. 🙂

    att,

  2. Eduardo Says:

    Duas dúvidas Fabian, fiz essa aplicação no Sharepoint On line e me parece que deu certo eu conseguiria fazer essa aplicação no foundation?. E quando preencho um formulário ele acaba salvando em cima do antigo, fazendo com que só salve um formulário na pasta. Obrigado pelo post! e se puder responder Obrigado novamente.

    • Fabian André Gehrke Says:

      Eduardo,
      Acabei achando um bug no meu post que logo vou corrigir, mas o seu problema aparentemente é só controlar no nome do documento em uma variável testar se ele tá preenchido. Se for um formulário novo, o campo vem em branco, aí vc alimenta com um valor único, como uma composição do nome do cara + a função agora(), que retorna a hora atual. Então vc tem que passar essa variável na conexão de envio do seu form, aí sempre vai gravar um diferente.

  3. Eduardo Says:

    Ok… Funcionou…
    Muito Obrigado…

  4. Gustavo Nogueira Dos Reis Says:

    Fabian, já encontrou uma maneira de automatizar a publicação de forms no InfoPath, via Visual Studio ?

    Estou tentando fazer isso através de um projeto do tipo SharePoint 2010… pretendo fazer o deploy de forms full-trust e das páginas aspx que contém webparts com os forms.

    • Fabian André Gehrke Says:

      Olá Gustavo,

      Nunca tentei fazer isso. Talvez uma solução seria fazer um script de post build no Visual Studio e fazer com que ele chamasse um script PowerShell para fazer o deploy do form com full trust na Administração Central.

  5. Roney Cruz Says:

    é possível colocar regras em campos específicos ?
    ..tipo quero que um usuário preencha somente alguns campos , e não edito os anteriores feitos por outra pessoa.

    quero fazer isso em uma lista ou formulário para colocar um workflow

    poderia me ajudar ?

    grato.

    • Fabian André Gehrke Says:

      Olá Roney,

      É possível fazer isso sim, para falar a verdade é bem normal. O usuário atual do fluxo edita o formulário conforme o status do item. Vc pode criar regras de formatação para esses campos, controlando a visualização ou se vai ficar desabilitado.

      Poste mais detalhes que lhe ajudo a fazer.

  6. Igor Pereira Says:

    Olá Fábian,

    Parabéns pelo Material, direto e objetivo.
    Tenho uma dúvida, estou montando um formulário de incrição para usuários externos,
    é possível retirar a Ribbon? para deixar mais limpo para esses usuários,

    Se puder me ajudar agradeço muito.

    Abraço

    • Fabian André Gehrke Says:

      Olá Igor,

      Vc pode retirar a ribbon, acredito que com configurações ou editando a página no SharePoint Designer seja possível, desculpe mas não tenho nenhuma referência em mãos agora, mas assim que achar eu publico aqui.

      Abraços,

      Fabian André Gehrke

  7. Suzana Says:

    Boa tarde Fabian!

    Gostei mto dos seus post. Sou iniciante no sharepoint e estou com dificuldade. Fiz todos os procedimento de acordo com suas intruções, mas ao clicar em “Adicionar um novo documento” está aparecendo uma caixa de diálogo para carregar algum documento na biblitoeca. Quero que ao clicar neste link, apareça o formulário a ser preenchido.

    Já adicionei o tipo de conteúdo e mesmo assim continua da mesma forma. O que posso fazer?

    Desde já, obrigada.

    Att.

    Suzana

  8. Suzana Says:

    Fabian,

    Quando eu clico em “Novo Documento” aparece o conteúdo especificado, até aí está correto. Fiz os procedimento iguais aos citados no post que você me mandou. Entretanto, eu quero que o usuário clique em “+ Adicionar Documento” e apareça o formulário.
    Neste momento que surge a caixa de diálogo para carregar o documento.

    Obrigada.

    • Fabian André Gehrke Says:

      Suzana,

      Esse é o comportamento padrão do SharePoint, você pode até tentar alterar, mas será que realmente precisa? Será que não é muito trabalho para pouco ganho?

      Para alterar vc tem que pesquisar como ocultar o botão ou criar um novo botão com o comportamento que vc deseja.

  9. Suzana Says:

    Compreendi agora Fabian.

    Tinha ficado confusa, pois na imagem 22 deste post está assinalado o botão “”+ Adicionar Documento”. Pensei que talvez fosse possível colocar o formulário como padrão neste link.

    Mto obrigada.

    • Fabian André Gehrke Says:

      Suzana,

      Na última resposta eu pensei q vc estivesse falando da Ribbon e não do link que tem na imagem 22. Vc falou e até fui testar, mas o comportamento é conforme está descrito no blog mesmo, testei aqui e funcionou corretamente.

      Vc criou uma biblioteca de formulários ou algum outro tipo?

  10. Suzana Says:

    Fabian,

    O site criado aqui é de publicação com workflow e não está dando a opção de criar uma biblioteca de formulário. Assim, criei a partir do Infopath a biblioteca específica para formulários. Depois criei um formulário e defini como “Tipo de Conteúdo”. O formulário aparece apenas se eu clicar em “Novo” e não no link “+ Adicionar Documento”.

    A explicação ficou mais clara agora? Senão posso tentar lhe explicar de outra forma.

  11. Suzana Says:

    É a versão Enterprise.

    A situação é a seguinte, um analista de sistemas implantou o sharepoint e eu tenho que criar formulários de acordo com as demandas. O site pai é um site de equipe e os subsites são de publicação com workflow. Tem algum problema? Futuramente serão feitos workflows com estes formulários, qual a melhor opção de site então?

    Fiz o teste aqui no site pai e deu certo o “+ Adicionar Documento”. Mas no subsite (que é de publicação com fluxo de trabalho) não deu certo. Aparece a caixa de diálogo para carregar documento.

    • Fabian André Gehrke Says:

      Suzana,

      Vá em “Ações do Site” -> “Configurações do Site”, depois acesse a opção “Gerenciar Recursos do Site” que esta na categoria “Ações do Site”, a url que vc vai cair é /_layouts/ManageFeatures.aspx. Veja se a feature “Recursos de Sites do SharePoint Server Enterprise” está ativa.

  12. Suzana Says:

    Está desativada Fabian. Já ativei, é isto mesmo?

  13. Suzana Says:

    O problema continua. Estou pensando então em excluir o site da área que é de publicação com fluxo de trabalho e criá-lo novamente, mas como site de equipe.

    O site de equipe possui menos recursos que o site de publicação com fluxo de trabalho?
    Será que consigo implementar check-in, check-out e publicar página nele?

    Como não está dando certo a questão do formulário estou pensando nesta alternativa, o que vc acha?

    • Fabian André Gehrke Says:

      Suzana,

      Tente fazer, provavelmente vai resolver de maneira mais simples.

      O controle de versão pode ser habilitado independente do template de site, é só ir nas configurações de controle de versão da biblioteca.

  14. Suzana Says:

    Também estou achando mais fácil criar o site de novo. Quais recursos não terei mais no site de equipe referente ao de publicação com workflow?

  15. Suzana Says:

    Obrigada Fabian. Realmente o site que tinha escolhido não estava dando certo… Criei sites de equipes e habilitei o recurso do site -> Publicação do SharePoint Server. Agora está funcionando perfeitamente. Mto obrigada!

    Agora estou com outra problema. rsrs

    Estou utilizando a webpart do Visio Web Access, mas já configurei de acordo com vários vídeos que vi na net e de acordo com o próprio site da Microsoft, mas sempre aparece a msg: “Não há nenhum endereço disponível para este aplicativo”. Já inseri a url da biblioteca que contém o organograma, mas mesma assim a mensagem continua.

  16. Adonira Ribeiro Says:

    Fabian, olhei aqui informações sobre os formulário no sharepoint e preciso saber se tu pode me ajudar.
    Criei um formulário no infopath e publiquei ele no sharepoint, mas no meu caso tem uma mudança. Não disponibilizei a lista criada, peguei a url do formulário de adição e coloquei ele como um item no menu de navegação do meu site. Só que não consigo fazer ele publicar esse formulário.
    Ao inves de acessar a lista direta e clicar em adicionar, fiz ele como link no menu de navegação, mas só fica pra quem está logado, preciso publicar para todo tipo de usuário.
    Tu pode me ajudar nessa, dando alguma dica?

    • Fabian André Gehrke Says:

      Adonira,

      Você pode criar uma página e nela colocar a web part de formulário InfoPath, então configue a biblioteca que o seu formulário está publicado. Cada vez que um usuário acessar a página um novo form será criado, ao salvar ou enviar os dados, ele será armazenado na biblioteca que vc configurou.

      No seu link atual vc muda para a url da página q criou para exibir o formulário.

  17. Exibindo Formulários InfoPath em Páginas do Site « Fabian André Gehrke Says:

    […] Para podermos utilizar o formulário InfoPath em uma página, primeiro é necessário publicá-lo em uma biblioteca. Qualquer tipo de formulário InfoPath está apto a ser exibido dessa forma, não precisa de nenhum tratamento especial, apenas estar publicado no SharePoint e associado a alguma biblioteca. Para publicar um formulário InfoPath no SharePoint veja o post Publicando FormulárioárnfoPath no SharePoint. […]

  18. Eduardo Araujo Says:

    Ola Fabian.
    Fiz a pulbicação de um formulário em um ambiente de homologação.
    no entanto, fiz um “restore” do meu site collection no ambiente de produção.
    Só que então, os formulários ainda apontam para o ambiente de homol.
    Abri os mesmos formulários no Design, mas quando vou publicar, lá esta a url do servidor de homol.
    Como poderia fazer esta alteração para que eu consiga publicar estes formulários no ambiente de produção?
    Pode me ajudar?

  19. eduardoaraujoinfo Says:

    Fabio…
    Implamentei alguns formulários em um ambiente de homologação.
    Dai então, fiz o “restore” em ambiente de produção, porem mesmo que eu abra os formularios no Design, quando voiu em publicar, aponta para o servidor de homol.
    É possivel alterar o local de publicação para que eu consiga publicar os formulários no ambiente de prod?

    Pode me ajudar?

    • Fabian André Gehrke Says:

      Eduardo,

      Não conheço formas nativas de fazer isso, até porque quando você coloca as URL no InfoPath são todas absolutas. O que tenho feito em alguns casos é abrir o formulário no InfoPath Designer e alterar para o servidor de produção.

  20. Roberto Lemes Says:

    Olá Fabian!
    Gostaria de saber se tem como imprimir apenas os campos preenchido do formulário, por exemplo, tenho uma tabela 5×5 com os referidos campos, e preenchi apenas 5×3, tem como imprimir apenas 5×3 e eliminar as colunas e linhas que não foram preenchidas? Não sei se você entendeu, mas se você puder me ajudar, agradeço.

  21. Roberto Lemes Says:

    Fabian!

    Obrigado pela dica, resolveu o meu problema, você não quebrou um galho, você arrancou uma árvore, kkkkkkk ….

  22. Breno Teixeira Says:

    Só uma duvida, existe alguma forma de especificar a versão do template do InfoPath quando ele for publicado. Por exemplo, eu tenho acabado de publicar um arquivo e quando mandar exibir a versão, ele mostra versão 1.0; mas queria mesmo era que ao alterar o template do InfoPath e mandasse publica ele

    • Fabian André Gehrke Says:

      Olá Breno,

      Toda vez que vc altera o template e publica ele será atualizado no servidor e os formulário existentes estarão aderentes a ele. Acredito que vc queira manter mais de uma versão do formulário rodando no SharePoint, é isso? Se sim, desculpe mas não conheço nenhuma forma além de você publicar o formulário com outro nome. Se achar alguma coisa que solucione isso, me avise que posto aqui para atualizar o pessoal.

  23. Danilo Nogueira Says:

    Fabian,
    É possível carregar automaticamente o campo “Solicitante” do seu exemplo com o nome do usuário logado? Como?

    • Fabian André Gehrke Says:

      Olá Danilo,

      Você pode usar a função User() para pegar o usuário logado. Depois de gravado o formulário vc pode pegar os campos create by e modified by, principalmente pelo workflow.

  24. Isabella Says:

    O seu site está com algum problema? Não consigo visualizar as figuras com as telas printadas, já tentei com o Chrome e com o IE

  25. Criando Regras no InfoPath de Acordo com o Usuário Logado | Fabian André Gehrke Says:

    […] post Publicando Formulário InfoPath no SharePoint 2010 (https://fabiangehrke.com.br/2011/06/11/publicando-formulrio-infopath-no-sharepoint/) vimos como criar um formulário no InfoPath e publicá-lo no SharePoint, ele será muito […]

  26. Utilizando Conexões no InfoPath para Exibir Dados de Listas do SharePoint | Fabian André Gehrke Says:

    […] do tipo Biblioteca de Formulários. O post Publicando Formulário InfoPath no SharePoint 2010 (https://fabiangehrke.com.br/2011/06/11/publicando-formulrio-infopath-no-sharepoint/) possui mais detalhes de como criar um formulário e publicá-lo no […]

  27. Tamara Says:

    Olá, criei um formulário no InfoPath para uso no trabalho.
    Algumas pessoas enfrentam certas dificuldades para o uso do formulário, para outras funciona normalmente.
    identificamos que em alguns casos o InfoPath não abre se outros programas do Office estiverem abertos (Word, excel, acess…).
    é normal essa que isso ocorra ou existe alguma configuração necessária para que o erro não ocorra?

  28. Mairon Says:

    Olá Fabian, tudo bem?
    Cara, muito bom todos os seus posts, tem me ajudado muito aqui..
    Uma duvida:
    – consegue me explicar um pouco mais da imagem 14, item 7? como que eu faço a concatenação, que campos devo usar? Titulo, data e hora?
    abraço!

    • Fabian André Gehrke Says:

      Oi Marion,

      Depende do como vc quer fazer, para mostrar concatenei os campos DisplayName, Material e a função today(). Isso serve apenas para ter um nome aleatório, outros campos podem ser usados. Para fazer isso clique no botão FX adicione a fórmula e os campos.

  29. Laura Fidelis Says:

    Bom dia Fabian, gostei muito do seu tutorial, é bem didático.
    Segui tudo certinho, consigo publicar no sharepoint, mais ao preencher o formulário, quando vou enviar, dá o seguinte erro:
    “O formulário não pode ser enviado devido a um erro.
    Clique em OK para continuar o preenchimento do formulário. Convém verificar se há erros nos dados do formulário.
    Erro ao usar o formulário. Para obter mais informações, contate o administrador do site.
    ID da Correlação:1ba23ca0-1758-4110-8b9e-96c812a9d39b.”

    Quando volto para a biblioteca, o documento com o formulário está lá, mais quando abro está em branco. Gostaria de ver onde fica o formulário preenchido e como ele é exibido.

    Você sabe dizer do que se trata esse erro?

  30. Gustavo Libório Says:

    Oi Fabian, bom dia,

    Minha dificuldade encontra-se no passo 6, onde eu preciso inserir a url do sharepoint. Sou iniciante e ainda não tenho o sharepoint enterprise instalado. Você tem um tutorial explicando como instalar e configurar?

    Parabéns pelo trabalho!

    Obrigado,

    Gustavo


Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: