Skip to main content
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.