Histórico da Página
| Button | ||||
|---|---|---|---|---|
|
API de Window para Geração de Gráficos (003)
Nome Físico: utp/wutapi011.w
Nome do Include com Parâmetros: utp/utapi011.i
Versão de Integração: 003
Objetivo:
Criação de gráficos.
Pré-requisitos:
Homologado para Windows 7 e inferiores.Considerações Gerais
- Esse programa utiliza o OCX ChartFx para geração dos gráficos, para o seu correto funcionamento é necessário instalar o OCX utilizando um dos arquivos .bat existentes no diretório interfac/chartfx do produto;
- O programa pode ser executado a partir da API utapi011 ou pode ser executado diretamente por outro programa;
- A include {utp/utapi011.i} contém as definições das Temp-Table´s que podem ser passadas como parâmetro para a geração dos gráficos;
- Só podem ser construídos no máximo 2 gráficos na mesma aplicação, vide exemplo;
- Maiores informações em relação aos valores e descrições dos atributos podem ser encontradas no HELP do Chart FX(chartfx_com_win_api.chm) que encontra-se no diretório interfac/chartfx da instalação do produto;
- Para visualizar o conteúdo do arquivo chartfx_com_win_api.chm é necessário copiá-lo para um diretório local ou realizar os procedimentos descritos no endereço http://support.microsoft.com/kb/896358;
- Para obter informações sobre as temp-tables que podem ser passadas como parâmetro, deve-se consultar o arquivo docapi/utapi011.doc que encontra-se no diretório de instalação do produto;
- Todos os parâmetros que referem-se a cor devem utilizar os valores gerados ou pela função Progress RGB-VALUE ou pela função interna da API fnc_convColor que faz a conversão das cores disponíveis na utapi011 para o valor RGB adequado;
- Sempre que o desenvolvedor optar por construir gráficos sem utilizar as temp-tables, a responsabilidade de validar os dados informados não é da API;
- Todas as procedures da API retornam, através do RETURN-VALUE, “OK” quando a procedure foi executada com sucesso e “NOK” no caso de algum erro.
- Existe uma limitação do componente ChartFx em relação a impressão de gráficos com o tipo “Pizza”. Os tipos de gráficos (campo GraphType) 1 e 2 não devem ser utilizados como opção inicial de impressão, deve ser utilizado outro tipo de gráfico. Caso haja a necessidade que o gráfico seja do tipo pizza, deve ser setado no desenvolvimento do programa outro tipo de gráfico e após a geração pode ser mudado o gráfico para o tipo pizza, utilizando a opção “Gallery” na guia de controle do componente.
Procedures
DEFINE INPUT PARAMETER hGrafico AS RUN
INPUT “Arial”,
INPUT 10,
INPUT 1,
INPUT True,
INPUT True,
INPUT False). DEFINE INPUT PARAMETER hGrafico AS RUN INPUTFunções
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.
|