Escolar Documentos
Profissional Documentos
Cultura Documentos
ITAPETININGA-SP
2
2007
3
ITAPETININGA-SP
4
2007
FICHA CATALOGRÁFICA
107p.
Elaborada por:
Comissão Julgadora
Aprovado Reprovado
Orientador: ______________________________________
Examinador: ______________________________________
Examinador: _______________________________________
6
7
AGRADECIMENTOS
RESUMO
Atualmente, muitas clínicas ainda utilizam papel e caneta para atribuições básicas como
agendamento de consultas e exames. Isso leva ao acúmulo de papel e conseqüente má
utilização do espaço físico devido ao crescente número de documentos, assim como pode,
também, gerar dificuldades na leitura por causa de letras ilegíveis. Apresenta-se, através do
projeto aqui proposto uma solução informatizada de Agendamento de Consultas, que
possibilita, por meio de uma interface, a visualização de todos os horários disponíveis da
Clínica e das agendas de todos os profissionais que nela atendem. Dessa forma, podem ser
obtidos além de um melhor controle gerencial da agenda, uma maior agilidade no processo de
negócio agendamento e do processo de negócio da pesquisa de horários pelos usuários do
sistema.
ABSTRACT
Nowadays, many clinics still use paper and pen for basic works like booking and exams. This
makes a big amount of paper and consequent bad uses of the physical space due to the growth
of documents, as well as it could raise objections on reading because of the scrawls. This
Project shows an informatizated solution for booking that allows it by means of an interface,
that visualizate all the Schedule available and the agendas of all the clinic staff. This way, the
datas can be got beyond a better manage control of booking and the schedule’s business
searching process by the users of the system.
LISTA DE FIGURAS
LISTA DE TABELAS
SUMÁRIO
1 INTRODUÇÃO.....................................................................................................................13
2 REVISÃO DA LITERATURA..............................................................................................14
2.1 SISTEMAS DE INFORMAÇÃO...............................................................................17
2.1.1 Vantagens de um Sistema de Informação................................................................18
2.1.2 Dados.......................................................................................................................19
2.1.3 Informação...............................................................................................................19
2.1.4 Sistema.....................................................................................................................20
2.1.5 Elementos do Sistema de Informação......................................................................21
2.1.6 Tipos de Sistemas de Informação............................................................................22
2.1.7 Sistemas de Informação em Saúde..........................................................................26
2.2 BANCO DE DADOS..................................................................................................27
2.3 MICROSOFT ACCESS..............................................................................................29
2.4 INTERFACE...............................................................................................................32
2.5 ERGONOMIA............................................................................................................34
3 METODOLOGIA..................................................................................................................35
3.1 MATERIAIS E MÉTODOS........................................................................................35
3.1.1 Estrutura Física e Lógica.........................................................................................35
3.1.2 Métodos Aplicados...................................................................................................35
3.2 CRONOGRAMA........................................................................................................36
4 RESULTADOS......................................................................................................................37
4.1 APRESENTAÇÃO......................................................................................................37
4.2 OBJETIVOS DO SISTEMA......................................................................................37
4.3 PÚBLICO-ALVO.......................................................................................................37
4.4 DESCRIÇÃO DO SISTEMA ATUAL.......................................................................38
4.5 NECESSIDADES.......................................................................................................38
4.6 DESCRIÇÃO DO SISTEMA PROPOSTO................................................................38
4.7 MODELAGEM...........................................................................................................39
4.7.1 Levantamento de Requisitos....................................................................................39
4.7.2 Diagrama de Casos de Uso......................................................................................43
4.7.3 Diagrama de Classes................................................................................................44
4.7.4 Diagrama de Seqüências..........................................................................................45
14
1 INTRODUÇÃO
Atualmente, o ritmo de vida com celulares, internet, meios de transporte cada vez mais
rápidos e acessíveis, faz com que haja pouco tempo disponível para as pessoas que trabalham,
pois as mesmas, de modo geral, utilizam seu tempo para realizar muitas tarefas.
A grande exigência dos tempos atuais faz com que muitas pessoas utilizem
dispositivos móveis, notebooks etc. É preciso, portanto, ferramentas para facilitar a vida das
pessoas para que ela possa aproveitar de forma muito melhor o tempo que lhe é escasso.
A automação economiza o trabalho das pessoas, facilitando a vida das mesmas. Um
exemplo, na área de saúde e mais especificamente nas clínicas, é o sistema manual de
agendamento de consultas, o qual é muito utilizado até os dias de hoje. Tal sistema é
demorado, trabalhoso, possível de perdas, rasuras e sujeito a erros.
Para agendar uma consulta, o profissional designado para realizar tal tarefa perde
muito tempo verificando a tradicional agenda de papel para encontrar um horário disponível e
adequado ao paciente.
O propósito do presente projeto é agilizar e tornar mais fácil e prática a escolha do dia
e hora das consultas, conforme as necessidades e impedimentos de cada paciente.
O presente trabalho está dividido da seguinte forma: a primeira parte apresenta a
revisão da literatura dos tópicos envolvidos, a parte seguinte descreve a metodologia
empregada, mostrando os equipamentos e as ferramentas utilizados, os métodos aplicados e o
cronograma das atividades.
Em seguida são apresentados os resultados, que mostra entre outras coisas, os
objetivos do sistema, o público-alvo, a descrição do sistema atual, a descrição do sistema
proposto e em seguida a modelagem do sistema. Neste mesmo capítulo é descrito a
implementação e a implantação de um sistema para clínicas odontológicas, médicas ou
veterinárias.
A seção Projeto é subdividida nas partes: Projeto de interface e códigos de programas.
Há ainda uma última seção na qual se relata as discussões e as sugestões para trabalhos
futuros e por último a conclusão do trabalho é apresentada.
16
2 REVISÃO DA LITERATURA
Os profissionais da saúde não podem ficar de fora desse processo de interação com a
“máquina”. A automação dos consultórios é hoje uma realidade impulsionada também pela
competitividade. O fato é que será preciso adaptar-se a essa nova transformação, que não é
apenas virtual.
Ainda segundo Rodrigues (1986), um dos fenômenos mais prevalentes e ainda pouco
apreciados, devido à resistência ao novo, é a introdução da automação no trabalho
profissional/clínico.
Profissionais de todos os níveis consistentemente demonstram tendência a oporem-se
aos sistemas baseados em computador.
Para Ribas e Miranda (1991, p.549): “A nova sociedade que está surgindo, da qual
fazemos parte, sua crescente evolução tecnológica, a valorização da informação como
ferramenta indispensável de trabalho provocam a crescente utilização de computadores”.
Segundo esses autores, dentro da odontologia já se pode notar a sua presença, nas
faculdades e outras instituições representativas da classe, bem como de alguns profissionais
que estão utilizando-se desses equipamentos. A sua difusão tende a aumentar à medida que os
odontólogos tomam conhecimento da sua utilidade e quebram a barreira do medo que existe
em relação ao seu modo de operação.
É impossível falar em informática médica, automação de consultórios e profissionais
da saúde sem citar Sabbatini (1994), que sempre ressalta em seus estudos todas as aplicações
e usos da informática em saúde. E é em um de seus trabalhos que se encontram as idéias dos
sistemas de apoio à decisão médica (bases de conhecimento) que não apenas congregam
especialistas em computação das mais diversas áreas, mas também se apresentam como um
tema já bem estabelecido em Informática Médica, exercendo grande fascínio em todos que, de
uma forma ou de outra, já ouviram falar deles. Dentro desse espírito, e sabendo-se das
limitações existentes no acesso tradicional dos profissionais da saúde à literatura científica
sobre determinados temas, a informática impõe-se como instrumento de eficácia
incomparável.
Ainda para Sabbatini (1994), a necessidade de capacitar os profissionais da saúde em
relação ao uso da informática, para agilizar o processo de gerenciamento de dados e de
atenção à saúde, é questão central para a qualificação técnica.
Diante desse quadro, é preciso ressaltar que esses profissionais agregam valores aos
seus conhecimentos, passam a exercer maior domínio sobre suas fontes de pesquisa, bem
como aprimoram suas áreas de atuação, o que os torna mais capazes e menos dependentes.
18
sem controle e que tal crescimento interno também é reflexo de fora, oriundo de setores que
influenciam os meios de comunicação, a educação, o entretenimento e, mais recentemente, o
comércio, e isso todo profissional atualizado não pode desprezar. Foi vagarosamente que a
Internet chegou às universidades e às faculdades até provar ser uma ferramenta indispensável.
Acredita-se que os profissionais da área de saúde devam participar dessa tendência da
revolução digital, pois, no mínimo, se não reconhecê-la, poderão no futuro não perceber a
existência da tecnologia no dia-a-dia.
O sistema de agendamento de consultas foi a ferramenta escolhida para proporcionar
informação entre clínica, usuários e pacientes, entretanto, antes de relatar este Sistema, se faz
necessário conceituar alguns termos, tais como: Sistema de Informação (SI), Banco de Dados,
Sistema de Gerenciamento de Banco de Dados (SGBD), Microsoft® Access 1, Interface e
Ergonomia.
1
Sistema relacional de administração de banco de dados, desenvolvido pela Microsoft.
20
2.1.2 Dados
De acordo com Oliveira (2002), dados são quaisquer elementos identificados em sua
forma bruta que, por si sós, não conduzem a uma compreensão de determinado fato ou
situação. Toda organização utiliza-se de dados. Por dados entende-se cursos da Universidade,
temáticas de formação, avaliação da formação, entre outros. Porém, esses dados em sua forma
bruta pouco contribuem para a busca de uma visão mais integrada de uma determinada
situação. Para isto, são utilizados dados transformados, que podem se classificar como
informação.
A informação é o resultado do tratamento de dados existentes a cerca de alguém ou de
alguma coisa. A informação aumenta a consistência e o conteúdo cognoscível dos dados
(CRUZ, 1998).
2.1.3 Informação
2.1.4 Sistema
Define-se sistema como sendo a disposição das partes de um todo, que de forma
coordenada formam estrutura organizada, com a finalidade de executar uma ou mais
atividades (CRUZ, 1998).
Conforme Oliveira (2002), os sistemas são compostos por seis componentes: os
objetivos do sistema, as entradas do sistema, o processo de transformação do sistema, as
saídas do sistema, os controles e avaliações do sistema e feedback ou retroalimentação ou
realimentação do sistema (Figura 1).
De acordo com Binder (1994), o Sistema de Informação (SI) é o requisito básico para
a decisão automatizada, pois o processo decisório apóia-se na malha de sistemas de
informação da empresa.
Um Sistema de Informação é um tipo especializado de sistema e pode ser definido de
vários modos. Um modo é dizer que sistemas de informação são conjuntos de elementos ou
componentes inter-relacionados que coletam (entrada), manipulam e armazenam (processo),
disseminam (saída) os dados e informações e fornecem um mecanismo de feedback. A entrada
é a atividade de captar e reunir novos dados, o processamento envolve a conversão ou
transformação dos dados em saídas úteis, e a saída envolve a produção de informação útil. O
feedback é a saída que é usada para fazer ajustes ou modificações nas atividades de entrada ou
processamento (STAIR, 1998).
Os Sistemas de Informação designam a logística indispensável à realização do
processo de informação, a qual não se reduz somente à informática, como poderia parecer
inicialmente. São o conjunto interdependente das pessoas, das estruturas da organização, das
tecnologias da informação (hardware e software), dos procedimentos e métodos que deveriam
permitir às organizações disporem, no tempo desejado, das informações que necessitam (ou
necessitarão) para seu funcionamento atual e para sua evolução (VICO MAÑAS, 1994).
De acordo com Prates (1994) Sistemas de Informação são formados pela combinação
estruturada de vários elementos, organizados da melhor maneira possível, visando atingir os
objetivos da organização. São integrantes dos Sistemas de Informação: a informação (dados
formatados, textos livres, imagens e sons), os recursos humanos (pessoas que coletam,
armazenam, recuperam, processam, disseminam e utilizam as informações), as tecnologias de
informação (o hardware e o software usados no suporte aos Sistemas de Informação), e as
práticas de trabalho (métodos utilizados pelas pessoas no desempenho de suas atividades).
Pode-se observar estes elementos na Figura 2.
24
De acordo com Alter (1992), Laudon e Laudon (2004) e Stair (1998), a seguir são
apresentados os tipos de SI mais relevantes:
Sistemas do nível operacional: dão suporte aos gerentes operacionais, acompanhando
atividades e transações elementares da organização, como vendas, contas a receber, depósitos
à vista, folha de pagamento, concessão de crédito e fluxo de matérias-primas dentro de uma
fábrica.
O principal propósito de um sistema desse nível é responder a perguntas de rotina e
acompanhar o fluxo de transações pela organização. Por exemplo: quantas peças há no
estoque? O que aconteceu com o pagamento de Fulano?
Para responder a perguntas desse tipo, geralmente a informação deve ser de fácil
acesso, atualizada e precisa. Exemplos de sistemas do nível operacional são: o de registro de
depósitos bancários em terminais ou um que acompanhe o número de horas trabalhadas por
dia pelos trabalhadores do chão-de-fábrica.
Neste nível podemos citar o Sistema de Processamento de Transações (SPT): coletam
e armazenam dados sobre transações e às vezes controlam decisões que são executadas como
26
parte de uma transação. Uma transação é um evento organizacional que pode gerar ou
modificar dados armazenados num Sistema de Informação. Ele foi o primeiro Sistema de
Informação que surgiu e é freqüentemente encontrado. Por exemplo, quando pagamos uma
conta com o Cartão de Crédito é o SPT que efetua a transação com a Central e valida o cartão.
Enfim, ele grava as informações e assegura que as mesmas estejam consistentes e disponíveis.
O sistema de Agendamento de consultas é um SPT e pertence ao grupo de sistemas do
nível operacional.
Sistemas do nível de conhecimento: dão suporte aos trabalhadores do conhecimento
e de dados da organização. O propósito desses sistemas do nível é auxiliar a empresa
comercial a integrar novas tecnologias ao negócio e ajudar a organização a controlar o fluxo
de documentos. Exemplos: aplicações sob a forma de estações de trabalho e sistemas de
automação de escritórios.
Aqui podemos citar o Sistema de Automação de Escritório (SAE): ajuda as pessoas a
processar documentos e fornece ferramentas que tornam o trabalho no escritório mais
eficiente e eficaz.
Também pode definir a forma e o método para executar as tarefas diárias e
dificilmente afeta as informações em si. Exemplos deste tipo de Sistema são editores de texto,
planilhas de cálculo, softwares para correio eletrônico e outros. Todas as pessoas que têm em
sua função tarefas como redigir textos, enviar mensagens, criar apresentações, são usuárias de
SAE.
Sistemas do nível gerencial: atendem às atividades de monitoração, controle , tomada
de decisões e procedimentos administrativos dos gerentes médios. As coisas estão indo bem?
– esta é a principal consulta endereçada a esses sistemas. Esses sistemas têm a característica
de produzir relatórios periódicos sobre as operações, em vez de informações instantâneas. Um
exemplo é um aplicativo de controle de realocação que informa os custos totais da mudança,
procura de moradia e financiamento imobiliário para funcionários de todas as divisões da
empresa e indica se os custos reais excederam os orçados.
Alguns sistemas gerenciais apóiam a tomada de decisões não rotineiras. Nesse caso, se
preocupam em responder perguntas do tipo: E se? Como por exemplo: qual seria o impacto
sobre os programas de produção se as vendas dobrassem no mês X? O que aconteceria com
nosso retorno sobre o investimento se a programação da fábrica fosse retardada em seis
meses? As respostas para essas perguntas, quase sempre, exigem dados fora da organização,
bem como dados internos, que não podem ser facilmente retirados dos aplicativos do nível
operacional existentes.
27
Neste nível temos: Sistema de Informação Gerencial (SIG): converte os dados de uma
transação do SPT em informação para gerenciar a organização e monitorar o seu desempenho.
Ele enfatiza a monitoração do desempenho da organização para efetuar as devidas
comparações com as suas metas. As pessoas que o utilizam são os gerentes e as que precisam
monitorar seu próprio trabalho. Um exemplo disto são os relatórios que são tirados
diariamente para acompanhar o Faturamento da empresa;
Sistemas Especialistas (SE): tornam o conhecimento de especialistas disponível para
outros, e ajudam a resolver problemas de áreas em que o conhecimento de especialistas é
necessário. Eles podem guiar o processo de decisão e assegurar que os fatores-chave serão
considerados, e também pode ajudar uma organização a tomar decisões consistentes. As
pessoas que usam estes sistemas são aquelas que efetuam tarefas em que deveria existir um
especialista. Um sistema especialista pode ser, por exemplo, um sistema no qual médicos
dizem os sintomas e são pesquisados, em uma base de conhecimento, os possíveis
diagnósticos;
Sistema de Apoio à Decisão (SAD): ajuda as pessoas a tomar decisões, provendo
informações, padrões, ou ferramentas para análise de informações. Ele pode prover métodos e
formatos para porções de um processo de decisão. Os maiores usuários são os analistas,
gerentes e outros profissionais. Os sistemas que disponibilizam gráficos 3D para
comparativos são exemplos.
Sistemas do nível estratégico: ajudam a gerência sênior a atacar e enfrentar questões
estratégicas e tendências de longo prazo tanto na empresa quanto no ambiente externo. Sua
principal preocupação é compatibilizar as mudanças no ambiente externo com a capacidade
da organização. Quais serão os níveis de emprego em cinco anos? Quais são as tendências de
longo prazo do custo do setor e onde nossa empresa se encaixa? Que produtos deveremos
estar fazendo dentro de cinco anos?
Podemos citar o Sistema de Informações Executivas (SIE): fornece informações aos
executivos de uma forma rápida e acessível, sem os forçar a pedir ajuda a especialistas em
análises de informações. É utilizado para estruturar o planejamento da organização e o
controle de processos, e pode, eventualmente, também ser utilizado para monitorar o
desempenho da organização. Um exemplo são os sistemas que fornecem comparativos
simples e fáceis de Vendas x Estoque x Produção.
Os sistemas de cada nível são especializados para atender cada uma das áreas
funcionais. Embora seja necessário projetar sistemas diferentes para atender aos diferentes
28
níveis e funções da empresa, um número cada vez maior de empresas está descobrindo
vantagens na integração.
A Tabela 1 mostra, resumidamente, de acordo com Laudon e Laudon
(2004), os quatro níveis de Sistemas de Informação, com suas respectiva
funcionalidades e propósitos:
Os sistemas de informação em saúde, de acordo com Leão (2003), surgiram por volta
da década de 60, como de resto surgiram os mais diversos sistemas de computadores de
aplicação comercial. Esses sistemas procuravam, basicamente, atender a demandas
administrativas, tais como controle financeiro da instituição em questão. Com a evolução da
tecnologia da informação, a sua aplicação se expandiu e começaram a surgir sistemas voltados
para aplicações específicas, tais como laboratório e radiologia. No Brasil, os sistemas
administrativos ainda predominam no âmbito hospitalar, em detrimento dos sistemas clínicos.
Além disso, grande parte das instituições de saúde está pouco informatizada. Existem poucos
fornecedores de solução de tecnologia e não há preocupação com padronização entre
sistemas. Os sistemas de informação em saúde, hoje em dia, possuem diversas funções:
Faturamento;
Estoque;
Recepção;
29
Gerência e administração;
Diagnóstico por imagem;
Urgência;
Laboratório;
Ambulatório;
Custos;
Prontuário do paciente.
Hoje em dias os bancos de dados são essenciais para todos os ramos de negócio. São
usados para manter registros internos, apresentar dados ao usuário e clientes, fornecendo
suporte a muitos outros processos comerciais.
Da mesma forma os bancos de dados são encontrados no núcleo de muitas
investigações científicas (O’BRIEN, 2004).
Por se tratar de uma aplicação relativamente pequena, não necessitando assim de um
SGBD de grande porte, o que naturalmente acarretaria numa perda considerável de
desempenho, o banco de dados utilizado pelo sistema de agendamento de consultas é o
Microsoft Access 2003, pois se trata de um banco de dados robusto, no entanto veloz. O que
para uma aplicação de pequeno à médio porte, torna-se suficiente e principalmente por ser um
aplicativo Microsoft, e a plataforma Windows2, onde o sistema trabalha, já possuir
nativamente os drivers3 para sua configuração, não necessitando assim o acoplamento da
aplicação Access junto ao sistema.
O gerenciamento de informações implica a definição das estruturas de armazenamento
das informações e a definição dos mecanismos para a manipulação dessas informações.
Este sistema foi implementado em uma linguagem orientada a objetos, que é uma
abordagem para o desenvolvimento de software que organiza os problemas e suas soluções
como um conjunto de objetos distintos (PFLEEGER, 2004). Facilitando assim seu
desenvolvimento durante as várias fases do ciclo de vida do software, e permitindo uma
expansão de módulos de forma fácil e flexível.
2
Todos os sistemas operacionais Microsoft Windows em todas as versões.
3
São os softwares necessários para a interação apropriada entre o Windows e o hardware. São programas que
são agregados ao sistema operacional.
4
Pacote com vários softwares desenvolvidos pela Microsoft.
5
Tipo de base de dados, utilizada pela Microsoft.
32
6
Base de dados utilizada no Microsoft Access.
7
Sistema Gerenciador de Banco de Dados Relacional, desenvolvido pela Microsoft.
8
Sistema Gerenciador de Banco de Dados, desenvolvido pela Oracle Corporation.
9
Tecnologia padrão de programação para o acesso a banco de dados por meio de uma biblioteca de funções pré-
definidas, criada pelo SQL Access Group.
10
Implementação do Visual Basic da Microsoft incorporada em todos os programas do Microsoft Office.
33
funcionário de criar sistemas utilizáveis, muitos são levados à pensar que esta ferramenta é
limitada apenas à estas aplicações.
Alguns desenvolvedores de aplicação utilizam o Access para o desenvolvimento de
aplicações rápidas (rapid application development), especialmente para a criação de
protótipos e aplicações autônomas que servem como ferramentas para vendedores.
Access é pouco escalável se o acesso aos dados for feito via uma rede, portanto
qualquer aplicação que seja usado por mais de um punhado de pessoas tende à depender em
soluções com base no Cliente-Servidor tais como: Oracle, Microsoft SQL Server ou outro.
Porém, um Access do tipo "front end" (as formas, os relatórios, pedidos de busca e códigos
Visual Basic11 (VB) pode ser usado paralelamente à diversos tipos de "back ends", incluindo o
próprio Access, o Microsoft SQL Server, o Oracle ou qualquer outro produto compatível com
ODBC. Esse método permite ao desenvolvedor a mudança dos dados de uma aplicação
madura para um servidor mais avançado sem sacrificar o projeto em andamento
(WIKIPÉDIA, 2007).
Um dos benefícios do Access do ponto de vista do programador é sua relativa
compatibilidade com o SQL12 – buscas podem ser visualizadas e editadas como sendo
indicações de SQL, e estes por sua parte podem ser usados diretamente em Macros e Módulos
VBA para manipular tabelas do próprio Access. Usuários podem misturar e usar ao mesmo
tempo VBA e Macros para formulários de programação e lógica, além de serem oferecidos
possibilidades com técnicas de orientação-objeto (MORGADO, 2003).
O Access disponibiliza várias funções de exportação e importação (import and export),
que permitem a integração entre o Windows 13 e outras aplicações de plataforma, muitas das
quais podem ser executadas dentro das próprias aplicações ou manualmente pelo usuário
(WIKIPÉDIA, 2007).
A linguagem de programação disponível no access é a Microsoft Visual Basic for
Applications, igualmente à outros produtos da série Microsoft Office.
O Microsoft Access é facilmente aplicado à projetos pequenos porém sofre problemas
de escala com projetos maiores se as aplicações forem mal desenvolvidas.
Todas as buscas no banco de dados, formulários e relatórios são armazenados no
banco de dados, e visando os ideais de um modelo relacional, não há possibilidade de montar
uma hierarquia estruturada fisicamente a partir deles.
11
Linguagem programação produzida pela empresa Microsoft
12
Structured Query Language ou Linguagem de Consulta Estruturada - linguagem de pesquisa declarativa para
banco de dados relacional.
13
Popular família de sistemas operacionais criados pela Microsoft.
34
2.4 INTERFACE
14
Norma ISO para qualidade de produto, que define as características de qualidade de software.
15
Significa "rede de alcance mundial". É um sistema de documentos em hipermídia que são interligados e
executados na Internet.
36
2.5 ERGONOMIA
3 METODOLOGIA
16
Sistema operacional produzido pela Microsoft.
17
Versão do sistema operacional Windows, da Microsoft.
18
Aaplicativo que visa auxiliar os programadores na modelagem de programas e banco de dados.
19
Linguagem de modelagem não proprietária de terceira geração.
20
Processador de texto da Microsoft.
21
Software de gestão de projetos produzido pela Microsoft.
22
Navegador de internet produzido pela Microsoft.
38
Para os requisitos do sistema foi feito uma pesquisa onde foram levantadas informações
de como deveria funcionar o sistema de agendamento e controle de consultas, considerando a
forma de apresentação da agenda e o conteúdo das informações sobre as consultas e os
pacientes.
3.2 CRONOGRAMA
4 RESULTADOS
4.1 APRESENTAÇÃO
4.3 PÚBLICO-ALVO
4.5 NECESSIDADES
O sistema proposto tem como objetivo apoiar o trabalho com informações em clínicas
médicas, veterinárias e odontológicas. Este sistema trabalha com um SGBD Access, com
interfaces adequadas para o uso pelos profissionais da área de saúde. O sistema proposto é
monousuário. Nos itens seguintes, apresenta-se a modelagem do sistema, requisitos, UML e
banco de dados.
41
4.7 MODELAGEM
Todo e qualquer sistema deve ser modelado antes de se iniciar a implementação, entre
outras coisas, por que os sistemas de informação freqüentemente costumam possuir a
propriedade de “crescer”, isto é, aumentar em tamanho, complexidade e abrangência.
Um sistema de informação precisa possuir uma documentação extremamente
detalhada, precisa e atualizada para que possa ser mantido com facilidade, rapidez e de
maneira correta, sem produzir novos erros ao corrigir os antigos. Modelar um sistema é uma
forma bastante eficiente de documentá-lo, mas a modelagem não serve apenas para isso, a
documentação é apenas uma das vantagens fornecidas pela modelagem (GILLEANES, 2004).
definidos para esse sistema atendem de forma ampla as necessidades genéricas de qualquer
clínica, seja, odontológica, médica ou veterinária.
Requisitos Funcionais
23
Cadastro de Pessoa Física.
44
Requisitos Não-Funcionais
Esse diagrama preocupa-se com a ordem temporal em que as mensagens “dados” estão
sendo trocadas em determinado processo. Um Diagrama de Seqüências identifica o evento
gerador do processo modelado, bem como o ator responsável por esse evento e determina
48
como o processo ira transcender e ser concluído por meio da chamada de métodos disparados
por mensagens enviadas entre os objetos (GILLEANES, 2004).
A Figura 7 apresenta o Diagrama de Seqüências do sistema.
4.8 IMPLEMENTAÇÃO
Tabela 2 - Pacientes.
24
Linguagem de programação orientada a objeto desenvolvida na década de 90 pelo programador James
Gosling, na empresa Sun Microsystems.
53
Tabela 3 – Funcionários.
4.8.2 Aplicação
4.9 IMPLANTAÇÂO
4.9.2 Treinamento
4.9.5 Restrições
O sistema tem como algumas de suas restrições, o não funcionamento em Web, que
permitiria que o próprio paciente verificasse as disponibilidades na clínica e agendasse as suas
consultas; outros módulos de funcionalidades, que permitam um controle total, ou maior, de
uma clínica, tais como: controle financeiro, administrativo e funcional.
56
5 PROJETO
A Figura 12, a seguir, apresenta a tela Principal do Sistema, com todos os botões das
funcionalidades do sistema.
58
A tela para Efetuar Consulta Agendada é apresentada na Figura 20. A mesma informa
o dia, o horário, o nome do paciente e o nome do profissional de saúde, abre um campo para a
digitação do Histórico da Consulta, podendo confirmar, prescrever receita. Caso deseje
retornar a tela anterior, usa-se o botão de voltar para retornar.
66
A Figura 25, abaixo, mostra a tela que contém informações sobre o Sistema e os
desenvolvedores do sistema.
70
6 DISCUSSÕES
A sugestão é implementar esse sistema para que funcione via web, possibilitando
assim que o próprio paciente, efetue os agendamentos das consultas, facilitando assim para a
clínica e principalmente para os pacientes.
Além de efetuar atualizações periódicas de modo que o sistema atenda cada vez
mais as necessidades do cliente que implantar o mesmo.
72
7 CONCLUSÕES
REFERÊNCIAS BIBLIOGRÁFICAS
BIO, Sérgio R. Sistemas de informação: um enfoque gerencial. São Paulo: Atlas, 1985.
184p.
BINDER, Fábio Vinícius. Sistema de apoio à decisão. São Paulo: Érica, 1994. 103p.
DATE, C.J. Introdução a sistemas de bancos de dados. 3.ed. São Paulo: Campus, 1986.
FERREIRA, A. B. H. Novo Aurélio século XXI: o dicionário da língua portuguesa. 3.ed. Rio
de Janeiro: Nova Fronteira, 1999. p. 1124.
GILLEANES T. A. Guedes, UML - uma abordagem prática. São Paulo: Novatec, 2004.
320p.
LAUDON, Kenneth C.; LAUDON, Jane Price. Sistemas de informação gerenciais. 4.ed.
São Paulo: Prentice Hall, 2004. 584p.
MORGADO, Flavio. Programando Microsoft Access com VBA. Rio de Janeiro: Ciência
Moderna, 2003. 277p.
PFLEEGER, Shari Lawrence. Engenharia de software: teoria e prática. 2.ed. São Paulo:
Prentice Hall, 2004. 560p.
PRESSMAN, Roger S.. Engenharia de software. 6.ed. - São Paulo: McGraw-Hill, 2006.
720p.
VICO MANÃS, Antonio. Administração da informática. São Paulo: Érica, 1994. 245p.
ANEXOS
77
A.1 Login
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Nome] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
78
End Sub
Private Sub Comando6_Click()
On Error GoTo Err_Comando6_Click
DoCmd.Quit
Exit_Comando6_Click:
Exit Sub
Err_Comando6_Click:
MsgBox Err.Description
Resume Exit_Comando6_Click
End Sub
Private Sub Combinação9_AfterUpdate()
' Encontrar o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação9] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Exit_Comando11_Click:
Exit Sub
Err_Comando11_Click:
If (Err = ERR_OBJNOTEXIST) Or (Err = ERR_OBJNOTSET) Or (Err = ERR_CANTMOVE)
Then
Resume Next
End If
MsgBox Err.Description
Resume Exit_Comando11_Click
79
End Sub
Private Sub Combinação18_AfterUpdate()
' Encontrar o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação18] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
DoCmd.Quit
Exit_Comando2_Click:
Exit Sub
Err_Comando2_Click:
MsgBox Err.Description
Resume Exit_Comando2_Click
End Sub
Private Sub Comando7_Click()
On Error GoTo Err_Comando7_Click
stDocName = "CONSULTA_AGENDA_PROFISSIONAL1"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando7_Click:
Exit Sub
Err_Comando7_Click:
MsgBox Err.Description
Resume Exit_Comando7_Click
End Sub
Else
End If
End Sub
Exit_Comando8_Click:
Exit Sub
Err_Comando8_Click:
MsgBox Err.Description
Resume Exit_Comando8_Click
End Sub
Private Sub Comando15_Click()
On Error GoTo Err_Comando15_Click
stDocName = "CONSULTA_AGENDA_GERAL_DIA_ATUAL"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando15_Click:
Exit Sub
Err_Comando15_Click:
MsgBox Err.Description
Resume Exit_Comando15_Click
End Sub
Private Sub Comando18_Click()
On Error GoTo Err_Comando18_Click
Exit_Comando18_Click:
Exit Sub
Err_Comando18_Click:
MsgBox Err.Description
81
Resume Exit_Comando18_Click
End Sub
Private Sub Comando19_Click()
On Error GoTo Err_Comando19_Click
Exit_Comando19_Click:
Exit Sub
Err_Comando19_Click:
MsgBox Err.Description
Resume Exit_Comando19_Click
End Sub
Private Sub Comando20_Click()
On Error GoTo Err_Comando20_Click
Exit_Comando20_Click:
Exit Sub
Err_Comando20_Click:
MsgBox Err.Description
Resume Exit_Comando20_Click
End Sub
DoCmd.GoToRecord , , acFirst
Exit_Comando30_Click:
82
Exit Sub
Err_Comando30_Click:
MsgBox Err.Description
Resume Exit_Comando30_Click
End Sub
Private Sub Comando32_Click()
On Error GoTo Err_Comando32_Click
stDocName = "calendario"
DoCmd.OpenForm stDocName, , , stLinkCriteria
[Combinação5].SetFocus
Exit_Comando32_Click:
Exit Sub
Err_Comando32_Click:
MsgBox Err.Description
Resume Exit_Comando32_Click
End Sub
DoCmd.GoToRecord , , acFirst
Exit_Comando44_Click:
Exit Sub
Err_Comando44_Click:
MsgBox Err.Description
Resume Exit_Comando44_Click
End Sub
End Sub
Private Sub Comando40_Click()
On Error GoTo Err_Comando40_Click
DoCmd.Close
Exit_Comando40_Click:
Exit Sub
Err_Comando40_Click:
MsgBox Err.Description
Resume Exit_Comando40_Click
End Sub
Private Sub Comando41_Click()
On Error GoTo Err_Comando41_Click
Exit_Comando41_Click:
Exit Sub
Err_Comando41_Click:
MsgBox Err.Description
Resume Exit_Comando41_Click
End Sub
Private Sub Comando42_Click()
On Error GoTo Err_Comando42_Click
Exit_Comando42_Click:
Exit Sub
Err_Comando42_Click:
MsgBox Err.Description
Resume Exit_Comando42_Click
End Sub
Private Sub Comando43_Click()
84
Screen.PreviousControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70
Exit_Comando43_Click:
Exit Sub
Err_Comando43_Click:
MsgBox Err.Description
Resume Exit_Comando43_Click
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Lista47] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação49] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
DoCmd.GoToRecord , , acPrevious
Exit_Comando51_Click:
Exit Sub
Err_Comando51_Click:
MsgBox Err.Description
Resume Exit_Comando51_Click
End Sub
Private Sub Comando52_Click()
On Error GoTo Err_Comando52_Click
DoCmd.GoToRecord , , acNext
Exit_Comando52_Click:
Exit Sub
Err_Comando52_Click:
MsgBox Err.Description
85
Resume Exit_Comando52_Click
End Sub
Private Sub Comando53_Click()
On Error GoTo Err_Comando53_Click
DoCmd.GoToRecord , , acLast
Exit_Comando53_Click:
Exit Sub
Err_Comando53_Click:
MsgBox Err.Description
Resume Exit_Comando53_Click
End Sub
Private Sub Comando54_Click()
On Error GoTo Err_Comando54_Click
DoCmd.GoToRecord , , acNewRec
Exit_Comando54_Click:
Exit Sub
Err_Comando54_Click:
MsgBox Err.Description
Resume Exit_Comando54_Click
End Sub
Private Sub Comando56_Click()
On Error GoTo Err_Comando56_Click
DoCmd.GoToRecord , , acFirst
Exit_Comando56_Click:
Exit Sub
Err_Comando56_Click:
MsgBox Err.Description
Resume Exit_Comando56_Click
End Sub
Private Sub Combinação59_AfterUpdate()
' Encontrar o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação59] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[CPF] = '" & Me![Combinação63] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
DoCmd.GoToRecord , , acFirst
Exit_Comando88_Click:
Exit Sub
Err_Comando88_Click:
MsgBox Err.Description
Resume Exit_Comando88_Click
End Sub
Private Sub Comando89_Click()
On Error GoTo Err_Comando89_Click
DoCmd.GoToRecord , , acNext
Exit_Comando89_Click:
Exit Sub
Err_Comando89_Click:
MsgBox Err.Description
Resume Exit_Comando89_Click
End Sub
Private Sub Comando90_Click()
On Error GoTo Err_Comando90_Click
DoCmd.GoToRecord , , acPrevious
Exit_Comando90_Click:
Exit Sub
Err_Comando90_Click:
MsgBox Err.Description
Resume Exit_Comando90_Click
End Sub
Private Sub Comando91_Click()
On Error GoTo Err_Comando91_Click
DoCmd.GoToRecord , , acLast
Exit_Comando91_Click:
Exit Sub
Err_Comando91_Click:
MsgBox Err.Description
Resume Exit_Comando91_Click
87
End Sub
Private Sub Combinação93_AfterUpdate()
' Encontrar o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação93] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
DoCmd.GoToRecord , , acFirst
Exit_Comando44_Click:
Exit Sub
Err_Comando44_Click:
MsgBox Err.Description
Resume Exit_Comando44_Click
End Sub
End Sub
End Sub
Else
[Nivel_acesso] = "TOTAL"
[Rótulo77].Visible = True
[CRM/CRV/CRO].Visible = True
[Rótulo78].Visible = True
[Especialidade].Visible = True
End If
End Sub
DoCmd.Close
Exit_Comando40_Click:
Exit Sub
Err_Comando40_Click:
MsgBox Err.Description
Resume Exit_Comando40_Click
End Sub
Private Sub Comando41_Click()
On Error GoTo Err_Comando41_Click
Exit_Comando41_Click:
Exit Sub
Err_Comando41_Click:
MsgBox Err.Description
Resume Exit_Comando41_Click
End Sub
Private Sub Comando42_Click()
On Error GoTo Err_Comando42_Click
Exit_Comando42_Click:
Exit Sub
Err_Comando42_Click:
MsgBox Err.Description
89
Resume Exit_Comando42_Click
End Sub
Private Sub Comando43_Click()
On Error GoTo Err_Comando43_Click
Screen.PreviousControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70
Exit_Comando43_Click:
Exit Sub
Err_Comando43_Click:
MsgBox Err.Description
Resume Exit_Comando43_Click
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Lista47] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação49] & "'"
DoCmd.GoToRecord , , acPrevious
Exit_Comando51_Click:
Exit Sub
Err_Comando51_Click:
MsgBox Err.Description
Resume Exit_Comando51_Click
End Sub
Private Sub Comando52_Click()
On Error GoTo Err_Comando52_Click
DoCmd.GoToRecord , , acNext
90
Exit_Comando52_Click:
Exit Sub
Err_Comando52_Click:
MsgBox Err.Description
Resume Exit_Comando52_Click
End Sub
Private Sub Comando53_Click()
On Error GoTo Err_Comando53_Click
DoCmd.GoToRecord , , acLast
Exit_Comando53_Click:
Exit Sub
Err_Comando53_Click:
MsgBox Err.Description
Resume Exit_Comando53_Click
End Sub
Private Sub Comando54_Click()
On Error GoTo Err_Comando54_Click
DoCmd.GoToRecord , , acNewRec
Exit_Comando54_Click:
Exit Sub
Err_Comando54_Click:
MsgBox Err.Description
Resume Exit_Comando54_Click
End Sub
Private Sub Comando56_Click()
On Error GoTo Err_Comando56_Click
DoCmd.GoToRecord , , acFirst
Exit_Comando56_Click:
Exit Sub
Err_Comando56_Click:
MsgBox Err.Description
Resume Exit_Comando56_Click
End Sub
Private Sub Combinação59_AfterUpdate()
' Encontrar o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nome] = '" & Me![Combinação59] & "'"
DoCmd.GoToRecord , , acFirst
Exit_Comando73_Click:
Exit Sub
Err_Comando73_Click:
MsgBox Err.Description
Resume Exit_Comando73_Click
End Sub
Private Sub Comando74_Click()
On Error GoTo Err_Comando74_Click
DoCmd.GoToRecord , , acNext
Exit_Comando74_Click:
Exit Sub
Err_Comando74_Click:
MsgBox Err.Description
Resume Exit_Comando74_Click
End Sub
Private Sub Comando75_Click()
On Error GoTo Err_Comando75_Click
DoCmd.GoToRecord , , acPrevious
Exit_Comando75_Click:
Exit Sub
Err_Comando75_Click:
MsgBox Err.Description
Resume Exit_Comando75_Click
End Sub
Private Sub Comando76_Click()
On Error GoTo Err_Comando76_Click
DoCmd.GoToRecord , , acLast
Exit_Comando76_Click:
Exit Sub
Err_Comando76_Click:
MsgBox Err.Description
Resume Exit_Comando76_Click
End Sub
DoCmd.GoToRecord , , acNewRec
End Sub
DoCmd.GoToRecord , , acFirst
Exit_Comando28_Click:
Exit Sub
Err_Comando28_Click:
MsgBox Err.Description
Resume Exit_Comando28_Click
End Sub
Private Sub Comando29_Click()
On Error GoTo Err_Comando29_Click
DoCmd.GoToRecord , , acPrevious
Exit_Comando29_Click:
Exit Sub
Err_Comando29_Click:
MsgBox Err.Description
Resume Exit_Comando29_Click
End Sub
Private Sub Comando30_Click()
On Error GoTo Err_Comando30_Click
DoCmd.GoToRecord , , acNext
Exit_Comando30_Click:
Exit Sub
Err_Comando30_Click:
MsgBox Err.Description
Resume Exit_Comando30_Click
End Sub
Private Sub Comando31_Click()
On Error GoTo Err_Comando31_Click
DoCmd.GoToRecord , , acLast
93
Exit_Comando31_Click:
Exit Sub
Err_Comando31_Click:
MsgBox Err.Description
Resume Exit_Comando31_Click
End Sub
Private Sub Comando32_Click()
On Error GoTo Err_Comando32_Click
DoCmd.GoToRecord , , acNewRec
Exit_Comando32_Click:
Exit Sub
Err_Comando32_Click:
MsgBox Err.Description
Resume Exit_Comando32_Click
End Sub
Private Sub Comando33_Click()
On Error GoTo Err_Comando33_Click
Exit_Comando33_Click:
Exit Sub
Err_Comando33_Click:
MsgBox Err.Description
Resume Exit_Comando33_Click
End Sub
Private Sub Comando34_Click()
On Error GoTo Err_Comando34_Click
Exit_Comando34_Click:
Exit Sub
Err_Comando34_Click:
MsgBox Err.Description
Resume Exit_Comando34_Click
End Sub
Private Sub Comando35_Click()
On Error GoTo Err_Comando35_Click
DoCmd.Close
Exit_Comando35_Click:
Exit Sub
94
Err_Comando35_Click:
MsgBox Err.Description
Resume Exit_Comando35_Click
End Sub
DoCmd.Close
Exit_Comando39_Click:
Exit Sub
Err_Comando39_Click:
MsgBox Err.Description
Resume Exit_Comando39_Click
End Sub
Private Sub Comando41_Click()
On Error GoTo Err_Comando41_Click
' If [Combinação58] = "" Then
' MsgBox ("O CAMPO NOME DO PACIENTE É OBRIGATÓRIO")
'[Combinação58].SetFocus
' End If
' If [Combinação70] = "" Then
' MsgBox ("O CAMPO NOME DO PROFISSIONAL É OBRIGATÓRIO")
' [Combinação70].SetFocus
' End If
'If [Dt_Consult] = "" Then
' MsgBo x ("O CAMPO DATA É OBRIGATÓRIO")
' [Dt_Consult].SetFocus
' End If
' If [Horario da Consulta] = "" Then
' MsgBox ("O CAMPO HORARIO É OBRIGATÓRIO")
' [Horario da Consulta].SetFocus
' End If
'If [Dt_Consult] < Forms![FORMULARIO PRINCIPAL PROFISSIONAL].[Texto4] Then
'MsgBox ("A DATA DEVE SER MAIOR OU IGUAL A DATA ATUAL!")
'[Dt_Consult].SetFocus
' Else
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
' End If
Exit_Comando41_Click:
Exit Sub
Err_Comando41_Click:
MsgBox Err.Description
Resume Exit_Comando41_Click
End Sub
95
End Sub
End Sub
Private Sub Comando7_Click()
On Error GoTo Err_Comando7_Click
DoCmd.Close
Exit_Comando7_Click:
Exit Sub
Err_Comando7_Click:
MsgBox Err.Description
Resume Exit_Comando7_Click
End Sub
End Sub
DoCmd.Quit
Exit_Comando14_Click:
Exit Sub
Err_Comando14_Click:
MsgBox Err.Description
Resume Exit_Comando14_Click
End Sub
Private Sub Comando16_Click()
On Error GoTo Err_Comando16_Click
96
stDocName = "Execuçao_Consulta"
stLinkCriteria = "[Cod_Consult]=" & "'" & Me![Cod_Consult] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando16_Click:
Exit Sub
Err_Comando16_Click:
MsgBox Err.Description
Resume Exit_Comando16_Click
End Sub
Private Sub Comando17_Click()
On Error GoTo Err_Comando17_Click
stDocName = "Execuçao_Consulta"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando17_Click:
Exit Sub
Err_Comando17_Click:
MsgBox Err.Description
Resume Exit_Comando17_Click
End Sub
Private Sub Comando19_Click()
On Error GoTo Err_Comando19_Click
DoCmd.OpenForm ("Execuçao_Consulta")
DoCmd.GoToRecord , , acNewRec
Forms("Execuçao_Consulta").[Texto4] = Forms("CONSULTA_AGENDA_PROFISSIONAL1").
[Tabela_Pacientes.Nome]
Forms("Execuçao_Consulta").[Cod_Consult] =
Forms("CONSULTA_AGENDA_PROFISSIONAL1").[Cod_Consult]
Forms("Execuçao_Consulta").[Texto6] = Forms("CONSULTA_AGENDA_PROFISSIONAL1").
[Dt_Consult]
Exit_Comando19_Click:
Exit Sub
Err_Comando19_Click:
MsgBox Err.Description
Resume Exit_Comando19_Click
End Sub
Private Sub Comando20_Click()
On Error GoTo Err_Comando20_Click
97
DoCmd.Close
Exit_Comando20_Click:
Exit Sub
Err_Comando20_Click:
MsgBox Err.Description
Resume Exit_Comando20_Click
End Sub
[paciente].SetFocus
' DoCmd.RunCommand acCmdCopy
' Forms![AGENDA DO PROFISSIONAL]![nome1].SetFocus
' DoCmd.RunCommand acCmdPaste
DoCmd.OpenForm "Execuçao_Consulta"
DoCmd.GoToRecord , , acNewRec
End Sub
Set rs = Me.Recordset.Clone
rs.FindFirst "[Dt_Consult] = #" & Format(Me![Combinação31], "mm\/dd\/yyyy") & "#"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
stDocName = "Execuçao_Consulta"
98
Exit_Comando31_Click:
Exit Sub
Err_Comando31_Click:
MsgBox Err.Description
Resume Exit_Comando31_Click
End Sub
Private Sub Comando32_Click()
On Error GoTo Err_Comando32_Click
stDocName = "Execuçao_Consulta"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
Else
If [Dt_Consult] > Forms![FORMULARIO PRINCIPAL PROFISSIONAL]![Texto10] Then
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA ESTA
AGENDADA PARA UMA DATA FUTURA!")
Else
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA JÁ FOI
REALIZADA OU O PACIENTE FALTOU!")
End If
End If
Else
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA PERTENCE A
OUTRO PROFISSIONAL!")
End If
Exit_Comando32_Click:
Exit Sub
Err_Comando32_Click:
MsgBox Err.Description
Resume Exit_Comando32_Click
99
End Sub
Exit_Comando33_Click:
Exit Sub
Err_Comando33_Click:
MsgBox Err.Description
Resume Exit_Comando33_Click
End Sub
End Sub
End Sub
Private Sub Comando7_Click()
On Error GoTo Err_Comando7_Click
DoCmd.Close
Exit_Comando7_Click:
Exit Sub
Err_Comando7_Click:
MsgBox Err.Description
Resume Exit_Comando7_Click
End Sub
End Sub
DoCmd.Quit
Exit_Comando14_Click:
Exit Sub
Err_Comando14_Click:
MsgBox Err.Description
Resume Exit_Comando14_Click
End Sub
Private Sub Comando16_Click()
On Error GoTo Err_Comando16_Click
stDocName = "Execuçao_Consulta"
stLinkCriteria = "[Cod_Consult]=" & "'" & Me![Cod_Consult] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando16_Click:
Exit Sub
Err_Comando16_Click:
MsgBox Err.Description
Resume Exit_Comando16_Click
End Sub
Private Sub Comando17_Click()
On Error GoTo Err_Comando17_Click
stDocName = "Execuçao_Consulta"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Comando17_Click:
Exit Sub
Err_Comando17_Click:
MsgBox Err.Description
Resume Exit_Comando17_Click
End Sub
Private Sub Comando19_Click()
On Error GoTo Err_Comando19_Click
DoCmd.OpenForm ("Execuçao_Consulta")
DoCmd.GoToRecord , , acNewRec
Forms("Execuçao_Consulta").[Texto4] = Forms("CONSULTA_AGENDA_PROFISSIONAL1").
[Tabela_Pacientes.Nome]
101
Forms("Execuçao_Consulta").[Cod_Consult] =
Forms("CONSULTA_AGENDA_PROFISSIONAL1").[Cod_Consult]
Forms("Execuçao_Consulta").[Texto6] = Forms("CONSULTA_AGENDA_PROFISSIONAL1").
[Dt_Consult]
Exit_Comando19_Click:
Exit Sub
Err_Comando19_Click:
MsgBox Err.Description
Resume Exit_Comando19_Click
End Sub
Private Sub Comando20_Click()
On Error GoTo Err_Comando20_Click
DoCmd.Close
Exit_Comando20_Click:
Exit Sub
Err_Comando20_Click:
MsgBox Err.Description
Resume Exit_Comando20_Click
End Sub
[paciente].SetFocus
DoCmd.OpenForm "Execuçao_Consulta"
DoCmd.GoToRecord , , acNewRec
End Sub
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Dt_Consult] = #" & Format(Me![Combinação31], "mm\/dd\/yyyy") & "#"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
stDocName = "Execuçao_Consulta"
Exit_Comando31_Click:
Exit Sub
Err_Comando31_Click:
MsgBox Err.Description
Resume Exit_Comando31_Click
End Sub
Private Sub Comando32_Click()
On Error GoTo Err_Comando32_Click
stDocName = "Execuçao_Consulta"
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.GoToRecord , , acNewRec
Forms![Execuçao_Consulta]![Texto4] = Forms!
[CONSULTA_AGENDA_ATRAVES_CALENDARIO]![paciente]
Forms![Execuçao_Consulta]![Texto6] = Forms!
[CONSULTA_AGENDA_ATRAVES_CALENDARIO]![Dt_Consult]
Forms![Execuçao_Consulta]![Cod_Consult] = Forms!
[CONSULTA_AGENDA_ATRAVES_CALENDARIO]![Cod_Consult]
Forms![Execuçao_Consulta]![medico2] = Forms!
[CONSULTA_AGENDA_ATRAVES_CALENDARIO]![Texto35]
Else
If [Dt_Consult] > Forms![FORMULARIO PRINCIPAL PROFISSIONAL]![Texto10] Then
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA ESTA
AGENDADA PARA UMA DATA FUTURA!")
Else
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA JÁ FOI
REALIZADA OU O PACIENTE FALTOU!")
End If
103
End If
Else
MsgBox ("IMPOSIVEL REALIZAR ESTE ATENDIMENTO,ESTA CONSULTA PERTENCE A
OUTRO PROFISSIONAL!")
End If
Exit_Comando32_Click:
Exit Sub
Err_Comando32_Click:
MsgBox Err.Description
Resume Exit_Comando32_Click
End Sub
End Sub
Private Sub Comando33_Click()
On Error GoTo Err_Comando33_Click
DoCmd.Close
Exit_Comando33_Click:
Exit Sub
Err_Comando33_Click:
MsgBox Err.Description
Resume Exit_Comando33_Click
End Sub
DoCmd.Close
Exit_Comando8_Click:
Exit Sub
Err_Comando8_Click:
MsgBox Err.Description
104
Resume Exit_Comando8_Click
End Sub
DoCmd.OpenForm ("FORMULARIO_PRESCREVER_RECEITAS")
DoCmd.GoToRecord , , acNewRec
Forms("FORMULARIO_PRESCREVER_RECEITAS").[Dt_Consult] =
Forms("Execuçao_Consulta").[Texto6]
Forms("FORMULARIO_PRESCREVER_RECEITAS").[Cod_Consult] =
Forms("Execuçao_Consulta").[Cod_Consult]
Forms("FORMULARIO_PRESCREVER_RECEITAS").[Cod_Pac] =
Forms("Execuçao_Consulta").[Cod_Pac1]
Forms("FORMULARIO_PRESCREVER_RECEITAS").[CRM/CRV/CRO] =
Forms("Execuçao_Consulta").[CRM/CRV/CRO1]
Forms("FORMULARIO_PRESCREVER_RECEITAS").[Texto12] = Forms("Execuçao_Consulta").
[Texto4]
Forms("FORMULARIO_PRESCREVER_RECEITAS").[Texto14] = Forms("Execuçao_Consulta").
[medico2]
Exit_Comando9_Click:
Exit Sub
Err_Comando9_Click:
MsgBox Err.Description
Resume Exit_Comando9_Click
End Sub
Private Sub Comando10_Click()
On Error GoTo Err_Comando10_Click
DoCmd.Close
Exit_Comando10_Click:
Exit Sub
Err_Comando10_Click:
MsgBox Err.Description
Resume Exit_Comando10_Click
105
End Sub
DoCmd.Close
Exit_Comando22_Click:
Exit Sub
Err_Comando22_Click:
MsgBox Err.Description
Resume Exit_Comando22_Click
End Sub
End Sub
DoCmd.Close
Exit_Comando22_Click:
Exit Sub
Err_Comando22_Click:
MsgBox Err.Description
Resume Exit_Comando22_Click
End Sub
End Sub
Private Sub Comando26_Click()
On Error GoTo Err_Comando26_Click
DoCmd.GoToRecord , , acFirst
Exit_Comando26_Click:
Exit Sub
Err_Comando26_Click:
MsgBox Err.Description
Resume Exit_Comando26_Click
End Sub
Private Sub Comando27_Click()
On Error GoTo Err_Comando27_Click
DoCmd.GoToRecord , , acNext
Exit_Comando27_Click:
Exit Sub
Err_Comando27_Click:
MsgBox Err.Description
Resume Exit_Comando27_Click
End Sub
Private Sub Comando28_Click()
On Error GoTo Err_Comando28_Click
DoCmd.GoToRecord , , acPrevious
Exit_Comando28_Click:
Exit Sub
Err_Comando28_Click:
MsgBox Err.Description
Resume Exit_Comando28_Click
End Sub
Private Sub Comando29_Click()
On Error GoTo Err_Comando29_Click
DoCmd.GoToRecord , , acLast
Exit_Comando29_Click:
Exit Sub
Err_Comando29_Click:
MsgBox Err.Description
Resume Exit_Comando29_Click
End Sub
Private Sub Combinação33_AfterUpdate()
107
Set rs = Me.Recordset.Clone
rs.FindFirst "[Dt_Consult] = #" & Format(Me![Combinação35], "mm\/dd\/yyyy") & "#"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
108
“Medicamento”, onde deverá ser descrito o medicamento e outro campo “Posologia”, onde
deverá ser descrita a forma de uso do medicamento. O usuário poderá visualizar, através do
botão “RECEITAS ANTERIORES, as Receitas prescritas anteriormente para esse Paciente.
Após o preenchimento dos campos o usuário deverá clicar no botão “GRAVAR E
IMPRIMIR”, onde a Receita será armazenada, visualizada na tela e após um click em
“CONFIRMAR IMPRESSÃO”, será impressa em impressora, para entrega ao Paciente.
Depois teremos o botão “AGENDAR CONSULTA”, onde o usuário insere o nome do
Paciente, caso o Paciente não seja cadastrado o usuário deverá cadastrá-lo antes de efetuar o
agendamento, em seguida insere-se o nome do Profissional que irá efetuar a Consulta, depois
escolhe-se a Data da Consulta e o Horário da Consulta, clique em “CONFIRMAR” e a
Consulta já está agendada.
O botão “CADASTRAR PACIENTE”, ao ser clicado, abre um formulário para que o
usuário insira todos os dados do Paciente, após inserir os dados click no botão “SALVAR”,
representado por um disquete e o Paciente já está cadastrado.
O botão “CADASTRAR FUNCIONÁRIO”, ao ser clicado, abre um formulário para
que o usuário insira todos os dados do Funcionário, após inserir os dados click no botão
“SALVAR”, representado por um disquete e o Funcionário já está cadastrado.
Por ultimo, temos o botão “EFETUAR BACKUP”, onde ao ser clicado irá solicitar o
local onde deseja efetuar o Backup e ao confirmar, será efetuado uma cópia do banco de
dados no local determinado. Recomenda-se que o Backup seja efetuado diariamente, afim de
evitar perdas dos dados.
B.3. Ajuda
Desenvolvedores do sistema:
Franco Fileppo Leto: Tel.: (015) 9711-XXXX
E-mail: franco@ig.com.br
Marcelo do Amaral Guedes: Tel.: (015) 9781-XXXX
E-mail: marcelo@ig.com.br