Ir para conteúdo
Fórum Script Brasil

K!ko

Membros
  • Total de itens

    106
  • Registro em

  • Última visita

Tudo que K!ko postou

  1. Ficara mais ou menos assim Primeiro voce define um array com duas dimensões ( var MeuArray: array of array of Integer; ) depois voce define o tamanho dos indices do array ( SetLength(MeuArray,CDS_Query1.RecordCount,15); ) depois disso é só trabalhar com os indices abraço Agora ficou claro... funfo beleza.... Obrigado Jhonas! abraço
  2. Brow... eu fiquei um tanto confuso em algumas partes do código... se não for pedir muito, teria como explica-lo? Como ficaria se eu fosse montar algo com seu exemplo usando o recordcount de um ClientDataSet pra indicar as linhas e que o mesmo array tivesse 15 colunas? Obrigado pela atenção Abraço.
  3. Bom dia senhores. Seguinte... eu preciso criar uma matriz no meio do evento do um determinado componente, um BitBtn pra ser mais preciso. Por exemplo: procedure TFRelMov_Cob.BitBtn3Click(Sender: TObject); type data = array[1.. 15] of string; type sum = array[1.. 2,1.. 15] of integer; var {Variáveis}; Begin //Linhas de código //Criar a matriz aqui. <<<<<<<<< //Restante dos códigos end; não sei se fui claro com meu exemplo, mas preciso criar a matriz no meio do código pois o nº de linhas da mesma deve ser o nº de registros resultantes de um select que já esta no código e só sei criar matrizes e vetores usando o "Type" como esta no exemplo. agradecido desde já.
  4. Opa... deu certo brow... era exatamente isso que eu queria... Muito obrigado! Tópico Resolvido!
  5. K!ko

    Ajuda com filtro

    O que você pode fazer é, dependendo de como esta em seu banco, setar tudo como maiusculo ou tudo como minusculo no filtro. Ficaria assim para maiusculo: DMdados.TBCadCliente.Filtered:=False; DMdados.TBCadCliente.Filter:= 'nome LIKE'+QuotedStr('%' +UpperCase(Consulta) + '%'); DMdados.TBCadCliente.Filtered:=True; e assim pra minusculo: DMdados.TBCadCliente.Filtered:=False; DMdados.TBCadCliente.Filter:= 'nome LIKE'+QuotedStr('%' +LowerCase(Consulta) + '%'); DMdados.TBCadCliente.Filtered:=True; Eu sugiro que ao gravar algum registro em seu banco, ou grave tudo em maiusculo ou grave tudo em minusculo... para facilitar as buscas posteriormente. Ai quando você for mostrar algum registro você arruma o display dele da forma que você quiser. Abraço.
  6. Bom Dia Senhores. Seguinte... eu estou fazendo uso do componente RxMemoryData em uma rotina, e nesse trabalho surgiu algumas dúvidas quanto ao uso deste componente... 1º ele aceita e/ou faz uso de "Order By" em sua propriedade Filter? Eu cheguei a usar Order By em seu filter, mas não obtive o resultado esperado. Agora não sei se ele não permite ou eu fiz errado, pois ele não acusou nenhum erro. 2º existe alguma forma de atribuir os valores de um RxMemoryData para uma ADOQuery, usando assign, por exemplo, pra depois eu ordenar os valores dos campos e depois ainda atribuir os valores devolta para o RX? O que eu queria na verdade é Ordenar os valores que estão no RX por determinado campo... mas nas formas que tentei não consegui. Alguém pode me ajudar? Grato desde já.
  7. Não havia pensado nisso antes... Vou fazer o teste... ai já mato se o problema é o S.O. uma distro que boote direto do cd de instalação já deve dar pra ver não é?? Vlws.... abraço.
  8. hummm... Sendo assim terei um pouco mais de trabalho... de qualquer forma Obrigado pela atenção. abraço.
  9. Boa Tarde Senhores. Seguinte... em algumas rotinas dos sistemas desenvolvidos na empresa onde trabalho, nós fazemos o uso do componente RDPrint para realizar impressões em impressoras matricias. Atualmente eu tenho me deparado com o seguinte problema relacionado com este componente: Por exemplo: eu tenho aqui uma rotina que imprime nota fiscal usando RDprint, que desenvolvi me baseando em testes de impressão realizados numa Epson FX-1170. Fui ajustando o código conforme os testes iam sendo realizados, sendo que no final ficou corretamente ajustado ao layout da Nota Fiscal, sendo esta impressa na Epson FX-1170. No entanto, quando imprimo esta mesma Nota Fiscal numa LX-300, por exemplo, a impressão fica totalmente fora do layout da NF. Não sei se isto é comum mas acho estranho já que a impressão no RDprint tem como base a quantidade de linhas e colunas e o espaçamento usado entre os caracteres, além do tamanho da fonte usado, que formam juntos a área útil de impressão, tornando esta última a mesma pra qualquer impressora. É comum ocorrer esta diferença na impressão dependendo da impressora que se usa ou existe algo que se possa fazer pra resolver isto neste caso? Quer dizer... eu desenvolvo o código pra imprimir na impressora que o cliente tem hj e se amanha o cara troca a impressora eu terei que desenvolver tudo outra vez? Se alguém puder me ajudar com essa dúvida... grato desde já.
  10. Não... eu possuo uma placa de vídeo of... a mobo não está shareando RAM pra vídeo. você sabe o que pode ser neste caso?? agradecido desde já.
  11. Bom dia senhores. Bom... minha maquina possuia 2 pentes de RAM DDR2 de 512mb (400mhz) e sua BIOS estava configurada pra trablhar com essas memóias. Nesse fds eu comprei 2 pentes de memória RAM DDR2 de 2GB (800mhz) cada um, que deveriam trabalhar em dual channel. Fiz todo o processo da instalação das novas memórias em meu pc e configurei as propriedades da BIOS referentes a memória. ao ligar o pc foi tudo ok na identificação dos periféricos pela BIOS, foi reconhecido os 4GB de RAM, no entanto na identificação feita pelo WINDOWS mostra apenas 3,5 GB de RAM, tanto nas propriedades de "meu computador" quanto em qualquer comando que mostre essa informação, como o "dxdiag" por exemplo. Aparentemente fiz tudo certo (eu acho) e minha placa mãe suporta essas memórias novas. Alguém sabe o que pode estar ocorrendo? É possível que mesmo com a BIOS reconhecendo os 4GB a maquina trabalhe com apenas 3,5GB ?
  12. Vlw Jhonas. Eu consegui fazer... ficou igual ao que você postou, só que com pequenas diferenças, usei uma variável chamada "cont" em vez de "i" e usei "if Components[cont] is TDBedit then" em vez de "if Components is TEdit then". memo assim... muito obrigado. Tópico Resolvido. abraço
  13. Olá Senhores.... Eu preciso fazer uma verificação num form para saber se existe algum campo vazio no mesmo e, caso exista, relatar ao usuário que o mesmo deve ser preenchido. Alguém conhece alguma função que torne essa rotina simples?... quero dizer... sem verificar campo a campo, com "if campo = '' then" por exemplo. Grato.
  14. Com oque você ta fazendo você ta verificando, na verdade, se seu campo DURACAO é igual a '%B%', e não se exite um B nele. tenta fazer essa linha: If (table1DURACAO.asString = ('%'+'B'+'%')) THEN dessa forma: if pos('B',tabela1DURACAO.asSTRING) > 0 then com isso você procura se tem um ou mais "B" no campo DURACAO. abraço
  15. O fato de você estar "andando" ou clicando no grid daria na mesma, de qualquer forma você estária selecionando um registro específico na sua query. esste TEXT que você se refere é oque exatamente? que componente? você chegou a testar da forma que sugeri? abraço
  16. Ok Micheus! Funcionou perfeitamente! Tópico resolvido! Obrigado :D
  17. Obrigado pelas dicas Micheus. Irei testar e volto a postar ao obter o resultado. abraço.
  18. Sendo assim o problema está resolvido... Se fosse possível, eu gostaria de saber como liberar o relatório da memória naquele código que comentei em outro post... onde eu verifico se ele está ou não na memória e caso estiver relato isto ao usuário dizendo que o relatório já esta sendo exibido. Isto só funciona na 1ª vez que gero o relatório... ao fecha-lo e abri-lo novamente ele não é liberado da memória, por tanto a mensagem persiste em aparecer toda vez... agradecido.
  19. se você ta querendo mostrar o pagamento e o deposito que foram feitos no mesmo dia, troque a seguinte linha Sql.Add('where (Pagamento = Current_Date) and depositado = Current_date'); por Sql.Add('where Pagamento = depositado'); para isso você deve colocar alguma coisa pra indicar quando é parcela e quando é cheque, tipo um radiogroup, e dpois implementar a verificação antes do select. abraço.
  20. Sim, É esta a versão que uso... QuickReport 3.5.1 Standard for Delphi 5. você acha que o problema esta relacionado a algum bug do QR? abraço.
  21. Realmente isto resolve o problema... mas existe uma outra possibilidade que pode gerar erro... supomos que nosso usuário, que é perito em encontrar falhas, gere o preview do relatório e em seguida o minimize e acesse a tela onde existe o botão que gera o relatório (O preview possibilita isso, diferente do PreviewModal, que prende o usuárió na tela de preview e só o libera quando o relatório é fechado), após minizar clique no botão que gera o relatório outra vez... isso acarretaria em um erro pois o relatório já existe na memória. Por exemplo, eu fiz com que o sistema verificasse se o relatório já existe. Caso já exista mostrará uma mensagem relatando isto caso não mostraria o preview do relatório normalmente. No entanto isso só funciona na 1ª vez que gero o relatório ao fecha-lo não consigo libera-lo da memória. o código esta +/- assim if frmrlos1 = nil then begin frmrlos1:= tfrmrlos1.create(self); {Selects usados para trazer os dados no QR, que esta no form Frmrlos1} frmrlos1.QuickRep1.Preview; frmrlos1.QrOs.close; frmrlos1.free; end else messagedlg('Este relatório já esta sendo exibido', mtwarning, [mbok],0); tentei também libera-lo ao fechar o form no qual o QR gera o preview (frmrlos1), mas não obtive sucesso. Onde posso liberar o form da memória para que isto não ocorra? Alguém pode me ajudar com isto? abraço
  22. Estive conversando com um desenvolvedor que trabalha aqui a mais tempo e ele me informou que os campos que estão no QR estão setados com a fonte Draft 12Cpi neste relatório, que é usada como padrão para impressoras do tipo LX 300 (matriciais), por exemplo, ele me imformou também que isto era usado para que fosse possível visualizar o relatório no preview e além disso imprimi-lo de forma rápida nesses tipos de impressora, que é característica desse tipo de fonte. No entanto, notei que quando não existe nenhuma impressora deste tipo instalado na maquina esse tipo de fonte não aparece, ou seja, é como se a fonte só existisse se alguma impressora desse tipo estivesse instalada na porta LPT1 do micro. Sendo assim caso não exista a impressora na maquina o relatório não será mostrado pois a fonte no qual o mesmo é desenvolvido não existe. Para confirmar isto instalei uma impressora do tipo LX 300 na porta LPT1 do meu micro e realmente as fontes Draft 12Cpi apareceram. Logo após removi todas as impressoras do meu micro e, para minha surpresa, o relatório funcionou normalmente, me deixando mais confuso do que estava... Pode este fator ser considerado como uma possivel causa do erro? abraço.
  23. Este é o código que faz a chamada do QR, que está em um form diferente. procedure TFrmos.Sada1Click(Sender: TObject); begin frmrlos1:= tfrmrlos1.create(self); {Selects usados para trazer os dados no QR, que esta no form Frmrlos1} frmrlos1.QuickRep1.Previewmodal; frmrlos1.QrOs.close; frmrlos1.free; end; você acha que este Free precedido do Preview modal está gerando o erro? Caso sim, como posso resolver isso? Abraço.
  24. Vlw Jhonas vo da uma olhada no que você mencionou... Qualquer coisa eu volto a postar... só uma duvida... esses eventos que você mencionou são referentes a que?... ao componente do Quick, ao form onde está o componente do quick ou ao form que faz a chamada do componente do quick? agradecido :D
  25. Bom dia Senhores! Bom, eu possuo um relatório de Ordens de serviço fechadas desenvelvido em QuickReport e Delphi 5. O problema é que esse relatório em especial apresenta um erro intermitente, ou seja, às vezes ele funciona e às vezes ocorre o erro... o erro ocorre na tela de Preview do QuickReport, não mostra nada no preview e quando ele é fechado aparece um erro +/- assim: Win32 Error 1400... Eu já revi a programação diversas vezes passando linha a linha, no entanto não identifiquei o erro na mesma... ele passa por todas as linhas e atribui todos os valores corretamente aos campos das query's que são usados nos selects, tanto quanto o erro ocorre quanto não. Alguém sabe oque pode ser? Agradecido desde já.
×
×
  • Criar Novo...