Script 1
O script abaixo faz um update com:
- Período
- Escolhe vendedor na tabela (neste caso ele pega o vendedor do
cabeçalho ou do item
- Está condição
foi colocado no where da seguinte forma:
(CAB.CODVEND = {CODVEND} OR ITE.CODVEND = {CODVEND})
Foi posta entre parênteses
- Atualiza a observação com os números dos pedidos envolvidos
for(var i = 0; i < linhas.length; i++)
{
var
query = getQuery();
var
linha =linhas[i];
query.setParam("CODVEND",
getParam("CODVEND"));
query.setParam("DTNEG_IN",
getParam("DTNEG_IN"));
query.setParam("DTNEG_TM",
getParam("DTNEG_TM"));
query.setParam("NUNOTA",
getParam("NUNOTA"));
query.update("update TGFITE set QTDNEG=(SELECT
SUM(ITE.QTDNEG) FROM TGFITE ITE INNER JOIN TGFCAB CAB ON CAB.NUNOTA =
ITE.NUNOTA INNER JOIN TGFTOP TOP ON CAB.CODTIPOPER = TOP.CODTIPOPER AND
CAB.DHTIPOPER = TOP.DHALTER WHERE (CAB.CODVEND = {CODVEND} OR ITE.CODVEND =
{CODVEND}) AND CAB.TIPMOV = 'P' AND TOP.ORCAMENTO is null AND CAB.STATUSNOTA =
'L' AND CAB.DTNEG BETWEEN {DTNEG_IN} AND {DTNEG_TM}) where NUNOTA = " +
linha.getCampo("NUNOTA"));
query.update("update TGFCAB set
VLRFRETE=(SELECT SUM(CAB.VLRFRETE) FROM TGFITE ITE INNER JOIN TGFCAB CAB ON
CAB.NUNOTA = ITE.NUNOTA INNER JOIN TGFTOP TOP ON CAB.CODTIPOPER =
TOP.CODTIPOPER AND CAB.DHTIPOPER = TOP.DHALTER WHERE (CAB.CODVEND = {CODVEND}
OR ITE.CODVEND = {CODVEND}) AND CAB.TIPMOV = 'P' AND TOP.ORCAMENTO is null AND
CAB.STATUSNOTA = 'L' AND CAB.DTNEG BETWEEN {DTNEG_IN} AND {DTNEG_TM}) where
NUNOTA = " + linha.getCampo("NUNOTA"));
query.update("update TGFCAB set OBSERVACAO
=(SELECT LISTAGG('/ Pedido n. único: '||CAB.NUNOTA) FROM TGFITE ITE INNER JOIN
TGFCAB CAB ON CAB.NUNOTA = ITE.NUNOTA INNER JOIN TGFTOP TOP ON CAB.CODTIPOPER =
TOP.CODTIPOPER AND CAB.DHTIPOPER = TOP.DHALTER WHERE (CAB.CODVEND = {CODVEND}
OR ITE.CODVEND = {CODVEND}) AND CAB.TIPMOV = 'P' AND TOP.ORCAMENTO is null AND
CAB.STATUSNOTA = 'L' AND CAB.DTNEG BETWEEN {DTNEG_IN} AND {DTNEG_TM}) where
NUNOTA = " + linha.getCampo("NUNOTA"));
mensagem = "Quantidade e
valor do Frete Atualizados";
query.close();
}
Nenhum comentário:
Postar um comentário