Ir para conteúdo
Fórum Script Brasil
  • 0

Importacao de dados arquivo dat


Mario Ilidio

Pergunta

Srs,

O q tem de errado neste codigo, diz q importa mas não importa...alguém pode me ajudar?

Private Sub Comando0_Click()

On Error GoTo Err_Comando0_Click

AtualizaDados

Exit_Comando0_Click:

Exit Sub

Err_Comando0_Click:

MsgBox Err.Description

Resume Exit_Comando0_Click

End Sub

Sub AtualizaDados()

Close #1

Dim rstbl_header As DAO.Recordset

Dim rstbl_cliente As DAO.Recordset

Dim rstbl_cobranca As DAO.Recordset

Dim rstbl_dados_titulos As DAO.Recordset

Dim rstbl_registro_totais As DAO.Recordset

Dim arqOpen As String

Dim strLinha As String

Set rstbl_header = CurrentDb.OpenRecordset("tbl_header")

Set rstbl_cliente = CurrentDb.OpenRecordset("tbl_cliente")

Set rstbl_cobranca = CurrentDb.OpenRecordset("tbl_cobranca")

Set rstbl_dados_titulos = CurrentDb.OpenRecordset("tbl_dados_titulos")

Set rstbl_registro_totais = CurrentDb.OpenRecordset("tbl_registro_totais")

arqOpen = "C:\Filme\teste.dat"

If Len(arqOpen & vbNullString) = 0 Then ' Testa se arqOpen contém alguma coisa

MsgBox "Informe o nome do arquivo a ser importado", vbExclamation + vbOKOnly, "Vazio"

Exit Sub

End If

If Len(Dir(arqOpen)) = 0 Then ' Testa a existência do arquivo

MsgBox "O arquivo não existe!!!", vbCritical + vbOKOnly, "Erro"

Exit Sub

End If

Dim i As Integer

Open arqOpen For Input As #1

While Not EOF(1)

i = i + 1

Line Input #1, strLinha

If strLinha = "" Then (se eu tirar este IF ele importa, porem so importa a primeira linha para todas as tabelas)

With rstbl_header

rstbl_header.AddNew

rstbl_header("Cab_Cod_Registro") = Mid(strLinha, 1, 2)

rstbl_header("Cab_chave_assessoria") = Mid(strLinha, 3, 12)

rstbl_header("Cab_CNPJ") = Mid(strLinha, 15, 14)

rstbl_header("Cab_Nome_empresa") = Mid(strLinha, 29, 25)

rstbl_header("Cab_tipo_arquivo") = Mid(strLinha, 54, 1)

rstbl_header("Cab_dt_remessa") = Mid(strLinha, 55, 8)

rstbl_header("Cab_dt_geracao") = Mid(strLinha, 63, 8)

rstbl_header("Cab_N_Responsavel") = Mid(strLinha, 71, 30)

rstbl_header("Cab_seq_arquivo") = Mid(strLinha, 101, 3)

rstbl_header("Cab_versao_layout") = Mid(strLinha, 104, 3)

rstbl_header("Cab_reservado") = Mid(strLinha, 107, 288)

rstbl_header("Cab_seq_registro") = Mid(strLinha, 395, 6)

rstbl_header.Update

End With

With rstbl_cliente

rstbl_cliente.AddNew

rstbl_cliente("Cli_Cod_Registro") = Mid(strLinha, 1, 2)

rstbl_cliente("Cli_tipo_cliente") = Mid(strLinha, 3, 1)

rstbl_cliente("Cli_CPF_CNPJ") = Mid(strLinha, 4, 14)

rstbl_cliente("Cli_RG") = Mid(strLinha, 18, 20)

rstbl_cliente("Cli_Emissor_RG") = Mid(strLinha, 38, 10)

rstbl_cliente("Cli_Chave_cliente") = Mid(strLinha, 48, 12)

rstbl_cliente("Cli_Cod_cliente") = Mid(strLinha, 60, 20)

rstbl_cliente("Cli_Nome_cli") = Mid(strLinha, 80, 40)

rstbl_cliente("Cli_dt_nascimento") = Mid(strLinha, 120, 8)

rstbl_cliente("Cli_End_tipologradouro") = Mid(strLinha, 128, 10)

rstbl_cliente("Cli_Logradouro") = Mid(strLinha, 138, 50)

rstbl_cliente("Cli_numero") = Mid(strLinha, 188, 8)

rstbl_cliente("Cli_bairro") = Mid(strLinha, 196, 25)

rstbl_cliente("Cli_cidade") = Mid(strLinha, 221, 25)

rstbl_cliente("Cli_estado") = Mid(strLinha, 246, 2)

rstbl_cliente("Cli_complemento") = Mid(strLinha, 248, 25)

rstbl_cliente("Cli_ponto_referencia") = Mid(strLinha, 273, 25)

rstbl_cliente("Cli_CEP") = Mid(strLinha, 298, 8)

rstbl_cliente("Cli_Telefones") = Mid(strLinha, 306, 30)

rstbl_cliente("Cli_Trabalho_cli") = Mid(strLinha, 336, 30)

rstbl_cliente("Cli_TTipo_logradouro") = Mid(strLinha, 366, 10)

rstbl_cliente("Cli_TLogradouro") = Mid(strLinha, 376, 50)

rstbl_cliente("Cli_TNumero") = Mid(strLinha, 426, 8)

rstbl_cliente("Cli_TBairro") = Mid(strLinha, 434, 25)

rstbl_cliente("Cli_TCidade") = Mid(strLinha, 459, 25)

rstbl_cliente("Cli_TEstado") = Mid(strLinha, 484, 2)

rstbl_cliente("Cli_TComplemento") = Mid(strLinha, 486, 25)

rstbl_cliente("Cli_TPonto_referencia") = Mid(strLinha, 511, 25)

rstbl_cliente("Cli_TCep") = Mid(strLinha, 536, 8)

rstbl_cliente("Cli_TFones") = Mid(strLinha, 544, 30)

rstbl_cliente("Cli_TProfissao") = Mid(strLinha, 574, 30)

rstbl_cliente("Cli_Pri_Referencia") = Mid(strLinha, 594, 20)

rstbl_cliente("Cli_Tel_pri_ref") = Mid(strLinha, 624, 30)

rstbl_cliente("Cli_Seg_Referencia") = Mid(strLinha, 654, 30)

rstbl_cliente("Cli_Tel_Seg_Ref") = Mid(strLinha, 684, 30)

rstbl_cliente("Cli_Reservado_fut") = Mid(strLinha, 714, 81)

rstbl_cliente("Cli_Seq_registro") = Mid(strLinha, 795, 6)

rstbl_cliente.Update

End With

With rstbl_cobranca

rstbl_cobranca.AddNew

rstbl_cobranca("Cob_cod_registro") = Mid(strLinha, 1, 2)

rstbl_cobranca("Cob_chave_cli") = Mid(strLinha, 3, 12)

rstbl_cobranca("Cob_dt_pre_pagto") = Mid(strLinha, 15, 8)

rstbl_cobranca("Cob_dialogo") = Mid(strLinha, 23, 300)

rstbl_cobranca("Cob_nome_cobrador") = Mid(strLinha, 323, 30)

rstbl_cobranca("Cob_reservado_fut") = Mid(strLinha, 353, 42)

rstbl_cobranca("Cob_seq_resgitro") = Mid(strLinha, 395, 6)

rstbl_cobranca.Update

End With

With rstbl_dados_titulos

rstbl_dados_titulos.AddNew

rstbl_dados_titulos("Tit_Cod_registro") = Mid(strLinha, 1, 2)

rstbl_dados_titulos("Tit_cod_operacao") = Mid(strLinha, 3, 1)

rstbl_dados_titulos("Tit_Motivo_exclusao") = Mid(strLinha, 4, 2)

rstbl_dados_titulos("Tit_tipo_titulo") = Mid(strLinha, 6, 2)

rstbl_dados_titulos("Tit_chave_contrato") = Mid(strLinha, 8, 12)

rstbl_dados_titulos("Tit_chave_titulo") = Mid(strLinha, 20, 12)

rstbl_dados_titulos("Tit_chave_avalista") = Mid(strLinha, 32, 12)

rstbl_dados_titulos("Tit_numero_titulo") = Mid(strLinha, 44, 20)

rstbl_dados_titulos("Tit_Cod_banco") = Mid(strLinha, 64, 3)

rstbl_dados_titulos("Tit_Nome_banco") = Mid(strLinha, 67, 40)

rstbl_dados_titulos("Tit_Cod_agencia") = Mid(strLinha, 107, 7)

rstbl_dados_titulos("Tit_COnta_corrente") = Mid(strLinha, 114, 10)

rstbl_dados_titulos("Tit_praca_cheque") = Mid(strLinha, 124, 25)

rstbl_dados_titulos("Tit_alinea_devolucao") = Mid(strLinha, 149, 2)

rstbl_dados_titulos("Tit_CPF_CNPJ_Sacado") = Mid(strLinha, 151, 14)

rstbl_dados_titulos("Tit_Nome_sacado") = Mid(strLinha, 165, 40)

rstbl_dados_titulos("Tit_Tel_sacado") = Mid(strLinha, 205, 30)

rstbl_dados_titulos("Tit_dt_emissao_titulo") = Mid(strLinha, 235, 8)

rstbl_dados_titulos("Tit_ultimo_vecimento") = Mid(strLinha, 243, 8)

rstbl_dados_titulos("Tit_vencimento") = Mid(strLinha, 251, 8)

rstbl_dados_titulos("Tit_atraso_dias") = Mid(strLinha, 259, 4)

rstbl_dados_titulos("Tit_valor_titulo") = Mid(strLinha, 263, 11)

rstbl_dados_titulos("Tit_principal_venda") = Mid(strLinha, 274, 11)

rstbl_dados_titulos("Tit_valor_a_vencer") = Mid(strLinha, 285, 11)

rstbl_dados_titulos("Tit_Pagto_minimo") = Mid(strLinha, 296, 11)

rstbl_dados_titulos("Tit_Percent_tx_mensal") = Mid(strLinha, 307, 5)

rstbl_dados_titulos("Tit_Percent_tx_mes_juros") = Mid(strLinha, 312, 5)

rstbl_dados_titulos("Tit_Percent_tx_multa") = Mid(strLinha, 317, 5)

rstbl_dados_titulos("Tit_Reservado_fut") = Mid(strLinha, 322, 73)

rstbl_dados_titulos("Tit_Seq_registro") = Mid(strLinha, 395, 6)

rstbl_dados_titulos.Update

End With

With rstbl_registro_totais

rstbl_registro_totais.AddNew

rstbl_registro_totais("Reg_Cod_registro") = Mid(strLinha, 1, 2)

rstbl_registro_totais("Reg_qtd_cli") = Mid(strLinha, 3, 6)

rstbl_registro_totais("Reg_Qtd_total_titulos_incluido") = Mid(strLinha, 9, 6)

rstbl_registro_totais("Reg_Qtd_total_titulos_excluido_PG") = Mid(strLinha, 15, 6)

rstbl_registro_totais("Reg_Qtd_total_titulos_excluido_TR") = Mid(strLinha, 21, 6)

rstbl_registro_totais("Reg_Reservado_fut") = Mid(strLinha, 27, 368)

rstbl_registro_totais("Reg_Seq_registro") = Mid(strLinha, 395, 6)

rstbl_registro_totais.Update

End With

Else

End If

Wend

MsgBox "Dados Importados com sucesso"

rstbl_header.Close

rstbl_cliente.Close

rstbl_cobranca.Close

rstbl_dados_titulos.Close

rstbl_registro_totais.Close

Close #1

Exit Sub

End Sub

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...