Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Ajuda comando SQL

Eu estou tentando inserir valores no meu banco de dados a partir das minhas seleções em listas do qv.

Para isso estou utilizando o comando SQL no script, ele funciona perfeitamente se eu passo valores fixos para serem inseridos, o problema é que preciso passar os valores que foram selecionados em uma lista. O comando SQL entende a minha variável que pega esses valores da lista como sendo uma string das funções que eu uso e não como somente o resultado de retorno dessas funções. Algo do tipo:

ErrorSource: Microsoft OLE DB Provider for SQL Server, ErrorMsg: Incorrect syntax near '='.

SQL insert into conta values(=text(GetFieldSelections(id_sftCusto)),2,'aa',123,'n')

Existe alguma maneira de fazer isso ou não tem jeito mesmo?

Desde já agradeço a ajuda.

Labels (1)
1 Solution

Accepted Solutions
Not applicable
Author

Obrigado pela ajuda, consegui fazer o insert funcionar via macro.

Criei 2 variáveis(v, vm) , v = getfieldselections(meu_campo)

Ai utilizando macro fiz o seguinte código:

set vm = ActiveDocument.Variables("vm")

x = ActiveDocument.Variables("v").GetContent.String

vm.SetContent x,true

ActiveDocument.Reload

e no meu script interno esta o comando SQL que é usado quando a macro é ativada e passa o reload

SQL insert into minha_tabela values ( $(vm));

Dessa maneira funciono perfeitamente.

Obrigado novamente pela atenção e ajuda.

View solution in original post

4 Replies
Not applicable
Author

Olá, pelo erro que vc passou aqui o SQL nao está entendendo o sinal de =.

Tente assim

Insert into conta values($(=text(GetFieldSelections(id_sftCusto))),2,'aa',123,'n')

Abraços.

Tonial.

Not applicable
Author

Eu tentei usar do modo como você disse e apareceu outro erro agora:

ErrorSource: Microsoft OLE DB Provider for SQL Server, ErrorMsg: Incorrect syntax near 'error'.

SQL insert into conta values((internal error),2,'aa',123,'n')

Not applicable
Author

Tem como vc postar como vc esta fazendo esse insert, se é via interface do usuário, via macro, via script e o comando completo desse insert.

Not applicable
Author

Obrigado pela ajuda, consegui fazer o insert funcionar via macro.

Criei 2 variáveis(v, vm) , v = getfieldselections(meu_campo)

Ai utilizando macro fiz o seguinte código:

set vm = ActiveDocument.Variables("vm")

x = ActiveDocument.Variables("v").GetContent.String

vm.SetContent x,true

ActiveDocument.Reload

e no meu script interno esta o comando SQL que é usado quando a macro é ativada e passa o reload

SQL insert into minha_tabela values ( $(vm));

Dessa maneira funciono perfeitamente.

Obrigado novamente pela atenção e ajuda.