Ir para conteúdo
Fórum Script Brasil

Alberto Mota

Membros
  • Total de itens

    296
  • Registro em

  • Última visita

Tudo que Alberto Mota postou

  1. Existe um backup diário, Fulvio. A data fica sempre registrada, mas existe outro backup e precisa infelizmente de um nome fixo. Oriento aos usuários para que sempre deletem o conteudo da pasta para evitar que seja sobrescrito, só que isso não é feito. Obrigado pela ajuda, colocarei códigos no sistema para que o conteudo da pasta seja deletado antes de gerar o backup, fazendo assim com que só exista um backup full.
  2. Fulvio, bom dia Obrigado por responder. Vi o link, realmente muito bom. Infelizmente não consegui adaptar para fazer um backup full. O meu problema consiste em que o usuario faz um backup e depois o sobrescreve, na restauração ele precisa vir completo, mas como havia 2, há a perda de dados. Como posso solucionar isso? Uma solução é no sistema zerar a pasta antes de ser gerado um backup, não sobrescrevendo. Mas se obrigasse no script que o banco de dados seja restaurado por completo seria ideal também.
  3. A conta do cliente e a conta de cedente são realmente números diferentes. Voce deve pedir ao seu cliente que ele veja com o gerente dele para que forneça essa numeração. Em primeiro lugar voce deve ter essa informação para prosseguir. É sem registro ou com registro? Pergunte tambem.
  4. Prezados colegas, uso sql server 2005 express e uso o seguinte script para restauração: USE [master] RESTORE DATABASE vendas FROM DISK = 'C:\Gvendas\Backup\vendas_20110804.bak' WITH MOVE 'gvendas' TO 'C:\GSind\dados\vendas.mdf', MOVE 'gvendas_log' TO 'C:\GSind\dados\vendas.ldf' Gostaria de garantir que todo o banco de dados venha completo. Como implemento no script que o Full seja restaurado? Desde já, obrigado.
  5. Gabriel, é com 7 digitos que uso. Veja a pagina 5 do manual. A opção que trabalho é sem registro, não gera arquivo remessa, apenas o arquivo retorno. Tente gerar com 7 digitos, eles vão criar um ambiente de homologação. Se houver erros eles vão dizer e poderá corrigir. Geralmente pedem 6 pdfs de exemplo. Um abraço
  6. Jhonas, obrigado por responder. Está numa tabela, Mas pelo que vi, dá para adaptar vou meter a mão na massa voce já mostrou o caminho das pedras, mais uma vez. E mais uma vez, obrigado
  7. Prezados colegas estou utilizando o sql server e o delphi 7. Tenho uma tabela TblMovimentação e o campo seq que é a chave primária. Existem situações em que a sequencia é quebrada. O usuário exclui(não deve, mas é perimitido) mas existem outras situações e preciso rastrear isso. Gostaria de ter uma listagem para ver essa quebra Por exemplo: 1000 1001 1015 1016 1017 1018 1050 1051 houve 2 quebras de 1001 pulou para 1015 e de 1018 pulou para 1050 Gostaria que me fosse exibido assim 1001 1015 1018 1050 Pois saberia quais sequencias foram quebradas. Desde já, obrigado.
  8. Fulvio, obrigado por responder. No log mostra o caminho onde esta o banco de dados. Não está o que gostaria Uma listagem dos ultimos backups e de onde vieram Um abraço
  9. Prezados colegas Utilizo o sql server 2005 express e gostaria de saber se tem como eu ver as ultimas restaurações feitas isto é, que me mostrasse o caminho que fiz tipo assim na ultima: C:\sistema\banco.bak na antepenultima vez :C:\sistema\backup\restauração.bak' e assim por diante Desde já, obrigado.
  10. coloque seu email, que envio um exemplo de cadastro de clientes. Veja os links que o Jhonas colocou. Voce deve tambem pesquisar sobre sql. consultas sql.
  11. Leandro, o quickreport é bom. Prefiro mais o Rave. Dê uma pesquisada sobre ele. Relatórios mais elaborados é com ele que deve fazer. Não se esqueça do seu banco de dados. Para começar sugiro Access, depois tente outros, firebird, sql server, etc. Estou atualmente com sql server e bastante satisfeito. Um abraço. Qualquer coisa envio um exemplo, se preferir. Um abraço
  12. jaumDoDelphi, era isso mesmo. A sua dica resolveu. Obrigado!
  13. Prezados colegas, baixei o trial do Delphi XE e gostei muito do que vi. Um sistema em Delphi 7 rodou sem problemas, porem o visual continuou o mesmo. Se eu começar um projeto do zero, o layout é bem melhor, é outra coisa. Não gostaria de refazer todas as telas. Existe alguma maneira de atualizar todo o projeto, e deixa-lo como se fosse criado no XE? Desde já, obrigado.
  14. Jhonas, consegui resolver. Coloquei um componente Region dentro da banda details. O relatório possui agora 2 Regions. E a totalização fica estática no footer group. Não importa quantos itens sejam. Obrigado pela paciência. Um abraço
  15. Jhonas, coloquei como group header mas não adiantou Esta ssim: existe 3 databands A primeira como Header Group, A segunda como details A terceira como Footer Group. Talvez não tenha me expresado corretamente, o que gostaria é que a banda details tivesse uma altura já definida, porque se uma venda tiver apenas 1 item, e noutra venda venda tiver 15 itens, o footer group será "empurrado" conforme essa quantidade de itens. É como uma nota de vendas estática, onde só os itens variam. Por isso essa databand precisaria ter uma altura que ocupasse uma faixa grande, para caber quantos itens fossem.
  16. Jhonas no quickreport existe o rbPageFooter, mas no rave não estou localizando tal seção. Coloquei o componente Region e as databands. A que mais se aproxima é Row_Footer em BandStyle. Onde localizo Pagefooter no Rave?
  17. Jhonas, obrigado por responder. Na verdade preciso que a banda details é que seja fixa. Fiz isso no Quickreport e consegui, mas preciso realmente que seja no Rave. No quickreport usei um QRmemo, conforme código abaixo: QRMemo1.lines.Clear; QRMDescr.lines.Clear; QRMemo2.lines.Clear; QRMemo3.lines.Clear; QRMemo4.lines.Clear; QRMemo5.lines.Clear; qrparcelavalor.lines.Clear; qrparceladata.lines.Clear; ADOQuery1.first; if not ADOQuery1.eof then repeat QRMemo1.Lines.Add(ADOQuery1prod.asstring); QRMDescr.Lines.Add(ADOQuery1Descricao.AsString); QRMemo2.Lines.Add(ADOQuery1Qte.AsString); QRMemo3.Lines.Add(Format('%12.2N', [ADOQuery1vr.asfloat])); QRMemo4.Lines.Add(Format('%12.2N', [ADOQuery1total.asfloat])); QRMemo5.Lines.Add(ADOQuery1Aliquota.asstring); ADOQuery1.Next; until ADOQuery1.eof; ========================== Será que tem com fazer algo semelhante no Rave?
  18. Prezados colegas, preciso montar um relatório no rave, uma nota de venda, onde a largura dos seus itens são fixas. Pois como é variavel a cada venda, o rodapé deve permanecer na mesma posição, onde consta a totlaização geral. Desde já, obrigado.
  19. Jhonas, vi o demo mas não tem uma visualização no quick report. São bons exemplos que são exibidos apenas no form. De qualquer forma consegui resolver pelo rave. Pesquisei uma altenativa e deu certo. Obrigado.
  20. Prezados colegas, Estou usando o Delphi 7 e coloquei o QRChart1 no quickreport, sendo que o relatório é visualizado normalmente. Só que na hora de imprimir o sistema para de executar, trava e some da tela, pedindo para fechar ou depurar. O problema de fato não é com a impressora, é alguma coisa no QRChart1, inclusive não consigo nem gerar o pdf atraves do pdf creator, onde todos os outros relatórios consigo tranquilamente. Será nas uses? Pesquisei na net e não encontrei nada. Desde já, obrigado.
  21. Jhonas, obrigado. Resolveu o problema. Adaptei conforme disse e ficou perfeito.
  22. Prezados colegas, Gostaria de colocar um label para orientar o usuário, tipo assim: ...Processando Porque o código realmente demora alguns segundos. Já tentei colocar visible = true mas não resolve Como posso resolver isso? Desde já, obrigado. Segue o código, o Delphi é 7. procedure TFrmSindical.BitBtn18Click(Sender: TObject); var f:TextFile; linha, caminho:String; mov : integer; fArq: TextFile; mTexto: TStringList; i: integer; sequencial: integer; associado, remessa: integer; valor1, valor2, numero2 : string; tarifa, multa : Real; contribuinte : String; dat, dataenvio :string; data, data2 :TDate; Valor : real; numero : integer; delegacia : string; ref, nbaixa : integer; txt, Items : string; begin label5.caption := FileListBox1.items.strings[FileListBox1.itemindex]; edit1.text := label10.caption + '\' + label5.Caption ; label7.Caption := label10.caption + '\' + label5.Caption; edit3.text := label10.caption + '\' + label5.Caption; begin caminho := edit1.text; AssignFile(f,caminho); Reset(f); //abre o arquivo para leitura; While not eof(f) do begin Readln(f,linha); if pos('F',linha) = 73 then Begin mov := StrToInt(copy(linha,158,6)); txtmov.Text := IntToStr(mov); label9.caption := IntToStr(mov); end; End; Closefile(f); end; //================= if txtmov.text = '' then Begin showmessage('Selecione o arquivo retorno!!!'); FileListBox1.Visible := true; exit; end; txt := txtmov.text; label11.Visible := true; label12.Visible := true; Caminho := Edit1.Text; AssignFile(fArq, Caminho); ReSet(fArq); mTexto := TStringList.Create; try mTexto.LoadFromFile(Caminho); i := 0; finally mTexto.Free; end; while not Eof(fArq) do begin Readln(farq, linha); //============================================== //Pega a primeira linha Fenac if pos('F',linha) = 73 then Begin mov := strtoint(copy(linha,158,6)); dataenvio := copy(linha,144,8); insert('/',dataenvio,3); insert('/',dataenvio,6); data2 := strtodate(dataenvio); end; //============================================== if pos('T',linha) = 14 then Begin numero := strtoint(copy(linha,185,6)); numero2 := copy(linha,185,6); contribuinte := copy(linha,40,5); tarifa := (strtofloat(copy(linha,199,15))/100); delegacia := copy(linha,179,1); sequencial := strtoint(copy(linha,9,5)); nbaixa := strtoint(copy(linha,143,6)); remessa := StrToInt(txt); if numero = 0 then Begin numero2 := 'Sindicato'; contribuinte := copy(linha,40,5); end else numero2 := copy(linha,179,12); contribuinte := '0'; if contribuinte = '0' then Begin contribuinte := copy(linha,40,5); //delegacia := copy(linha,179,1); end else contribuinte := '0'; //delegacia := '0'; if nbaixa = Null then Begin nbaixa := 0 end else nbaixa := strtoint(copy(linha,143,6)); //=============================== //Segmento T SegT.Open; SegT.ExecSQL; SegT.Append; SegT.edit; SegT.FieldbyName('sequencialA').Value := sequencial; SegT.FieldbyName('numerodoc').Value := numero2; SegT.FieldbyName('delegacia').Value := delegacia; SegT.FieldbyName('tarifa').Value := tarifa; SegT.FieldbyName('lotebase').Value := mov; SegT.FieldbyName('CodigoContribuinte').Value := contribuinte; SegT.FieldbyName('seqbaixa').Value := nbaixa; SegT.FieldbyName('Remessa').Value := remessa; SegT.FieldbyName('dt').Value := datetostr(data2); SegT.Post; SegT.ExecSQL; end; //================================ //Segmento U//==================== if pos('U',linha) = 14 then Begin dat := copy(linha,138,8); insert('/',dat,3); insert('/',dat,6); data := strtodate(dat); valor := (strtofloat(copy(linha,93,15))/100); //liquido multa := (strtofloat(copy(linha,18,15))/100); //juros SegU.open; SegU.ExecSQL; SegU.Append; SegU.edit; SegU.FieldbyName('sequencialU').Value := sequencial; SegU.FieldbyName('sequencialBase').Value := sequencial - 1; SegU.FieldbyName('dtpgto').Value := datetostr(data); SegU.FieldbyName('vr').Value := valor; SegU.FieldbyName('lote').Value := mov; SegU.FieldbyName('multa').Value := multa; SegU.Post; SegU.ExecSQL; //================================= Next; end; end; AdoTable4.Close; AdoTable4.open; remessas.close; remessas.open; Adotable1.Close; Adotable1.open; SomaGeral; BitBtn7.Click; end;
  23. Uso o select abaixo no sql server sem problemas. Quando for nulo coloca 0, caso contrário o próprio valor. SELECT prod, SUM(CASE WHEN dbo.tblvendadetalhes.vr = NULL THEN 0 ELSE dbo.tblvendadetalhes.vr END) AS total FROM dbo.tblvendadetalhes GROUP BY prod
×
×
  • Criar Novo...