cnab240santander 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,49 +5,49 @@ module Cnab240santander
5
5
 
6
6
  if segmento == "T"
7
7
  #Controle
8
- vlinha["banco"] = linha[0..2] # Num //Código no Banco da Compensação
8
+ vlinha["banco"] = linha[0..2] # Num //Codigo no Banco da Compensacao
9
9
  vlinha["lote"] = linha[3..6] # Num //Numero do lote retorno
10
10
  vlinha["registro"] = linha[7..7] # Num //Tipo de Registro - 3
11
- #Serviço
11
+ #Servico
12
12
  vlinha["num_registro_lote"] = linha[8..12] # Num //No sequencial do registro no lote
13
- vlinha["segmento"] = linha[13..13] # Alfa //Código de Segmento no Reg. Detalhe - T
13
+ vlinha["segmento"] = linha[13..13] # Alfa //Codigo de Segmento no Reg. Detalhe - T
14
14
  vlinha["res_banco1"] = linha[14..14] # Alfa //Reservado (uso Banco) - Brancos
15
- vlinha["cod_movimento"] = linha[15..16] # Num //Código de movimento (ocorrência)
16
- vlinha["agencia_ced"] = linha[17..20] # Num //Agência do Cedente
17
- vlinha["dv_agencia_ced"] = linha[21..21] # Num //Dígito da Agência do Cedente
18
- vlinha["conta_ced"] = linha[22..30] # Num //Número da conta corrente
19
- vlinha["dv_conta_ced"] = linha[31..31] # Num //Dígito verificador da conta
15
+ vlinha["cod_movimento"] = linha[15..16] # Num //Codigo de movimento (ocorrencia)
16
+ vlinha["agencia_ced"] = linha[17..20] # Num //Agencia do Cedente
17
+ vlinha["dv_agencia_ced"] = linha[21..21] # Num //Digito da Agencia do Cedente
18
+ vlinha["conta_ced"] = linha[22..30] # Num //Numero da conta corrente
19
+ vlinha["dv_conta_ced"] = linha[31..31] # Num //Digito verificador da conta
20
20
  vlinha["res_banco2"] = linha[32..39] # Alfa //Reservado (uso Banco) - Brancos
21
- vlinha["nosso_numero"] = linha[40..52] # Num //Identificação do título no Banco - Nosso número
22
- vlinha["cod_carteira"] = linha[53..53] # Num //Código da carteira
23
- vlinha["seu_numero"] = linha[54..68] # Alfa //No do documento de cobrança - Seu número
24
- vlinha["data_venc_titulo"] = formataData(linha[69..76]) # Num //Data do vencimento do título - DDMMAAAA
25
- vlinha["valor_nominal"] = preparaMoeda(linha[77..91], 2) # Num //Valor nominal do título - 2 decimais
21
+ vlinha["nosso_numero"] = linha[40..52] # Num //Identificacao do titulo no Banco - Nosso numero
22
+ vlinha["cod_carteira"] = linha[53..53] # Num //Codigo da carteira
23
+ vlinha["seu_numero"] = linha[54..68] # Alfa //No do documento de cobranca - Seu numero
24
+ vlinha["data_venc_titulo"] = formataData(linha[69..76]) # Num //Data do vencimento do titulo - DDMMAAAA
25
+ vlinha["valor_nominal"] = preparaMoeda(linha[77..91], 2) # Num //Valor nominal do titulo - 2 decimais
26
26
  vlinha["banco_cobrador"] = linha[92..94] # Num //No do Banco Cobrador / Recebedor
27
- vlinha["ag_cobradora"] = linha[95..98] # Num //Agência Cobradora / Recebedora
28
- vlinha["dig_ag_cobradora"] = linha[99..99] # Num //Dígito da Agência do Cobradora
29
- vlinha["id_titulo"] = linha[100..124] # Alfa //Identif. do título na empresa
30
- vlinha["cod_moeda"] = linha[125..126] # Num //Código da moeda
31
- vlinha["tipo_inscricao_sacado"] = linha[127..127] # Num //Tipo de inscrição sacado - 1 =CPF, 2 = CNPJ
32
- vlinha["num_inscricao_sacado"] = linha[128..142] # Num //Número de inscrição sacado
27
+ vlinha["ag_cobradora"] = linha[95..98] # Num //Agencia Cobradora / Recebedora
28
+ vlinha["dig_ag_cobradora"] = linha[99..99] # Num //Digito da Agencia do Cobradora
29
+ vlinha["id_titulo"] = linha[100..124] # Alfa //Identif. do titulo na empresa
30
+ vlinha["cod_moeda"] = linha[125..126] # Num //Codigo da moeda
31
+ vlinha["tipo_inscricao_sacado"] = linha[127..127] # Num //Tipo de inscricao sacado - 1 =CPF, 2 = CNPJ
32
+ vlinha["num_inscricao_sacado"] = linha[128..142] # Num //Numero de inscricao sacado
33
33
  vlinha["nome_sacado"] = linha[143..182] # Alfa //Nome do Sacado
34
- vlinha["conta_cobranca"] = linha[183..192] # Alfa //Conta Cobrança
34
+ vlinha["conta_cobranca"] = linha[183..192] # Alfa //Conta Cobranca
35
35
  vlinha["valor_tarifa"] = preparaMoeda(linha[193..207], 2) # Num //Valor da Tarifa/Custas
36
- vlinha["rejeicoes"] = linha[208..217] # Alfa //Identificação para rejeições, tarifas, custas, liquidações e baixas,
37
- # ocorre 5 vezes, sendo que cada ocorrência ocupa 02 dígitos.
36
+ vlinha["rejeicoes"] = linha[208..217] # Alfa //Identificacao para rejeicoes, tarifas, custas, liquidacoes e baixas,
37
+ # ocorre 5 vezes, sendo que cada ocorrencia ocupa 02 digitos.
38
38
  vlinha["res_banco3"] = linha[218..239] # Alfa //Reservado (uso Banco) - Brancos
39
39
 
40
40
  elsif segmento == "U"
41
41
 
42
42
  #Controle
43
- vlinha["banco2"] = linha[0..2] # Num //Código do Banco na Compensação
44
- vlinha["lote2"] = linha[3..6] # Num //Lote de Serviço
43
+ vlinha["banco2"] = linha[0..2] # Num //Codigo do Banco na Compensacao
44
+ vlinha["lote2"] = linha[3..6] # Num //Lote de Servico
45
45
  vlinha["registro2"] = linha[7..7] # Num default '3'//Registro detalhe
46
- #Serviço
46
+ #Servico
47
47
  vlinha["num_registro_lote2"] = linha[8..12] # Num //No Sequencial do Registro no Lote
48
- vlinha["segmento2"] = linha[13..13] # Alfa //Cód. segmento do registro detalhe - U
48
+ vlinha["segmento2"] = linha[13..13] # Alfa //Cod. segmento do registro detalhe - U
49
49
  vlinha["res_banco4"] = linha[14..14] # Alfa //Reservado (uso Banco) - Brancos
50
- vlinha["cod_movimento2"] = linha[15..16] # Num //Código de movimento (ocorrência)
50
+ vlinha["cod_movimento2"] = linha[15..16] # Num //Codigo de movimento (ocorrencia)
51
51
  #Valores
52
52
  vlinha["juros_multa_encargos"] = preparaMoeda(linha[17..31], 2) # Num //Juros / Multa / Encargos - 2 decimais
53
53
  vlinha["valor_desconto"] = preparaMoeda(linha[32..46], 2) # Num //Valor do desconto concedido - 2 decimais
@@ -56,15 +56,15 @@ module Cnab240santander
56
56
  vlinha["valor_pago"] = preparaMoeda(linha[77..91], 2) # Num //Valor pago pelo sacado - 2 decimais
57
57
  vlinha["valor_liquido"] = preparaMoeda(linha[92..106], 2) # Num //Valor liquido a ser creditado - 2 decimais
58
58
  vlinha["valor_despesas"] = preparaMoeda(linha[107..121], 2) # Num //Valor de outras despesas - 2 decimais
59
- vlinha["valor_creditos"] = preparaMoeda(linha[122..136], 2) # Num //Valor de outros créditos - 2 decimais
59
+ vlinha["valor_creditos"] = preparaMoeda(linha[122..136], 2) # Num //Valor de outros creditos - 2 decimais
60
60
  #Ocorrencia
61
- vlinha["data_ocorrencia"] = formataData(linha[137..144]) # Num //Data da ocorrência - DDMMAAAA
62
- vlinha["data_credito"] = formataData(linha[145..152]) # Num //Data da efetivação do crédito - DDMMAAAA
63
- vlinha["cod_ocorrencia_sacado"] = linha[153..156] # Num //Código da ocorrência do sacado
64
- vlinha["data_ocorrencia_sacado"] = formataData(linha[157..164]) # Num //Data da ocorrência do sacado - DDMMAAAA
65
- vlinha["valor_ocorrencia_sacado"] = preparaMoeda(linha[165..179], 2) # Num //Valor da ocorrência do sacado - 2 decimais
66
- vlinha["comp_ocorrencia_sacado"] = linha[180..209] # Alfa //Complemento da ocorrência do sacado
67
- vlinha["banco_compensacao"] = linha[210..212] # Num //Código do Banco correspondente compens.
61
+ vlinha["data_ocorrencia"] = formataData(linha[137..144]) # Num //Data da ocorrencia - DDMMAAAA
62
+ vlinha["data_credito"] = formataData(linha[145..152]) # Num //Data da efetivacao do credito - DDMMAAAA
63
+ vlinha["cod_ocorrencia_sacado"] = linha[153..156] # Num //Codigo da ocorrencia do sacado
64
+ vlinha["data_ocorrencia_sacado"] = formataData(linha[157..164]) # Num //Data da ocorrencia do sacado - DDMMAAAA
65
+ vlinha["valor_ocorrencia_sacado"] = preparaMoeda(linha[165..179], 2) # Num //Valor da ocorrencia do sacado - 2 decimais
66
+ vlinha["comp_ocorrencia_sacado"] = linha[180..209] # Alfa //Complemento da ocorrencia do sacado
67
+ vlinha["banco_compensacao"] = linha[210..212] # Num //Codigo do Banco correspondente compens.
68
68
  vlinha["res_banco5"] = linha[213..239] # Alfa //Reservado (uso Banco) - Brancos
69
69
  end
70
70
 
@@ -2,27 +2,27 @@ module Cnab240santander
2
2
  class HeaderArquivo < Cnab240santander::Base
3
3
  def self.processar(linha)
4
4
  vlinha = Hash.new
5
- vlinha["banco"] = linha[0..2] #num //Código do Banco na Compensação
6
- vlinha["lote"] = linha[3..6] #num - default 0000 //Lote de Serviço
5
+ vlinha["banco"] = linha[0..2] #num //Codigo do Banco na Compensacao
6
+ vlinha["lote"] = linha[3..6] #num - default 0000 //Lote de Servico
7
7
  vlinha["registro"] = linha[7..7] #num - default 0 //Tipo de Registro
8
8
  vlinha["res_banco1"] = linha[8..15] #alfa //Reservado (uso Banco) - Brancos
9
- vlinha["tipo_inscricao_empresa"] = linha[16..16] #num //Tipo de Inscrição da Empresa
10
- vlinha["num_inscricao_empresa"] = linha[17..31] #num //Número de Inscrição da Empresa
11
- vlinha["agencia"] = linha[32..35] #num //Agência do Cedente
12
- vlinha["dv_agencia"] = linha[36..36] #num //Dígito da Agência do Cedente
13
- vlinha["conta_corrente"] = linha[37..45] #num //Número da conta corrente
9
+ vlinha["tipo_inscricao_empresa"] = linha[16..16] #num //Tipo de Inscricao da Empresa
10
+ vlinha["num_inscricao_empresa"] = linha[17..31] #num //Numero de Inscricao da Empresa
11
+ vlinha["agencia"] = linha[32..35] #num //Agencia do Cedente
12
+ vlinha["dv_agencia"] = linha[36..36] #num //Digito da Agencia do Cedente
13
+ vlinha["conta_corrente"] = linha[37..45] #num //Numero da conta corrente
14
14
  vlinha["dv_conta"] = linha[46..46] #num //DV da Conta Corrent
15
15
  vlinha["res_banco2"] = linha[47..51] #alfa //Reservado (uso Banco) - Brancos
16
- vlinha["cod_cedente"] = linha[52..60] #num //Código do Cedente
16
+ vlinha["cod_cedente"] = linha[52..60] #num //Codigo do Cedente
17
17
  vlinha["res_banco3"] = linha[61..71] #alfa //Reservado (uso Banco) - Brancos
18
18
  vlinha["nome_empresa"] = linha[72..101] #alfa //Nome da empresa
19
19
  vlinha["nome_banco"] = linha[102..131] #alfa //Nome do Banco
20
20
  vlinha["res_banco4"] = linha[132..141] #alfa //Reservado (uso Banco) - Brancos
21
- vlinha["cod_retorno"] = linha[142..142] #num - Código remessa / retorno
22
- vlinha["data_geracao_arq"] = linha[143..150] #num - Data de geração do arquivo - DDMMAAAA
21
+ vlinha["cod_retorno"] = linha[142..142] #num - Codigo remessa / retorno
22
+ vlinha["data_geracao_arq"] = linha[143..150] #num - Data de geracao do arquivo - DDMMAAAA
23
23
  vlinha["res_banco5"] = linha[151..156] #alfa //Reservado (uso Banco) - Brancos
24
24
  vlinha["sequencia"] = linha[157..162] #num //No seqüencial do arquivo
25
- vlinha["versao"] = linha[163..165] #num //No da versão do layout do arquivo
25
+ vlinha["versao"] = linha[163..165] #num //No da versao do layout do arquivo
26
26
  vlinha["res_banco6"] = linha[166..239] #alfa //Reservado (uso Banco) - Brancos
27
27
 
28
28
  return vlinha
@@ -2,27 +2,27 @@ module Cnab240santander
2
2
  class HeaderLote < Cnab240santander::Base
3
3
  def self.processar(linha)
4
4
  vlinha = Hash.new
5
- vlinha["banco"] = linha[0..2] #NUMERICO //Código do Banco na Compensação
5
+ vlinha["banco"] = linha[0..2] #NUMERICO //Codigo do Banco na Compensacao
6
6
  vlinha["lote"] = linha[3..6] #num //Numero do lote retorno
7
7
  vlinha["registro"] = linha[7..7] #num //Tipo de registro
8
- vlinha["operacao"] = linha[8..8] #alfa //Tipo de operação - T
9
- vlinha["servico"] = linha[9..10] #num //Tipo de serviço - 01
8
+ vlinha["operacao"] = linha[8..8] #alfa //Tipo de operacao - T
9
+ vlinha["servico"] = linha[9..10] #num //Tipo de servico - 01
10
10
  vlinha["res_banco1"] = linha[11..12] #alfa //Reservado (uso Banco) - Brancos
11
- vlinha["layout_lote"] = linha[13..15] #num //No da versão do layout do lote - 040
11
+ vlinha["layout_lote"] = linha[13..15] #num //No da versao do layout do lote - 040
12
12
  vlinha["res_banco2"] = linha[16..16] #alfa //Reservado (uso Banco) - Brancos
13
- vlinha["tipo_inscricao"] = linha[17..17] #num //Tipo de inscrição da empresa - 1 = CPF, 2 = CNPJ
14
- vlinha["numero_inscricao"] = linha[18..32] #num //No de inscrição da empresa
15
- vlinha["codigo_cedente"] = linha[33..41] #num //Código do Cedente
13
+ vlinha["tipo_inscricao"] = linha[17..17] #num //Tipo de inscricao da empresa - 1 = CPF, 2 = CNPJ
14
+ vlinha["numero_inscricao"] = linha[18..32] #num //No de inscricao da empresa
15
+ vlinha["codigo_cedente"] = linha[33..41] #num //Codigo do Cedente
16
16
  vlinha["res_banco3"] = linha[42..52] #alfa //Reservado (uso Banco) - Brancos
17
- vlinha["agencia_ced"] = linha[53..56] #num //Agência do Cedente
18
- vlinha["dv_agencia_ced"] = linha[57..57] #num //Dígito da Agência do Cedente
19
- vlinha["conta_ced"] = linha[58..66] #num //Número da conta do Cedente
20
- vlinha["dv_conta_ced"] = linha[67..67] #num //Dígito verificador da conta
17
+ vlinha["agencia_ced"] = linha[53..56] #num //Agencia do Cedente
18
+ vlinha["dv_agencia_ced"] = linha[57..57] #num //Digito da Agencia do Cedente
19
+ vlinha["conta_ced"] = linha[58..66] #num //Numero da conta do Cedente
20
+ vlinha["dv_conta_ced"] = linha[67..67] #num //Digito verificador da conta
21
21
  vlinha["res_banco4"] = linha[68..72] #alfa //Reservado (uso Banco) - Brancos
22
22
  vlinha["nome_empresa"] = linha[73..102] #alfa //Nome da empresa
23
23
  vlinha["res_banco5"] = linha[103..182] #alfa //Reservado (uso Banco) - Branco
24
- vlinha["numero_retorno"] = linha[183..190] #num //Número do Retorno
25
- vlinha["data_remessa"] = formataData(linha[191..198]) #num //Data da gravação remessa/retorno - DDMMAAAA
24
+ vlinha["numero_retorno"] = linha[183..190] #num //Numero do Retorno
25
+ vlinha["data_remessa"] = formataData(linha[191..198]) #num //Data da gravacao remessa/retorno - DDMMAAAA
26
26
  vlinha["res_banco6"] = linha[199..239] #brancos //Uso Exclusivo FEBRABAN / CNAB
27
27
 
28
28
  return vlinha
@@ -13,7 +13,7 @@ module Cnab240santander
13
13
  if args.has_key? :path
14
14
  @linhas = processar(args) if validaCNAB240(args[:path])
15
15
  else
16
- raise Exception, "Necessário informar o :path"
16
+ raise Exception, "Necessario informar o :path"
17
17
  end
18
18
  end
19
19
 
@@ -2,7 +2,7 @@ module Cnab240santander
2
2
  class TrailerArquivo < Cnab240santander::Base
3
3
  def self.processar(linha)
4
4
  vlinha = Hash.new
5
- vlinha["banco"] = linha[0..2] #num //Código do Banco na Compensação - 353 / 008 / 033
5
+ vlinha["banco"] = linha[0..2] #num //Codigo do Banco na Compensacao - 353 / 008 / 033
6
6
  vlinha["lote"] = linha[3..6] #num //Numero do lote remessa
7
7
  vlinha["registro"] = linha[7..7] #num //Tipo de registro - 9
8
8
  vlinha["res_banco1"] = linha[8..16] #alfa //Reservado (uso Banco) - Branco
@@ -2,20 +2,20 @@ module Cnab240santander
2
2
  class TrailerLote < Cnab240santander::Base
3
3
  def self.processar(linha)
4
4
  vlinha = Hash.new
5
- vlinha["banco"] = linha[0..2] #Num //Código do Banco na Compensação - 353 / 008 / 033
6
- vlinha["lote"] = linha[3..6] #Num //Lote de Serviço
5
+ vlinha["banco"] = linha[0..2] #Num //Codigo do Banco na Compensacao - 353 / 008 / 033
6
+ vlinha["lote"] = linha[3..6] #Num //Lote de Servico
7
7
  vlinha["registro"] = linha[7..7] #Num //Tipo de Registro - 5
8
8
  vlinha["res_banco1"] = linha[8..16] #Alfa //Reservado (uso Banco) - Brancos
9
9
  vlinha["qtde_registros"] = linha[17..22] #Num //Quantidade de registros do lote
10
- vlinha["qtde_titulos_cobranca_simples"] = linha[23..28] #Num //Quantidade títulos cobrança simples
11
- vlinha["valor_titulos_cobranca_simples"] = preparaMoeda(linha[29..45], 2) #Num //Valor total dos títulos cobrança simples - 2 decimais
12
- vlinha["qtde_titulos_cobranca_vinculada"] = linha[46..51] #Num //Quantidade de títulos em cobrança vinculada
13
- vlinha["valor_titulos_cobranca_vinculada"] = preparaMoeda(linha[52..68], 2) #Num //Valor total dos títulos em cobrança vinculada - 2 decimais
14
- vlinha["qtde_titulos_cobranca_caucionada"] = linha[69..74] #Num //Quantidade de títulos em cobrança caucionada
15
- vlinha["valor_titulos_cobranca_caucionada"] = preparaMoeda(linha[75..91], 2) #Num //Valor total dos títulos em cobrança caucionada - 2 decimais
16
- vlinha["qtde_titulos_cobranca_descontada"] = linha[92..97] #Num //Quantidade de títulos em cobrança descontada
17
- vlinha["valor_titulos_cobranca_descontada"] = preparaMoeda(linha[98..114], 2) #Num //Valor total dos títulos em cobrança descontada - 2 decimais
18
- vlinha["num_aviso_lancamento"] = linha[115..122] #Alfa //Número do aviso de lançamento
10
+ vlinha["qtde_titulos_cobranca_simples"] = linha[23..28] #Num //Quantidade titulos cobranca simples
11
+ vlinha["valor_titulos_cobranca_simples"] = preparaMoeda(linha[29..45], 2) #Num //Valor total dos titulos cobranca simples - 2 decimais
12
+ vlinha["qtde_titulos_cobranca_vinculada"] = linha[46..51] #Num //Quantidade de titulos em cobranca vinculada
13
+ vlinha["valor_titulos_cobranca_vinculada"] = preparaMoeda(linha[52..68], 2) #Num //Valor total dos titulos em cobranca vinculada - 2 decimais
14
+ vlinha["qtde_titulos_cobranca_caucionada"] = linha[69..74] #Num //Quantidade de titulos em cobranca caucionada
15
+ vlinha["valor_titulos_cobranca_caucionada"] = preparaMoeda(linha[75..91], 2) #Num //Valor total dos titulos em cobranca caucionada - 2 decimais
16
+ vlinha["qtde_titulos_cobranca_descontada"] = linha[92..97] #Num //Quantidade de titulos em cobranca descontada
17
+ vlinha["valor_titulos_cobranca_descontada"] = preparaMoeda(linha[98..114], 2) #Num //Valor total dos titulos em cobranca descontada - 2 decimais
18
+ vlinha["num_aviso_lancamento"] = linha[115..122] #Alfa //Numero do aviso de lancamento
19
19
  vlinha["res_banco2"] = linha[123..239] #Alfa //Reservado (uso Banco) - Branco
20
20
 
21
21
  return vlinha
@@ -2,7 +2,7 @@ module Cnab240santander
2
2
  module Version
3
3
  MAJOR = 1
4
4
  MINOR = 0
5
- PATCH = 2
5
+ PATCH = 3
6
6
  STRING = "#{MAJOR}.#{MINOR}.#{PATCH}"
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cnab240santander
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 2
10
- version: 1.0.2
9
+ - 3
10
+ version: 1.0.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Lairton Borges
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-12-08 00:00:00 Z
18
+ date: 2012-03-28 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: activesupport