none
FTP Task, arquivo não existe. RRS feed

  • Pergunta

  • Bom dia pessoal,

    Tenho uma rotina que baixa vários arquivos de um fornecedor via FTP, através da ferramenta FTP Task.

    Funciona muito bem, porem me deparei com um problema, quando o arquivo não existe, ocorre o seguinte erro:

    [Tarefas FTP] Error: O arquivo representado por "User::NOME_ARQUIVO" não existe.

    preciso que caso o arquivo não exista, ele faça um tratamento de update no meu banco de dados, e continue normal dentro do foreach para o próximo arquivo, na verdade, seria interessante mesmo, eu verificar se existe arquivo antes mesmo de tentar baixar... mas não sei qual a melhor forma de fazer isso.

    quinta-feira, 16 de julho de 2015 14:26

Respostas

  • Will, boa noite

    Coloque o seu FTP Task dentro de um Foreach Loop Container. Configure o Foreach Loop Container com uma variável que receba o nome do arquivo. Defina o Foreach para realizar o "looping" em uma pasta "Foreach File Enumerator" e passe o valor da varíavel (nome do arquivo) para o componente FTP.

    Quando não houver arquivos no seu FTP, o Foreach não executará e assim o seu pacote falhará.

    Abs.



    Eduardo Gomes
    MTA - MCSA SQL Server 2012 - MCSE Business Intelligence
    http://edugp.wordpress.com/
    Twitter: @edugp_sp

    sexta-feira, 31 de julho de 2015 21:31

Todas as Respostas

  • Will,

    Então para realizar esta verificação talvez seja o caso de utilizar algum componente do tipo File Task!!!!

    Qual é a versão do SQL Server e Integration Services que você esta utilizando?


    Pedro Antonio Galvao Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitario | SoroCodigos | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 17 de julho de 2015 14:51
  • Will, boa noite

    Coloque o seu FTP Task dentro de um Foreach Loop Container. Configure o Foreach Loop Container com uma variável que receba o nome do arquivo. Defina o Foreach para realizar o "looping" em uma pasta "Foreach File Enumerator" e passe o valor da varíavel (nome do arquivo) para o componente FTP.

    Quando não houver arquivos no seu FTP, o Foreach não executará e assim o seu pacote falhará.

    Abs.



    Eduardo Gomes
    MTA - MCSA SQL Server 2012 - MCSE Business Intelligence
    http://edugp.wordpress.com/
    Twitter: @edugp_sp

    sexta-feira, 31 de julho de 2015 21:31