Beispiel #1
0
 public ArquivoSefip(DateTime competencia, List<remag_funcionario> funcionario, int codigo_recolhimento,bool isAtrasoInss,string dataAtrasoInss,IndicadorFGTS indicadoFgts,DateTime dataAtrasoFgts,string caminho,string modalidade, int codPagamento, out string mensagem)
 {
     try
     {
         StreamWriter file = new StreamWriter(caminho);
         //Regitro 00
         char branco = ' ';
         char zero = '0';
         file.GravaRegistro00(Globals.Empresa.Responsavel, Globals.Empresa, competencia, codigo_recolhimento, modalidade, indicadoFgts, isAtrasoInss, dataAtrasoInss, dataAtrasoFgts);
         //Registro 10
         file.GravaRegistro10(Globals.Empresa, codPagamento);
         //REGISTRO 30
         file.GravaRegistro30(funcionario, Globals.Empresa);
         file.GravaRegistro90();
     }
     catch (Exception)
     {
         mensagem="Ocorreu um erro na geração do arquivo";
     }
     finally
     {
         mensagem="O arquivo foi gerado com sucesso!";
     }
 }
Beispiel #2
0
        public static void GravaRegistro00(this TextWriter file, remag_responsavel responsavel, remag_empresa empresa, DateTime competencia, int codRecolhimento, string modalidade, IndicadorFGTS indicador, bool isAtrasoInss, string dataAtrasoInss, DateTime dataAtrasoFgts)
        {
            file.Write("00");
            file.Write(string.Empty, 51); // Brancos
            file.Write("1"); //Tipo de remessa
            file.Write(responsavel.IsCNPJ ? 1 : 2);//Tipo de inscrição do responsável (1 - CNPJ, 2 - CEI, 3 - CPF)
            file.WriteLeft(responsavel.cnpj_cei_cpf,14); // Inscrição do responsável
            file.WriteRight(responsavel.nome,30); // Nome do responsável
            file.WriteRight(responsavel.contato,20);// Pessoa para contato
            file.WriteRight(responsavel.endereco,50); // Endereço
            file.WriteRight(responsavel.bairro,20); // Bairro
            file.WriteRight(responsavel.cep,8); // Cep
            file.WriteRight(responsavel.Municipio.nome,20); // Cidade
            file.WriteRight(responsavel.Municipio.uf,2); // Uf
            file.WriteLeft(responsavel.telefone,12); // Telefone
            file.WriteRight(responsavel.email,60); // Email
            file.Write(competencia.ToString("yyyyMM")); // Competencia
            file.Write(codRecolhimento);//Codigo de recolhimento

            switch (indicador)
            {
                case IndicadorFGTS.GRF_Prazo: file.Write(((int)IndicadorFGTS.GRF_Prazo).ToString());
                    break;
                case IndicadorFGTS.GRF_Atraso: file.Write(((int)IndicadorFGTS.GRF_Atraso).ToString());
                    break;
                case IndicadorFGTS.GRF_Atraso_Acao_Fiscal: file.Write(((int)IndicadorFGTS.GRF_Atraso_Acao_Fiscal).ToString());
                    break;
                case IndicadorFGTS.Individualizacao: file.Write(((int)IndicadorFGTS.Individualizacao).ToString());
                    break;
                case IndicadorFGTS.Individualizacao_Acao_Fiscal: file.Write(((int)IndicadorFGTS.Individualizacao_Acao_Fiscal).ToString());
                    break;
                default:
                    break;
            }

            file.Write(modalidade);//Modalidade do arquivo - Branco, 1 ou 9 - FGTS
            switch (indicador)
            {
                case IndicadorFGTS.GRF_Prazo: file.WriteRight(string.Empty,8);
                    break;
                case IndicadorFGTS.GRF_Atraso: file.Write(dataAtrasoFgts.ToString("ddMMyyyy"));
                    break;
                case IndicadorFGTS.GRF_Atraso_Acao_Fiscal: file.Write(dataAtrasoFgts.ToString("ddMMyyyy"));
                    break;
                case IndicadorFGTS.Individualizacao: file.Write(dataAtrasoFgts.ToString("ddMMyyyy"));
                    break;
                case IndicadorFGTS.Individualizacao_Acao_Fiscal: file.Write(dataAtrasoFgts.ToString("ddMMyyyy"));
                    break;
                default:
                    break;
            }

            file.Write(isAtrasoInss ? "2" : "1");//Indicador de recolhimento previdencia (1 - No prazo, 2 - Em atraso, 3 - Nao gera GPS)
            file.Write(isAtrasoInss ? Convert.ToDateTime(dataAtrasoInss).ToString("ddMMyyyy") : string.Empty,8);//Data de recolhimento - caso seja em atraso
            file.Write(string.Empty, 7);//Selic
            file.Write(empresa.IsCNPJ ? 1 : 2);//Tipo de inscrição do responsável (1 - CNPJ, 2 - CEI, 3 - CPF)
            file.WriteLeft(empresa.cnpj,14); // Inscrição do responsável
            file.Write(string.Empty, 18); // Brancos
            file.Write("*"); //Final da linha
            file.WriteLine();
        }