Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

douglas_pr

Passar Parametro 'IN' no DTS

Recommended Posts

Caros,

 

 

Criei uma estrutura bem legal usando o DTS, consegui bastante coisa so que tem uma limitação que não está me permitindo concluir o esquema, o detalhes são o seguinte:

 

 

Tenho um ActiveXscript que lê um arquivo texto e formata algumas palavras e coloca-os numa variável global separados por virgula('a','b','c'), que na sequencia é enviado o valor desta string para um outro pacote que o recebe e passa como parametro de uma sql.

Só que o problema está neste momento, é que a sql está em uma Transformation Data Task e qnd passo o valor do parametro (?) que está dentro de uma diretiva IN (exemplo: select * from code IN (?)), o sql esta recebendo o valor do parametro como uma string unica desconsiderando as virgulas.

 

 

Bom estou tentando uma alternativa em paralelo, que não seja ActiveXScript no pacote que recebe e faz a consulta pois esta sql tem uma sub-query e tive varios problemas para garantir tempo de vida de conexão sem usar os recursos de coneção do proprio DTS.

 

 

Se alguem souber "burlar" este problema do parametro string da sql.

 

 

Desde já Agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos,

 

Conseguir resolver essa "bronca".... criei uma procedure que recebe um parametro, dentro da procedure fica uma sql que na diretiva in passa o valor do parametro para uma função que retorna os dados como uma sub-select (retorna um tipo Table).

 

De qualquer forma obrigado a todos e se alguem quiser mais detalhes ou discutir pode postar .... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro jus2ka,

 

 

Na verdade melhorou a performance para o meu caso, ou seja, antigamente eu tinha uma sql que me retonava valores sem esse filtro e isso me gerava um result muito grande e para cada linha dessa eu tinha uma sub-select como um detalhe e isso me dava um tempo X de execução, com a criação da função que recebe uma "string" de aproximadamente 1500 a 2000 caracteres ele demora um pouco mais na primeira consulta mas com isso tenho um resultado filtrado e expecífico para o que eu preciso em um tempo 2/3X.

 

Lembrando que o select que eu utilizo o recurso de função é o "primeiro select" e ele só é executado uma vez e é executado como um pacote filho que recebe a string do pacote pai.

 

 

Em resumo é mais ou menos isso, espero ter respondido o que você esperava.

 

E qualquer dúvida ou sugestão pode enviar que será muito bem recebida http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

 

Abração !

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.