Sääntö oli oikein, ja silti 183 tuotetta jäi ulkopuolelle
Kampanjan alennussääntö oli valmis ja oikein tehty, ja silti 183 tuotetta jäi sen ulkopuolelle. Näin lasket, mihin oma sääntösi tai automaatiosi ei osu.

Sääntö oli jo tehty, ja se oli tehty oikein.
Tehtävänä oli rakentaa kampanjalle alennussääntö. Avasin kaupan hallinnan ja löysin sen valmiina: Ajastus osui kampanja-aikaan minuutilleen, mekaniikka oli oikea ja sääntö oli estetty yhdistymästä muihin tarjouksiin. Tähän olisi voinut jäädä. Yksi työ vähemmän listalla.
Sen sijaan laskin, mihin se osuu.
Toimiva ja kattava ovat kaksi eri asiaa
Sääntö oli rajattu seitsemään tuotekokoelmaan. Kokoelmat ovat käsin ylläpidettyjä listoja, ja ne näyttävät hallinnassa aivan samalta riippumatta siitä, onko niissä koko valikoima vai vähän vajaa.
Laskin kaksi lukua. Valmistajan koko valikoima kaupassa oli 1 677 tuotetta. Niistä 183 ei kuulunut yhteenkään säännön seitsemästä kokoelmasta.
Pelkkä luku ei vielä kerro paljon, joten katsoin, mitkä ne 183 olivat. Siinä vaiheessa aukko muuttui kiusalliseksi: Ulkopuolelle jäivät pääosin pienet ja halvat lisäosat. Siis juuri ne tuotteet, joilla asiakas pääsee kolmen tuotteen rajan yli tai jotka hän ottaa neljäntenä ilmaiseksi.
Kampanja olisi siis toiminut, mutta reikä olisi ollut tarkalleen siinä kohdassa, jonka päälle koko mekaniikka on rakennettu. Mikään hallinnassa ei kerro tällaisesta. Sääntö näyttää aktiiviselta ja ajastus näyttää oikealta.
Korjaus oli yksi muutos, ei seitsemän
Vaihdoin seitsemän kokoelman tilalle yhden, joka kattaa valmistajan koko valikoiman eli ne 1 677 tuotetta. Ennen vaihtoa varmistin, että uusi rajaus on aito ylijoukko, ja tarkistin sen molempiin suuntiin:
- Ei mitään hukkaan. Yksikään vanhojen seitsemän kokoelman tuote ei jäänyt uuden rajauksen ulkopuolelle.
- Ei mitään ylimääräistä. Yksikään uuden rajauksen tuote ei ollut toisen valmistajan.
Vasta sen jälkeen vaihdoin. Ulkopuolelle jääneiden määrä meni 183:sta nollaan. Ajastukseen ja mekaniikkaan en koskenut lainkaan, koska niissä ei ollut vikaa.
Tästä osasta hyöty oikeasti tulee. Käsin ylläpidetty lista seitsemästä ryhmästä vanhenee hiljaa aina, kun valikoimaan lisätään jotain uutta. Yksi määritelmä, joka on todistettu kattavaksi, ei vanhene samalla tavalla. Myöhempi tarkistus on sen jälkeen yksi kohta, ei seitsemän.
Sama tarkistus omaan sääntöön
Melkein jokaisessa yrityksessä on jotain, joka on rajattu listalla: Kampanjasääntö, raportti, hälytys, automaatio tai tekoälylle annettu työjono. Sitä testataan melkein aina samalla kysymyksellä, eli toimiiko se. Harvemmin kysytään, mihin se ei osu.
Tarkistus on nopea ja se menee näin:
- Laske koko joukko. Montako riviä, tuotetta, asiakasta tai tiedostoa aihepiiriin kuuluu kaiken kaikkiaan.
- Laske, mihin sääntö osuu. Montako niistä rajaus oikeasti tavoittaa.
- Pyydä erotus listana, älä lukuna. Tämä kohta ratkaisee. Luku 183 ei kerro mitään, mutta lista 183 nimestä kertoo heti, onko aukko satunnainen vai osuuko se juuri siihen, mikä on tärkeintä.
Aukko on harvoin satunnainen. Se kerää yleensä sen, mikä on luotu listan tekemisen jälkeen, tai sen, mikä ei koskaan sopinut mihinkään valmiiseen ryhmään. Juuri siksi se osuu niin usein poikkeuksiin, ja poikkeukset ovat yleensä se kohta, jota varten koko sääntö alun perin tehtiin.
Tämä tarkistus kuuluu samaan sarjaan kuin muut pienet varmistukset, jotka maksavat itsensä takaisin silloin, kun aikaa ei ole tehdä kampanjaa kahdesti.