Ir para conteúdo
Fórum Script Brasil

Mesfistofeles

Membros
  • Total de itens

    17
  • Registro em

  • Última visita

Tudo que Mesfistofeles postou

  1. Só para exemplificar o motivo do erro no seu código: datamodule1.VouReceberdatarecebimento.Text se o valor não estiver assim '20/10/2009' dará erro "is not date valid" Fiz uma alteração no código somente para exemplificar procedure TForm1.BitBtn1Click(Sender: TObject); var data,atual :Tdate; VouReceberdatarecebimento : String; begin VouReceberdatarecebimento := '20/10/2009'; Maskedit1.Text:=DateToStr(now); data:=StrToDate(VouReceberdatarecebimento); atual:=StrToDate(Maskedit1.Text); if (atual = data) then DBGrid1.Visible:=true; JvNavPaneToolPanel1.Visible:=true; end; Entretanto a maneira de fazer isso está errado ... Faça uma busca no forum sobre sentenças SQL para pesquisa de datas no banco http://scriptbrasil.com.br/forum/index.php...ite=select+data abraço Ok dei uma olhada nas sentenças, no caso uso o Between? como poderia fazer usando as sentenças SQL?
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. Boa tarde Micheus. Muito obrigado o problema era que no access estava como número mesmo coloquei moeda e resolveu! Valeu
  9. 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
  10. 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.
  11. Mesfistofeles, tenho a impressão que aquele cod_item na tabela vendacli está sobrando. 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: 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. 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.
  12. Seria melhor você postar a estrutura das tabelas. Este SQL está filtrando um item específico.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
  13. 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
  14. 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.
  15. 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;
  16. 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á?
  17. 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
×
×
  • Criar Novo...