Pergunta

Qual é a melhor maneira de retirar personagens de arquivos simples no SSIS? No meu caso, eu preciso remover todas as citações do arquivo antes de processar.

EDIT:
Como posso executar um arquivo executável contra alguns arquivos do SSIS? Posso de alguma forma usar a conexão de fonte como entrada ou eu teria que passar nos nomes de arquivos como parâmetros?

Foi útil?

Solução

A maneira mais fácil de fazer isso seria a criação de um código de "Transformação" componente de script e uso para tirar as aspas.

Outras dicas

eu fiz usando Derived Column Transformation

por exemplo. Se eu quiser substituir', '', # no ssis usando coluna derivada, eu iria escrever

Replace(Replace(REPLACE(name,"$"," "), "'", " ")," ","")

Mas eu sinto que, se 1 ou 2 colunas precisa ser filtrado para fora, então esta abordagem é bom. Se ele envolve mais, então vá em frente com Script task

Uma vez que é algo que você tem que fazer para todos os campos em seus arquivos, eu recomendo fazê-lo como um primeiro passo do processo e não como uma operação no fluxo de trabalho de transformação.

Você pode codificar seu próprio script .NET e incorporá-lo em uma tarefa Script. Você também pode ligar uma ferramenta ou componentes de terceiros através de um processo de execução de tarefas.

Por exemplo, se você tem acesso a cygwin de linha de comando unix, algo como isso deve fazer o trabalho:

sed s/\"//g data1.txt

Você pode chamar um executável através do componente mencionado "Executar tarefa do processo", e você pode parametrizar suas entradas, definindo expressões nos atributos do componente. Essas expressões podem ser baseadas em variáveis ??de entrada que podem ser configurados através de arquivos de configuração. (Isto é apenas uma das muitas maneiras que SSIS fornece para conseguir algo assim)

Se entendi sua pergunta corretamente, você gostaria de remover todas as citações de qualquer um dos valores de coluna que estão em seu arquivo de texto? Se este for o caso, você usaria uma transformação coluna derivada. Você deve selecionar Substituir "column_name" no Nome coluna derivada suspensa. Você, então, preencher a propriedade expressão com o seguinte código: REPLACE ( "\"", [column_name], "")

Espero que isso ajude.

soluções Ambos unclepaul84 e Ryan Fonnetts' iria funcionar, mas pessoalmente eu ir mais para o unclepaul porque eu achei que eu sei que tem vários arquivos que precisam de aspas retirados e eu posso usar o mesmo código de transformação para cada um (que é bom).

Estas são soluções, mas eu acredito que há funcitonality mais fácil embutido no Gerenciador de conexão Flat File.

Na versão primeira guia, General, você vai encontrar a primeira caixa de texto sob o sectin formato, chamado qualificador de texto. Digite um aspas duplas (ou uma única citação, se todas as colunas são envolto em aspas simples) aqui e clique em pré-visualização.

Isto deve resolver o seu problema!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top