Jump to content
Fivewin Brasil

fladimir

Membros
  • Posts

    364
  • Joined

  • Last visited

  • Days Won

    12

Everything posted by fladimir

  1. Eu converti um sistema em dataflex a uns 8 anos atrás abrindo um programinha deles pra gerar relatorios em TXT e fui tabela por tabela gerando TXT e depois ai manipulei o TXT mas não lembro exatamente os detalhes.
  2. E o WinDev? O Luis da EMPRESOFT acho q usa... Se sim, poderia compartilhar conosco a experiência?
  3. Mas seria bom ter uma alternativa viável, deve ter algo, ScriptCase??? Windev??? Outra???
  4. Até o presente nunca tinha ouvido falar, após tua postagem pesquisei no google e a propaganda no site deles é atrativa, tem demonstrações online e experimentar por alguns dias, mas nada como alguém q já utiliza pra falar pra gente da experiencia q esta tendo.
  5. Como seria inventaria via Tablet/Android?
  6. Olá... não sei se eu entendi errado mas eu recebi um e-mail esses dias do suporte do cobrebem sobre as mudanças q os colegas comentaram exemplo de SACADO para Pagador entre outras inclusive de Layouts e o pessoal do cobrebem me respondeu q estão Ok, basta gerar novamente a licença. Não sei se mudou de dono ou se retomaram a coisa, mas disseram q esta ok, eu não cheguei a testar, talvez algum outro colega aki do fórum tenha mais informações.
  7. fladimir

    upx

    O q pode ocorrer é algo q o Rochinha postou esses tempos (não sei se aki ou no fórum do Toledo) que é o fato de alguns antivirus "pensarem" q os EXEs q estão compactados com o UPX possam conter algum código malicioso, sendo algumas vezes interpretado como 1 possível ameaça. Talvez isto faça com q haja 1 demora no carregamento do EXE por, talvez, algum antivirus analisar o EXE compactado ao carregar. (não percebi ainda, minhas apps são compactadas com o UPX para facilitar o suporte qdo necessário atualizar, pois vários clientes tem conexão extremamente lenta então cada KB menor agiliza o processo) []´s
  8. Quais outros bancos ou lista geral ele esta contemplando, acho 1 otima opcao investirmos nessa classe pois pelo jeito ja esta mais de meio caminho andado com varios bancos ok...
  9. tem a função abaixo: hb_ZipFile( cZip, aFiles, 9,IF(lMostraGauge, {| cFile, nPos | GaugeUpdate( aGauge, nPos / nLen )}, NIL) ,, cSenhaZip ) vamos aos parametros: cZip = Nome do Arquivo ZIP aFiles := Vetor com Arquivos (path completo) 9 = Nivel de compressao {| cFile, nPos | GaugeUpdate( aGauge, nPos / nLen )} = Bloco de codigo para atualizar 1 ProgressBar a medida q avança na conclusão da compactação cSenhaZip = Senha do Arquivo ZIP caso queira. []´s
  10. Crisvam não esquece de postar viu, tenho um epson aki até q vai, mas queria tirar melhor proveito, conto com sua ajuda. []´s
  11. Eu uso desde 2009, não tenho o q reclamar, logicamente se fosse via classe hbNFe q existe seria melhor (não dependeria de app externo). Hj faço tipo o Ariston... mas gostei da forma q o Giovany Vecchi demonstrou, vlw... []´s
  12. Luiz concordo com vc mas acredito q seria mas talvez seria mais produtivo (pensando a longo prazo) a gente (q usa o cobrebem) ver qual projeto de Boleto esta mais maduro e eh Open (exemplo HarbourBoleto talvez) e começarmos a usar ele e cada 1 focar em 1 banco q use mais por exemplo trabalho mais com Sicredi e BB, q ai o projeto teria mais pessoas e futuramente caso mude nao somente regras de layout temos ja uma mini comunidade e um projeto q estara caminhando.
  13. Quem quiser testar pelo ACBrNFeMonitor segue exemplo? Sintaxe: NFe.DownloadNFe(cCNPJ,cChaveNFe) Parêmetros: cCNPJ - CNPJ do solicitante cChaveNFe - Chave da NFe a ser baixada Exemplo: NFe.DownloadNFe(cCNPJ,cChaveNFe); Retorno = Baixar várias NFes passe no parâmetro cChaveNFe as Chaves separadas por ; (ponto e vírgula)
  14. Com certeza ajudou muito, desconhecia este método CalcularDadosBoleto. Abrindo um parenteses, aki, com isto não daria pra gente fazer apenas os layouts das mudanças q virão (nem sei quais mudanças realmente são) mas li em algum post por aki q seriam mais de layout. Se forem mesmo rodamos o método pegamos os dados e ajustamos os layouts via FAST e/ou HTML. []´s
  15. Não domino o assunto e talvez esteja falando bobagens, quem sober favor corrigir, mas o ACBrNFeMonitor não tem essa função? tipo quem usa ele não poderia implementar? []´s
  16. Olá pessoal, penso q uma alternativa a fazer seria entrar em contato formalmente com o Sr. Linhares e se ele se comprometer em devolver ou uma forma de ressarcir, caso o produto não saia um versão funcional estavel talvez agregaria mais pessoas. Apenas minha opinião, não acompanho os primórdios do Fivewin nem de perto sua evolução, apesar de conhecer o básico do Fivewin e já ter feito coisas simples, não posso opinar com relação a produtos e/ou projetos começados e o pq foram ou não concluidos, mas talvez a ideia acima possa ser uma possibilidade viável tanto para ele qto para os q ficam na dúvida em investir. Não fiquem bravos comigo... deixem eu falar Ok... depois se quiserem fiquem bravos... Eu uso o Xailer e pelo q sei os caras do Xailer (Ignacio, Lalin, Gimenez) antes eram ou de algum forma participavam do Five, mas não sei sei pq se dividiram, talvez divergência de ideias e ou métodos de trabalho, vai saber, parece xHarbour e Harbour, eu gostaria q os caras se unissem e trabalhassem todos em prol de um ou menos produtos e não tantos como temos, acredito q teriamos produtos mais evolúidos, mas isso é outro assunto. Utilizo este fórum e o do Toledo como uma das fontes de pesquisa de questões no mundo xBase, pois quer seja, MiniGui, Xailer, HWGUI, Fivewin, conseguimos, pela lógica de solução de problemas e ideias muito uteis e proveitosas de colegas (parabens aos colegas) q pode ser aproveitadam desde q se tenha funções e recursos semelhantes nas demais... ...MAS COM CERTEZA... Se o projeto FiveTouch ficar pronto, legal e funcional eu por exemplo NÃO TENHO COMO APROVEITAR ele no Xailer, seria uma vantagem q o pessoal da comunidade Five teria sobre os demais no sentido de ter um recurso valioso e moderno a mais em vossos sistemas, então se vcs conseguirem uma forma de comprometimento do Sr. Linhares acredito q se possa investir em uma ferramenta como essa. Com certeza tem pessoas aki do Fivewin Brasil (Gilmer por exemplo) q podem chegar/conversar com o Sr. Linhares e abrir o jogo da preocupação de muitos e propor uma alternativa que traga uma segurança maior para q a comunidade invista mais no projeto. []´s
  17. Então se eu pegar a idéia acima e colocar isso qdo a app no inicio do dia por exemplo rodar tudo isso e por exemplo armazenar em uma tabela MySQL ou outra na Nuvem dizendo Cliente XPTO IP TAL TAL Porta 9999 ai na outra ponta possa criar um aplicativo q mostra o q tem nessa tabela e ao clicar abre o MSTSC ou algum cliente RDP e acessa o cliente em questão para suporte? Seria isto? Ai qdo fechar a app no cliente faço baixar na Tabela da Nuvem pra saber q não esta mais online ou algo do tipo?? Mais ou menos uma ideia assim ou nada a ver? Eu criei algo parecido usando o projeto do VNC q é Open, fiz como dito acima porém tive algumas instabilidades pq em alguns clientes dava certo em outros não, talvez por ter q desabilitar ou criar regras de Firewall q não fazia ou algum bloqueio de segurança do SO. Enfim, seria muito interessante amadurecermos essa ideia pq o Logmein passou a ser pago pra mais de 10 clientes, o TeamViewer da pra usar mas se usar comercialmente teria q comprar, etc... Se tivessemos algo direto em nossos sistemas seria melhor. []´s
  18. Fala com o Sr. Toledo ele, até onde estava acompanhando, estava através do projeto hbNFe criando para usar com NFS-e, talvez ele já tenha algo pronto nesse sentido e o legal q o projeto é aberto. []´s
  19. Para ficar registrado entrei em contato com o colega Marcio e passei algumas configurações q defino aki no código postado e segundo ele gerou e parece q deu certo, mas qualquer coisa se não o mesmo pode retomar a discussão aki pra vermos se resolvemos. abaixo seguem as informações q passei ao Márcio via e-mail: .... não consigo colocar a imagem então vou descrever o q tem na imagem.... QUAL IMP DE BOLETOS: <<NOME DA IMPRESSORA>> LOCAL DE PAGAMENTO: TESTE (VC DEFINE JUNTO AO USUARIO DO SISTEMA) NOME ARQ. LICENÇA COBREBEM: 01234567890123-001-11-7.CONF (FORNECIDO COBREBEM) NOSSO NUMERO ATUAL: 1 MARGEM SUP: 10 COD. CEDENTE: 2026507 (FORNECIDO BANCO) NUMERO DO BANCO: 001 (BB) NOME DO BANCO: BANCO DO BRASIL S/A NUMERO DA AGENCIA: 5001-2 NUMERO DA CONTA...: 00001020-7 TIPO DOC COBRANCA: DM TAMANHO NOSSO NR: 10 (POSICOES) OUTRA CONFIGURACAO 1 = 019 (É UMA PROPRIEDADE DO OBJETO DO COBREBEM) OUTRA CONFIGURACAO 2 = AAAAAAAAAA (OUTRA PROPRIEDADE DO OBJ DO COBREBEM Q VARIA DE ACORDO COM O BANCO) []´s
  20. Essa não tem lá, seria essa mesmo certeza? Caso sim vc enviou um e-mail ao pessoal do suporte? Aqui teve um caso q um cliente falava q era uma carteira tal com variação Y, e não dava certo ai em contato com o gerente da conta dele o mesmo mandou o print da tela de como consta no Banco e era diferente do q o cliente estava passando, para ter certeza seria interessante vc ter esse print de como esta contratado a cobrança do teu cliente junto ao banco e enviar ao Suporte do Cobrebem, caso não encontre no link abaixo a Carteira e variação. http://www.cobrebem.com/cgi-bin/GeraArquivoLicencaTeste []´s
  21. Parte da Remessa: //------------------------------------------------------------------------------ Function MontaLoteRemessa() LOCAL cCodigoBanco PRIVATE oBlt := TBoletoCBx():New() //-> Carrega Classe Boleto p/CobreBem Boletos->(OrdSetFocus('boletos4')) cCodigoBanco := '' cID := '' WHILE !EOF() IF !EMPTY(BltRemessa->Marcado) //--> Faz os Marcados somente Boletos->( DbSeek(BltRemessa->NossoNr) ) Mensag("Aguarde, gerando remessa para o boleto n§ " + Boletos->NumDocto ) IF cCodigoBanco != Boletos->Codigo cCodigoBanco := Boletos->Codigo // Mudou IF !EMPTY(cID) // Grava Nr. Lote (ID) NOS BOLETOS ENDIF ConfDpl->( DBSEEK(Boletos->Codigo) ) *-- Configura‡äes Boleto oBlt:cArqLicenca := ALLTRIM(ConfDpl->ArqLic) oBlt:nMargemSup := ConfDpl->MargemSup oBlt:nTipoReciboBlt := ConfDpl->TpReciboBl *-- Dados da conta corrente oBlt:cCodigoAgencia := Alltrim(ConfDpl->Agencia) // '0000-5' oBlt:cNumeroContaCorrente := Alltrim(ConfDpl->Conta ) // '0000004-0' oBlt:cCodigoCedente := Alltrim(ConfDpl->CodCedente) // '0000007' oBlt:cLocalPagamento := Alltrim(ConfDpl->LocalPg) oBlt:cOutroDadoConfiguracao1 := Alltrim(ConfDpl->OutraCfg1) //'027' && Variacao da Carteira 027 oBlt:cOutroDadoConfiguracao2 := Alltrim(ConfDpl->OutraCfg2) //'AAAAAAAAAA' oBlt:cFimNossoNumero := PADC('', ConfDpl->TamNossoNr-1, '9') //'99999' sicredi ou '999999999' BB oBlt:cInicioNossoNumero := STRZERO(1, ConfDpl->TamNossoNr-1) *-- Monta dados referentes ao arquivo de remessa ConfDpl->(Bloqreg(0)) ConfDpl->IDRemessa := ConfDpl->IDRemessa + 1 ConfDpl->(DesbloqReg(0)) cID := STRZERO(ConfDpl->IDRemessa,6) oBlt:cRemessaNomeArquivo := cID + '_' + Dt2NmArq(Date()) +'.REM' oBlt:cRemessaPathDestino := ALLTRIM(ConfDpl->DestinoRem) oBlt:cRemessaLayout := ALLTRIM(ConfDpl->LayoutRem) // "FEBRABAN240" oBlt:CarregaLicenca() oBlt:OutrasConfiguracoes() oBlt:MontaDadosContaCorrente() oBlt:CarregaRecibo() oBlt:CarregaConfEmail() ENDIF oBlt:cProximoNossoNr := Boletos->NossoNr PreparaBoleto( , , Boletos->Instr1, ; Boletos->Instr2, ; Boletos->Instr3, ; Boletos->Instr4, ; Boletos->MsgDemons,; Boletos->Aceite, ; Boletos->NumDocto, ; Boletos->NossoNr, ; Boletos->Cliente, ; Boletos->DataDoc, ; Boletos->DataProc, ; Boletos->DataVenc, ; Boletos->Valor, ; Boletos->Descto, ; Boletos->JurosDia, ; Boletos->Especie ) Boletos->(BloqReg(0)) Boletos->DtRemessa := Date() Boletos->IDRemessa := cID Boletos->StatusRem := 'GR' // NG Nao Gerado, GR Gerado, RB Registrado Bco, NE Negado, LQ LiQuidado ENDIF BltRemessa->( DBSKIP() ) ENDDO IF !EMPTY(cID) oBlt:GeraArqRemessaBanco() //-- Aki daria pra fazer abrir a aplicação do Banco já pra gerar a Remessa Bancária. Alert('Arquivo de Remessa gerado com Sucesso!;Nao se esqueça de enviar ao Banco', aOk, 'W+/B') ENDIF oBlt:End() RETURN NIL Essa Classe é uma q eu montei com base em exemplos do CobreBem e de colegas, se vc não conseguir com os exemplos acima terei que dar uma filtrada no código da Classe pra poder postar, me avise se for o caso, mas em suma na parte que é chamado o método GerarArqRemessaBanco() o q é feito é o seguinte: //------------------------------------------------------------------------------ METHOD GeraArqRemessaBanco() CLASS TBoletoCBx ::oCBX:ArquivoRemessa:Arquivo := ::cRemessaNomeArquivo ::oCBX:ArquivoRemessa:Diretorio := ::cRemessaPathDestino ::oCBX:ArquivoRemessa:Layout := ::cRemessaLayout IF ! DirExist( ::cRemessaPathDestino ) DIRMAKE( ::cRemessaPathDestino ) ENDIF ::oCBX:GravaArquivoRemessa() RETURN NIL []´s
  22. #include "common.ch" // hb_sendmail FUNCTION Main() LOCAL oWnd, oAcx cVersao:="1.2 d" SETCURSOR(0) // Desliga a apresenta‡„o do cursor. SET(_SET_CONSOLE, .F.) // Desliga a apresenta‡„o de sa¡das de comandos. SET(_SET_DATEFORMAT,"DD/MM/YYYY") // Coloca vari veis data no formato dd/mm/aa. SET CENTURY ON SET EPOCH TO 1930 SET(_SET_DELETED, .T.) // Ignora os registros deletados no processamento. SET(_SET_CANCEL, .F.) // Desliga a op‡„o de saida por Alt+C SET(_SET_WRAP, .T.) SET(_SET_SCOREBOARD, .F.) SET(_SET_EXACT, .T.) SET DECIMALS TO 2 RegisterServer( "CobreBemX.ocx" ) ExemploCBXBoleto() return nil ******************************************************************************** STATIC FUNCTION ExemploCBXBoleto() LOCAL oCBX, oBoleto /* Gere um novo arquivo de licença para a carteira 18-7 e preencha as propriedades de configuração conforme tabela abaixo, sendo que caso o valor seja menor que a máscara, deverá ser completado com zeros a esquerda: Propriedades de Configuração: Propriedade Conteúdo Formato CodigoAgencia Agência 0000-A NumeroContaCorrente Conta Corrente 00000000-A CodigoCedente Código do Convênio 0000000 OutroDadoConfiguracao1 Variação da Carteira 000 OutroDadoConfiguracao2 Sigla do Cedente AAAAAAAAAA Somente utilizado para remessa de arquivo com o layout CBR454 InicioNossoNumero Início Nosso Número 0000000000 FimNossoNumero Fim Nosso Número 0000000000 Faça os testes e qualquer dúvida, retorne o contato. */ // http://www.cobrebem.com.br/suportecbx.html // http://www.cobrebem.com/cgi-bin/GeraArquivoLicencaTeste FOR n := 1 to 20 Alert( 'Fazendo o Boleto de No. ' + strzero(n,3)) // Necessário efetuar download da lib TOleAuto em http://www.cobrebem.com/downloads/cbx/hbole.zip oCBX := TOleAuto():New("CobreBemX.ContaCorrente") xTipo:= Valtype(oCBX) If Valtype( oCBX ) <> "O" Alert( "Erro...") Endif *=============== Instruções de Cobrança /* if boleto->taxa > 0 oBoleto:ValorOutrosAcrescimos := boleto->taxa endif if cDados[1]>0 nVMulta:=round((boleto->valor*cDados[1])/100,2) cInstru+='APOS VENCIMENTO COBRAR MULTA R$ '+transform( nVMulta, '@E 99,999.99')+' endif if cDados[2]>0 nVlrMora:=((boleto->Valor*cDados[2])/100) cInstru+='APOS VENCIMENTO COBRAR JUROS DIARIOS DE R$ '+transform(nVlrMora,'@E 99,999.99')+' endif cInstru+=cDados[3] cInstru+=cDados[4] cInstru+=cDados[5] oCBX:PadroesBoleto:InstrucoesCaixa:=cInstru *============= TIPOS DE RECIBO ================================================= if cDados[6]=1 mcct = grava_html() oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoReciboPersonalizado" oCBX:PadroesBoleto:PadroesBoletoImpresso:HTMLReciboPersonalizado := mCCt oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "Padrao" // margem sup 10 ok mas sai 2 vias primeira zerada esse nao da oCbx:PadroesBoleto:PadroesBoletoImpresso:margemsuperior := 20 oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "Invertido" // deu certo com 20 mas mesma ideia do de cima oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "CarnetReciboLateralDireita" //Ok - mas sai 1 zerado devido precisar de mais vias na folha oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "CarnetReciboLateralEsquerda" // Ok- mas sai 1 zerado devido precisar de mais vias na folha oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoReciboPersonalizado" // Ok - mas sai 1 zerado oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "InvertidoReciboPersonalizado" // Ok mas sai 1 zerado oCbx:PadroesBoleto:PadroesBoletoImpresso:margemsuperior := 20 oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoEnderecadoVerso" // Ok mas sai 1 zerado oCbx:PadroesBoleto:PadroesBoletoImpresso:margemsuperior := 20 oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "InvertidoEnderecadoVerso" // Ok mas sai 1 zerado oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoVersoPersonalizado" // Ok mas sai 1 zerado oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "InvertidoVersoPersonalizado" oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoVersoPersonalizadoReciboPersonalizado" oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "InvertidoVersoPersonalizadoReciboPersonalizado" oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "CarnetReciboLateralDireitaPersonalizado" // tem q personalizar o recibo oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "CarnetReciboLateralEsquerdaPersonalizado" // Tem q personalizar o Recibo oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoEnderecadoVersoReciboPersonalizado" // ok mas meio estranho oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "InvertidoEnderecadoVersoREciboPersonalizado" // Ok mas meio estranhos */ // Monta arquivo de licenca BB Convenio 18 por 7 posiçoes /* oCBX:ArquivoLicenca := CurDirSys() + "licencas\00000000000146-001-18-7.conf" // Carteira 18 com 7 Posicoes */ // Outras Configuracoes oCBX:PadroesBoleto:PadroesBoletoImpresso:ArquivoLogotipo := curdirsys()+"Imagens\suaimagem.gif" oCbx:PadroesBoleto:PadroesBoletoImpresso:margemsuperior := 10 oCBX:PadroesBoleto:PadroesBoletoImpresso:CaminhoImagensCodigoBarras := curdirsys()+"Imagens\" mcct = grava_html() oCBX:PadroesBoleto:PadroesBoletoImpresso:LayoutBoleto = "PadraoReciboPersonalizado" oCBX:PadroesBoleto:PadroesBoletoImpresso:HTMLReciboPersonalizado := mCCt oCBX:PadroesBoleto:InstrucoesCaixa := "Conceder desconto de 5%" oCBX:PadroesBoleto:Demonstrativo := "Referentes a compras na Web" // Monta dados da conta corrente oCBX:CodigoAgencia := '0000-3' oCBX:NumeroContaCorrente := '0000004-7' oCBX:CodigoCedente := '0000007' // Código do Convenio 7 posições BB oCBX:LocalPagamento := "Pagável em qualquer banco até o vencimento" nSequenciaNossoNumero := 0 + n && n ‚ do FOR nSequenciaNossoNumero := STR( nSequenciaNossoNumero, 6 ) oCBX:OutroDadoConfiguracao1 := '027' && Variacao da Carteira 027 oCBX:OutroDadoConfiguracao2 := 'AAAAAAAAAA' oCBX:InicioNossoNumero := strzero(8, 10) oCBX:FimNossoNumero := '9999999999' oCBX:ProximoNossoNumero := strzero(8,10) *=============================================================================== //oCBX:DocumentosCobranca:Add() oBoleto := oCBX:DocumentosCobranca:Add() // Para fazer o X mai£sculo MDados := oBoleto:MeusDados:Add() MDados:Nome := "NumeroBancoXMaiusculo" MDados:Valor := "X" // Monta dados do sacado oBoleto:NomeSacado := "Nome do Sacado TESTE" oBoleto:CPFSacado := '11111111111' oBoleto:EnderecoSacado := 'Rua Teste, 1023' oBoleto:BairroSacado := 'CENTRO' oBoleto:CidadeSacado := 'NOME DA CIDADE' oBoleto:EstadoSacado := 'SP' oBoleto:CepSacado := '00000000' // Monta dados do documento de cobrança oBoleto:DataDocumento := TRANSF( Date() ,'@E 99/99/9999' ) //"02/05/2012" oBoleto:DataProcessamento := TRANSF( Date() ,'@E 99/99/9999' ) //"03/05/2012" oBoleto:DataVencimento := TRANSF( Date() + n*10 ,'@E 99/99/9999' )//"21/05/2012" oBoleto:NumeroDocumento := 'TESTE.'+ STRZERO(n,3) //"12345" oBoleto:ValorDocumento := n * 8 oBoleto:ValorDesconto:= {'0','1'}[n%2+1] // Pega Par ou Impar oBoleto:ValorjurosdiaAtraso := 0 oBoleto:TipoDocumentoCobranca :='DM' /* IMPRIME */ lPreviewLocal := .T. If lPreviewLocal oCBX:ImprimeBoletos() // Visualiza e permite direcionar impressão Else oCBX:ImprimeBoletosSemPreview() // Assim vai na impressora Default Endif oCBX := NIL NEXT RETURN( NIL ) FUNCTION Grava_HTML() ******************************************************************************** Local cHTML cHTML := '<table border=0 cellpadding=0 cellspacing=0 width=730><tr><td width=40% valign=bottom height=60><p align=left><#LogotipoCedente></td><td width=25% valign=bottom><p align=center><font size=2><b>Comprovante de Entrega</b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '<table border=1 cellpadding=1 cellspacing=0 width=730><tr><td colspan=3 width=320><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Cedente</font></td></tr><tr><td width=100%><font size=2><b><#NomeCedente></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td><td width=168><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Agência/Código Cedente</font></td></tr><tr><td width=100%><p align=center><font size=2><b><#AgenciaCodigoCedente></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td><td width=146><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Vencimento</font></td></tr><tr><td width=100%><p align=center><font size=2><b><#Vencimento></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td></tr><tr><td width=320 colspan=3><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Sacado</font></td></tr><tr><td width=100%><font size=2><b><#NomeSacado></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td><td width=168><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Número do Documento</font></td></tr><tr><td width=100%><p align=center><font size=2><b><#NumeroDocumento></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td><td width=146><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Nosso Número</font></td></tr><tr><td width=100%><p align=center><font size=2><b><#NossoNumeroExibicao></b></font></td></tr></table> '+ CHR(13) + CHR(10) +; '</td></tr><tr><td width=66><table border=0 cellpadding=0 cellspacing=0 width=100%><tr><td width=100%><font size=1>Espécie</font></td></tr><tr><td width=100%><p align=center><font size=2><b%2
  23. Marcio eu tenho pelo Cobrebem rodando em alguns clientes, emissão boleto e Remessa, vc não esta conseguindo ou é pq quer mudar?
×
×
  • Create New...