ri_nepo Postado Dezembro 7, 2006 Denunciar Share Postado Dezembro 7, 2006 Galera , eu fiz um dts que executa uma procedure , na hora de concatenar ele da o seguinte erro.Incorrect syntax near '+'.A parte final do código está assim que executa a procedure está abaixo , ****************************************INSERT INTO TB_REPORT_ACUMULO(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,TKT_MEDIO_TRANSACAO)EXEC REPORT_ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL****************************************Quem quiser ver o código completo pode olhar o código abaixoDECLARE @DIA_INICIO CHAR(10)DECLARE @DIA_FINAL CHAR(10)DECLARE @mês CHAR(10)DECLARE @ANO CHAR(10) SET @DIA_INICIO = '1' SET @mês = MONTH(getdate()) - 1IF MONTH(GETDATE()) = '1'BEGIN SET @ANO = YEAR(getdate()) - 1ENDELSEBEGIN SET @ANO = YEAR(getdate())ENDIF MONTH(GETDATE()) = '1' OR MONTH(GETDATE()) = '2' OR MONTH(GETDATE()) = '4' OR MONTH(GETDATE()) = '6' OR MONTH(GETDATE()) = '8' OR MONTH(GETDATE()) = '9' OR MONTH(GETDATE()) = '11' BEGIN SET @DIA_FINAL = '31'ENDELSE IF MONTH(GETDATE()) = '3'BEGIN SET @DIA_FINAL = '28'ENDELSEBEGIN SET @DIA_FINAL = '30'ENDINSERT INTO TB_REPORT_ACUMULO(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,TKT_MEDIO_TRANSACAO)EXEC REPORT_ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL*****************************************************quem puder ajudar eu agradeçovaleuRicardo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Dezembro 8, 2006 Denunciar Share Postado Dezembro 8, 2006 esse erro da na hora do check syntax ou so na hora de executar??também esse insert está meio estranho. ele não tem os values. ou esse REPORT_ACUMULO é que retorna os values a serem inseridos??se for tenta isso:INSERT INTO TB_REPORT_ACUMULO(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,TKT_MEDIO_TRANSACAO)EXEC (REPORT_ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL)[/code] ou isso: [code]INSERT INTO TB_REPORT_ACUMULO(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,TKT_MEDIO_TRANSACAO)(EXEC REPORT_(ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL)) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ri_nepo
Galera ,
eu fiz um dts que executa uma procedure , na hora de concatenar ele da o seguinte erro.
Incorrect syntax near '+'.
A parte final do código está assim que executa a procedure está abaixo ,
****************************************
INSERT INTO TB_REPORT_ACUMULO
(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,
TKT_MEDIO_TRANSACAO)
EXEC REPORT_ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL
****************************************
Quem quiser ver o código completo pode olhar o código abaixo
DECLARE @DIA_INICIO CHAR(10)
DECLARE @DIA_FINAL CHAR(10)
DECLARE @mês CHAR(10)
DECLARE @ANO CHAR(10)
SET @DIA_INICIO = '1'
SET @mês = MONTH(getdate()) - 1
IF MONTH(GETDATE()) = '1'
BEGIN
SET @ANO = YEAR(getdate()) - 1
END
ELSE
BEGIN
SET @ANO = YEAR(getdate())
END
IF MONTH(GETDATE()) = '1' OR MONTH(GETDATE()) = '2' OR MONTH(GETDATE()) = '4' OR
MONTH(GETDATE()) = '6' OR MONTH(GETDATE()) = '8' OR MONTH(GETDATE()) = '9' OR
MONTH(GETDATE()) = '11'
BEGIN
SET @DIA_FINAL = '31'
END
ELSE IF MONTH(GETDATE()) = '3'
BEGIN
SET @DIA_FINAL = '28'
END
ELSE
BEGIN
SET @DIA_FINAL = '30'
END
INSERT INTO TB_REPORT_ACUMULO
(ORDEM,NIVEIS,PESSOAS,TRANSACOES,DOTZ,TKT__MEDIO_USUARIO,
TKT_MEDIO_TRANSACAO)
EXEC REPORT_ACUMULO '43540',@ANO + '/' + @mês + '/' + @DIA_INICIO ,@ANO + '/' + @mês + '/' + @DIA_FINAL
*****************************************************
quem puder ajudar eu agradeço
valeu
Ricardo
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.