コード例 #1
0
ファイル: Registro10.cs プロジェクト: danielgamajpa/SPEDBr
        /// <summary>
        /// Efetua a escrita do Registro 10 do arquivo.
        /// </summary>
        /// <param name="validarCampos">true ou false para realizar a validação dos dados.</param>
        /// <returns>String</returns>
        public string EscreverRegistro10(bool validarCampos = true)
        {
            if (validarCampos)
            {
                // Validar campos
            }

            var r10 = new string(' ', 126);

            try
            {
                r10 = r10.PreencherValorNaLinha(1, 2, TIPO.PadLeft(2, ' '));
                r10 = r10.PreencherValorNaLinha(3, 16, CGCMF.PadLeft(14, ' '));
                r10 = r10.PreencherValorNaLinha(17, 30, IE.PadRight(14, ' '));
                r10 = r10.PreencherValorNaLinha(31, 65, NOME.Length > 35 ? NOME.Substring(0, 35) : NOME.PadRight(35, ' '));
                r10 = r10.PreencherValorNaLinha(66, 95, MUNICIPIO.Length > 30 ? MUNICIPIO.Substring(0, 30) : MUNICIPIO.PadRight(30, ' '));
                r10 = r10.PreencherValorNaLinha(96, 97, UF.PadRight(2, ' '));
                r10 = r10.PreencherValorNaLinha(98, 107, FAX.PadLeft(10, '0'));
                r10 = r10.PreencherValorNaLinha(108, 115, DT_INI);
                r10 = r10.PreencherValorNaLinha(116, 123, DT_FIN);
                r10 = r10.PreencherValorNaLinha(124, 124, COD_ID_ESTRUT.PadRight(1, '3'));
                r10 = r10.PreencherValorNaLinha(125, 125, COD_ID_NAT_OPE.PadRight(1, '3'));
                r10 = r10.PreencherValorNaLinha(126, 126, COD_FIN.PadRight(1, '1'));

                return(r10);
            }
            catch (Exception e)
            {
                throw new Exception("Falha ao gerar registro tipo 10." + Environment.NewLine + e.Message);
            }
        }
コード例 #2
0
        /// <summary>
        /// Efetua a escrita do Registro 90 do arquivo.
        /// </summary>
        /// <param name="validarCampos">true ou false para realizar a validação dos dados.</param>
        /// <returns>String</returns>
        public string EscreverRegistro90(bool validarCampos = true)
        {
            if (validarCampos)
            {
                // Validar campos
            }

            int tamanhoPosicaoTipo = 2;
            int posicaoInicialTipo = 31;

            int tamanhoPosicaoTotal = 8;
            int posicaoInicialTotal = 33;

            var r90 = new string(' ', 126);

            try
            {
                r90 = r90.PreencherValorNaLinha(1, 2, TIPO.PadLeft(2, ' '));
                r90 = r90.PreencherValorNaLinha(3, 16, CGCMF.PadLeft(14, ' '));
                r90 = r90.PreencherValorNaLinha(17, 30, IE.PadRight(14, ' '));

                foreach (var registroAtual in TotalizadoresDeRegistros)
                {
                    r90 = r90.PreencherValorNaLinha(posicaoInicialTipo, (posicaoInicialTipo + (tamanhoPosicaoTipo - 1)), registroAtual.TIPO_A_SER_TOTALIZADO);
                    r90 = r90.PreencherValorNaLinha(posicaoInicialTotal, (posicaoInicialTotal + (tamanhoPosicaoTotal - 1)), registroAtual.TOTAL_DE_REGISTROS.ToString().PadLeft(8, '0'));

                    posicaoInicialTipo  = posicaoInicialTotal + tamanhoPosicaoTotal;
                    posicaoInicialTotal = posicaoInicialTipo + tamanhoPosicaoTipo;
                }

                r90 = r90.PreencherValorNaLinha(126, 126, "1");

                return(r90);
            }
            catch (Exception e)
            {
                throw new Exception("Falha ao gerar registro tipo 90." + Environment.NewLine + e.Message);
            }
        }