Beregne årlig vekstaggregeringer etter medlem (eksempel)
Dette eksemplet viser hvordan du kan bruke medlemsmalen til å sammenligne aggregerte verdier for de samme utbetalingsperiodene for gjeldende og tidligere år.
Nødvendige utgaver
| Tilgjengelig i Enterprise, Unlimited og Developer Edition når Rabattbehandling er aktivert. |
Transaksjonsbilagposter
Acme er medlem av et rabattprogram. Her er eksempler på Transaksjonsbilag-poster for Acme for januar 2021 og januar 2020.
| Medlem | Aktivitetsdato | Transaction Quantity (Transaksjonsmengde) | Transaksjonsbeløp |
|---|---|---|---|
Acme |
05 Jan 2021 | 150 | $50,000 |
| 14 Jan 2020 | 60 | $15,000 |
Benefit Triers (Fordelstrinn)
Rabattprogrammet tilbyr en vekstbasert rabatttype. Programmet har 12 månedlige utbetalingsperioder. Medlemmer belønnes hvis de registrerer en økning i salgsmengde sammenliknet med samme utbetalingsperiode for forrige år.
Programlederen definerer disse fordelsnivåene for den vekstbaserte rabatttypen:
- Sjikt 1: Gir en rabatt på 5 % på totalt transaksjonsbeløp når vekstmengden er mindre enn 50 enheter.
- Sjikt 2: Gir en rabatt på 8 % på totalt transaksjonsbeløp når vekstmengden overskrider 51 enheter.
Databehandlingsmotor
Transaksjonsbilagspostene for en utbetalingsperiode filtreres og aggregeres for gjeldende år og forrige år. Definisjonen legger deretter til medlemmets forrige transaksjonsbeløp, gjeldende transaksjonsbeløp, forrige transaksjonsmengde og gjeldende transaksjonsmengde. Totale verdier oppdateres i objektet Aggregering av rabattmedlemsprodukt. Det opprettes én samlet post per rabatttype per medlem.
Hvis du har tilpasset Aggregering av vekst år for år med medlemsdatabehandlingsmotor-definisjonen eller basert den på en tidligere mal, oppdaterer du aggregeringslogikken for å håndtere skuddårsscenarier riktig. Erstatt funksjonen ADDMONTHS({EndDate},
-12) med følgende uttrykk: IF((SUBSTR(TEXT({EndDate}),6,2) !=
SUBSTR(TEXT(ADDDAYS({EndDate},1)),6,2)),ADDDAYS(DATEVALUE(CONCAT(SUBSTR(TEXT(ADDMONTHS(ADDMONTHS({EndDate},-12),1)),0,8),
"01"), "yyyy-MM-dd"),-1),ADDMONTHS({EndDate} ,-12)).
Erstatt {EndDate} med det faktiske datofeltet som brukes i DPE-definisjonen. Denne oppdateringen sikrer nøyaktige beregninger fra år til år uavhengig av skuddår.
Aggregate Data
Denne eksempelposten opprettes i objektet Aggregering av rabattmedlemsprodukt for januar.
| Post | Medlem | Tidligere total mengde | Total mengde | Vekstmengde | Prosentdel vekstmengde | Tidligere totalbeløp | Samlet transaksjonsbeløp | Vekstbeløp | Prosentdel vekstbeløp |
|---|---|---|---|---|---|---|---|---|---|
| Post 1 | Acme | 60 | 150 | 90 | 60% | $15,000 | $50,000 | $35,000 | 70% |
Disse verdiene oppdateres hver gang den planlagte flyten kjøres. Flyten utløser databehandlingsmotor-definisjonen. Samletverdiene på utbetalingsberegningsdatoen for Jan FY21 brukes til å oppdatere det endelige utbetalingsbeløpet i Medlemsutbetaling-objektet.
Siste utbetaling
Acmes utbetaling er basert på nivå 2-fordel fordi vekstmengden overskrider 50 enheter. Så for januar 2021 mottar Acme 4000 USD (8 % av 50 000 USD).
