-
Posts
718 -
Joined
-
Last visited
-
Days Won
14
Posts posted by Jmsilva
-
-
2 horas atrás, sunset disse:
MYSQL 5.7
Na verdade eu estou abrindo a tabela como se fosse um DBF ainda
use estadual alias estad new shared
if neterr()
msginfo("Arquivo está em uso em modo exclusivo","Informação")
close data
retu
endif
set index to estadual
e usando o ALIS no xbrwse
@ 0,0 XBROWSE oLbxEstadual ;
Fields Iif(len(alltrim(estad->numecgc)) = 11,TRANSFORM(estad->numecgc,"@R 999.999.999-99"),TRANSFORM(estad->numecgc,"@R 99.999.999/9999-99")),;
estad->nomecli ,;
estad->inscest ,;
estad->siticms ,;
estad->cida_de ,;
estad->esta_do ,;
estad->correio ,;
estad->telefon ;
Headers "Cnpj" ,;
"Nome" ,;
"Inscrição" ,;
"Situação" ,;
"Cidade" ,;
"UF" ,;
"Correio" ,;
"Telefone" ;
Fieldsizes 170,400,90,100,200,25,400,150;
Alias "estad" ;Mas acredito que desta forma não vou ter resultado, vou executar um SELECT conforme indicado teria que colocar o resultado num array ?
Você pode usar as funções,
Sr_SetFilter(cSql)
Sr_DbRefresh()
DbGoto()
O comando cSql equivale cláusula Where do comando nativo SQL, dbsetorder(n) vai ser usado na na cláusula ORDER BY (só por curiosidade). Você acrescentando estas linhas antes do xbrowse, não haverá a necessidade de carregar um array. Se na sua tela tiver a opção GET, vc vai executando as funções que farão o filtro deixando cada vez mais rápido a exibição do dados...
-
Por acaso vc usa para o acesso SQLRDD ?
-
1 hora atrás, JUDSON ROSA disse:
Error description: Warning BASE/1005 Message not found: TDIALOG:_LSTRETCH
OBmp_Busca :lStretch := .t.
-
Amigo, conhece o AUTOGET, pode ser o que vc quer, veja o exemplos em samples, testaget.prg,testage2 ao 5, se base for sql, usa o like.
-
Pesquisa simples na pasta samples\ por obrw:SetArray vc encontrará vários exemplos como próprio fivedbu.prg, testxbrw.prg, etc.
Blz
Se precisar posta novamente...
-
6 horas atrás, MAMP2 disse:
bom dia JMSILVA, nao tenho voce tem ai pra me mandar?
Posso sim,mas provavelmente não vai te atender, pq se vc não tem o prg, provavelmente a versão da FW que vc tem não contempla está função, mesmo compilando o prg no seu projeto a função msgyeno não reconhecerá. Neste caso é melhor reescrever a função msgyesno com base na alert() que @Kapiaba postou acima.
-
Verifica se vc tem arquivo strings.prg da FW, em ...\source\function\ se existir adicione o prg no seu projeto e testa a dica do @kapiaba
-
Parece que é 2007, comenta e faz o teste novamente...
-
Sim! Basta tê-lo instalado, a String é a mesma para mysql e mariadb.
REQUEST SQLRDD
REQUEST SR_MYSQL
cCon := "Mysql=localhost;UID=Usuario;PWD=senha;DTB=Noome do banco"
nCnn := Sr_AddConnection(CONNECT_MYSQL,cCon)
blz
-
João, acredito que seja conexão odbc instalado no seu PC.
-
13 horas atrás, sygecom disse:
Valeu colega, poderia compartilhar como chama a DLL do ACBR no xbase ?
Jovem, basta copiar a dll na mesma pasta do seu sistema, que a classe ACBrBoleto():New() que é fornecido com dll, disponível para download, faz o devido acesso. Ok.
-
40 minutos atrás, sygecom disse:
Que ótimo mestre, essa DLL para boletos conseguimos assinando o plano de suporte do ACBR?
Sim amigo, está tudo lá, aliás foi o único produto que usei da acbr até agora, funciona bem, está implantado no cliente. Muito bom.
-
5 horas atrás, sygecom disse:
Acredito que esse metodo postado pelo colega, usa o ACBRMONITOR e não a DLL, mas não tenho certeza, a ultima vez que pesquisei no Nov/2020 ainda não tinha versão do ACBR BOLETO para DLL.
Amigo vc equivocou-se, usa apenas a dll e o prg que é fornecido com a dll. Está rotina NÃO USA O ACBRMONITOR.
-
#include "Struct.ch" #include "Fivewin.ch" //https://acbr.sourceforge.io/ACBrLib/MetodosBoleto.html Procedure Main() TACBrBol():New() Return /* TipoResposta: Define qual será o formato da resposta. 0 = Formato INI (Padrão); 1 = Formato XML; 2 = Formato JSON. CodificacaoResposta: Define qual será a codificação das respostas. 0 = UTF8 (Padrão); 1 = ANSI; LogNivel: Define qual o nível do log da biblioteca. 0 = Nenhum; 1 = Simples; 2 = Normal; 3 = Completo; 4 = Paranoico; LogPath: O Path onde será salvo o arquivo de log da biblioteca (Padrão Vazio) [Principal] TipoResposta=0 LogNivel=4 LogPath=c:\correio\ */ CLASS TACBrBol DATA hBol INIT Hash() DATA oBol DATA cFileIni METHOD New() CONSTRUCTOR METHOD Cedente() METHOD Banco() METHOD Conta() METHOD Config() METHOD Titulo(nI) METHOD Create_Ini() ENDCLASS **============================================================ METHOD New() CLASS TACBrBol Local nI Set Default To "c:\Temp\" ::cFileIni := "C:\Temp\Titulos.ini" //nome o onde quiser ::oBol := ACBrBoleto():New() //"C:\Temp\teste.INI",'') ::Config() ::Cedente() ::Banco() ::Conta() For nI:=1 to 4 //quantidade de boleto ::Titulo(nI) Next ::Create_Ini() ::oBol:LimparLista() //::oBol:SetDiretorioArquivo("c:\temp\","Boletopdf") ::oBol:IncluirTitulos(::cFileIni) ::oBol:GerarPDF() //::oBol:Imprimir() ::oBol:GerarRemessa("c:\temp\",::cFileIni,"File.REM") //::oBol:LerRetorno("C:\temp\","file.ret") ::oBol:LimparLista() ::oBol := nil MsgInfo("Boletos gerado com sucesso !") Return Self **============================================================ METHOD Config() CLASS TACBrBol ::oBol:ConfigGravarValor("Principal","LogNivel","4") ::oBol:ConfigGravarValor("Principal","LogPath","c:\temp\") ::oBol:ConfigGravarValor("Sistema","Nome","meu soft") ::oBol:ConfigGravarValor("Sistema","Versao","1.0") ::oBol:ConfigGravarValor("Sistema","Data","29/09/2020") ::oBol:ConfigGravarValor("Sistema","Descricao","Escreve aqui qq coisa") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","DirLogo","C:\Temp\") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","MostrarPreview","1") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","MostrarProgresso","1") //duas formas, aqui ou pelo metodo :SetDiretorioArquivo( ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","NomeArquivo","c:\temp\Bol_PDF.pdf") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","NumeroCopias","1") //::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","PrinterName","Sua_impressora") //::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","SoftwareHouse","Sua_Empresa") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DataArquivo","29/09/2020") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirArqRemessa","C:\Temp\") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirArqRetorno","C:\Temp\") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirHomologacao","0") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","ImprimirMensagemPadrao","1") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","LayoutRemessa","1") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","LeCedenteRetorno","0") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeArqRemessa","File_Remessa") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeArqRetorno","File_Retorno") //::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeroArquivo","0") ::oBol:ConfigGravar() ::oBol:ConfigLer() Return Nil **============================================================ METHOD Cedente() CLASS TACBrBol ::hBol["Cedente"] := Hash() ::hBol["Cedente","Nome"] := "SAO JOAO LTDA." ::hBol["Cedente","CNPJCPF"] := "35373107000160" ::hBol["Cedente","Logradouro"] := "Rua Evaristo Mendes" ::hBol["Cedente","Numero"] := "200" ::hBol["Cedente","Bairro"] := "Centro" ::hBol["Cedente","Cidade"] := "Tatui" ::hBol["Cedente","CEP"] := "18.270-000" ::hBol["Cedente","Complemento"] := "Sala 10" ::hBol["Cedente","UF"] := "SP" ::hBol["Cedente","RespEmis"] := "0" ::hBol["Cedente","TipoPessoa"] := "1" ::hBol["Cedente","CodigoCedente"] := "123456" ::hBol["Cedente","LayoutBol"] := "1" ::hBol["Cedente","CaracTitulo"] := "0" ::hBol["Cedente","TipoCarteira"] := "0" ::hBol["Cedente","TipoDocumento"] := "0" ::hBol["Cedente","Modalidade"] := "17" ::hBol["Cedente","CodTransmissao"] := "10" ::hBol["Cedente","Convenio"] := "123456" Return nil /* LayoutBol:= 0 - 6 0= 1=c/canhoto-bloco 2=dois boletos s/recibo 3=dois boletos c/recibo 4=um boletos c/recibo */ **============================================================ METHOD Banco() CLASS TACBrBol ::hBol["Banco"] := Hash() ::hBol["Banco","Numero"] := "001" ::hBol["Banco","CNAB"] := "1" ::hBol["Banco","IndiceACBr"] := "1" ::hBol["Banco","NumeroCorrespondente"] := "200" ::hBol["Banco","VersaoArquivo"] := "0" ::hBol["Banco","VersaoLote"] := "0" Return nil **============================================================ METHOD Conta() CLASS TACBrBol ::hBol["Conta"] := Hash() ::hBol["Conta","Conta"] := "011234567" ::hBol["Conta","DigitoConta"] := "1" ::hBol["Conta","Agencia"] := "0734" ::hBol["Conta","DigitoAgencia"] := "2" ::hBol["Conta","DigitoVerificadorAgenciaConta"] := "0" Return nil METHOD Titulo(nCt) CLASS TACBrBol Local cTitulo := "Titulo"+AllTrim(Str(nCt,2)) ::hBol[cTitulo] := Hash() ::hBol[cTitulo,"NumeroDocumento"] := "000010" ::hBol[cTitulo,"NossoNumero"] := "0000001" ::hBol[cTitulo,"Carteira"] := "20" ::hBol[cTitulo,"ValorDocumento"] := "100,50" ::hBol[cTitulo,"Vencimento"] := "10/09/2010" ::hBol[cTitulo,"ValorMoraJuros"] := "0,50" ::hBol[cTitulo,"DataDocumento"] := "10/08/2010" ::hBol[cTitulo,"DataProcessamento"] := "10/08/2010" ::hBol[cTitulo,"DataAbatimento"] := "05/09/2010" ::hBol[cTitulo,"DataDesconto"] := "07/09/2010" ::hBol[cTitulo,"DataMoraJuros"] := "12/09/2010" ::hBol[cTitulo,"DiasDeProtesto"] := "0" ::hBol[cTitulo,"DataProtesto"] := "10/10/2010" ::hBol[cTitulo,"DataMulta"] := "10/10/2010" ::hBol[cTitulo,"ValorAbatimento"] := "5,00" ::hBol[cTitulo,"ValorDesconto"] := "0,50" ::hBol[cTitulo,"ValorMoraJuros"] := "0,55" ::hBol[cTitulo,"ValorIOF"] := "3,50" ::hBol[cTitulo,"ValorOutrasDespesas"] := "2,50" ::hBol[cTitulo,"MultaValorFixo"] := "0" ::hBol[cTitulo,"PercentualMulta"] := "05,00" ::hBol[cTitulo,"LocalPagamento"] := "Pagável em qualquer agência bancária mesmo após o vencimento" ::hBol[cTitulo,"Especie"] := "DM" ::hBol[cTitulo,"EspecieMod"] := "R$" ::hBol[cTitulo,"Sacado.NomeSacado"] := "Sacado Teste" ::hBol[cTitulo,"Sacado.CNPJCPF"] := "999.999.999.99" ::hBol[cTitulo,"Sacado.Pessoa"] := "0" ::hBol[cTitulo,"Sacado.Logradouro"] := "Rua Jose Rodrigues" ::hBol[cTitulo,"Sacado.Numero"] := "100" ::hBol[cTitulo,"Sacado.Bairro"] := "Jardim Moderno" ::hBol[cTitulo,"Sacado.Complemento"] := "Casa" ::hBol[cTitulo,"Sacado.Cidade"] := "Tatui" ::hBol[cTitulo,"Sacado.UF"] := "SP" ::hBol[cTitulo,"Sacado.CEP"] := "18277.500" ::hBol[cTitulo,"Sacado.Email"] := "teste@email.com" ::hBol[cTitulo,"Sacado.SacadoAvalista.NomeAvalista"] := "Nome do Avalista" ::hBol[cTitulo,"Sacado.SacadoAvalista.CNPJCPF"] := "9999999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.Logradouro"] := "Rua das Flores" ::hBol[cTitulo,"Sacado.SacadoAvalista.Numero"] := "99" ::hBol[cTitulo,"Sacado.SacadoAvalista.Complemento"] := "Casa" ::hBol[cTitulo,"Sacado.SacadoAvalista.Bairro"] := "Centro" ::hBol[cTitulo,"Sacado.SacadoAvalista.Cidade"] := "Tatui" ::hBol[cTitulo,"Sacado.SacadoAvalista.UF"] := "SP" ::hBol[cTitulo,"Sacado.SacadoAvalista.CEP"] := "9999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.Email"] := "teste@email.com" ::hBol[cTitulo,"Sacado.SacadoAvalista.Fone"] := "(99)999999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.InscricaoNr"] := "9999999" ::hBol[cTitulo,"Mensagem"] := "teste1|teste2" ::hBol[cTitulo,"Instrucao1"] := "10" ::hBol[cTitulo,"Instrucao2"] := "11" ::hBol[cTitulo,"Aceite"] := "1" ::hBol[cTitulo,"OcorrenciaOriginal.TipoOcorrencia"] := "0" ::hBol[cTitulo,"Parcela"] := "1" ::hBol[cTitulo,"TotalParcelas"] := "1" ::hBol[cTitulo,"SeuNumero"] := "000020" ::hBol[cTitulo,"TipoDiasProtesto"] := "1" ::hBol[cTitulo,"TipoImpressao"] := "1" ::hBol[cTitulo,"CodigoMora"] := "1" ::hBol[cTitulo,"TipoDesconto"] := "0" ::hBol[cTitulo,"TipoDesconto2"] := "0" Return nil **============================================================ METHOD Create_Ini() CLASS TACBrBol Local oIni,oGrupo,oData If File(::cFileIni) FErase(::cFileIni) Endif //gera o arquivo ini para ler e gerar o boleto INI oIni FILE ::cFileIni For EAch oGrupo IN ::hBol For EAch oData IN oGrupo:Value SET SECTION oGrupo:Key ENTRY oData:Key TO Trim(oData:Value) OF oIni Next Next ENDINI Return Nil
Veja se ajuda !
Veja no mettodo New() chama ::oBol:GerarRemessa("c:\temp\",::cFileIni,"File.REM")
-
16 horas atrás, maudruidas disse:
Bom dia, ainda não deu certo. Kapiaba eu já havia tentado o "@ 999", conforme o Aferra havia pedido. É muito estranho. Por enquanto eu agradeço pela ajuda, se alguém descobrir favor postar aqui, vou continuar pesquisando sobre o assunto.
Se puder postar código da rotina ajuda!
-
Provavelmente vc declarou como local e usou @
@04,03 SAY "Vendedor........:" GET VEN PICT "999" VALID FUNVEN(@VEN) // Busca o vendedor
Tenta assim
-
Quando for .f. antes de retornar, zera a variável!
-
Em 19/11/2020 at 17:04, CLALIVEIRA disse:
Entao eu não consigo fazer download e nem instalar para estudar .
http://www.xharbour.org/index.asp?page=download/windows/required_win
-
Segue um link, com comentários destacado daquilo que é importante para as Softhouse, segundo o autor do artigo.
-
21 horas atrás, joaosolution disse:
Obrigado! Vi aqui mas só xBrowse mesmo.
Att
João Bosco
João vc viu este link
Classe que criei, veja se ajuda!
-
20 horas atrás, alex2002 disse:
Blza, vou olhar e qq coisa retorno.
ObrigadoOlá, correções!
O nome correto do método usado para gerar PDF é ::oBol:GerarPdf() -Faltou um "R"
e o
Nome correto do Método ::oBol:GerarRemessa("c:\temp\",::cFileIni,"File.rem")
No exemplo tem um "R" a mais, e o 3º parâmetro é o nome do arquivo de remessa sem path. (Só Nome)
att
JMSilva
-
Conforme prometido segue o exemplo.
Você poderá consultar documentação no link: https://acbr.sourceforge.io/ACBrLib/MetodosBoleto.html
#include "Struct.ch" #include "Fivewin.ch" Procedure Main() TACBrBol():New() Return /* TipoResposta: Define qual será o formato da resposta. 0 = Formato INI (Padrão); 1 = Formato XML; 2 = Formato JSON. CodificacaoResposta: Define qual será a codificação das respostas. 0 = UTF8 (Padrão); 1 = ANSI; LogNivel: Define qual o nível do log da biblioteca. 0 = Nenhum; 1 = Simples; 2 = Normal; 3 = Completo; 4 = Paranoico; LogPath: O Path onde será salvo o arquivo de log da biblioteca (Padrão Vazio) [Principal] TipoResposta=0 LogNivel=4 LogPath=c:\correio\ */ CLASS TACBrBol DATA hBol INIT Hash() DATA oBol DATA cFileIni METHOD New() CONSTRUCTOR METHOD Cedente() METHOD Banco() METHOD Conta() METHOD Config() METHOD Titulo(nI) METHOD Create_Ini() ENDCLASS **============================================================ METHOD New() CLASS TACBrBol Local nI ::cFileIni := "C:\Temp\Titulos.ini" //nome o onde quiser ::oBol := ACBrBoleto():New('','') ::Config() ::Cedente() ::Banco() ::Conta() For nI:=1 to 4 //quantidade de boleto ::Titulo(nI) Next ::Create_Ini() ::oBol:LimparLista() //::oBol:SetDiretorioArquivo("c:\temp\","Boletopdf") ::oBol:IncluirTitulos(::cFileIni) //::oBol:GeraPDF() ::oBol:Imprimir() //::oBol:GerrarRemessa("c:\temp\",::cFileIni,"C:\temp\File.rem") //::oBol:LerRetorno("C:\temp\","file.ret") ::oBol:LimparLista() ::oBol := nil MsgInfo("Boletos gerado com sucesso !") Return Self **============================================================ METHOD Config() CLASS TACBrBol ::oBol:ConfigGravarValor("Principal","LogNivel","4") ::oBol:ConfigGravarValor("Principal","LogPath","c:\temp\") ::oBol:ConfigGravarValor("Sistema","Nome","meu soft") ::oBol:ConfigGravarValor("Sistema","Versao","1.0") ::oBol:ConfigGravarValor("Sistema","Data","29/09/2020") ::oBol:ConfigGravarValor("Sistema","Descricao","Escreve aqui qq coisa") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","DirLogo","C:\Temp\") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","MostrarPreview","1") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","MostrarProgresso","1") ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","NomeArquivo","c:\temp\BoletoPDF.pdf") //pdf ::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","NumeroCopias","1") //::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","PrinterName","Sua_impressora") //::oBol:ConfigGravarValor("BoletoBancoFCFortesConfig","SoftwareHouse","Sua_Empresa") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DataArquivo","29/09/2020") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirArqRemessa","C:\Temp\") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirArqRetorno","C:\Temp\") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","DirHomologacao","0") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","ImprimirMensagemPadrao","1") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","LayoutRemessa","1") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","LeCedenteRetorno","0") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeArqRemessa","File_Remessa") ::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeArqRetorno","File_Retorno") //::oBol:ConfigGravarValor("BoletoDiretorioConfig","NomeroArquivo","0") ::oBol:ConfigGravar() ::oBol:ConfigLer() Return Nil **============================================================ METHOD Cedente() CLASS TACBrBol ::hBol["Cedente"] := Hash() ::hBol["Cedente","Nome"] := "SAO JOAO LTDA." ::hBol["Cedente","CNPJCPF"] := "35373107000160" ::hBol["Cedente","Logradouro"] := "Rua Evaristo Mendes" ::hBol["Cedente","Numero"] := "200" ::hBol["Cedente","Bairro"] := "Centro" ::hBol["Cedente","Cidade"] := "Tatui" ::hBol["Cedente","CEP"] := "18.270-000" ::hBol["Cedente","Complemento"] := "Sala 10" ::hBol["Cedente","UF"] := "SP" ::hBol["Cedente","RespEmis"] := "0" ::hBol["Cedente","TipoPessoa"] := "1" ::hBol["Cedente","CodigoCedente"] := "123456" ::hBol["Cedente","LayoutBol"] := "1" ::hBol["Cedente","CaracTitulo"] := "0" ::hBol["Cedente","TipoCarteira"] := "0" ::hBol["Cedente","TipoDocumento"] := "0" ::hBol["Cedente","Modalidade"] := "17" ::hBol["Cedente","CodTransmissao"] := "10" ::hBol["Cedente","Convenio"] := "123456" Return nil /* LayoutBol:= 0 - 6 0= 1=c/canhoto-bloco 2=dois boletos s/recibo 3=dois boletos c/recibo 4=um boletos c/recibo */ **============================================================ METHOD Banco() CLASS TACBrBol ::hBol["Banco"] := Hash() ::hBol["Banco","Numero"] := "001" ::hBol["Banco","CNAB"] := "1" ::hBol["Banco","IndiceACBr"] := "1" ::hBol["Banco","NumeroCorrespondente"] := "200" ::hBol["Banco","VersaoArquivo"] := "0" ::hBol["Banco","VersaoLote"] := "0" Return nil **============================================================ METHOD Conta() CLASS TACBrBol ::hBol["Conta"] := Hash() ::hBol["Conta","Conta"] := "011234567" ::hBol["Conta","DigitoConta"] := "1" ::hBol["Conta","Agencia"] := "0734" ::hBol["Conta","DigitoAgencia"] := "2" ::hBol["Conta","DigitoVerificadorAgenciaConta"] := "0" Return nil METHOD Titulo(nCt) CLASS TACBrBol Local cTitulo := "Titulo"+AllTrim(Str(nCt,2)) ::hBol[cTitulo] := Hash() ::hBol[cTitulo,"NumeroDocumento"] := "000010" ::hBol[cTitulo,"NossoNumero"] := "0000001" ::hBol[cTitulo,"Carteira"] := "20" ::hBol[cTitulo,"ValorDocumento"] := "100,50" ::hBol[cTitulo,"Vencimento"] := "10/09/2010" ::hBol[cTitulo,"ValorMoraJuros"] := "0,50" ::hBol[cTitulo,"DataDocumento"] := "10/08/2010" ::hBol[cTitulo,"DataProcessamento"] := "10/08/2010" ::hBol[cTitulo,"DataAbatimento"] := "05/09/2010" ::hBol[cTitulo,"DataDesconto"] := "07/09/2010" ::hBol[cTitulo,"DataMoraJuros"] := "12/09/2010" ::hBol[cTitulo,"DiasDeProtesto"] := "0" ::hBol[cTitulo,"DataProtesto"] := "10/10/2010" ::hBol[cTitulo,"DataMulta"] := "10/10/2010" ::hBol[cTitulo,"ValorAbatimento"] := "5,00" ::hBol[cTitulo,"ValorDesconto"] := "0,50" ::hBol[cTitulo,"ValorMoraJuros"] := "0,55" ::hBol[cTitulo,"ValorIOF"] := "3,50" ::hBol[cTitulo,"ValorOutrasDespesas"] := "2,50" ::hBol[cTitulo,"MultaValorFixo"] := "0" ::hBol[cTitulo,"PercentualMulta"] := "05,00" ::hBol[cTitulo,"LocalPagamento"] := "Pagável em qualquer agência bancária mesmo após o vencimento" ::hBol[cTitulo,"Especie"] := "DM" ::hBol[cTitulo,"EspecieMod"] := "R$" ::hBol[cTitulo,"Sacado.NomeSacado"] := "Sacado Teste" ::hBol[cTitulo,"Sacado.CNPJCPF"] := "999.999.999.99" ::hBol[cTitulo,"Sacado.Pessoa"] := "0" ::hBol[cTitulo,"Sacado.Logradouro"] := "Rua Jose Rodrigues" ::hBol[cTitulo,"Sacado.Numero"] := "100" ::hBol[cTitulo,"Sacado.Bairro"] := "Jardim Moderno" ::hBol[cTitulo,"Sacado.Complemento"] := "Casa" ::hBol[cTitulo,"Sacado.Cidade"] := "Tatui" ::hBol[cTitulo,"Sacado.UF"] := "SP" ::hBol[cTitulo,"Sacado.CEP"] := "18277.500" ::hBol[cTitulo,"Sacado.Email"] := "teste@email.com" ::hBol[cTitulo,"Sacado.SacadoAvalista.NomeAvalista"] := "Nome do Avalista" ::hBol[cTitulo,"Sacado.SacadoAvalista.CNPJCPF"] := "9999999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.Logradouro"] := "Rua das Flores" ::hBol[cTitulo,"Sacado.SacadoAvalista.Numero"] := "99" ::hBol[cTitulo,"Sacado.SacadoAvalista.Complemento"] := "Casa" ::hBol[cTitulo,"Sacado.SacadoAvalista.Bairro"] := "Centro" ::hBol[cTitulo,"Sacado.SacadoAvalista.Cidade"] := "Tatui" ::hBol[cTitulo,"Sacado.SacadoAvalista.UF"] := "SP" ::hBol[cTitulo,"Sacado.SacadoAvalista.CEP"] := "9999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.Email"] := "teste@email.com" ::hBol[cTitulo,"Sacado.SacadoAvalista.Fone"] := "(99)999999999" ::hBol[cTitulo,"Sacado.SacadoAvalista.InscricaoNr"] := "9999999" ::hBol[cTitulo,"Mensagem"] := "teste1|teste2" ::hBol[cTitulo,"Instrucao1"] := "10" ::hBol[cTitulo,"Instrucao2"] := "11" ::hBol[cTitulo,"Aceite"] := "1" ::hBol[cTitulo,"OcorrenciaOriginal.TipoOcorrencia"] := "0" ::hBol[cTitulo,"Parcela"] := "1" ::hBol[cTitulo,"TotalParcelas"] := "1" ::hBol[cTitulo,"SeuNumero"] := "000020" ::hBol[cTitulo,"TipoDiasProtesto"] := "1" ::hBol[cTitulo,"TipoImpressao"] := "1" ::hBol[cTitulo,"CodigoMora"] := "1" ::hBol[cTitulo,"TipoDesconto"] := "0" ::hBol[cTitulo,"TipoDesconto2"] := "0" Return nil **============================================================ METHOD Create_Ini() CLASS TACBrBol Local oIni,oGrupo,oData If File(::cFileIni) FErase(::cFileIni) Endif //gera o arquivo ini para ler e gerar o boleto INI oIni FILE ::cFileIni For EAch oGrupo IN ::hBol For EAch oData IN oGrupo:Value SET SECTION oGrupo:Key ENTRY oData:Key TO Trim(oData:Value) OF oIni Next Next ENDINI Return Nil
A classe ACBRBol e DLL vc poderá baixar fazendo o cadastro
-
4 horas atrás, ronaldo disse:
Estuo utilizando desta forma:
oSQL := FW_OpenAdoConnection( { "MSSQL", cSQL_Host, cSQL_Db, cSQL_User, cSQL_Psw }, .t. )
if oSQL == nil
msgstop("Erro no acesso a conexão SQL Azure","Erro")
Return(.F.)
endifVeja está classe - tsqlado()
-
Alex, o ideal e vc fazer um cadastro no Acbr, e free 30 Dias, opcional pagamento após. Você baixa a Dll e o fontes exemplos. Muito simples, em resumo a Dll faz leitura de arquivo ini, logo no seu sistema precisa gerar um arquivo ini com todos os dados, selecionar o boleto (é um method), após através method faz leitura do ini gera o boleto e o arquivo de remessa para banco. Na semana que vem vou fazer exemplos e te mando.
migrando para sqlexpress usando sqlrdd
in Programação
Posted
Exatamente ! Uso estas duas opções, depende da situação a ser aplicada.