Jump to content

Iniciando em ACBrLib com usar NFE_StatusServico


Go to solution Solved by José M. S. Junior,

Recommended Posts

  • Consultores
47 minutos atrás, Haroldo Lafetá disse:

Estou iniciando no ACBrLib (ACBrNFe32.dll) utilizando c#. Como carrego os dados como uf, certificado, senha certificado e etc para executar a NFE_StatusServico?

@Haroldo Lafetá você chegou a testar o programa exemplo do ACBr ?

http://svn.code.sf.net/p/acbr/code/trunk2/Projetos/ACBrLib/Demos/C%23/NFe/

Nele tem aba de configuração, onde você pode carregar os dados certificado para verificar Status Serviço

Veja manual da ACBrLib também
https://acbr.sourceforge.io/ACBrLib/DFe.html

https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca16.html
 

 

Link to comment
Share on other sites

  • Membros Pro

o projeto de exemplo do acbrlib está em .net framework que foi abodonado pela Microsoft.

Todos os meu projetos já estão convertidos para .net 5.

Já existe o exemplo de acbrlib em .net 5?

Link to comment
Share on other sites

  • Consultores
4 horas atrás, Haroldo Lafetá disse:

o projeto de exemplo do acbrlib está em .net framework que foi abodonado pela Microsoft.

Todos os meu projetos já estão convertidos para .net 5.

Já existe o exemplo de acbrlib em .net 5?

Senão me falhe a memoria o consumo é o mesmo então basta usar as classes de alto nível e importar para sua aplicação e usar

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Membros Pro

@Haroldo Lafetá segue um exemplo de como estamos setando as configurações em VB.Net, talevz te de uma luz para fazer em C#

 

        Dim MDFe As New ACBrMDFe
        MDFe.LimparLista()

        With MDFe.Config
            .Principal.TipoResposta = ACBrLib.Core.TipoResposta.fmtINI

            .Principal.LogNivel = ACBrLib.Core.NivelLog.logCompleto
            .Principal.LogPath = "C:\temp\ACBR\log.ini"

            .FormaEmissao = ACBrLib.Core.DFe.TipoEmissao.teNormal
            If tpAmb = 1 Then (Tome muito cuidado aqui, o componente esta vacilando no ENum de tpAmb)
                .Ambiente = ACBrLib.Core.DFe.TipoAmbiente.taProducao
            Else
                .Ambiente = ACBrLib.Core.DFe.TipoAmbiente.taHomologacao
            End If
            .VersaoDF = VersaoMDFe.ve300

            .ExibirErroSchema =True
            .RetirarAcentos = True
            .RetirarEspacos = True
            .IdentarXML = True
            .Visualizar = False 'Define se as mensagens de retorno dos webservices serão apresentadas na tela
            .SalvarWS = True 'Define se os XML de envio e de retorno com os envelopes serão salvos em disco
            .SalvarArq = True 'Define se os XML dos eventos serão salvos em disco
            .SSLType =5
            .Timeout = 5000

            .IniServicos = PastaConfig & "\ACBrMDFeServicos.ini" 'Caminho e nome do arquivo INI que contem as URLs de homologação e produção
            .PathSalvar = PastaXML & "log\"
            .PathEvento = PastaXML & "log\"
            .PathSchemas = PastaConfig & "Schemas\"
            .PathMDFe = Pasta

            .SepararPorCNPJ = False
            .SepararPorModelo = False
            .SepararPorAno = False
            .SepararPorMes = False
            .SepararPorDia = False

            .DAMDFe.PathLogo = PastaLogo
            .DAMDFe.MostraSetup = True
            .DAMDFe.MostraPreview = True
            .DAMDFe.MostraStatus = True
            .DAMDFe.ExpandeLogoMarca = True
            .DAMDFe.TipoDAMDFe = 1

            .DFe.SSLCryptLib = ACBrLib.Core.DFe.SSLCryptLib.cryWinCrypt
            .DFe.SSLHttpLib = ACBrLib.Core.DFe.SSLHttpLib.httpWinHttp
            .DFe.SSLXmlSignLib = ACBrLib.Core.DFe.SSLXmlSignLib.xsLibXml2

           'Dados certificado          

          .DFe.VerificarValidade = False
          .DFe.NumeroSerie = "111111111"
         .DFe.Senha = "XXXXXXXXXXX"

 

 

Depois como estamos chegando o status do serviço
 

    Public Shared Function StatusServico(ACMDFe As ACBrLib.MDFe.ACBrMDFe) As Boolean
        Dim bo As Boolean = False

        Dim Status As ACBrLib.Core.DFe.StatusServicoResposta = ACMDFe.StatusServico()
        If Not Status.CStat = 107 Then
            Dim Obs As String = ""
            If Status.XObs IsNot Nothing Then Obs = Status.XObs
            MessageBox.Show(Status.XMotivo & Chr(13) & Obs, "Status SEFAZ", MessageBoxButtons.OK, MessageBoxIcon.Information)
        Else
            bo = True
        End If

        Return bo
    End Function

 

  • Like 2

Tiago Borges
Head de Produtos

separado.png

logo.gif


Cel: (12) 98190.3952
Site:
www.estrategiasoftware.com.br

Link to comment
Share on other sites

  • Membros Pro

já estou estou utilizando o ACBrNFe.StatusServico().

Estou querendo passar o conteúdo do ACBrLib.ini e não o caminho para a ACBrNFe.CarregarINI e não esta funcionando.

A ACBrNFe.CarregarINI sempre usa o arquivo ACBrLib.ini.

O que estou fazendo de errado?

segue o conteúdo do arquivo:

[Principal]
TipoResposta=0
CodificacaoResposta=0
LogNivel=3
LogPath=C:\impressao\Acbr\ACBR LIB\Exemplos\C#\NFe\Demo\ACBrLib.NFe.Demo\bin\Debug\Logs

[Versao]
ACBrLib=0.0.2
ACBrLibNFE=0.4.6.182

[Sistema]
Nome=
Versao=
Data=30/12/1899
Descricao=

[Email]
Nome=
Servidor=
Conta=
Usuario=
Senha=
Codificacao=27
Porta=0
SSL=0
TLS=0
Timeout=0
Confirmacao=0
ConfirmacaoEntrega=0
SegundoPlano=0
Tentativas=1
IsHTML=0
Priority=1

[PosPrinter]
ArqLog=
Modelo=0
Porta=c:\temp\posprinter.txt
PaginaDeCodigo=2
ColunasFonteNormal=48
EspacoEntreLinhas=0
LinhasEntreCupons=21
CortaPapel=1
TraduzirTags=1
IgnorarTags=0
LinhasBuffer=0
ControlePorta=0
VerificarImpressora=0
TipoCorte=0

[PosPrinter_Barras]
MostrarCodigo=0
LarguraLinha=0
Altura=0
Margem=0

[PosPrinter_QRCode]
Tipo=2
LarguraModulo=4
ErrorLevel=0

[PosPrinter_Logo]
IgnorarLogo=0
KeyCode1=32
KeyCode2=32
FatorX=1
FatorY=1

[PosPrinter_Gaveta]
SinalInvertido=0
TempoON=50
TempoOFF=200

[PosPrinter_MPagina]
Largura=0
Altura=0
Esquerda=0
Topo=0
Direcao=0
EspacoEntreLinhas=0

[PosPrinter_Device]
Baud=9600
Data=8
Timeout=3
Parity=0
Stop=0
MaxBandwidth=0
SendBytesCount=0
SendBytesInterval=0
HandShake=0
SoftFlow=0
HardFlow=0

[Proxy]
Servidor=
Porta=
Usuario=
Senha=

[SoftwareHouse]
CNPJ=
RazaoSocial=
NomeFantasia=
WebSite=
Email=
Telefone=
Responsavel=

[Emissor]
CNPJ=
RazaoSocial=
NomeFantasia=
WebSite=
Email=
Telefone=
Responsavel=

[DFe]
SSLCryptLib=1
SSLHttpLib=3
SSLXmlSignLib=4
UF=MG
TimeZone.Modo=0
TimeZone.Str=
URLPFX=
ArquivoPFX=D:\dbteste\redeconstruir\0001-76 - CENTRO DE DISTR - 1000343026 - 12-2021 12-2022 Senha 123456789.pfx
DadosPFX=
Senha=RWtYHjVhd0xg
NumeroSerie=
VerificarValidade=1

[NFe]
FormaEmissao=0
SalvarGer=1
ExibirErroSchema=1
FormatoAlerta=TAG:%TAGNIVEL% ID:%ID%/%TAG%(%DESCRICAO%) - %MSG%.
RetirarAcentos=1
RetirarEspacos=1
IdentarXML=0
ValidarDigest=1
IdCSC=
CSC=
ModeloDF=0
VersaoDF=3
AtualizarXMLCancelado=0
VersaoQRCode=2
CamposFatObrigatorios=1
TagNT2018005=0
Ambiente=1
SalvarWS=0
Timeout=5000
TimeoutPorThread=0
Visualizar=0
AjustaAguardaConsultaRet=0
AguardarConsultaRet=0
IntervaloTentativas=1000
Tentativas=5
SSLType=5
QuebradeLinha=|
PathSalvar=
PathSchemas=
IniServicos=
SalvarArq=1
AdicionarLiteral=0
SepararPorCNPJ=0
SepararPorIE=0
SepararPorModelo=0
SepararPorAno=0
SepararPorMes=0
SepararPorDia=0
Download.PathDownload=
Download.SepararPorNome=0
SalvarEvento=0
SalvarApenasNFeProcessadas=0
EmissaoPathNFe=0
NormatizarMunicipios=0
PathNFe=
PathInu=
PathEvento=
PathArquivoMunicipios=
IdCSRT=0
CSRT=

[DANFE]
PathPDF=
UsaSeparadorPathPDF=0
Impressora=
NomeDocumento=
MostraSetup=0
MostraPreview=1
MostraStatus=1
Copias=1
PathLogo=
MargemInferior=8
MargemSuperior=8
MargemEsquerda=6
MargemDireita=5,1
AlterarEscalaPadrao=0
NovaEscala=96
ExpandeLogoMarca=0
ExpandeLogoMarca.Altura=0
ExpandeLogoMarca.Esquerda=0
ExpandeLogoMarca.Topo=0
ExpandeLogoMarca.Largura=0
ExpandeLogoMarca.Dimensionar=0
ExpandeLogoMarca.Esticar=1
CasasDecimais.Formato=0
CasasDecimais.MaskqCom=,0.00
CasasDecimais.MaskvUnCom=,0.00
CasasDecimais.qCom=2
CasasDecimais.vUnCom=2
Protocolo=
Cancelada=0
TipoDANFE=1
ImprimeTotalLiquido=1
vTribFed=0
vTribEst=0
vTribMun=0
FonteTributos=
ChaveTributos=
ImprimeTributos=1
ExibeTotalTributosItem=0
ImprimeCodigoEan=0
ImprimeNomeFantasia=0
ExibeInforAdicProduto=1
QuebraLinhaEmDetalhamentos=1

[DANFENFe]
FormularioContinuo=0
ImprimeValor=0
ImprimeDescPorPercentual=0
ImprimeDetalhamentoEspecifico=1
PosCanhoto=0
PosCanhotoLayout=0
ExibeResumoCanhoto=1
TextoResumoCanhoto=
ExibeCampoFatura=1
ExibeDadosISSQN=0
ExibeDadosDocReferenciados=1
DetVeiculos=[dv_chassi,dv_xCor,dv_nSerie,dv_tpComb,dv_nMotor,dv_anoMod,dv_anoFab]
DetMedicamentos=[dm_nLote,dm_qLote,dm_dFab,dm_dVal,dm_vPMC]
DetArmamentos=[da_tpArma,da_nSerie,da_nCano,da_descr]
DetCombustiveis=[dc_cProdANP,dc_CODIF,dc_qTemp,dc_UFCons,dc_CIDE,dc_qBCProd,dc_vAliqProd,dc_vCIDE]
TributosPercentual=0
TributosPercentualPersonalizado=0
MarcadAgua=
LarguraCodProd=54
ExibeEAN=0
AltLinhaComun=30
EspacoEntreProdutos=7
AlternaCoresProdutos=0
CorDestaqueProdutos=clWhite
TamanhoLogoHeight=0
TamanhoLogoWidth=0
RecuoEndereco=0
RecuoEmpresa=0
LogoemCima=0
RecuoLogo=0
ExpandirDadosAdicionaisAuto=0
ImprimeContDadosAdPrimeiraPagina=0
ExibeCampoDePagamento=0
Fonte.Nome=0
Fonte.Negrito=0
Fonte.TamanhoFonteRazaoSocial=8
Fonte.TamanhoFonteEndereco=0
Fonte.TamanhoFonteInformacoesComplementares=8
Fonte.TamanhoFonteDemaisCampos=8

[DANFENFCe]
TipoRelatorioBobina=0
TipoRelatorioEvento=0
LarguraBobina=302
ImprimeDescAcrescItem=1
ImprimeItens=1
ViaConsumidor=0
vTroco=0
ImprimeQRCodeLateral=0
ImprimeLogoLateral=0
EspacoFinal=38
TamanhoLogoHeight=50
TamanhoLogoWidth=77
DescricaoPagamentos=[icaTipo,icaBandeira]
ImprimeEmUmaLinha=0
ImprimeEmDuasLinhas=0
MargemInferior=0
MargemSuperior=0
MargemEsquerda=0
MargemDireita=0
FonteLinhaItem.Name=Lucida Console
FonteLinhaItem.Color=536870912
FonteLinhaItem.Size=7
FonteLinhaItem.Bold=0
FonteLinhaItem.Italic=0
FonteLinhaItem.Underline=0
FonteLinhaItem.StrikeOut=0

[Integrador]
ArqLog=
PastaInput=C:\Integrador\Input\
PastaOutput=C:\Integrador\Output\
Timeout=30
 

Link to comment
Share on other sites

  • Administradores

Bom dia 

@Haroldo Lafetáquando quiser compartilhar o conteúdo do ini, queira por favor anexar o arquivo, pois assim facilita a análise.

At.

Consultora SAC ACBr

Juliana Tamizou
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • Consultores
  • Solution

Bom dia @Haroldo Lafetá, se deseja carregar as configurações com dados em memória sem utilizar o path do arquivo pode passar o parâmetro como ["memory"] E passar todas as configurações após inicializar a lib , utilizando o método ConfigGravarValor para configuração de cada campo, informando a seção, campo e valor.

https://acbr.sourceforge.io/ACBrLib/NFE_ConfigGravarValor.html

campos para configuração:

https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca16.html

 

Dê uma olhada nesse tópico:

 

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link to comment
Share on other sites

  • Membros Pro

Estou configurando após iniciar a lib em tempo de execução.

Exemplo: ACBrNFe.Config.TagNT2018005 = (TagNT2018005)Convert.ToInt32("3");

Dessa maneira esta certo?  Ou pode gerar algum problema?

 

 

Link to comment
Share on other sites

  • Consultores
15 horas atrás, Haroldo Lafetá disse:

Dessa maneira esta certo?  Ou pode gerar algum problema?

Esta correto, nesse caso está usando a classe implementada para C# correto, mas se notar o que ela faz no final é passar essa configuração para a lib utilizando o método ConfigGravarValor.

Só lembrando que se estiver alterando essas configurações em tempo de execução precisa sempre chamar o Método ConfigGravar para que de fato seja carregado as configurações na lib.

Consultor SAC ACBr

José Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.