Login

Esqueci minha senha

Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
26 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 25 Visitantes :: 2 Motores de busca

alceu11

[ Ver toda a lista ]


O recorde de usuários online foi de 337 em 27/12/2010, 08:00
Brasília
Estamos no Twitter
Nossa Comunidade
Nosso Grupo
Últimos assuntos
» Registrar OCX Windows Seven
Ontem à(s) 16:44 por megasoft

» Criar Variáveis em sequencia
Ontem à(s) 16:37 por megasoft

» No final a Impressora não Ejecta cem corta o papel
Ontem à(s) 16:30 por megasoft

» Ajuda com Imagens no MySQL
Ontem à(s) 16:20 por megasoft

» Instalando MySQL no linux
Ontem à(s) 13:56 por hugo

» Como Criar arquivos de Log`s para certos usuarios
Ontem à(s) 13:55 por hugo

» MySQL X VFP @MEMO
Ontem à(s) 13:53 por hugo

» Dirf
6/2/2012, 06:54 por alceu11

» EXE Instalador Não Executa
5/2/2012, 16:57 por Sub-Zero

» SQL Server Setup
5/2/2012, 13:06 por Sub-Zero

» localizar registro no postgreslq (alterar/incluir)
4/2/2012, 19:21 por mauro victoria

» Saber se existe uma tabela??
4/2/2012, 10:12 por Sub-Zero

» Empacotar arquivos em um único executável
3/2/2012, 14:48 por halisson

» VAGAS ANALISTA DE SISTEMAS - VISUAL FOX
3/2/2012, 08:53 por Nelson Arcas

» Escrever a DATA por extenso
1/2/2012, 23:55 por alceu11

» ActionScript - Introdução
31/1/2012, 19:25 por Fonsecca

» Selecionar campo com mais de 9 caracteres
31/1/2012, 15:45 por marcio

» CEP do BRASIL e dos UFs do brasil com codigo do IBGE para nf - <<<
31/1/2012, 09:20 por alceu11

» Tutorial HTML
30/1/2012, 15:19 por Fonsecca

» PHP + CSS
30/1/2012, 15:09 por Fonsecca

Registrar OCX Windows Seven

29/7/2011, 11:48 por Julio

Bom Dia Pessoal do Forum

Alguem ja teve que registrar alguma OCX no windows seven?
Tentei …

Comentários: 15

Criar Variáveis em sequencia

18/1/2012, 08:19 por BrunoMesquita

Olá pessoal como faço para gerar variáveis em sequencia, tipo: Se tenho 6 registros cria-se 6 …

Comentários: 6

No final a Impressora não Ejecta cem corta o papel

19/1/2012, 06:46 por clima238

bom dia
o seguinte código imprime correctamente, só no fim não ejecta nem corta o papel,
alguem …

Comentários: 1

Ajuda com Imagens no MySQL

25/1/2012, 08:53 por megasoft

Olá vou resumir aqui como estou fazendo.
Código:
xFoto_Prod = …


Comentários: 5

Dirf

4/2/2012, 19:25 por mauro victoria

Boa noite estou com dificuldade de entender o layout da dirf , alguem tem um arquivo txt para que …

Comentários: 1

Estatísticas
Temos 3637 usuários registrados
O último usuário registrado atende pelo nome de reginaldolimas

Os nossos membros postaram um total de 13978 mensagens em 1958 assuntos

consulta sqlexec

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido consulta sqlexec

Mensagem por Campolinainfo em 14/12/2011, 10:02

Olá

Estou com problemas na minha consulta, não consigo fazer um filtro por data.
no exemplo abaixo o thisform.inicio.value é um campo no formato date. o llrecibo só retorna -1. Acredito que falta algum comando pois, no debug a data está vindo como tipo caracter. No bd o campo é Date.

LOCAL llRecibo

llRecibo = SQLEXEC(pnConexao,"select emolumentos, recompe, tfj, descricao, cod_ato, valor_total, periodo, cod_empresa, periodo_fim from taxas_emolumentos "+;
"where taxas.emolumentos.periodo = " + ALLTRIM(thisform.inicio.Value),"Arqemol")


IF llrecibo > 0
SELECT Arqemol
BROWSE
ENDIF




Campolinainfo
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por alceu11 em 14/12/2011, 10:32

Vc disse ke esta vindo como caractere , a funcao dtoc transforma um campo data
em caracter
**
**Codigo
set date briti
set century on
SET NULLDISPLAY TO ""
local mdata
***aqui o comando, so ke vira com as barras 14/12/2011
mdata=Dtoc(thisform.inicio.Value)
sera ke nao e isto nao ?
Where dtoc(Taxa_Emolumentos.periodo)=thisform.incio.value

****
ou
Funcao ctod(nome do campo) ou ctod(nomevariavel)
para pegar o campo que esta em caracter em formatar data
Codigo
local mdata
mdata=ctod(thisform.inicio.Value)

Duvida
o que é isto = taxas.emolumentos.periodo ? ,,parece ke tem algo a mais aki!!!
Nao seria Where Taxa_Emolumentos.periodo=Ctod(thisform.incio.value)

veja no help
set date

***
Antes de rodar poderia fazer assim
select taxa_emolumentos

if taxa_emolumentos.periodo=date()
wait window 'verdadeiro'
else
wait windo 'falso'
endif

alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por Campolinainfo em 14/12/2011, 11:24

olá alceu

eu fiz assim mas não deu

LOCAL llRecibo, lcval01
lcval01=CTOD(thisform.inicio.value)

llRecibo = SQLEXEC(pnConexao,"select emolumentos, recompe, tfj, descricao, cod_ato, valor_total, periodo, cod_empresa, periodo_fim from taxas_emolumentos "+;
"where taxas.emolumentos.periodo = lcval01","Arqemol")

IF llrecibo > 0
SELECT Arqemol
BROWSE
ENDIF


o llrecibo está retornando -1
o teste que vc me passou deu falso.

Campolinainfo
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por alceu11 em 14/12/2011, 11:56

Aki a condicao where esta errado.

llRecibo = SQLEXEC(pnConexao,"select emolumentos, recompe, tfj, descricao, cod_ato, valor_total, periodo, cod_empresa, periodo_fim from taxas_emolumentos "+;
"where taxas.emolumentos.periodo = lcval01","Arqemol")

******** estava . e é taxas_emolumentos.periodo
"where taxas_emolumentos.periodo = lcval01","Arqemol")

*Se deu falso, Vc nao entendeu pq deu Falso,,,pq a data hoje nao igual a data tabela

Select taxa_emolumentos
go top
Browse last normal && veja a data do primeiro registro && ser for 11/11/2011
***Ficaria assim e tera ke da verdadeiro
if taxa_emolumentos.periodo=ctod('11/11/2011') &&PEgue data 1o.registro.
wait window 'verdadeiro'
else
wait windo 'falso'
endif
***
AGORA A SOLUCAO.

Tudo pode ser formatado em propriedades o thisform.inicio.value

vai no objeto, click nele "inicio" ke e um txt, E em proprieades aba data veja a figura
format =E
Value= {}
veja a figura de como formatar
em format [Você precisa estar registrado e conectado para ver esta imagem.]

Se formatar como esta na figura.
o codigo irar funcionar, sem te ke transformar nada


Código:

LOCAL llRecibo

llRecibo = SQLEXEC(pnConexao,"select emolumentos, recompe, tfj, descricao, cod_ato, valor_total, periodo, cod_empresa, periodo_fim from taxas_emolumentos "+;
"where taxas_emolumentos.periodo = " + ALLTRIM(thisform.inicio.Value),"Arqemol")


IF llrecibo > 0
SELECT Arqemol
BROWSE
ENDIF


Última edição por alceu11 em 14/12/2011, 12:10, editado 1 vez(es)

alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por Campolinainfo em 14/12/2011, 12:08

realmente eu tina visto esse erro na condição where, mas ainda não é isso.
o Teste agora deu verdadeiro mas eu não entendi para que serveria esse teste?
e pq o formato é E?
desculpa se as perguntas mas é pq sou iniciante.

Campolinainfo
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por alceu11 em 14/12/2011, 12:14

1-)pergurnta
Set date briti && vc colocou
O teste e ke vc compara e verifica o campo e data, entao se eu pego algo caracter e com ctod transform em data.
E se vc informar a data ke esta no primeiro registro. tera, ke trazer pelo menos um registro..
A logica se eu sei ke te um resultado verdadeiro!!
Na minha consulta com Where me vira...o resultado com certeza. E vai da Certo,Sacou!!!

2*)pergunta resposta
Conforme imagem da resposta anterior a esta...
inicio é Objeto txtbox ke precisara ser formatado. para qdo for para where. ja Va certo

Format= E && dizer ke e data olha no help... format. proprieade
***Edits Date values as British dates
Value={}

alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Resolvido Re: consulta sqlexec

Mensagem por Campolinainfo em 14/12/2011, 15:11

mesmo mudando as propriedades a consulta não deu certo. Retornou o erro de "function argument value, type, or count is invalid".

mas eu consegui de outra forma. Joguei o valor do Thisform.inicio.value em uma variavel acrescentando aspas simples:

lcVal01 = [']+;
ALLTRIM(thisform.inicio.value)+;
[' ]
em seguida executeo o comando com a variavel da seguinte forma

llRecibo = SQLEXEC(pnConexao,"select emolumentos, recompe, tfj, descricao, cod_ato, valor_total, periodo, cod_empresa, periodo_fim from taxas_emolumentos "+;
"where taxas_emolumentos.periodo > " + lcval01,"Arqemol")

e nas propriedades eu só alterei o format do thisfom.inicio para D.
acho que o problema era a falta das aspas, pois fiz uma consulta por dentro do bd no postgre pelo Pgadmin e ela deu certo quando coloque a data entre aspas simples.

Muito Obrigado pela ajuda novamente.

Campolinainfo
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Resolvido RESOLVIDO kibom

Mensagem por alceu11 em 14/12/2011, 15:25

Bom agora ke conseguiu , o postgree com instrucoes SQL ,sempre tem estas aspas. e colchotes nas instrucoes ; e fazendo pelo Admi. direto ja se tem os parametros da instrucao, a se passada

Por isto te passe o link dakele cursor demo com 6 videos, tem um form de pesquisa
de cidades ibge muito bom la........... fazendo um form de pesquisa igual aquele é uma mao na roda.... para este teste ke vc faz.

Num codigo simples so para constar, em vfp. Fica aki um exemplo de filtro de datas
Código:
* codigo filtrando uma data, e depois o periodo
CLOSE DATABASES ALL
SET DEFAULT TO FULLPATH(CURDIR())
Set Safety Off
SET DATE BRITISH
SET CENTURY on
SET DELETED off
Wait Windows  "Gero a Tabela Teste1 65 registros " NOWAIT  noclear
Create table teste1( codigo c(2) , cliente c(40), endereco c(30),datai d(8) )
Select teste1
wdata=DATE()
For i = 1 To 65
Insert Into teste1 (codigo,cliente,endereco,datai) Values ( Alltrim(Str(i,7)), 'cliente '+LTRIM(Str(i)),'endereco'+ STR(i),wdata)
wdata=wdata+1
NEXT

wdt=CTOD('14/12/2011')

SELECT * FROM teste1 WHERE datai=wdt INTO CURSOR lixo
WAIT WINDOW 'somente a data 14/12/2011' TIMEOUT 1
SELECT lixo
IF _tally>0
BROWSE LAST normal
IF USED('lixo')
USE IN lixo
endif
ELSE
WAIT WINDOW 'nao existe registros para o periodo ' TIMEOUT 2
ENDIF

wdt=CTOD('14/12/2011')

WAIT WINDOW 'gerando data maior ke 14/12' TIMEOUT 1
SELECT * FROM teste1 WHERE datai > wdt AND datai < CTOD('24/12/2011') INTO CURSOR lixo
SELECT lixo
BROWSE LAST normal
CLOSE ALL

 WAIT clear

alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


Permissão deste fórum:
Você não pode responder aos tópicos neste fórum