Agenda

07/05/2009

Ola amigos , sem querer folgar teria como ser uma video aula , acho que agente mata mais rapido o chamado !

[#VIDEO-107#]
Carlos Faria

Carlos Faria

Curtidas 0

Respostas

Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Estou com o seu chamado, irei analisar, e juntamente criarei a video sobre o Chamado do Menu. Peço que aguarde um pouco.

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Como te disse sem preça eu espero
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Acabei de assistir a vídeo da Agenda.
  Bom pelo que entendi você quer agendar um horário para que a moto vá ate o cliente, me corrija se estiver errado! Certo ?
  A sua dúvida é como fazer isso ? Daí vem a minha dúvida, como funciona este sistema de terceiro ? Como ele faz ? Como você sabe que as 8:30 (sendo que agora são 7:40), o motoqueiro 1000 vai ter que ir no endereço XXX, no horário YYY, você tem algum form? É gerado um relatório ?  Como o motoqueiro sabe onde e quando ele deve ir ?
  Já estou pensando no seguinte. Criamos um XML para agenda, nele conterá informações do Cliente(endereço,nome, etc) e o horário, e motoqueiro), isso ficará salvo no XML. Aqui acho que seria interessante termos um Timer na aplicação, para ficar verificando este XML dando select, no xml e vendo se ta na hora do motoqueiro ir para o endereço. Porém um timer na tua aplicação ficaria meio chato, como te falei no outro chamado, o que poderiamos fazer era cria um outro EXE, este sim com um  timer, ele fica vendo o XML, caso de a hora de um chamado, disparamos uma mensagem alertando de que tem um cliente a ser atendido, dai criamos uma tela no teu programa, para poderver "Baixar" do XML para o teu banco de dados. Ficou meio confuso ? Acho que sim, e pra mim também esta meio confuso como funcionará esta agenda. Precisamos esclarecer mais um pouco as ideias.
 Fico no aguardo de mais informações.


Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ola Wesley   Vamos la , pode ate ser um outro exe , portem como te disse tem que aparecer na hora agendada ,so isso talves agente salve esse pedido do cliente no xml e quando a rotina chamar o horario ai sim jogamos no banco sql server
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Então irei preparar uma vídeo com :
  Gerando o XML
  Disparando a Mensagem
  Mostrando em uma grid os Horarios dai você em um botão por exemplo, clica nele e gravar no banco de dados.

  Peço que aguarde um pouco.

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Bom dia Wesley Vou aguardar ! Pode preparar sem preça ok
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

ola wesley como vc e o rodrigo sabem eu nunca tennho preça em fechar os chamados mais acho que agora precisamos fechar os meus urgentemente meu contrato se inspira amanha e depois de estar inspirado nem te responder eu consigo mais , pelo menos foi assim no primeiro contrato que eu fiz de 10 chamados
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ok aguardando
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

07/05/2009

Carlos exite mil e uma maneira de preparar Neston, já ouviu isto ???

Então, a maneira mais simples e criar uma tabela com o agendamento com o

IDDacorrida,
DataCadastro,
horaCadastro,
DataAgendada,
HoraAGendada,
IDUSUARIO,


Quando o usuario clicar em agendar vc grava a corrida, pega o id dela e grava na tabela de agendamento com Data e hora de agendamento.


O caminho e este, agora voce precisa implementar algo para que possamos ajudá-lo. DO zero assim sem ter ao menos uma rotina fica complicado.

Bem como você pede uma ideia de como fazer a ideia foi dada. Agora voce tem que entrar em ação para pelo menos tentar colocar em prática !!

Abs !!!






GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ola Rodrigo eu ja tenho o esqueleto disso ai digamos assim   tenho uma tabela de cadastros de pedidos e nele tem um campo do tipo smalldatetime para agendar o problema e que nao sei chamar o pedido se agendado ex para '2009-05-21 20:10:00'          
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

07/05/2009

Coloque um timer no form, Fazendo um select buscando nesta tabela todas as corridas agendadas que estão faltando 30min para ocorrer por exemplo !!!

Abs !!!


GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

seria possivel vc fazer um exemplo em video aula para mim de como fazer isso   uma tabela com dois campo apenas telefone e nome e hora para chamar o form e como chamar esse form ?
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

retificando um exemplinho bem simples mesmo onde eu possa me basear
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

07/05/2009

Carlos desulpe a demora em responder!!

Estou trabalhando nos chamados do FireBird e da Foto. Eles estão tomando um certo tempo. Em breve estarei fazendo o exxemplo para te mandar.

Se quiser tente fazer algo e me enviar assim voce pode ir adiantando algo e eu apenas vejo o uqe esta errado !!

Abs !!


GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Eu respondi no chamado errado mas vamos la     qualquer coisa simples que nao tenha possibilidades de erros pois horario agendado e compromisso serio o usuario do serviço pode chegar atrasado no emprego e etc     uma rotina simplest    telefone nome horaagendada onde se existe uma hora agendada chama o formulario com os dados do cliente
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ue pq vc cancelou o chamado da imprensorra , nao precisava  se vc quizer dar um ok ai por mim ta tudo bem afinal tentamos eu , vc o wesley foram dois chamados mais pode mudar la para concluido ok
GOSTEI 0
Devmedia

Devmedia

07/05/2009

Carlos,
recomendamos que sejam trocadas as informações dos chamados nos seus respectivos, ok!
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

certo   foi um engando responder aqui nesse chamado
GOSTEI 0
Rodrigo Mourão

Rodrigo Mourão

07/05/2009

Olá Amigo,

Estamos trabalhando no seu chamado, porém este é um assutno que está me tirando o sono. rsrsrsrsrsrsrs

Não é tão simples quanto parece pois tem varias variantes como poe exemplo não posso te avisar agora que tem uma corrida para agora, tem que avisar com certo tempo de antecedencia, correto.

Ja passei por time, indo por criar um servico no Windows NT e cheguei a Thread.kkkkk  Mas o problema e mais conceitual.


Poderia me descrver um cenario completo por favor, estilo requisito mesmo. Ex: O funcionario agenda a corrida, seleciona o motoqueiro e coloca data e hora. O sistema salva no banco. Com x minutos de antecedencia o sistema manda uma mensagem informando que x horas tem um corrido para tal lugar. Etc etc etc .

Assim pode ter uma visão mehor do negocio para pode tentar algo mais simples e principalmente eficiente.

Agradeço a compreensão. Fico no aguardo !!


Att,

GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

vamos la   Existem programas de 3º que fazem exatamente essa funcao , vc agenda o dia e hora e e lembrete aparece na tela naquele determinado momento o que estou tentando fazer e justamente isso porem de forma mais simples nao preciso de muito   tem um programinha no baixaki que se chame ane agenda ou agenda nova era   http://www.baixaki.com.br/download/agenda-nova-era.htm  e isso exatamente que eu preciso basta no momento do cadastro do pedido que eu ja tenho pronto e funcionando aqui setar essa opção e no momento agenda aparece o form ?   se ouver necessidade de mais detalhes eu faço uma video ok
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Este chamado esta comigo novamente. Irei gravar uma video pra ti como num post que eu respondi.

Então irei preparar uma vídeo com :
  Gerando o XML
  Disparando a Mensagem
  Mostrando em uma grid os Horarios dai você em um botão por exemplo, clica nele e gravar no banco de dados.
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

ola wesley   fico aguardando entao
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Hoje irei te mandar mais a noite, o exemplo.
  Grato pela compreensão.


Att,

Wesley Y
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Você poderia me passar os campos que você quer na agenda?
  Veja se minha ideia esta indo pelo caminho certo.
  1 - Criar um .exe, que ficará rodando o tempo todo. Nele você irá marcar as corridas? Ou isso será marcado pelo teu sistema? Dai eu vou ter que dar um Select, em uma tabela sua e buscar estas informações ?
  2 - Depois que a estrutura estiver pronta, como vamos fazer para você confirmar a corrida?



   Vamos clarear um pouco mais esta ideia, pode ser ?

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ola wesley para facilitar as coisas vamos fazer o seguinte   vc cria um executavel separado que fica rodando o tempo todo e de preferencia que impeça de ser desligado ou fechado pelo usuario.   vamos gravar poucos dados nessa tabela para facilicatar as coisas    telefone , nome hora e dataagendada ,   temos que interarir ele com o meu sistema mais isso e facil , no vb eu dava um shell ("nomedaaplicacao") aqui deve ser quase isso.   Quando o form corrida agendada abrir , eu tranfiro o telefone dessa alicacao para minha e ai sim o meu sistema tem dados mais completos o resto se faz aqui mesmo   att
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  O exemplo esta quase pronto. Hoje estou terminando ele para você.
  Estou implementando a parte também para que o usuário não consiga fechar o mesmo, ocultar o programa da barra de tarefas ou algo do tipo, estou analisando as diversas possibilidades, e logo retornarei.
  Grato pela compreensão

Att,

Wesley Y
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Irei precisar de um pouco mais de tempo, esta meio chato controlar o tempo da mensagem.

  Grato pela compreeensão.

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ola wesley   tudo bem quando tiver pronto vc da um ok
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
   Obrigado pela compreensão.

Att,

Wesley Y
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,

  Acho que o negócio é bem mais fácio do que estava pensando.  Segue o link
  http://www.4shared.com/file/110676879/76a8abc7/Chamado_Agenda.html

Att,

Wesley Y

GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Estou analizando aqui a principio esta tudo ok porem tem uma falha grave esse projeto tem rodar como um serviço e nao ser fechado de maneira nenhuma se nao da erro como faz isso ?
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Primeiramente peço enormes desculpas pela demora ao responder o chamado, tive problemas pessoais.
  Vamos ao que interessa eu consigo fazer o executável rodar como serviço, mas da um trabalho mais chato fazer isso, porém também consigo fazer o executável não ser fechado. Teria como ser assim? Ou você prefere um Serviço ?
 

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

ola wesley   bom seria melhor funcionar como um serviço ou mesmo um form invivel que aparece na hora da corrida , so te lembrando que apos agendar um horario para um cliente se a empresa nao busca tem que pagar em dobro o cliente entao tem que ser uma coisa que nao fecha de maneira alguma
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Estarei desenvolvendo um serviço então. Peço que aguarde um pouco, devido a complexibilidade.

Att,

Wesley Y
GOSTEI 0
Carlos Faria

Carlos Faria

07/05/2009

Ok Wesley fico aguardando
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

07/05/2009

Olá Carlos,
  Segue forma de como criar um serviço com tua aplicação.

Criando o serviço

Antes de tudo, é claro, você deve ter uma aplicação normal para transformá-la em um serviço. Com ela aberta no Delphi, vá até o menu File / New / Other e escolha o item Service. Veja:

Com o serviço criado (chame o de srvServidor) você deve fazer as seguintes alterações:

Projeto (dpr): o uses Forms deve ser removido e o SvcMgr adicionado. Além disso, o único objeto que deve ser criado na inicialização é o serviço. Veja:


program servicos_teste;

uses
  SvcMgr,
  FrmPrincipal in 'FrmPrincipal.pas' ,
  srvServidor in 'srvServidor.pas' {SERVICO_TESTE: TService};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TSERVICO_TESTE, SERVICO_TESTE);
  Application.Run;
end.

Implementar o método Execute: o serviço possui um método chamado Execute. É nele que você deverá criar a tela principal da sua aplicação. Veja:

Evento do Seriço

procedure TSERVICO_TESTE.ServiceExecute(Sender: TService);
begin
  try CoInitialize(nil);
    Try
      FormPrincipal := TFormPrincipal.Create(Nil);
      FormPrincipal.Show;
    except
      on e: exception do
            ShowMessage('Erro : ' + e.Message);
        end;
        while (not (Self.Terminated)) do
          ServiceThread.ProcessRequests(True);
  finally
    CoUninitialize;
  end;
end;


Instalar o serviço: a instalação de um serviço no windows é feita executando a aplicação com o parâmetro /INSTALL. A desinstalação é feita com o /UNINSTALL. Veja um exemplo:

c:\Servico\servicos_teste.exe /install


Objeto TService

A primeira alteração deve ser feita no objeto TService criado anteriormente. Você precisa definir as seguintes propriedades:

    * DisplayName: nome que aparecerá na lista de serviços;
    * Interactive: define se o serviço poderá se comunicar com o Desktop ou não. Para mostrar um form ou até mesmo uma simples mensagem (ShowMessage, por exemplo), esta propriedade deve estar definida como true.


FormStyle

O form principal de uma aplicação normalmente é do tipo fsMDIForm. Em um serviço você deverá alterar esta propriedade para fsNormal.

Att,

Wesley Y
GOSTEI 0
Devmedia

Devmedia

07/05/2009

Carlos,
a resposta do consultor respondeu sua dúvidas? Podemos encerrar o chamado?
GOSTEI 0
Devmedia

Devmedia

07/05/2009

Carlos,
por falta de retorno estamos mudando o status do seu chamado para concluído. caso ainda tenha dúvidas sobre o assunto desse post, coloque aqui a sua dúvida q o consultor voltará a lhe atender.
GOSTEI 0
POSTAR