Samara

Membros
  • Content Count

    77
  • Joined

  • Last visited

Community Reputation

0 Neutro

About Samara

Perfil

  • Gender
    Female

Recent Profile Visitors

1864 profile views
  1. seria uma "gambiarra" kkkk mas ele poderia fazer um select no generator sem elevar a sequencia Select gen_id(generator, 0) as Sequencia from rdb$database ou ainda para saber o próximo que será gerado Select gen_id(g_generator, 0)+1 as Sequencia from rdb$database de qualquer forma acho que é a pior das ideias /=
  2. eu já passei por isso, com geração e manutenção de arquivos de sped... existem várias formas de se carregar um arquivo mas como você mesmo disse no tópico é um arquivo extenso, então tem que utilizar da mais leve possível... faz assim, cria dinâmico ^^ sem vetor com tamanho fixo, vai alocando na medida em que vai lendo, se for da maneira certa leitura binaria funciona certinho hehe... vamos a um exemplo rapido, olha... var iFileHandle, iFileLength, iBytesRead, i : Integer; Buffer: PChar; TxtDirName, str : String; begin TxtDirName := 'caminho e nome do arquivo que você pretende carregar para leitura'; agora vou abrir e modo leitura iFileHandle := FileOpen(TxtDirName, fmOpenRead); vou pegar o tamanho e posicionar no inicio iFileLength := FileSeek(iFileHandle,0,2); FileSeek(iFileHandle,0,0); Buffer := PChar(AllocMem(iFileLength + 1)); vou carregar agora minha variavel de Buffer iBytesRead := FileRead(iFileHandle, Buffer^, iFileLength); fecho o arquivo, daqui pra frente não preciso mais dele FileClose(iFileHandle); agora por fim a leitura do meu buffer e jogo para a string final que vai conter o conteudo do arquivo for i := 0 to iBytesRead-1 do begin str := str + Buffer; end; limpo da memoria a minha variavel de Buffer que até então ainda continua carregada FreeMem(Buffer); agora pode utilizar normal... por exemplo Memo1.Text := str; end; eu tive inumeros problemas com leitura de arquivos grandes, desenvolvi alguns sisteminhas para comparação de arquivos fiscais sintegra, sped, etc... por fim encontrei algumas formas de obter desempenho e evitar erros de memoria... espero que ajude, qualquer dúvida só postar ^^
  3. Olá Vms essa é facil hehe... os componentes que vem de TTalbe e TDataSet tem uma propriedade chamada "RecNo", ela retorna a linha em que a Query ou Tabela está no momento... e por se tratar de uma propriedade, você pode tanto ler o valor, quanto informar também ^^ crie uma variavel do tipo integer, por exemplo: var iLine : Integer; begin agora vamos salvar na variavel a linha em que a Query se encontra no momento... iLine := MinhaQuery.RecNo; pronto agora posso dar refresh, fechar e abrir novamente, seja lá o que for não importa.... em seguida preciso retornar a linha onde eu estava antes do comando refresh MinhaQuery.RecNo := iLine; end xD; espero que ajude, qualquer dúvida estamos aqui =)
  4. Olá Robinhocne ele está retornando vários valores até chegar no valor da soma em função do "suspend" o banco interpreta o suspend como saida de dados, cada volta do seu for select ele vai dar um suspend e gerar uma saida de dados... pra resolver o problema da sua procedure, basta alterar o local do suspend... insira ele logo após o end que encerra o for select.
  5. Olá Jhonas... a questão do scroll resolveu :) Mas quanto a visualização no WebBrowser não consegui encontrar nada até agora para resolver... eu tenho um WebBrowser definido com 500px por 600px defini assim pois ficaria perfeito para a maioria das páginas que pretendo abrir... mas tem uma unica página que ela é mais larga que as outras... cria um scroll horizontal, ou no caso ocultando o scroll parte do conteudo se perde a esquerda... mas quando abro em qualquer navegador, internet, firefox, etc... em modo não maximizado e encolho bastante a janela, o site se ajusta, o conteudo da pagina se aproxima, e fica perfeito com nos mesmo 500 x 600 px... mas se não tiver outra forma vou manter assim mesmo... valeu pela ajuda Jhonas abraço...
  6. faz assim, clique com o direito no panel, form ou o que for que você tenha inserido seus componentes DBEdit dentro, e vá na opção "Tab Order" lá você ordena da forma que quiser o foco dos campos... iii Desculpa Jhonas... respondi junto kkk, mas é isso mesmo xD
  7. Olá pessoal preciso de uma ajuda com TWebBrowser. Existe uma determinada página que pretendo abrir em um componente WebBrowser, mas quero abrir só determinada parte da página assim eu posiciono com X e Y a parte da página que eu quero dentro do WebBrowser, até aqui tudo bem... Agora o que eu preciso é do seguinte... preciso ocultar as barras de scroll, para impedir de tirar da posição certa... e também se possível impedir de rolar a pagina, pois se o usuário tiver scroll no mouse, ele pode girar e também move a pagina dentro do WebBrowser... E por ultimo e menos importante, apenas se for possível... tem como eu definir o tamanho para visualização da página dentro do WebBrowser? O site que pretendo abrir tem divs e tabelas que são por % e não por px, pretendo definir com o menor tamanho possível para visualizar... Agradeço a atenção de todos...xD
  8. Olá pessoal... Estou tentando fazer um formulario para consulta de CNPJ na receita, através da biblioteca cURL para PHP mas não estou conseguindo... alguém já fez isso? poderiam me ajudar?
  9. Alguém sabe como faço para colocar um dbcheckbox em um dbgrid? mas checkbox de verdad, não apenas imagem para simular um....
  10. é como o Jhonas falo, você precisa ter um campo que faça referencia entre as duas tabelas ou até uma FK, dai faz um join...
  11. kkkkkkkkkkk genteee é muito facil funciona 100%... um exemplo com yahoo var IdMessage : TIdMessage; IdSMTP : TIdSMTP; begin IdMessage := TIdMessage.Create(nil); IdSMTP := TIdSMTP.Create(nil); IdMessage.From.Address := '';//aqui vai o email que você quer que seja o remetente IdMessage.Recipients.EMailAddresses := '';// aqui vai o email do destinatário IdMessage.Subject := ''// aqui informe o titulo IdMessage.Body.Text := '' // aqui o conteudo do corpo do email IdSMTP.Host := 'smtp.mail.yahoo.com.br'// aqui vai o host no caso do Yahoo é IdSMTP.Username := ''// vai o seu email usado como login... Atenção! sem o O @yahoo.com.br IdSMTP.Password := ''// senha do seu email IdSMTP.Port := 587; // porta padrão IdSMTP.AuthenticationType := atLogin; IdSMTP.Connect; IdSMTP.Authenticate; IdSMTP.Send(IdMessage); end; olha, so que assim é email simples, não autenticado, podendo o email chegar na caixa de lixo eletrônico, então verifiquem.... desta forma funciona bem, ao não ser que utilize proxy dai tem que alterar alguns detalhes... se alguém precisar enviar arquivos por anexo, ou autenticar me avisem, dai faço um exemplo mais completo... outro detalhe... no IdMessage.Recipients.EMailAddresses pode informar vários emails de destinatário separando eles por ponto e virgula e nada mais... pode ser enviado para multiplos destinatários se quiser.... espero ter ajudado valeu gente xD
  12. var NodeGrupo, NodeFilho : TTreeNode; begin // exemplo de como adicionar um nó simples NodeGrupo := TreeView.Items.Add(nil, 'Item do tipo Grupo'); // aqui, éh como adicionar um nó filho do nó anterior NodeFilho := TreeView.Items.Add(NodeGrupo, 'Item do tipo SubGrupo'); end; desta forma ficaria >Item do tipo grupo >Item do tipo Subgrupo espero que tenha ajudado
  13. Olá pessoal... Estou persistindo em um assunto pouco utilizado no Delphi, mas que para mim seria de extrema utilidade em meus projetos... preciso serializar classes, o PHP, Java e outros, possuem essas funções nativas porém o Delphi não... Depois de muita busca consegui Serializar algumas classes mas não da forma desejada, e com vários problemas, um deles e o principal, é que só consigo serializar classes procedentes do tipo Tcomponent, e a minha real necessidade seria serializar Tobject que são a maioria das minhas classes genérica, outro problema é que pretendo serializar classes com coleções, do tipo Tcollection, e quando retorno ele perde parte da estrutura original .Preciso de uma forma de serialização que me retorne string, pretendo armazenar em campos do tipo blob noFirebird. Se alguém souber de algo que possa me ajuda fico muito grata.
  14. Samara

    Classe para Coleções.

    Olá Pessoal... Já faz aum bom tempo que eu não entro mais no fórum, mas hoje venho aqui na esperança de encontrar ajuda com alguém que entenda bem de oop no PHP. Estou desenvolvendo um projeto que requer em uma determinada situação uma lista de objetos. No Delphi eu utilizo as classes nativas do Delphi, ele disponibiliza uma classe chamada Tcollection que seria a classe pai ou progenitor , e dentro desta é possível criar classes do tipo TcollectionItem que são as classes filhas... Resumindo o que preciso seria o seguinte Uma classe chamada Itens(); Dentro desta classe um Array de sub-classes chamada Item(); E uma forma de simples de gerenciar as subclasses... exemplo Add( objetoItem ) para adicionar, e Itens( ponteiro ) para retornar o item desejado... Existe forma de fazer isso em php? Acredito que tenha como, estou enferrujada no assunto, precisaria muito da ajuda de vocês... agradeço a atenção de todos xD