Login
Estamos no Facebook
Buscar
Quem está conectado
Há 7 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 7 Visitantes :: 2 Motores de buscaNenhum
[ Ver toda a lista ]
O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Brasília
| |
Estamos no Twitter

Nossa Comunidade

Nosso Grupo

Últimos assuntos
Top dos mais postadores
| Marcos Guedes | ||||
| hugo | ||||
| alceu11 | ||||
| Julio | ||||
| m@r<3|o | ||||
| mfelis | ||||
| Tales Ruan | ||||
| Nelson Arcas | ||||
| _batmanvfp_ | ||||
| marcio |
Karaoke feito em FoxPro 2.6
23/5/2012, 11:45 por fabiomacarrao
Bom dia a todos. Desenvolvi um programa em FoxPro for windows 2.6 para karaoke. tenho mais de 2700 …
Comentários: 3
Estatísticas
Temos 4048 usuários registradosO último usuário registrado atende pelo nome de fabiomacarrao
Os nossos membros postaram um total de 14433 mensagens em 2047 assuntos
Mostrar resultado da consulta
Página 2 de 2 • Compartilhe •
Página 2 de 2 •
1, 2
Mostrar resultado da consulta
Relembrando a primeira mensagem :
Pessoal
Tenho duas tabelas uma contem as doenças e uma outra tabela que contem os codigo da doença e sintomas:
Tabela de Doença
Doenca sintomas
1 asma (1)
1 bronquite (3)
1 febre (5)
2 asma (1)
2 febre (5)
3 tremor (15)
3 nauseas (6)
Os numeros entre parenteses são os codigos dos sintomas.
Tabela (doenca_sintona) armazeno os codigos de referencia;
doença sintoma
1 1
1 3
1 5
2 1
2 5
Tenho um formulario onde o usuário escolhe os sintomas, por exemplo se escolher os sintomas asma e febre, tenho que mostrar as doenças que contem estes sintomas.
Neste caso teria que mostrar a doença 1 e 2.
Mas nao estou conseguindo relacionar e mostrar esta consulta.
Julio
Pessoal
Tenho duas tabelas uma contem as doenças e uma outra tabela que contem os codigo da doença e sintomas:
Tabela de Doença
Doenca sintomas
1 asma (1)
1 bronquite (3)
1 febre (5)
2 asma (1)
2 febre (5)
3 tremor (15)
3 nauseas (6)
Os numeros entre parenteses são os codigos dos sintomas.
Tabela (doenca_sintona) armazeno os codigos de referencia;
doença sintoma
1 1
1 3
1 5
2 1
2 5
Tenho um formulario onde o usuário escolhe os sintomas, por exemplo se escolher os sintomas asma e febre, tenho que mostrar as doenças que contem estes sintomas.
Neste caso teria que mostrar a doença 1 e 2.
Mas nao estou conseguindo relacionar e mostrar esta consulta.
Julio
Julio- Usuário 5 Estrelas

Re: Mostrar resultado da consulta
mais ó seguiinte ....
esse lance ideal seria criar 3 tabelas onde poderia usar uma chamada diagnosticos doenca + sintoma poderia utilizar como trabalha com seek normal
autonumeracao 1 2 3 4 5 6 doencas
autonumeracao 1 2 3 4 5 6 sintomas
doenca + sintoma 1 - 1 1 - 2 2 - 1 2 - 2 tabela chamada diagonosticos
mesma coisa como se fosse ....
uma atribuicao de usuarios
usuarios = doencas
modulos = sintomas
atribuicao = diagnosticos doencas + sintomas
....
pensando bem ... voce fez um procedimento de cadastro grupal
voce crio um e depois incluiu outro com informacao do primeiro
mais, como o marcos disse seria assim
SELECT descdoenca, descsintoma, observacao ;
FROM tabelaDoenca , tabelasintoma ;
WHERE tabeladoenca.doença = tabelasintoma.doenca ;
into cursor cadlista
Report Form
ou mesmo daria certo ,
trabalhar como trabalha e usar assim um indice na tabela assim tabela sintoma doenca + sintoma vai consiguir ex seek
do jeito que tá voce fez
1 tabela = doenca indice
2 tabela = doenca + sintoma indice da uma conferida se voce fez indice assim
esse lance ideal seria criar 3 tabelas onde poderia usar uma chamada diagnosticos doenca + sintoma poderia utilizar como trabalha com seek normal
autonumeracao 1 2 3 4 5 6 doencas
autonumeracao 1 2 3 4 5 6 sintomas
doenca + sintoma 1 - 1 1 - 2 2 - 1 2 - 2 tabela chamada diagonosticos
mesma coisa como se fosse ....
uma atribuicao de usuarios
usuarios = doencas
modulos = sintomas
atribuicao = diagnosticos doencas + sintomas
....
pensando bem ... voce fez um procedimento de cadastro grupal
voce crio um e depois incluiu outro com informacao do primeiro
mais, como o marcos disse seria assim
SELECT descdoenca, descsintoma, observacao ;
FROM tabelaDoenca , tabelasintoma ;
WHERE tabeladoenca.doença = tabelasintoma.doenca ;
into cursor cadlista
Report Form
ou mesmo daria certo ,
trabalhar como trabalha e usar assim um indice na tabela assim tabela sintoma doenca + sintoma vai consiguir ex seek
do jeito que tá voce fez
1 tabela = doenca indice
2 tabela = doenca + sintoma indice da uma conferida se voce fez indice assim
m@r<3|o- Participante Assíduo

Re: Mostrar resultado da consulta
Sim, existe o indoce na segunda tabela doenca + sintomas.
O que nao to conseguindo fazer é se o usuáriao selecionar tres sintomas ou mais, como fazer para verificar se nas outras existem estes tres sintomas.
Por exemplo se somente dois sintomas forem iguais nao mostra nada. Os tres sintomas ou mais escolhidos que que coincidirem entre si para mostrar as doenças que contem estes sintomas.
julio
O que nao to conseguindo fazer é se o usuáriao selecionar tres sintomas ou mais, como fazer para verificar se nas outras existem estes tres sintomas.
Por exemplo se somente dois sintomas forem iguais nao mostra nada. Os tres sintomas ou mais escolhidos que que coincidirem entre si para mostrar as doenças que contem estes sintomas.
julio
Julio- Usuário 5 Estrelas

Re: Mostrar resultado da consulta
Para poder selecionar mais de uma opção no listbox altere a propriedade MultiSelect para .T.
Para ler os itens selecionados, basei-se neste exemplo:
Obs.: Adicione o código acima num botão, e mude o nome list1 para o nome de seu listbox.
O select deverá ser montado como STRING e depois executado com a função
EXECSCRIPT()

Para ler os itens selecionados, basei-se neste exemplo:
- Código:
edtselected = ""
WITH THISFORM.list1
FOR ln = 1 TO .LISTCOUNT
IF .SELECTED(ln)
*-- Add this to the editbox
m.edtselected = m.edtselected + .LIST(ln) + CHR(13)
ENDIF
NEXT ln
ENDWITH
MESSAGEBOX(edtselected)
Obs.: Adicione o código acima num botão, e mude o nome list1 para o nome de seu listbox.
O select deverá ser montado como STRING e depois executado com a função
EXECSCRIPT()

_________________
Marcos Guedes - Programador e desenvolvedor Web.
Convidado, seja nosso seguidor no Twitter:
twitter.com/programacaobras
Marcos Guedes- Webmaster

Re: Mostrar resultado da consulta
Marcos
Quanto a selecionar esta resolvido.
=============================================
O problema é que não estou conseguindo fazer uma verificação.
O usuário escolhe por exemplo tres sintomas 1-apatia, 5-inchaço, 90-dor (na ordem id_sintoma e descrição).
Na tabela sintomas tenho os codigos das doenças e codigos dos sintomas, preciso varrer esta tabela de sintomas e ver se existem os tres sintomas acima citado, necessariamente precisa ter exatamente os tres sintomas para mostrar o resultado.
Pensei em ir guardando em um cursor temporario, mas nao sei como fazer a conferencia se existe os tres sintomas deste cursor com a tabela sintoms.
julio
Quanto a selecionar esta resolvido.
=============================================
O problema é que não estou conseguindo fazer uma verificação.
O usuário escolhe por exemplo tres sintomas 1-apatia, 5-inchaço, 90-dor (na ordem id_sintoma e descrição).
Na tabela sintomas tenho os codigos das doenças e codigos dos sintomas, preciso varrer esta tabela de sintomas e ver se existem os tres sintomas acima citado, necessariamente precisa ter exatamente os tres sintomas para mostrar o resultado.
Pensei em ir guardando em um cursor temporario, mas nao sei como fazer a conferencia se existe os tres sintomas deste cursor com a tabela sintoms.
julio
Julio- Usuário 5 Estrelas

Re: Mostrar resultado da consulta
ó um exemplo, tenta fazer algo assim , mais inves de dar replace coloque o codigo que mostrara os selecionados :
resumindo. vc vai fazer um verificacao, pela doencas que tem gravado na tabela de sintomas ... e dentro do if excutar o que é acontecer ,
no meu caso ai eu recalculo saldo de produtos, no botão excluir locação
qdo puder colar algo " cole ", dificil palpitar código nas escuras. as vezes a resposta é melhor , olhando o problema pela raiz as vezes um scan ou for tb resolve acho isso depende muito de onde quer mostrar esse resultado, somente uso grid e reporter
- Código:
cCodPed = CADloca1.loca_COD
SELECT cadlocai1
Do While !eof() .AND. cCodPed = cadlocai1.locai_loca && Loop para todos os itens do pedido
sele CADPROD3
if Seek( CADlocai1.locai_PROD ) && Busca dentro do arquivo produto pelo produto do item
replace cadprod3.prod_saldo WITH cadprod3.prod_saldo + cadlocai1.locai_qtlo
endif
sele CADlocai1 && volta para o ITEM e pula para o próximo
SKIP
ENDDO
tabela cadloca = doenca
cadlocai = sintoma
resumindo. vc vai fazer um verificacao, pela doencas que tem gravado na tabela de sintomas ... e dentro do if excutar o que é acontecer ,
no meu caso ai eu recalculo saldo de produtos, no botão excluir locação
qdo puder colar algo " cole ", dificil palpitar código nas escuras. as vezes a resposta é melhor , olhando o problema pela raiz as vezes um scan ou for tb resolve acho isso depende muito de onde quer mostrar esse resultado, somente uso grid e reporter
m@r<3|o- Participante Assíduo

Re: Mostrar resultado da consulta
Pessoal
Consegui Resolver.
O codigo não é o mais perfeito, mas resolveu e atendeu o meu proposito.
Muito obrigado a todos que se dispuseram em ajudar e procurar resolver.
Abraços
Julio
Consegui Resolver.
O codigo não é o mais perfeito, mas resolveu e atendeu o meu proposito.
- Código:
LOCAL contador AS INTEGER
LOCAL itemselecionado AS STRING
m.qtde=0
m.total = 0
FOR m.contador = THISFORM.list3.LISTCOUNT TO 1 STEP -1
m.itemselecionado = THISFORM.list3.LIST(m.contador)
m.direita=RIGHT(m.itemselecionado,3)
m.total = m.total + VAL(m.direita)
ENDFOR
STOR 0 TO TF
SELECT d_doexsin
SET ORDER TO ID_DOENCA
GO TOP
G=STR(id_doenca,10)
DO WHIL .NOT. EOF()
IF G<>STR(id_doenca,10)
TFf=0
ENDIF
SELECT d_doexsin
m.idd=id_doenca
m.ids=id_sintoma
TF=TF+id_Sintoma
IF TF = m.total
SELECT d_doencas
SET ORDER TO ID_DOENCA && STR(ID_DOENCA,10)
GO TOP
SEEK STR(m.idd,10)
m.doenca1=id_doenca
m.doenca2=descricao
m.doenca3=tratamento
m.doenca4=observacao
INSERT INTO d_doetempo (id_doenca,descricao,tratamento,observacao,tipo);
VALUES (m.doenca1,m.doenca2,m.doenca3,m.doenca4,"S")
ENDIF
IF EOF()
EXIT
ENDIF
G=STR(id_doenca,10)
SKIP
ENDDO
Thisform.List3.Clear
DO FORM c:\sistema\form\d_consulta_r
Muito obrigado a todos que se dispuseram em ajudar e procurar resolver.
Abraços
Julio
Julio- Usuário 5 Estrelas

Página 2 de 2 •
1, 2
Página 2 de 2
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum
» Modificar TitleBar e Icone do Executavel.
» Criar atalho, SYS(2020) e Desktop
» Karaoke feito em FoxPro 2.6
» Como separar caminho do diretório?
» Utilizando PHPMailer
» Programador em Visual Foxpro
» Link PHP (Dúvida)
» Fundo do PROJETO Transparente??
» Minimizar , Maximizar e Restaurar
» Pivot Table no sql server
» Scroll EditBox Automatico
» Select Nexval do FoxPro no OracleXE
» Colocar gif na caixa do MESSAGEBOX ()
» Comparar Versões do programa.exe
» Menu lateral
» Fazer com que a tela do sistema assume a janela principal
» Trocar Palavra no Sistema
» invocar Dll em Xbase
» Fechar Porta Aberta