/// <summary> /// Serializa o registro do arquivo Gcon /// </summary> /// <param name="writer"></param> public void Serializar(System.IO.TextWriter writer, int numRegistro) { NumRegistro = numRegistro; var retorno = "00;00000;00000;"; retorno += DataLiquidacao.ToShortDateString().Replace("/", "") + ";"; retorno += Identificador + ";"; retorno += TipoConta; retorno += TipoContabil.FormataNumero("", 6, false) + ";"; retorno += "00000;"; retorno += (Math.Round(Valor + Desconto, 2)).ToString().Replace(",", ".").FormataNumero("", 16, false) + ";"; retorno += "0;2;0000;"; if (Totalizador) { retorno += "\"" + DescricaoTipoRegistro.FormataTexto("", 200, false) + "\";"; } else { retorno += "\"" + (DescricaoTipoRegistro + " " + NumeroNFe + "-" + Parcela + "-" + IdCliente + "-" + RazaoSocial).FormataTexto("", 200, false) + "\";"; } retorno += "000000000000000000;"; retorno += "\"" + Glass.Formatacoes.RetiraCaracteresEspeciais(CpfCnpj).FormataTexto("", 14, false) + "\";"; retorno += "\"" + Glass.Formatacoes.RetiraCaracteresEspeciais(InscEstadual).FormataTexto("", 14, false) + "\";"; retorno += TipoArquivo == TipoArquivoEnum.Receber ? "\"1\";" : "\"2\";"; writer.WriteLine(retorno); }
/// <summary> /// Serializa o registro do arquivo Gcon /// </summary> /// <param name="writer"></param> public void Serializar(System.IO.TextWriter writer, int numRegistro) { var retorno = "LC1"; retorno += numRegistro.ToString().FormataNumero("Sequencial", 5, true); retorno += "".FormataTexto("Filler", 3, true); retorno += 1.ToString().FormataNumero("Modo Lançamento", 1, true); retorno += DataLiquidacao.ToShortDateString().Replace("/", ""); retorno += Identificador.ToString().FormataNumero("Numero do documento", 10, true); retorno += "".FormataTexto("Numero do lote", 5, true); retorno += "".FormataTexto("Origem do Lançamento", 30, true); retorno += "".FormataTexto("Qtde Contas", 3, true); var codAcesso = (int)TipoContabil; var codInterno = ""; if (TipoContabil == TipoContabilEnum.BancoNordeste29053 || TipoContabil == TipoContabilEnum.BancoNordeste30869 || TipoContabil == TipoContabilEnum.BancoNordeste31244 || TipoContabil == TipoContabilEnum.BancoNordeste37942) { codAcesso = 11113; codInterno = ((int)TipoContabil).ToString(); } if (TipoArquivo == TipoArquivoEnum.Pagar) { // Chamado 66784 if (TipoContabil == TipoContabilEnum.Cheque || TipoContabil == TipoContabilEnum.Credito) { codAcesso = (int)TipoContabilEnum.Dinheiro; } retorno += "21201".FormataNumero("Cód Acesso", 5, true); retorno += Glass.Formatacoes.RetiraCaracteresEspeciais(CpfCnpj).FormataTexto("CPF/CNPJ", 14, true); retorno += "".FormataTexto("C/Custo", 5, true); retorno += codAcesso.ToString().FormataNumero("Cód Acesso", 5, true); retorno += !string.IsNullOrEmpty(codInterno) ? codInterno.FormataNumero("Cód Interno", 6, true) + "".FormataTexto("", 8, false) : codInterno.FormataTexto("Cód Interno", 14, true); retorno += "".FormataTexto("C/Custo", 5, true); } else { retorno += codAcesso.ToString().FormataNumero("Cód Acesso", 5, true); retorno += !string.IsNullOrEmpty(codInterno) ? codInterno.FormataNumero("Cód Interno", 6, true) + "".FormataTexto("", 8, false) : codInterno.FormataTexto("Cód Interno", 14, true); retorno += "".FormataTexto("C/Custo", 5, true); retorno += "11202".FormataNumero("Cód Acesso", 5, true); retorno += Glass.Formatacoes.RetiraCaracteresEspeciais(CpfCnpj).FormataTexto("CPF/CNPJ", 14, true); retorno += "".FormataTexto("C/Custo", 5, true); } retorno += Math.Round(Valor, 2).ToString().Replace(",", ".").FormataNumero("Valor Lançamento", 16, true); retorno += (!string.IsNullOrEmpty(Obs) ? Obs : "Forma Pagto.: " + Colosoft.Translator.Translate(TipoContabil).Format()).FormataTexto("Historico", 240, false); retorno += "".FormataTexto("Ind. Conciliação - Deb", 1, false); retorno += "".FormataTexto("Ind. Conciliação - Cred", 1, false); retorno += "".FormataTexto("Filler", 74, false); writer.WriteLine(retorno); }