Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Preciso criar um campo de flag para clientes que usaram o mesmo produto nos últimos dois meses.
no meu load, criei uma tabela temporária e pensei em usar a função peek, para ela verificar e criar a flag para mim. No entanto, não está funcionando:
TEMP__1:
LOAD NR_CLIENT,
DT_INT_DISP,
DT_FINISH_DISP,
RowNo()
RESIDENT CLIENT_PRODUCT_DISP
WHERE NR_SEQ_PRODUCT=1
ORDER BY NR_CLIENT,
DT_INT_DISP ASC;
TEMP_2:
LOAD NR_CLIENT,
DT_INT_DISP,
DT_FINISH_DISP,
IF(NR_CLIENT=PEEK(NR_CLIENT),
IF(DT_INT_DISP-PEEK(DT_FINISH_DISP),-2)'YES','NO'),'NO') AS FL_CLIENT_2,
ROWNO(),
Resident TMP_1
Order by NR_CLIENT,
DT_INT_DISP ASC;
Ola
imagino algo assim
TEMP__1:
LOAD NR_CLIENT,
DT_INT_DISP,
ProductId
RESIDENT CLIENT_PRODUCT_DISP
WHERE NR_SEQ_PRODUCT=1
ORDER BY ProductId, NR_CLIENT, DT_INT_DISP ASC;
Olha nesse load se voce tem Produtos, depois cliente, depois a data
ai voce pode fazer algo assim:
Flag_:
LOAD
Product, NR_CLIENT, DT_INT_DISP
If(Previous(ProductID) = ProductId , And Previous(NR_CLIENT) = NR_CLIENT
//Espero que seja data cheia
And Floor(DT_INT_DISP) - Previous(Floor(DT_INT_DISP) ) < 31 , 1 ,0 ) as Flag_usando_mais_2x
Resident TEMP__1
claro que tu pode fazer um Loop e olhando se count do product agregado por Client e maior que 2 em loop
Oi, Thiago. Obrigado pela resposta. o campo "ProductId" seria referente ao que? Pois na minha carga, o NR_CLIENT é a minha chave primária. o campo DT_INT_DISP é a data da inicio e o campo DT_FINISH_DISP é a data da finalização. o campo NR_SEQ_PRODUCT=1 é o tipo de produto que o cliente consumiu.
Ola,
No Caso eu coloquei um exemplo, uma ideia de como resolver, nao a solucao exata.
voce precisa do id do produto para pode orderna seu dados corretamente
Data de finalizacao nao interessa nessa sua analise, para criar o flag se produto foi pedido mais de uma,
Qual o sentindo de ter a data finalizacao para verificar se produto foi soliitado mais de uma vez?
Nao somente isso.Como voce vai ordernar pra saber se produto foi solitiado mais de uma vez sem o Id do produto ?
Seria como pedir uma banana split sem banana, nao tem como.
Campo princiapais para sua analise sao: Id do Cliente , Produto e Data de Solicitacao, sem esse campos voces nao consegue criar esse flag.
o que tem dentro dessa Chave primaria, Id do cliente?