Class: RubyCnab240::Arquivo::Header
- Inherits:
-
RubyCnab240::Arquivo
- Object
- RubyCnab240::Arquivo
- RubyCnab240::Arquivo::Header
- Defined in:
- lib/rubycnab240/arquivo/header.rb
Instance Attribute Summary collapse
-
#agencia_mantenedora_da_conta ⇒ Object
Returns the value of attribute agencia_mantenedora_da_conta.
-
#codigo_do_banco_na_compensacao ⇒ Object
Returns the value of attribute codigo_do_banco_na_compensacao.
-
#codigo_do_convenio_do_banco ⇒ Object
Returns the value of attribute codigo_do_convenio_do_banco.
-
#codigo_remessa_retorno ⇒ Object
Returns the value of attribute codigo_remessa_retorno.
-
#digito_verificador_da_agencia ⇒ Object
Returns the value of attribute digito_verificador_da_agencia.
-
#digito_verificador_da_agencia_e_conta ⇒ Object
Returns the value of attribute digito_verificador_da_agencia_e_conta.
-
#digito_verificador_da_conta ⇒ Object
Returns the value of attribute digito_verificador_da_conta.
-
#lote_do_servico ⇒ Object
Returns the value of attribute lote_do_servico.
-
#nome_da_empresa ⇒ Object
Returns the value of attribute nome_da_empresa.
-
#nome_do_banco ⇒ Object
Returns the value of attribute nome_do_banco.
-
#numero_da_conta_corrente ⇒ Object
Returns the value of attribute numero_da_conta_corrente.
-
#numero_de_inscricao_da_empresa ⇒ Object
Returns the value of attribute numero_de_inscricao_da_empresa.
-
#numero_sequencial_de_arquivo ⇒ Object
Returns the value of attribute numero_sequencial_de_arquivo.
-
#para_uso_reservado_da_empresa ⇒ Object
Returns the value of attribute para_uso_reservado_da_empresa.
-
#tipo_de_inscricao_da_empresa ⇒ Object
Returns the value of attribute tipo_de_inscricao_da_empresa.
-
#tipo_de_registro ⇒ Object
Returns the value of attribute tipo_de_registro.
-
#uso_exclusivo_febraban ⇒ Object
readonly
Returns the value of attribute uso_exclusivo_febraban.
-
#uso_exclusivo_febraban2 ⇒ Object
readonly
Returns the value of attribute uso_exclusivo_febraban2.
-
#uso_exclusivo_febraban3 ⇒ Object
readonly
Returns the value of attribute uso_exclusivo_febraban3.
Attributes inherited from RubyCnab240::Arquivo
#data_dos_pagamentos, #header, #lot_header, #lot_trailer, #segments, #trailer
Instance Method Summary collapse
-
#initialize(fields = {}) ⇒ Header
constructor
A new instance of Header.
- #to_string ⇒ Object
Methods inherited from RubyCnab240::Arquivo
#<<, #number_of_segments, #save_to_file
Constructor Details
#initialize(fields = {}) ⇒ Header
Returns a new instance of Header.
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/rubycnab240/arquivo/header.rb', line 23 def initialize(fields = {}) @codigo_do_banco_na_compensacao = fields[:codigo_do_banco_na_compensacao].to_s[0..2].rjust(3, '0') #default: 001 @lote_do_servico = fields[:lote_do_servico].to_s[0..3].rjust(4, '0') @tipo_de_registro = fields[:tipo_de_registro].to_s[0..0].rjust(1, '0') @uso_exclusivo_febraban = ' ' * 9 @tipo_de_inscricao_da_empresa = fields[:tipo_de_inscricao_da_empresa].to_s[0..0].rjust(1, '0') #1 – para CPF e 2 – para CNPJ. @numero_de_inscricao_da_empresa = fields[:numero_de_inscricao_da_empresa].to_s[0..13].rjust(14, '0') #Informar número da inscrição (CPF ou CNPJ) da Empresa, alinhado à direita com zeros à esquerda. #bb #Preencher com “0009999990126 “, onde 999999 informar o número do convênio de pagamento, alinhado à direita com zeros à esquerda seguido de “0126” para pagamento e demais posições com brancos (espaços). @codigo_do_convenio_do_banco = fields[:codigo_do_convenio_do_banco].to_s[0..8].rjust(9, '0') #Informar o convênio de pagamento, completando com zeros à esquerda; @bb2 = fields[:bb2] = '0126' @bb3 = fields[:bb3] = ' ' @bb4 = fields[:bb4] = ' ' @agencia_mantenedora_da_conta = fields[:agencia_mantenedora_da_conta].to_s[0..4].rjust(5, '0') @digito_verificador_da_agencia = fields[:digito_verificador_da_agencia].to_s[0..0].upcase.rjust(1, '0') @numero_da_conta_corrente = fields[:numero_da_conta_corrente].to_s[0..11].rjust(12, '0') @digito_verificador_da_conta = fields[:digito_verificador_da_conta].to_s[0..0].upcase.rjust(1, '0') @digito_verificador_da_agencia_e_conta = '0' @nome_da_empresa = fields[:nome_da_empresa].to_s[0..29].upcase.ljust(30, ' ') @nome_do_banco = fields[:nome_do_banco].to_s[0..29].upcase.ljust(30, ' ') @uso_exclusivo_febraban2 = ' ' @codigo_remessa_retorno = '1' #1 – para arquivo remessa. 2 – quando arquivo retorno. @data_de_geracao_do_arquivo = Date.today.strftime("%d%m%Y") @hora_de_geracao_do_arquivo = Time.now.strftime("%H%M%S") @numero_sequencial_de_arquivo = fields[:numero_sequencial_de_arquivo].to_s[0..5].upcase.rjust(6, '0') @versao_do_leiaute_de_arquivo = '050' @densidade_de_gravacao_de_arquivo = '0' * 5 @para_uso_reservado_do_banco = ' ' @para_uso_reservado_da_empresa = fields[:para_uso_reservado_da_empresa].to_s[0..19].rjust(20, ' ') #uso reservado da empresa @uso_exclusivo_febraban3 = ' ' end |
Instance Attribute Details
#agencia_mantenedora_da_conta ⇒ Object
Returns the value of attribute agencia_mantenedora_da_conta.
8 9 10 |
# File 'lib/rubycnab240/arquivo/header.rb', line 8 def agencia_mantenedora_da_conta @agencia_mantenedora_da_conta end |
#codigo_do_banco_na_compensacao ⇒ Object
Returns the value of attribute codigo_do_banco_na_compensacao.
2 3 4 |
# File 'lib/rubycnab240/arquivo/header.rb', line 2 def codigo_do_banco_na_compensacao @codigo_do_banco_na_compensacao end |
#codigo_do_convenio_do_banco ⇒ Object
Returns the value of attribute codigo_do_convenio_do_banco.
7 8 9 |
# File 'lib/rubycnab240/arquivo/header.rb', line 7 def codigo_do_convenio_do_banco @codigo_do_convenio_do_banco end |
#codigo_remessa_retorno ⇒ Object
Returns the value of attribute codigo_remessa_retorno.
15 16 17 |
# File 'lib/rubycnab240/arquivo/header.rb', line 15 def codigo_remessa_retorno @codigo_remessa_retorno end |
#digito_verificador_da_agencia ⇒ Object
Returns the value of attribute digito_verificador_da_agencia.
9 10 11 |
# File 'lib/rubycnab240/arquivo/header.rb', line 9 def digito_verificador_da_agencia @digito_verificador_da_agencia end |
#digito_verificador_da_agencia_e_conta ⇒ Object
Returns the value of attribute digito_verificador_da_agencia_e_conta.
12 13 14 |
# File 'lib/rubycnab240/arquivo/header.rb', line 12 def digito_verificador_da_agencia_e_conta @digito_verificador_da_agencia_e_conta end |
#digito_verificador_da_conta ⇒ Object
Returns the value of attribute digito_verificador_da_conta.
11 12 13 |
# File 'lib/rubycnab240/arquivo/header.rb', line 11 def digito_verificador_da_conta @digito_verificador_da_conta end |
#lote_do_servico ⇒ Object
Returns the value of attribute lote_do_servico.
3 4 5 |
# File 'lib/rubycnab240/arquivo/header.rb', line 3 def lote_do_servico @lote_do_servico end |
#nome_da_empresa ⇒ Object
Returns the value of attribute nome_da_empresa.
13 14 15 |
# File 'lib/rubycnab240/arquivo/header.rb', line 13 def nome_da_empresa @nome_da_empresa end |
#nome_do_banco ⇒ Object
Returns the value of attribute nome_do_banco.
14 15 16 |
# File 'lib/rubycnab240/arquivo/header.rb', line 14 def nome_do_banco @nome_do_banco end |
#numero_da_conta_corrente ⇒ Object
Returns the value of attribute numero_da_conta_corrente.
10 11 12 |
# File 'lib/rubycnab240/arquivo/header.rb', line 10 def numero_da_conta_corrente @numero_da_conta_corrente end |
#numero_de_inscricao_da_empresa ⇒ Object
Returns the value of attribute numero_de_inscricao_da_empresa.
6 7 8 |
# File 'lib/rubycnab240/arquivo/header.rb', line 6 def numero_de_inscricao_da_empresa @numero_de_inscricao_da_empresa end |
#numero_sequencial_de_arquivo ⇒ Object
Returns the value of attribute numero_sequencial_de_arquivo.
16 17 18 |
# File 'lib/rubycnab240/arquivo/header.rb', line 16 def numero_sequencial_de_arquivo @numero_sequencial_de_arquivo end |
#para_uso_reservado_da_empresa ⇒ Object
Returns the value of attribute para_uso_reservado_da_empresa.
17 18 19 |
# File 'lib/rubycnab240/arquivo/header.rb', line 17 def para_uso_reservado_da_empresa @para_uso_reservado_da_empresa end |
#tipo_de_inscricao_da_empresa ⇒ Object
Returns the value of attribute tipo_de_inscricao_da_empresa.
5 6 7 |
# File 'lib/rubycnab240/arquivo/header.rb', line 5 def tipo_de_inscricao_da_empresa @tipo_de_inscricao_da_empresa end |
#tipo_de_registro ⇒ Object
Returns the value of attribute tipo_de_registro.
4 5 6 |
# File 'lib/rubycnab240/arquivo/header.rb', line 4 def tipo_de_registro @tipo_de_registro end |
#uso_exclusivo_febraban ⇒ Object (readonly)
Returns the value of attribute uso_exclusivo_febraban.
19 20 21 |
# File 'lib/rubycnab240/arquivo/header.rb', line 19 def uso_exclusivo_febraban @uso_exclusivo_febraban end |
#uso_exclusivo_febraban2 ⇒ Object (readonly)
Returns the value of attribute uso_exclusivo_febraban2.
20 21 22 |
# File 'lib/rubycnab240/arquivo/header.rb', line 20 def uso_exclusivo_febraban2 @uso_exclusivo_febraban2 end |
#uso_exclusivo_febraban3 ⇒ Object (readonly)
Returns the value of attribute uso_exclusivo_febraban3.
21 22 23 |
# File 'lib/rubycnab240/arquivo/header.rb', line 21 def uso_exclusivo_febraban3 @uso_exclusivo_febraban3 end |
Instance Method Details
#to_string ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/rubycnab240/arquivo/header.rb', line 58 def to_string header = String.new header << @codigo_do_banco_na_compensacao header << @lote_do_servico header << @tipo_de_registro header << @uso_exclusivo_febraban header << @tipo_de_inscricao_da_empresa header << @numero_de_inscricao_da_empresa header << @codigo_do_convenio_do_banco header << @bb2 header << @bb3 header << @bb4 header << @agencia_mantenedora_da_conta header << @digito_verificador_da_agencia header << @numero_da_conta_corrente header << @digito_verificador_da_conta header << @digito_verificador_da_agencia_e_conta header << @nome_da_empresa header << @nome_do_banco header << @uso_exclusivo_febraban2 header << @codigo_remessa_retorno header << @data_de_geracao_do_arquivo header << @hora_de_geracao_do_arquivo header << @numero_sequencial_de_arquivo header << @versao_do_leiaute_de_arquivo header << @densidade_de_gravacao_de_arquivo header << @para_uso_reservado_do_banco header << @para_uso_reservado_da_empresa header << @uso_exclusivo_febraban3 end |