Histórico da Página
| Button | ||||
|---|---|---|---|---|
|
API de Envio de compromisso via Outlook (001)
Nome Físico: utp/utapi028.p
Nome do Include com Parâmetros: utp/utapi028.i
Versão de Integração: 001
Objetivo:
Envio de compromisso do tipo reunião via Microsoft Outlook.
Pré-requisitos:
É necessário ter o OUTLOOK com uma versão compatível com o produto. Para mais detalhes consulte a documentação localizada em: https://tdn.totvs.com/pages/releaseview.action?pageId=195301010
Considerações Gerais
- A API recebe como parâmetros valores que correspondem as informações necessárias para envio do compromisso;
- A include {utp/utapi028.i} contém as definições das Temp-Tables que devem ser passadas como parâmetros à API utp/utapi028.p. Sendo que a chamada desta include, como a inclusão de valores, deve ser feita antes da chamada da API utp/utapi028.p;O envio do compromisso é feito através da execução da API utp/utapi028.p;
- A execução da API é dependente do Microsoft Outlook, para o uso da mesma este programa deve estar instalado e o nome do(s) recipiente(s) devem estar no catálogo de endereços, ou então devem ser utilizados endereços de e-mail, e este catálogo deverá estar configurado no computador onde será feito o envio;
- O organizador da reunião será o usuário padrão do Outlook da máquina que fará o envio.
Parâmetros de Entrada
Temp-Table tt-reuniao: possui as definições da mensagem a ser enviada.
* ver Principais Validações da Temp-Table tt-configuracao
Atributo | Descrição |
versao-integracao | Versão de Integração da API |
modelo | Nome do modelo a ser utilizado para criação do arquivo |
senha-modelo | Senha para desproteger o modelo a ser utilizado |
exibir-construcao | Exibir construção do arquivo durante o processo |
imprimir | Imprime o documento |
Temp-Table tt-dados: possui as definições, gerais, sobre cada um dos campos a serem preenchidos no documento.
TEMP-TABLE tt-reuniao | |||
Atributo | Tipo | Formato | Valor Inicial |
i-versao-integracao | integer | ">>9" | |
c-assunto | Char | ||
c-corpo | Char | ||
c-local | Char | ||
c-categoria | Char | ||
dt-dataini | Date | “99/99/9999” | |
dt-horaini | Char | ||
l-lembrete | Logical | No | |
l-diatodo | Logical | No | |
i-duracao | Integer | “9999” | |
i-horaaviso | Integer | ||
i-tipohorario | integer | ||
c-convidadosreq | Char | ||
c-convidadosopc | Char | ||
c-convidadosrec | Char | ||
i-importancia | Integer | ||
i-tipo | Integer | ||
l-periodico | Logical | No | |
i-tipoperiodo | Integer | ||
i-intervalo | Integer | ||
i-diassemana | Integer | ||
i-mesdoano | Integer | ||
i-diadomes | Integer | ||
dt-fimperiodico | date | ||
i-inicioocorrencia | integer | ||
i-ocorrencias | integer | ||
* ver Principais Validações da Temp-Table tt-reuniao
Atributo | Descrição |
i-versao-integracao | Campo usado para verificar compatibilidade entre programa e api |
c-assunto | Campo referente ao assunto do compromisso |
c-corpo | Texto que seguira junto com o compromisso, é o corpo da mensagem |
c-local | Local do compromisso |
c-categoria | Categorias que o compromisso pertence separadas por “;” |
dt-dataini | Data inicial do compromisso em formato mm/dd/yyyy |
c-horaini | Hora de início do compromisso em formato hh:mm:ss |
i-lembrete | Define se deve ser habilitado o lembrete para aviso prévio do compromisso |
i-diatodo | Define se o compromisso ocupa todo o dia (hora de início deve ser informada) |
i-duracao | Duração, em minutos, do compromisso. |
i-horaaviso | Define o tempo, em minutos, para aviso prévio antes do compromisso (a função lembrete deverá estar ativada) |
i-tipohorario | Define como deve ser mostrado o horário 0-Disponível 1-Provisório 2- Ocupado 3-Fora do escritório |
c-convidadosreq | Convidados requeridos separados por “;”, podendo ser usado o nome do catálogo de endereços ou endereço de e-mail. * |
c-convidadosopc | Convidados opcionais separados por “;”, podendo ser usado o nome do catálogo de endereços ou endereço de e-mail.* |
c-convidadosrec | Convidados do tipo recurso separados por “;”, podendo ser usado o nome do catálogo de endereços ou endereço de e-mail. * |
i-importancia | Importância da reunião 0-baixa 1-normal 2-alta |
i-tipo | Tipo do compromisso 0-normal 1-pessoal 2-privado 3-confidencial. |
i-periodico | Define se o compromisso é do tipo periódico, ou seja, se o mesmo tem várias ocorrências. ** |
i-tipoperiodo | Define o tipo de período a ser usado no compromisso.** |
i-intervalo | Define o intervalo entre as ocorrências, como 2 meses 3 dias dependendo do tipo da mesma. ** |
i-diassemana | Máscara que define o(s) dias(s) de semana a serem usados para o compromisso. ** |
i-mesdoano | Define o mês de 1 a 12 para o compromisso. ** |
i-diadomes | Define o dia do mês para o compromisso. ** |
dt-fimperiodico | Data do fim das ocorrências de um compromisso periódico, sobrescreve o valor da variável i-ocorrências. ** |
i-inicioocorrencia | Define o dia de início de ocorrência para certos tipos de períodos como terceira (segunda) de cada mês. ** |
i-ocorrencias | Número de ocorrências de um compromisso periódico. ** |
*O contato deverá existir no catálogo de endereços
** Verificar tópico referente a compromissos periódicos em “Outras informações”.
Temp-Table tt-erros: possui todos os erros encontrados pela API.
TEMP-TABLE tt-erros | |||
Atributo | Tipo | Formato | Valor Inicial |
cod-erro | Integer | ||
desc-erro | Character | x(256) | |
* ver Definição Temp-Table tt-erros
Atributo | Descrição |
cod-erro | Número do erro |
desc-erro | Descrição do erro ocorrido da ut-msgs |
Execução
O programa também executará outras validações referentes a erros específicos que serão abordados na seção “Possíveis erros” deste documento.
Cabe ao programa de origem, verificar a consistência do registro que está sendo enviado.
* ver descrições da Temp-Table tt-reuniao
Parâmetros de Saída
No retorno da execução do utp/utapi028.p, será retornado um dos valores via RETURN-VALUE:
NOK:
Envio do compromisso interrompido, os dados passados como parâmetros, através das Temp-Tables, são inconsistentes ou foram insuficientes;
OK:
Criação do compromisso com sucesso.
No caso do retorno ser NOK, todos os erros encontrados serão retornados através da Temp-Table tt-erros.
Outras Informações
Compromissos periódicos:
Os compromissos periódicos podem ser dos seguintes tipos:
Definições das Temp-Tables a serem utilizadas pela API utp/utapi028.p
Exemplo de Utilização
| Bloco de código | ||
|---|---|---|
| ||
{utp/utapi028.i}
CREATE tt-reuniao.
ASSIGN c-assunto = "Assunto da mensagem"
c-corpo = " Aqui vai um grande texto para o corpo da mensagem"
c-local = " Local qualquer"
dt-dataini = 12/23/2002
l-lembrete = FALSE
c-horaini = "00:00:00"
l-diatodo = FALSE
i-duracao = 800
i-horaaviso = 50
i-importancia = 0
i-tipohorario = 3
c-convidadosreq = "[email protected]"
c-convidadosopc = "João da Silva"
c-convidadosrec = "Luiz Cesar Medeiros Filho;Joao da Silva"
i-tipo =2
c-categoria = "Importante"
/* inicia periódico */
l-periodico = TRUE
i-tipoperiodo = 1
i-diassemana = 127
i-inicioocorrencia = 2
i-intervalo = 2.
run utp/utapi028.p persistent set h-utapi028.
run pi-execute in h-utapi028 (input table tt-reuniao,output table tt-erros).
for each tt-erros:
disp "Erro: " tt-erros.cod-erro skip
"Descrição: " tt-erros.desc-erro format "x(50)".
end.
delete procedure h-utapi028.
|