Imprimi Página | Fechar janela |
Execucao de query Impresso de: Helpfacil - Portal do conhecimento Nome do Forum: ADVPL Descrição do Forum: Dúvidas sobre a programação em ADVPL URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=1&TopicID=44344 Data da Impressão: quarta-feira, 9 de outubro de 2024 at 06:34 Topico: Execucao de query Postado por: WANDERSONW Assunto: Execucao de query Data Postagem: terça-feira, 12 de setembro de 2023 at 10:19 Bom dia, Estou tentando atualizar uma tabela temporária via advpl e isso não esta ocorrendo, so consigo se executar via banco. O que posso fazer para que o Protheus atualize a tabela. Query: cQryTrb2:=" DECLARE @inf_inicio INT" + CRLF cQryTrb2+=" DECLARE @inf_fim INT" + CRLF cQryTrb2+=" DECLARE @inf_data_inicio VARCHAR(8)" + CRLF cQryTrb2+=" DECLARE @inf_data_fim VARCHAR(8)" + CRLF cQryTrb2+=" DECLARE @iContador INT" + CRLF cQryTrb2+=" DECLARE @iStatus INT" + CRLF cQryTrb2+=" DECLARE @iQuantidade INT" + CRLF cQryTrb2+=" DECLARE @sNF VARCHAR(9)" + CRLF cQryTrb2+=" SET @inf_data_inicio =‘" + (MV_PAR04) +"‘" + CRLF cQryTrb2+=" SET @inf_data_fim =‘" + (MV_PAR05) +"‘" + CRLF cQryTrb2+=" SET @inf_inicio = 0 " + CRLF cQryTrb2+=" SET @inf_fim = 0 " + CRLF cQryTrb2+=" SET @iContador = @inf_inicio " + CRLF cQryTrb2+=" SET @iQuantidade = 0" + CRLF cQryTrb2+=" SELECT TOP 0 CONVERT(VARCHAR(9), ‘‘) AS NF INTO TB_NF_TMP" + CRLF cQryTrb2+=" SELECT @inf_inicio= MIN(F2_DOC), @inf_fim= MAX(F2_DOC) FROM SF2010 WHERE F2_EMISSAO = @inf_data_inicio AND F2_FILIAL IN " + FormatIn( AllTrim(mv_par01), "/" ) + " AND F2_SERIE =‘1‘" + CRLF cQryTrb2+=" SET @iContador = @inf_inicio" + CRLF cQryTrb2+=" WHILE @iContador <= @inf_fim" + CRLF cQryTrb2+=" BEGIN" + CRLF cQryTrb2+=" SET @sNF = RIGHT(‘000000000‘ + CAST(@iContador AS VARCHAR(9)), 9)" + CRLF cQryTrb2+=" SELECT @iStatus= COUNT(F2_DOC) FROM SF2010 WHERE F2_DOC = @sNF AND F2_FILIAL IN " + FormatIn( AllTrim(mv_par02), "/" ) + " AND F2_SERIE =‘1‘" + CRLF cQryTrb2+=" IF @iStatus = 0" + CRLF cQryTrb2+=" BEGIN" + CRLF cQryTrb2+=" INSERT INTO TB_NF_TMP (NF) VALUES (@sNF)" + CRLF cQryTrb2+=" SET @iQuantidade = @iQuantidade + 1" + CRLF cQryTrb2+=" END" + CRLF cQryTrb2+=" SET @iContador = @iContador + 1" + CRLF cQryTrb2+=" END" TCSQLExec(cQryTrb2) |
Imprimir Página | Fechar Janela |