orochasamuel / fiscalbr-net

Para facilitar seu dia a dia como desenvolvedor \o/
MIT License
93 stars 49 forks source link

Como se cria um arquivo Sped pelo nuget? #41

Closed kailonalexandre closed 2 years ago

kailonalexandre commented 2 years ago

Boa tarde! Sou novo por aqui e estou desenvolvendo uma implementação num sistema onde eu teria que gerar um arquivo Sped, porém não entendi muito bem a documentação disponibilizada e fiquei com algumas duvidas na hora de criar!

Eu iniciei dessa forma:

image

Eu pego as informações necessárias e adiciono nas linhas e no fim do método eu crio o txt com essas informações.

image

porém não entendi o método escrever campos!

Caso eu esteja iniciando de forma incorreta por favor eu peço q me passem uma orientação de como começar!

agradeço desde já!

orochasamuel commented 2 years ago

Fala @kailonalexandre

Você pode escrever registro a registro e ir gerando as linhas OU pode inserir as informações direto no ArquivoEFDFiscal e depois gerar todas as linhas de uma vez.


            var reg0000 = new EFDFiscal.Bloco0.Registro0000
            {
                CodVer = Common.CodigoVersaoLeiaute.V15,
                CodFin = Common.IndCodFinalidadeArquivo.RemessaArquivoOriginal,
                DtIni = initialDate,
                DtFin = finalDate,
                Nome = "BANCO DO BRASIL S.A.",
                Cnpj = "00000000000191",
                Uf = "GO",
                Ie = "123456789",
                CodMun = "5204508",
                IndPerfil = Common.IndPerfilArquivo.A,
                IndAtiv = Common.IndTipoAtividade.Outros
            };

            var linhaGerada = Common.Sped.EscreverCamposSped.EscreverCampos(reg0000);


            var sped = new ArquivoEFDFiscal();

            if (sped.Bloco0 is null)
                sped.Bloco0 = new FiscalBr.EFDFiscal.Bloco0();

            var reg0000 = new EFDFiscal.Bloco0.Registro0000
            {
                CodVer = Common.CodigoVersaoLeiaute.V15,
                CodFin = Common.IndCodFinalidadeArquivo.RemessaArquivoOriginal,
                DtIni = initialDate,
                DtFin = finalDate,
                Nome = "BANCO DO BRASIL S.A.",
                Cnpj = "00000000000191",
                Uf = "GO",
                Ie = "123456789",
                CodMun = "5204508",
                IndPerfil = Common.IndPerfilArquivo.A,
                IndAtiv = Common.IndTipoAtividade.Outros
            };

            sped.Bloco0.Reg0000 = reg0000;

            sped.GerarLinhas();

            sped.Escrever(@"C:\Users\orochasamuel\Documents\fiscalbr-test.txt");

PS: O método GerarLinhas() só deve ser utilizado uma única vez logo após popular os registros com as informações do seu sistema.

Vida longa e próspera 🖖

kailonalexandre commented 2 years ago

Opa, @orochasamuel, Muitissimo obrigado!!! Já me ajudou muito! Quaisquer duvidas retornarei por aqui.