class V08::Remessa::Detalhe

Public Class Methods

new() click to toggle source
# File lib/formatos/cnab400/arquivo/V08/detalhe.rb, line 8
def initialize
  @section = Section.new({
    0 => Position.new(1, 1, false, "1", true),                  # Código do Registro
    1 => Position.new(2, 5, false),                             # Agencia de Débito (opcional)
    2 => Position.new(3, 1, false),                             # Digito Agencia (opcional)
    3 => Position.new(4, 5, false),                             # Razao da Conta Corrente (opcional)
    4 => Position.new(5, 7, false),                             # Conta Corrente (opcional)
    5 => Position.new(6, 1, false),                             # Digito da CC (opcional)
    6 => Position.new(7, 17, false),                            # Identificação da empresa (zero, carteira, agencia e CC )
    7 => Position.new(8, 25, false),                            # Numero controle do participante
    8 => Position.new(9, 3, false),                             # Numero do Banco ("237")
    9 => Position.new(10, 1, true),                             # Campo de multa (0: Sem Multa/ 2: Com multa)
    10 => Position.new(11, 4, true),                            # Percentual de multa
    11 => Position.new(12, 11, true),                           # Identificação do titulo no banco
    12 => Position.new(13, 1, true),                            # Digito de AutoConferencia
    13 => Position.new(14, 10, true),                           # Desconto Bonificacao por dia
    14 => Position.new(15, 1, false, "2"),                      # Condicao para emissao da cobranca
    15 => Position.new(16, 1, false),                           # Id se emite Boleto para Debito Automatico (Diferente de N registra e emite boleto)
    16 => Position.new(17, 10, false),                          # Reservado - Brancos
    17 => Position.new(18, 1, false),                           # Indicador Rateio (opcional)
    18 => Position.new(19, 1, false),                           # Enderecamento para aviso de Debito em Cc (opcional)
    19 => Position.new(20, 2, false),                           # Reservado - Brancos
    20 => Position.new(21, 2, false, "01"),                     # Identificacao de ocorrencias
    21 => Position.new(22, 10, false),                          # Numero do documento
    22 => Position.new(23, 6, false),                           # Data vencimento do titulo (DDMMAA)
    23 => Position.new(24, 13, true),                           # Valor do titulo
    24 => Position.new(25, 3, true, "0"),                       # Banco cobrador - Zeros
    25 => Position.new(26, 5, true, "0"),                       # Agencia depositaria - Zeros
    26 => Position.new(27, 2, false, "99"),                     # Tipo do titulo
    27 => Position.new(28, 1, false, "N"),                      # Identificação
    28 => Position.new(29, 6, false),                           # Data emissao do titulo (DDMMAA)
    29 => Position.new(30, 2, true),                            # 1º instrucao
    30 => Position.new(31, 2, true),                            # 2º instrucao
    31 => Position.new(32, 13, true, "0"),                      # Valor por dia de atraso
    32 => Position.new(33, 6, false),                           # Data Limite para Concessao Desconto (DDMMAA)
    33 => Position.new(34, 13, true, "0"),                      # Valor desconto
    34 => Position.new(35, 13, true, "0"),                      # Valor IOF
    35 => Position.new(36, 13, true, "0"),                      # Valor Abatimento
    36 => Position.new(37, 2, false),                           # Tipo de inscrição (1:CPF, 2: CNPJ)
    37 => Position.new(38, 14, true),                           # Numero da inscricao
    38 => Position.new(39, 40, false),                          # Nome do sacado
    39 => Position.new(40, 40, false),                          # End. do sacado
    40 => Position.new(41, 12, false),                          # 1º mensagem
    41 => Position.new(42, 8, false),                           # CEP do sacado
    42 => Position.new(43, 60, false),                          # Sacador/Avalista ou 2º mensagem
    43 => Position.new(44, 6, true)                             # Numero sequencial

  })
end

Public Instance Methods

is_valid?() click to toggle source
# File lib/formatos/cnab400/arquivo/V08/detalhe.rb, line 83
def is_valid?
  get_identificacao_empresa.length > 0   and
  get_nosso_numero.length > 0            and
  get_numero_documento.length > 0        and
  get_sequencial.length > 0
end
set_values(params) click to toggle source
# File lib/formatos/cnab400/arquivo/V08/detalhe.rb, line 58
def set_values params
  set_identificacao_empresa   params[:identificacao_empresa]
  set_nosso_numero            params[:nosso_numero]
  set_codigo_banco_debitado   params[:codigo_banco_debitado]
  set_reservado_1
  set_indicador_rateio
  set_enderecamento
  set_reservado_2
  set_numero_documento       params[:numero_documento]
  set_vencimento_titulo      params[:vencimento]
  set_valor_titulo           params[:valor]
  set_data_emissao_titulo    Date.today
  set_1_instrucao
  set_2_instrucao
  set_valor_por_atraso
  set_id_inscricao_sacado     params[:tipo_inscricao]
  set_numero_inscricao_sacado params[:numero_inscricao]
  set_nome_sacado             params[:nome_sacado]
  set_endereco                params[:endereco]
  set_1_mensagem
  set_cep                     params[:cep]
  set_2_mensagem
  set_sequencial              params[:sequencial]
end