Pastaba.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
Taikoma: "Canvas apps
Copilot Studio Desktop
" srautus
modeliu pagrįstos programos
"Power Platform" CLI
"Dataverse" funkcijos
"Power Pages"
Apskaičiuoja reikšmes ir atlieka vieno įrašo veiksmus, įskaitant įdėtuosius pavadintų verčių įrašus.
Aprašas
Funkcija With įvertina vieno įrašo formulę. Formulė gali apskaičiuoti reikšmę ir (arba) atlikti veiksmus, pvz., modifikuoti duomenis arba dirbti su ryšiu. Naudokite ForAll funkciją, kad įvertintumėte formulę visiems lentelės įrašams.
Formulėje pasiekiami šiuo metu apdorojamo įrašo laukai. Naudokite operatorių ThisRecord arba tiesiog laukus, kaip ir bet kurią kitą reikšmę, nurodykite pagal pavadinimus. Operatorių As taip pat galima naudoti norint pavadinti apdorojamą įrašą. Tai gali padėti lengviau suprasti formulę ir įdėtuosius įrašus pritaikyti neįgaliesiems. Norėdami gauti daugiau informacijos, žr. tolesnius pavyzdžius ir įrašą apie darbą su įrašų aprėptimi.
Naudokite With norėdami pagerinti sudėtingų formulių skaitomumą padalydami jas į mažesnes pavadintas antrines formules. Šios įvardytosios reikšmės veikia kaip paprasti vietiniai kintamieji, Withapsiribojantys . Tą pačią įdėtojo įrašo sintaksę, naudojamą su funkcija UpdateContext, galima naudoti su With. Pageidaujama naudoti With kontekstą arba visuotinius kintamuosius, nes jie yra savarankiški, lengvai suprantami ir gali būti naudojami bet kokiame aprašomųjų formulių kontekste.
Naudokite With norėdami pasiekti įrašo laukus, kuriuos pateikia tokios funkcijos kaip Pataisa arba Atitiktis. With šių funkcijų reikšmė yra pakankamai ilga, kad ją būtų galima naudoti tolesniuose skaičiavimuose ar veiksmuose.
Jei įrašo argumentas With yra klaida, šią klaidą pateiks funkcija ir formulė nebus įvertinta.
Sintaksė
With( Įrašas, Formulė )
-
Įrašas – būtinas. Įrašas, kurį norite valdyti. Pavadinimų vertėms naudokite įdėtąją sintaksę
{ name1: value1, name2: value2, ... } - Formulė – būtina. Formulė, kurią norite įvertinti Record. Formulė gali tiesiogiai nurodyti bet kurį Record lauką kaip įrašo aprėptį.
Pavyzdžiai
Paprastai pavadintos vertės
With( { radius: 10,
height: 15 },
Pi() * (radius*radius) * height
)
// Result: 4712.38898038 (as shown in a label control)
Šis pavyzdys naudoja pavadintų verčių įrašą, kad apskaičiuotų cilindro apimtį. With naudojamas norint kartu užfiksuoti visas įvesties reikšmes, kad būtų lengva jas atskirti nuo paties skaičiavimo.
Įdėtųjų With
With( { AnnualRate: RateSlider/8/100, // slider moves in 1/8th increments and convert to decimal
Amount: AmountSlider*10000, // slider moves by 10,000 increment
Years: YearsSlider, // slider moves in single year increments, no adjustment required
AnnualPayments: 12 }, // number of payments per year
With( { r: AnnualRate/AnnualPayments, // interest rate
P: Amount, // loan amount
n: Years*AnnualPayments }, // number of payments
r*P / (1 - (1+r)^-n) // standard interest calculation
)
)
Šiame pavyzdyje įdėjimo funkcijos sukuria dviejų pakopų With skaičiavimą mėnesiniams būsto paskolos mokėjimams. Kol konflikto nėra, visos išorinės With įvardytosios reikšmės pasiekiamos vidiniame With.
Kadangi slankiklio valdikliai gali judėti 1 intervalais, slankikliai yra padalijami arba padauginami, kad būtų veiksmingai sukurtas pasirinktinis intervalas. Palūkanų normos atveju, RateSlider turi savo Max ypatybę, nustatytą į 48, padalintą iš 8 1/8 procentinio punkto prieaugio ir padalinto iš 100, kad konvertuotumėte iš procentinio dydžio į dešimtainį, apimantį intervalą 0,125% iki 6%. Paskolos sumos atveju AmountSlider turi savo Max ypatybę, nustatytą 60 ir padauginta iš 10 000, apimanti diapazoną nuo 10 000 iki 600 000.
The With is automatically recalculated as the sliders move and the new loan payment displayed. Nenaudojami jokie kintamieji ir nereikia naudoti OnChange slankiklio valdiklių ypatybės.
Čia pateikiamos išsamios šios programos kūrimo instrukcijos:
- Kurti naują programą.
- Įtraukite Slider valdiklį ir pavadinkite RateSlider. Nustatykite jos Max ypatybę 48.
- Įtraukite Labelvaldiklį į kairę nuo slankiklio valdiklio. Nustatykite jos Textypatybę "Interest Rate:".
- Įtraukite Label valdiklį į dešinę nuo slankiklio valdiklio. Nustatykite jo ypatybę Tekstas į formulę RateSlider/8 &; " %".
- Įtraukite kitą Slider valdiklį ir pavadinkite AmountSlider. Nustatykite jos Max ypatybę 60.
- Įtraukite Label valdiklį į kairę nuo jo slankiklio valdiklio. Nustatykite jos Textypatybę "Loan Amount:".
- Įtraukite Label valdiklį į dešinę nuo jo slankiklio valdiklio. Nustatykite jos Text ypatybę pagal formulę AmountSlider/8 * 10000.
- Įtraukite kitą Slider valdiklį ir pavadinkite YearsSlider. Nustatykite jos Max ypatybę 40.
- Įtraukite Label valdiklį į kairę nuo jo slankiklio valdiklio. Nustatykite jos Textypatybę "Number of Years:".
- Įtraukite Label valdiklį į dešinę nuo jo slankiklio valdiklio. Nustatykite jos Text ypatybę pagal formulę YearsSlider.
- Įtraukite Label valdiklį ir nustatykite Text ypatybę pagal anksčiau pateiktą formulę:
- Įtraukite Label valdiklį į kairę nuo paskutinio žymos valdiklio. Nustatykite jo Textypatybę "Recurring Monthly Payment:".
Pirminis raktas, grąžintas iš Pataisos
With( Patch( Orders, Defaults( Orders ), { OrderStatus: "New" } ),
ForAll( NewOrderDetails,
Patch( OrderDetails, Defaults( OrderDetails ),
{ Order: OrderID, // from With's first argument, primary key of Patch result
Quantity: Quantity, // from ForAll's NewOrderDetails table
ProductID: ProductID } // from ForAll's NewOrderDetails table
)
)
)
Šis pavyzdys įtraukia įrašą į Order lentelę „SQL Server”. Tada naudojama užsakymui grąžinta pagrindinė rakto reikšmė, kurią Patch funkcija grąžino OrderID lauke, kad būtų sukurti susiję įrašai OrderDetails lentelėje.
Išskleistos vertės su įprasta išraiška
With(
Match( "PT2H1M39S", "PT(?:(?<hours>\d+)H)?(?:(?<minutes>\d+)M)?(?:(?<seconds>\d+)S)?" ),
Time( Value( hours ), Value( minutes ), Value( seconds ) )
)
// Result: 2:01 AM (as shown in a label control, use the Text function to see the seconds)
Šis pavyzdys išskleidžia valandas, minutes ir sekundes iš ISO 8601 trukmės vertės, tada naudoja šiuos papildomus atitikmenis, kad sukurtų datos/laiko vertę.
Atkreipkite dėmesį, kad nors antriniuose atitikmenyse yra skaičiai, jie taip pat dar yra teksto eilutėje. Naudokite Value funkciją, kad konvertuotumėte skaičių prieš atlikdami matematines operacijas.
Įrašo susiekite su komponentu
Žiūrėkite Susiejimo įrašą.