Megosztás a következőn keresztül:


Functions

A Dynamics 365 Fraud Protection rugalmasságot biztosít egy adott feladat végrehajtásához használható függvények létrehozásához. A függvények használatával például kombinálhatja azokat a kódcsoportokat, amelyeket együtt kell végrehajtani. Vagy függvényekkel újra felhasználhatja a kódot, ahol egyszer megírhatja a kódot, és más helyekről érheti el, így a kód könnyebben karbantartható. Ebben a példában, ha egy külső szolgáltatást szeretne meghívni egy érték lekéréséhez, a logika definiálható egy függvényen belül, és a függvény meghívható más erőforrásokból is.

Függvény definiálása

A függvények bemeneti paraméterekből és kimeneti tulajdonságokból állnak.

Bemeneti paraméterek

A függvények meghatározhatják a függvénynek a meghívás időpontjában átadandó paramétereket. A bemeneti paraméterek a függvénydefinícióban vannak definiálva. A meghíváskor a függvénybe átadott paraméterek számának pontosan meg kell egyeznie a függvényhez definiált paraméterek számával. A megadott paraméterek a kimeneti tulajdonságokon belül használhatók egy érték visszaadásához. További információ: Kimeneti tulajdonságok. A bemeneti paraméterek megadása nem kötelező.

A bemeneti paraméterek a következő három részből állnak.

  • Paraméter neve: Egy név, amelyre a paraméter hivatkozhat.

  • Adattípus: Minden bemeneti paraméterhez adattípust kell társítani. A megadott adattípus a paraméter értékét a megfelelő típussá alakítja. A függvények az alábbi táblázatban felsorolt adattípusokat támogatják.

    Adattípus Mintaérték
    Logikai Igaz
    Dátum/idő 2024. február 22. 16:44
    Dupla 10,0
    Egész 10
    Sztring „Helló”
  • Alapértelmezett érték: Minden paraméterhez alapértelmezett érték szükséges. Az alapértelmezett érték a "Függvény kiértékelése" során használatos, vagy ha probléma van a függvényhívással.

Kimeneti tulajdonságok

A függvények visszatérési értékét kimeneti tulajdonságok használatával határozhatja meg. A kimeneti tulajdonságok a "Fraud Query Language (FQL)" logikát használják a függvény értékének visszaadásához. A kimeneti tulajdonságok ezután más függvényekből, szabályokból, helymeghatározásokból, döntés utáni műveleti szabályokból és útválasztási szabályokból érhetők el a függvény meghívásakor. Egy függvény legfeljebb 30 kimeneti tulajdonsággal rendelkezhet. A teljes tartománynévvel és a használatuk módjával kapcsolatos további információkért tekintse meg a nyelvi referencia-útmutatót.

A kimeneti tulajdonságok a következő négy részből állnak.

  • Tulajdonság leírása: A tulajdonság leírása. Leírás megadása nem kötelező.

  • Adattípus: A tulajdonságból visszaadott érték adattípusa. A függvények támogatják az összes primitív adattípust, például logikai, dátum-, dupla-, egész- és sztringtípust. Ha egy más erőforrásokban hivatkozott függvény kimeneti tulajdonságában törés történt, a rendszer az eredeti "adattípus" kimeneti tulajdonság alapértelmezett értékét használja tartalékként az erőforrás végrehajtásának folytatásához. Javasoljuk, hogy a kompatibilitástörő változások után frissítse az erőforrásokat.

  • Alapértelmezett érték: Az alapértelmezett érték egy függvény eredménye, amikor kivétel történik a tulajdonság kiértékelése során. Például 0 szerinti osztás és nullhivatkozási kivételek.

  • Kódszerkesztő egy érték visszaadásához: A kódszerkesztő a függvényből származó érték visszaadására szolgál. Az alábbiakban egy kimeneti értéket ad vissza.

    1. A függvényben definiált bemeneti paraméterek értékek visszaadására használhatók.

      Példa egy kimeneti tulajdonságra, amely visszatérési értékként egy bemeneti paramétert ad vissza. A bemeneti paraméterek definiálásáról további információt a cikk korábbi, Bemeneti paraméterek szakaszában talál.

    RETURN _number1 + _number2
    
    1. A függvényt meghívó szabályt tartalmazó értékelés kérelem- és válaszattribútumai (beleértve az egyéni adatokat is). Ezeket az attribútumokat az operátorral érheti @ el. Például: @"salesTax".

      Példa a kérelemattribútumokat használó függvényre:

    RETURN @"salesTax"
    
    1. A Csalás elleni védelem bővítési adatai. Például: Geo.CountryCode().

      Példa a riskscore-t használó függvényre:

    RETURN Geo.CountryCode(@"deviceContext.ipAddress")
    
    1. A Csalás elleni védelembe feltöltött listák. A listák feltöltéséről további információt a Listák kezelése című témakörben talál.

      Példa a listafüggvényre:

    RETURN Lookup("Country_Score", "Country", "US", "ScoreCutOff")
    
    1. A Csalás elleni védelemben meghatározott velocities. További információ: Sebességellenőrzések végrehajtása.

      Példa a sebesség használatával történő függvényre:

    RETURN Velocity.IPs_Per_User(@"deviceContext.ipAddress", 30s)
    
    1. A Fraud Protectionben létrehozott külső hívások. További információ: Külső hívások.

      Példa a külső hívásokat használó függvényre:

    RETURN External.weather("Seattle").id
    
    1. A Csalás elleni védelemben létrehozott külső értékelések. További információ: Külső értékelések.

      Példa egy külső értékelést invokáló függvényre:

    LET $result = Assessments.myAssessment.Evaluate($baseInput = @@)
    RETURN $result.ToStr()
    
    1. Access függvény a függvények között.

      Példa egy másik függvényt invokáló függvényre:

    RETURN Functions.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
    

Feljegyzés

A többhierarchiás verem bármely környezetében létrehozhat függvényeket. Ha egy függvény olyan erőforrásokra hivatkozik, mint például a földrajzi hely, a külső hívások, a listák és a környezetben elérhető külső értékelések, a függvényt meghívó alacsonyabb környezetek is öröklik a függvény által hivatkozott erőforrásokat. Ha például létrehoz egy függvényt a gyökérben, amely egy külső hívásra hivatkozik egy érték visszaadásához, a függvényt meghívó gyermekkörnyezet is hozzáférhet a külső hívás eredményéhez. A függvények öröklésére és meghívására vonatkozó további információkért tekintse meg a függvényöröklés szakaszt a cikk későbbi részében.

Függvény közzététele

  1. A Csalás elleni védelem portálon válassza a Navigációs sáv Függvények elemét, majd az Új függvény lehetőséget. A Fraud Protection létrehoz egy piszkozatfüggvényt, amely csak Ön (a függvény létrehozója) számára jelenik meg. A rendszer automatikusan menti a piszkozaton végrehajtott összes módosítást.

  2. Ha új függvényt szeretne definiálni az alapoktól, tekintse meg a jelen cikk korábbi, Függvények definiálása szakaszát.

  3. A függvény közzétételéhez válassza a Közzététel lehetőséget.

  4. A megerősítést kérő párbeszédpanelen módosíthatja a nevet és a leírást. Válassza a Közzététel lehetőséget.

Feljegyzés

A függvény közzététele után minden felhasználó számára látható lesz. A függvény ezután meghívható más függvényekkel, szabályokkal, helyekkel, döntés utáni szabályokkal és útválasztási szabályokkal.

A függvények más erőforrásokban, például függvényekben, szabályokban, helymeghatározásokban, döntés utáni műveletekben és útválasztási szabályokban való használatáról a jelen cikk későbbi, erőforrásokból származó függvények meghívása szakaszában olvashat.

A Minta panel

Függvény létrehozásakor vagy szerkesztésekor megjelenik a Minta panel a lap oldalán.

  • A függvények nincsenek semmilyen értékeléshez kötve. A minta hasznos adatok hasznos útmutatóként jelennek meg a felhasználók számára, amely megjeleníti a függvényekben hivatkozható összes eseménytulajdonságot. Válassza ki az eseménytípust a panel tetején található Esemény mezőben.

  • A hasznos adatok mintaszakasza egy példát tartalmaz a kérelem API-ban elküldhető tulajdonságokra az értékeléshez.

Függvény kezelése

  1. Egy korábban közzétett függvény szerkesztéséhez jelölje ki a függvényt, majd válassza a Szerkesztés lehetőséget. Létrejön a közzétett függvény vázlata, amely csak Ön számára érhető el. A rendszer automatikusan menti a piszkozaton végrehajtott összes módosítást. A módosítások éles környezetbe való leküldéséhez válassza a Közzététel lehetőséget. A korábban közzétett függvény felülíródik a módosításokkal. A piszkozat elvetéséhez válassza az Elvetés lehetőséget.

  2. Meglévő függvény törléséhez jelölje ki a három pontot (...), majd válassza a Törlés lehetőséget.

  3. Egy függvény nevének vagy leírásának frissítéséhez jelölje ki a három pontot (...), majd válassza az Átnevezés lehetőséget.

  4. Függvény kereséséhez írjon be egy kulcsszót a Keresés mezőbe. A rendszer az összes függvénynevet és leírást megkeresi, és az eredményeket a keresési kulcsszavak alapján szűri.

Függvény kiértékelése

Mielőtt közzétesz egy függvényt, a Függvény kiértékelése panelen ellenőrizheti, hogy a függvény visszaadja-e a várt eredményeket.

  • A függvény-kiértékelési panel megnyitásához válassza a Kibontás lehetőséget a Függvények lapon.
  • Az ablaktábla bezárásához válassza az Összecsukás lehetőséget.

Amikor a kiértékelési panel meg van nyitva, a kimeneti tulajdonságok listája megjelenik az eredményével együtt. A kiértékelés a bemeneti paraméterek és a minta hasznos adatszakasz értékeinek alapértelmezett értékeit használja a visszaadandó értékek meghatározásakor. Ha ezen értékek bármelyike módosul, a kimenet is megváltozik. Így meggyőződhet arról, hogy az egyes kimeneti tulajdonságok helyes értékei lesznek visszaadva.

Függvények meghívása erőforrásokból

A közzétett függvények meghívhatók olyan erőforrásokból, mint a szabályok, a helymeghatározások, a döntés utáni műveletek és az útválasztási szabályok. A függvényben definiált összes kimeneti tulajdonság a függvény meghívásával érhető el. Az értékek ezután felhasználhatók döntéshozatalhoz.

Szabályok

A függvények az ugyanabban a környezetben található bármely szabályból (bármely értékelésen belül) és az alábbi hierarchiában lévő gyermekkörnyezetekből hívhatók meg. A szabályokról további információt a Szabályok című témakörben talál.

LET $sum = Functions.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
RETURN Approve()
WHEN $sum > 5

Sebességek

A függvények az alábbi hierarchiában található hierarchiában található bármilyen sebességről hívhatók meg ugyanabban a környezetben és gyermekkörnyezetekből. A sebesség-ellenőrzés végrehajtásával kapcsolatos további információkért lásd: Sebességellenőrzések végrehajtása.

SELECT DistinctCount(@"device.deviceContextId") AS Devices_Per_IP
FROM AccountLogin
WHEN Functions.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum > 5
GROUPBY @"device.ipAddress"

Döntés utáni szabályok

A függvények meghívhatók bármely döntés utáni műveleti szabályból (bármely értékelésen belül) ugyanabban a környezetben és az alábbi hierarchiában lévő gyermekkörnyezetekből. További információ a döntés utáni műveleti szabályokról: Döntés utáni műveleti szabályok.

DO SetResponse()
WHEN Functions.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum == 5

Útválasztási szabályok

A függvények az ugyanabban a környezetben lévő útválasztási szabályokból és az alábbi hierarchiában lévő gyermekkörnyezetekből hívhatók meg. Az útválasztási szabályokkal kapcsolatos további információkért lásd : Esetkezelés.

ROUTETO Queue("General Queue")
WHEN Functions.MyFunction(@"purchase.request.totalAmount", @"purchase.request.salesTax").Calculate_Sum > 5

Függvényöröklés

A függvények ugyanabban a környezetben és az alábbi hierarchiában található gyermekkörnyezetekből hívhatók meg. A hívás szintaxisa attól függ, hogy a függvény hol található, és honnan hívja meg. Az alábbiakban bemutatjuk a függvények többhierarchián belüli meghívásának különböző módjait.

Feljegyzés

Ha egy függvény olyan erőforrásokra hivatkozik, mint a velocities, a listák, a külső hívások és a külső értékelések, az erőforrásokat a rendszer az alábbi hierarchiában lévő gyermekkörnyezetekből is örökli a függvény meghívásakor.

Az ugyanabban a környezetben létrehozott függvények meghívása

Az alábbi példa egy olyan szabályból hív meg egy függvényt, amelyben a szabály és a függvény is ugyanabban a környezetben található.

LET $sum = Functions.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
RETURN Approve()
WHEN $sum > 5

Gyökérkörnyezetben létrehozott függvények meghívása

Az alábbi példa egy gyermekkörnyezetből létrehozott függvényt hív meg a gyökérben.

LET $sum = Functions.root.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
RETURN Approve()
WHEN $sum > 5

A szülőkörnyezetben létrehozott függvények meghívása

Az alábbi példa egy függvényt hív meg a közvetlen szülőkörnyezetből.

LET $sum = Functions.parent.MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
RETURN Approve()
WHEN $sum > 5

A verem feletti bármely környezetben létrehozott függvények meghívása

Az alábbi példa meghív egy, a verem fölötti környezetben létrehozott és egy alacsonyabb környezeten belüli szabályból öröklő függvényt.

LET $sum = Functions.environment["environmentid"].MyFunction(@"totalAmount", @"salesTax").Calculate_Sum
RETURN Approve()
WHEN $sum > 5

Függvény- és erőforráskorlátok

A Fraud Protection korlátozza a környezetenként létrehozható függvények számát és a függvényeken belül hivatkozható erőforrások számát.

Erőforrás Korlát
A környezetben közzétehető függvények maximális száma 30
A függvényen belül létezhet kimeneti tulajdonságok maximális száma 30
A függvények által hivatkozható egyedi velocitások maximális száma 15
A függvény által hivatkozott külső hívások maximális száma 2
A függvények által hivatkozható egyedi listakeresések maximális száma 5
A függvények által hivatkozható egyedi külső értékelések maximális száma 2
A szabálykészlet által meghívható függvények maximális száma 10
Az útválasztási szabály által meghívható függvények maximális száma 10
A döntés utáni művelet által meghívható függvények maximális száma 10
A sebesség által meghívható erőforrások maximális száma 10