Loading
Verkoopprestatiebeheer
Inhoudsopgave
Filters selecteren

          Geen resultaten
          Geen resultaten
          Hier zijn enkele zoektips

          Controleer de spelling van uw trefwoorden.
          Gebruik meer algemene zoektermen.
          Verwijder filters om uw zoekopdracht uit te breiden.

          De Help van Salesforce volledig doorzoeken
          Prestaties van gegevensfilters optimaliseren in Salesforce Spiff

          Prestaties van gegevensfilters optimaliseren in Salesforce Spiff

          Goed gestructureerde gegevensfilters zijn de meest effectieve manier om de prestaties van commissieberekeningen in Salesforce Spiff te verbeteren. Pas filters in de juiste volgorde toe, beperk recordvolumes in een vroeg stadium en vermijd patronen die de commissie-engine tot onnodig werk dwingen.

          Vereiste editions

          Beschikbaar in: Salesforce Classic (niet in alle organisaties beschikbaar) en Lightning Experience
          Beschikbaar in: Enterprise, Unlimited en Developer Edition
          Tegen bijbetaling beschikbaar in: Professional Edition met Web Services-API ingeschakeld

          Filteren voordat gegevens worden verspreid

          Filteren begint vóór gegevensfilters in Designer. Wanneer u uw Salesforce-connector of gegevensupload configureert, gebruikt u WHERE-clausulevoorwaarden om de records te beperken die naar Spiff worden gesynchroniseerd. Hoe minder records de commissie-engine bereiken, hoe sneller berekeningen worden uitgevoerd.

          Pas deze technieken toe om recordvolumes verderop in de stroom te reduceren.

          • Gebruik datumconstanten. In plaats van alle historische records te synchroniseren, gebruikt u datumrelatieve filters zoals THIS_YEAR, LAST_90_DAYS of een specifiek voortschrijdend venster dat overeenkomt met uw afschriftperioden. Zo beperkt een filtervoorwaarde van CloseDate >= THIS_YEAR de synchronisatie tot records die zijn gesloten in het huidige kalenderjaar, met uitzondering van historische records die geen invloed meer hebben op actieve commissieberekeningen.
          • Plan voor recordgroei. Een configuratie die goed presteert met 50.000 records, kan een time-out hebben met 500.000. Bekijk geprojecteerde gegevensvolumes met uw team en pas uw synchronisatiestrategie aan voordat uw berekeningen deze volumes bereiken.
          • Definieer een archiveringsstrategie. Werk samen met uw klant om vast te stellen wanneer records buiten de commissie vallen en verwijder ze uit de actieve synchronisatie. Het archiveren van oude gegevens vermindert de werkset die elk filter scant.

          Orderfilterbewerkingen voor prestaties

          De volgorde waarin u filtervoorwaarden in een keten opneemt, is van invloed op het aantal records dat de engine bij elke stap evalueert. Structureer filters zodat de meest selectieve voorwaarden het eerst worden uitgevoerd en beperk de recordset voordat de engine minder selectieve voorwaarden evalueert.

          Structureer uw filters in deze volgorde als algemene benadering.

          1. Pas WHERE-voorwaarden eerder in de stroom toe via uw connector of gegevensupload om de records te beperken die Spiff bereiken.
          2. Filter op datumbereik en toewijzing van vertegenwoordiger in uw basisgegevensfilter. Gebruik voorwaarden voor ClosedInPeriod en ByRep om met de kleinste relevante recordset te werken.
          3. Pas criteria toe als ingekapselde subfilters die verwijzen naar het basisfilter, in plaats van alle voorwaarden in één expressie te stapelen.
          4. Stel uw definitieve filter samen uit de subfilters om de expressie op het hoogste niveau leesbaar en onderhoudbaar te houden.

          Berekende velden vermijden in gegevensfilters voor grote objecten

          Voor berekende velden in gegevensfilters moet Spiff een formule evalueren voor elke record in het object voordat de filtervoorwaarde wordt toegepast. Deze benadering werkt over het algemeen goed voor objecten met minder dan 250.000 records. Voor grotere objecten leidt dit tot aanzienlijke prestatiedruk.

          Denk voor filteren op een berekende waarde voor een groot object aan de volgende alternatieven.

          • Voeg een vooraf berekend veld toe aan het bronobject upstream in Salesforce, zodat Spiff de berekende waarde rechtstreeks ontvangt in plaats van deze te berekenen op filtertijd.
          • Gebruik een dubbelfilter om de berekening toe te passen in een werkblad en verwijs vervolgens naar het resultaat in een tweede filter dat de functie contains() gebruikt.
          Tip
          Tip Als u een berekend veld gebruikt in een gegevensfilter, plaatst u het in een ingekapseld subfilter. Het inkapselen van het berekende veld verandert niets aan de manier waarop het filter wordt uitgevoerd — filters worden altijd als geheel uitgevoerd — maar het maakt de berekening gemakkelijker te identificeren, uit te schakelen of te vervangen wanneer uw logica verandert.

          Filters inkapselen voor herbruikbaarheid en uitbreidbaarheid

          In plaats van lange, monolithische filterexpressies te schrijven, splitst u filters op in benoemde subfilters die elk één voorwaarde testen. Deze benadering wordt inkapseling genoemd. Ingekapselde filters bieden verschillende voordelen.

          • De engine berekent een subfilter eenmaal en hergebruikt het resultaat voor elk filter dat ernaar verwijst, waardoor herhaalde berekeningen worden verminderd.
          • Wanneer een veldnaam of bedrijfsregel verandert, werkt u het subfilter op één plaats bij in plaats van elk filter te bewerken dat de voorwaarde bevat.
          • Kortere, benoemde filtervoorwaarden zijn gemakkelijker te lezen, te controleren en fouten op te sporen.

          In plaats van Split_Percent__c != null in meerdere filters te herhalen, maakt u bijvoorbeeld een SplitPercentNotNull voor een subfilter en verwijst u daar waar nodig naar.

          SplitPercentNotNull = Split_Percent__c != null
          SplitARRThreshold   = SplitARR >= 20000
          
          ClosedInPeriod AND ByRep AND SplitPercentNotNull AND SplitARRThreshold

          Zie Inkapseling gebruiken in Salesforce Spiff-berekeningen voor meer informatie over inkapseling.

          Inzicht in uw gegevensschema en relaties

          Selecteer het ankerobject voor een gegevensfilter op basis van waar de drie verplichte componenten—wanneer te betalen, wie te betalen en hoeveel te betalen—het meest direct toegankelijk zijn. Beginnen vanaf het rechterobject vermindert het aantal relatiedoorgangen dat de engine uitvoert.

          Als u de velden voor datum, eigenaar en bedrag over meerdere objecten spreidt, prioriteert u het object dat het datumveld bevat en bouwt u relaties op om de andere velden op te halen. Werken vanaf het datumveld betekent dat de engine alleen werkt voor records binnen de relevante periode, niet voor de volledige objecthistorie.

          Als één object duizenden records per vertegenwoordiger per periode heeft, overweeg dan of een geaggregeerd object op een hoger niveau in plaats daarvan als anker kan dienen.

           
          Wordt geladen
          Salesforce Help | Article