Mesfistofeles
-
Total de itens
17 -
Registro em
-
Última visita
Posts postados por Mesfistofeles
-
-
Bom dia Amigos.
Acabei fazendo está variável só que quando vou compílar dá certo mas quando vou executar o programa ele abre só que quando vai entrar no form principal da o seguiine erro: "Is not valid date" "isto não é uma data válida" uso BD Access e acabei até mudandop o campo que era texto para "data/hora" mas ainda assim dá o mesmo erro "is not date valid"
Resumindo: Eu preciso que quando o programa abrir ele mostre em um DBGRID as contas que estão vencendo naquele dia ou seja comparar a data do computador com as datas que foram cadastradas no sistema desde já muito obrigado pela ajuda.Como poderia fazer isso?
var data,atual :TdateTime; begin Maskedit1.Text:=DateToStr(now); data:=StrToDate(datamodule1.VouReceberdatarecebimento.Text); atual:=StrToDate(Maskedit1.Text); if (atual = data) then DBGrid1.Visible:=true; JvNavPaneToolPanel1.Visible:=true; end; end.
-
Boa tarde, Amigo.
Faz assim no botão novo por exemplo você dá um append.
Tipo:
tabela.append
já no botão salvar você faz assim: Em uses coloque "DB" e no botão para salvar faz assim:
if tabela.state in [dsedit,dsinsert] then
tabela.post;
Prontiho o registro depois de salvo permanecerá no form até que você insira um novo registro e assim sicessivamente.Boa sorte quelaquer coisa posta ai.
-
Boa tarde, Amigos.
Instalei a nova versão do VDOPRINT e gostaria de saber como imprimir nele um cupom não fiscal utilizando BD Access, em uma impressora Mecaf.
Antes usava o RaveReports mas as impressões estavam ficando muito lentas, se alguém puder me dar uma luz Eu agradeço.
A já me utilizei dos comandos writeln mas quero aprender a usar o vdo. Dei uam olhadinha nos demos dele e na pasta docs mas não achei uma referencia à 40 colunas.
-
Olá Micheus, bom dia.
Não sei como fazer isto,(upadate) numa adoquery, porque estes campos:
v1:=datamodule1.Dinheirodin.AsCurrency; v2:=datamodule1.Chequecheq.AsCurrency; v3:=datamodule1.Debitodeb.AsCurrency; v4:=datamodule1.Creditocred.AsCurrency;
São na verdade campos de ADOQUERYS distintas já que não consegui fazer um Select SUM em que pudesse ter todos estes campos. Talvez se conseguisse creio que seria mais fácil mas não consegui fazer, por exemplo, da forma que fiz dava um erro. A select abaixo, foi a primeira idéia que tive antes da: "var v1,v2,v3..." que Eu citei logo acima.Select sum (din.cheque,debito,credito] as total from totalmov,venda where datamov:=data_venda;
Mas dá erro diz que a expressão esta errada.
Desde já agradeço pela ajuda.
-
Gostaria saber como faço para saber o total de vendas por dia.
Tentei fazer assim:
var v1,v2,v3,v4 :double; begin datamodule1.qvendacli.filtered:=true; datamodule1.qvendacli.filter:= ('datavenda"); v1:=datamodule1.Dinheirodin.AsCurrency; v2:=datamodule1.Chequecheq.AsCurrency; v3:=datamodule1.Debitodeb.AsCurrency; v4:=datamodule1.Creditocred.AsCurrency; datamodule1.QTotal.Edit; datamodule1.QTotaltotalmov.AsCurrency:=v1+v2+v3+v4; end; end.
Acontece que esta somando todos os valores do Banco de dados e não só o que o cliente vendeu naquele no dia.
Dede de já agradeço a força.
-
Boa tarde
É assim: no botão para inserir um nova compra coloquei o seguinte código:
datamodule2.vendacli.insert;
DBEdit5.text := DateToStr(now);
Ai quando clico em "nova venda" já aparece a data do da venda no form, ai gostaria de saber como faço para usar este dado
a "data da venda" para que quando eu abrisse o form de venda que ele mostrasse só as vendas daquela data (igual ao relógio do windows) por exemplo se do relógio do windows estiver 16/03/2009 o programa mostrasse só as datas daquele dia.
Tentei fazer assim na ADOQUERY:
Select * from vendacli where data;
mas não esta dando certo sei que esta faltando algo mas não tenho idéa do que seja.
-
Boa tarde Micheus.
Muito obrigado o problema era que no access estava como número mesmo coloquei moeda e resolveu!
Valeu
-
Mesfistofeles, perguntinhas básicas...
- qual banco de dados você está usando?
- qual o tipo de dados que você usou no banco para este campo?
- voce adicionou os campos ao dataset. você mexeu na propriedade Currency do field?
- voce colocou alguma formatação na propriedade DisplayFormat?
- está usando o método OnGetText de algum destes fields?
- a "diferença" de duas casas está sendo visualizada na tela do seu projeto ou quando você confere o valor no banco?
boa tarde.
Banco de dados ACCESS
Tipo de dados numerico
sim coloquei currency no field
não coloquei nenhuma formatação no Display Format
Nada de OngetText
As diferenças sim estão sendo visualizadas
-
Boa tarde amigos.
Estou fazeno uma rpotina que multiplíca valores que são inseridos no dbedit acontece que:
1º No que gera o valor por exemplo "R$:16,20" O CAMPO OTAL MOSTRA 1.620,00 SEGUE ABAIXO O CÓDIGO:
Begin
datamodule2.adoitenvalortotal.ascurrency :=
datamodule2.adoitenquant.ascurrency *
datamodule2.adoitenvalorunit.ascurrency;
end;
end.
S: Também gostaria que quando o suario colocasse uma medida por exemplo 0,45 pudesse saisse assim:
0,45 M² MAS ACONTECE QUE O USUÁRIO SÓ ESTA CONSEGUINDO COLOCAR ASSIM NO CAMPO DO DBEDIT:
"45" (Sem 0 e sem vírgula) o código é parecido com o de cima:
Begin
datamodule2.adoitenmetroquadrado.ascurrency :=
datamodule2.adoitenlarfura.ascurrency *
datamodule2.adoitencomprimento.ascurrency;
end;
end.
-
Mesfistofeles, tenho a impressão que aquele cod_item na tabela vendacli está sobrando.Tabela vendacli: Tipo de Dadoscod_item "numerico"
numvenda "autonumeração" que já citei logo acima...
nomecli "texto"
Tabela Item: tipo de dados
num_venda "númerico"
cod_item "numerico"
descrpord "texto"
valorunit "numerico"
valortotal "numerico"
Ai relacionei as duas tabelas fazendo um 1 para muitos da seguinte fôrma:
num_venda (chave primaria) relacionada com numvenda
Como você diz, a relação entre elas é feita pelo campo num_venda e aquele campo só faz sentido na tabela de itens mesmo.
baseado na relação citada acima, este select não está correto mesmo. Deveria ser:Ai lá na adoquery fiz a select * from item where cod_item=:cod_item;Só que ai fica somando toda a tabela e não por cada cliente
select * from item where num_venda = :num_venda
Nem eu sei o que pensar sobre este comentário. Não entendi o que você quiz dizer.Tentei tb fazer um where pelo campo "numvenda" só que ai na medida em que vou mexendo movimentando pelos dados vejo que vai acrecentando um valor que vai aparecendo no dbtext. Não mais o que pensar...Quando você estabelece a relação dos datasets via propriedade DataSource ou MasterSource (depende de que tipo de dataset você usa), é natural que ao mexer o dataset principal (master), o dataset dependente (detail) seja reposicionado (normalmente no início). Assim, para entender melhor este seu último "sentimento", seria necessário saber como voce está "amarrando" os datasets na sua aplicação e que componentes você está usando para a visualização dos dados (se possível uma imagem do layout para uma noção mais correta).
Abraços
Olá Micheus Boa noite !
Acabei de resolver o problema de fato o campo cod_item estava "sobrando mesmo.
COMO RESOLVI
Retirei os clientdataset e mantive os adoquery, coloquei mais um e nomeei ele como "sum" ai fiz :
Select sum (valorunit) as soma from item where num_venda=:num_venda;
Ai funcionou. mas me ocorreu uma dúvida:
Têm como eu fazer este select sum na aoquery items? porque lá eu fiz:
Select * from item where num_venda=:num_venda;
no caso o sum seria como ai? Ou é melhor manter assim mesmo ? No mais obrigado.
-
Seria melhor você postar a estrutura das tabelas. Este SQL está filtrando um item específico.Select * from item where coditem=:codigoitem;Quando você vai filtrar items de determinada coisa (um pedido, por exemplo), para listar, somar ou fazer qualquer outra coisa com eles, o filtro será pelo "código" desta determinada coisa.
Fiz assim no access criei duas tabelas VendaCli (vendas feitas pelo cliente) com chave primaria no "vendacli" tipo de dados: autonumeração nesta tabela têm ainda dois campos
Tabela vendacli: Tipo de Dados
cod_item "numerico"
numvenda "autonumeração" que já citei logo acima...
nomecli "texto"
Tabela Item: tipo de dados
num_venda "númerico"
cod_item "numerico"
descrpord "texto"
valorunit "numerico"
valortotal "numerico"
Ai relacionei as duas tabelas fazendo um 1 para muitos da seguinte fôrma:
num_venda (chave primaria) relacionada com numvenda
Ai lá na adoquery fiz a select * from item where "cod_item=:cod_item;
Só que ai fica somando toda a tabela e não por cada cliente
Tentei tb fazer um where pelo campo "numvenda" só que ai na medida em que vou mexendo movimentando pelos dados vejo que vai acrecentando um valor que vai aparecendo no dbtext. Não mais o que pensar... me ajude por favor
-
Bom dia
Estou fazendo uma tela de venda mas na hora de inserir os produtos de um determinado cliente ele acaba somando com o valor do cliente anterior.
Quando movimento o dbnavigatos todos os campos mudam normalmente até mesmo o dbtext onde esta o campo aggregate do
clientdataset. Na select do adoquery que uso junto com o clientdataset fiz assim.
Select * from item where coditem=:codigoitem;
desde já agradeço a ajuda
-
Boa noite Amigos.
Realmente estava fazendo bobeira obrigado mesmo pelos toques, a parte boa é que aprendi mais com isto... Mass vamos lá, realmente agora consegui fazer com que os valores deêm certo, mais ainda tenho uma dúvida:
Bem, agora né, o sum esta mostrando o valor certo, mas quando tento mover para outro campo, ele continua no mesmo valor não atualiza....
Detalhe: na hora em que fui ativar a query apareceu um aviso pedindo para colocar valores em parametros... ai na base da tentativa e erro. acabei colocando o valor do código de orçameno no caso "37" lá em value, ai, o que aconteceu é isto: não esta atualizando e fica lá parado nos R$:45,00 o que faço para que o valor mude quando mudar de registro?
Agora como ficou a Sql:
Select sum (valora) as total from orcaacab, orcamento where orcaacab.numacab=:orcamento.codigoorca
Group by orcamento.codigoorca ;
Desde já, obrigado pela ajuda.
-
Ainda não esta dando certo....
Olha que estranho agora ele mostra um valor que não têm nada a ver por exemplo aqui era para mostrar R$:40,00 mas esta mostrando r$:120,00 Estou usando esta adoquery, mas o dbgrid onde têm os dados que estão sendo somados pelo sum estão ligados há um adotable.
Select sum (Valora) as soma from OrcaAcab, orcamento where Codigorca.orcamento;
-
Olá Amigos.
Então não sei o que fazer fiz assim e da erro:
Select sum (OrcaAcab.Valora) as ValorAc from NumAcab.OrcaAcab, CodigoOrca.orcamento, where NumAcab.OrcaAcab = : CodigoOrca.orcamento;
Objeto Parameter definido incorretamente. As informações são inconsistentes ou incompletas.
porque será?
-
Boa tarde
Tenho uma dúvida:
Como faço para que o resultados da soma das colunas do dbgrid 1 e 2 (ADOQUERY1,ADOQUERY2) sejam zerados e relacionados ao numero de orçamento da tabela orçamento? (campo codigo autoincremento) ficou assim:
adoquery1
Select sum (Total) as total1 from OrcaAcab;
adoquery2
Select sum (Total) as Total2 from OrcaItems;
Ai fiz isto tb
Select sum (Total) as Valortotal from OrcaAcab group by CodigoOrçamento.orcamento =:CodigoOrçamento;
Ai dá erro:
Objeto Parameter definido incorretamente. As informações são inconsistentes ou incompletas
Avisar a data de vencimento
em Delphi, Kylix
Postado · Editado por Mesfistofeles
Ok dei uma olhada nas sentenças, no caso uso o Between? como poderia fazer usando as sentenças SQL?