Tenho uma procedure aqui que roda diariamente para inserir as vendas diárias, com as informações de NF, data de emissão, PIS, COfins, Valor da NF e etc etc etc.
O desenvolvedor deste código não trabalha mais na empresa e hoje, o procedure demora muito para finalizar pois, ele apaga o mês corrente na tabela e insere novamente com todas as vendas do mês mais o dia atual.
O que eu queria fazer é o seguinte...que o procedure apenas inserisse o dia da venda anterior, mas não corresse o risco de duplicar as linhas.
Abaixo segue a linha que apaga o mês anterior:
--deleta o mes correte
delete from user_vendapura
where cast(SUBSTRING(user_vendapura.DATAEMISSAO,4,2) as int) = cast(MONTH(GETDATE()-1) as varchar(10)) and
cast(SUBSTRING(user_vendapura.DATAEMISSAO,7,4) as int) = cast(year(GETDATE()-1) as varchar(10))
e Abaixo, onde seleciono apenas os itens do mês corrente:
--seleciona somente as notas fiscais autorizadas e do mes corrente para fazer parte do insert do select
(SELECT COUNT(*)
FROM FISCALDOCJOUR_BR, EFDOCUMENT_BR
WHERE FISCALDOCJOUR_BR.INVENTSITEID = SALESTABLE.INVENTSITEID AND
FISCALDOCJOUR_BR.DATAAREAID = SALESLINE.DATAAREAID and
EFDOCUMENT_BR.RETURNCODEDESCRIPTION LIKE('%100%') AND
EFDOCUMENT_BR.ProtocolNumber <> '' AND
FISCALDOCJOUR_BR.TRANSREFID = SALESTABLE.SALESID AND
MONTH(EFDOCUMENT_BR.DATE) = MONTH(GETDATE()-1) AND
YEAR(EFDOCUMENT_BR.DATE) = YEAR(GETDATE()-1) AND
EFDOCUMENT_BR.INVENTSITEID = FISCALDOCJOUR_BR.INVENTSITEID AND
EFDOCUMENT_BR.REFRECID = FISCALDOCJOUR_BR.RECID) > 0
Pergunta
Mateus Furrier
Bom dia Pessoal.
Tenho uma procedure aqui que roda diariamente para inserir as vendas diárias, com as informações de NF, data de emissão, PIS, COfins, Valor da NF e etc etc etc.
O desenvolvedor deste código não trabalha mais na empresa e hoje, o procedure demora muito para finalizar pois, ele apaga o mês corrente na tabela e insere novamente com todas as vendas do mês mais o dia atual.
O que eu queria fazer é o seguinte...que o procedure apenas inserisse o dia da venda anterior, mas não corresse o risco de duplicar as linhas.
Abaixo segue a linha que apaga o mês anterior:
e Abaixo, onde seleciono apenas os itens do mês corrente:Alguém pode me dar um help ??
Abraços
Editado por Mateus FurrierLink para o comentário
Compartilhar em outros sites
6 respostass 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.