PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
Execucao de query
Versão:
12.1.2210
Plataforma:
Microsoft
Complemento:
DB:
SQL Server
Complemento:
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário WANDERSONW WANDERSONW em 12/09/2023, 10:19 h
Local: SP  Registro: 01/07/2015  Postagens: 167
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)

Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal