Piezīmes
Lai piekļūtu šai lapai, ir nepieciešama autorizācija. Varat mēģināt pierakstīties vai mainīt direktorijus.
Lai piekļūtu šai lapai, ir nepieciešama autorizācija. Varat mēģināt mainīt direktorijus.
Attiecas uz: Audekla programmas
Copilot Studio
Desktop plūsmas
Modeļa vadītas programmas
Power Platform CLI
Dataverse funkcijas
Power Pages
Ar – aprēķina vērtības un veic darbības vienam ierakstam, tostarp ar nosauktu vērtību iekļautajiem ierakstiem.
Apraksts
Funkcija With novērtē viena ieraksta formulu. Formula var aprēķināt vērtību un/vai veikt darbības, piemēram, pārveidot datus vai strādāt ar savienojumu. Izmantojiet ForAll funkciju, lai novērtētu formulu visiem ierakstiem ierakstu tabulā.
Formulā ir pieejami pašlaik apstrādātie ieraksta lauki. Izmantojiet operatoru ThisRecord vai vienkārši norādiet uz laukiem pēc nosaukuma, kā to darītu ar jebkuru citu vērtību. Operatoru As var izmantot arī, lai apstrādājamajam ierakstam piešķirtu nosaukumu, kas var palīdzēt padarīt formulu saprotamāku, bet ligzdotos ierakstus — pieejamus. Papildinformāciju skatiet tālāk sniegtajos piemēros un sadaļā Darbs ar ierakstu tvērumu.
Izmantojiet With , lai uzlabotu sarežģītu formulu lasāmību, sadalot tās mazākās nosauktās apakšformulās. Šīs nosauktās vērtības darbojas kā vienkārši lokālie mainīgie, Withkas aprobežojas ar . To pašu iekļauto ierakstu sintaksi, kas tiek izmantota ar funkciju UpdateContext, var izmantot ar With. Lietošana ir priekšroka konteksta vai globālo mainīgo lielumu izmantošanai With , jo tā ir autonoma, viegli saprotama un var tikt izmantota jebkurā deklaratīvās formulas kontekstā.
Izmantojiet With , lai piekļūtu ieraksta laukiem, kurus atgriež tādas funkcijas kā Patch vai Match. With Šo funkciju vērtība tiek saglabāta pietiekami ilgi, lai to varētu izmantot turpmākajos aprēķinos vai darbībās.
Ja arguments Ieraksts ir With kļūda, funkcija atgriezīs šo kļūdu, un formula netiks novērtēta.
Sintakse
With( Ieraksts, formula )
-
Ieraksts – Obligāts. Ieraksts, ar kuru jārīkojas. Nosaukumu vērtībām izmantojiet iekļauto sintaksi
{ name1: value1, name2: value2, ... } - Formula - Obligāts. Formulu kuru novērtēt Ierakstam. Formula var atsaukties uz jebkuru Ieraksta lauku tieši kā ieraksta tvērumu.
Piemēri
Vienkārši nosauktās vērtības
With( { radius: 10,
height: 15 },
Pi() * (radius*radius) * height
)
// Result: 4712.38898038 (as shown in a label control)
Šajā piemērā izmantots ieraksts nosauktajām vērtībām, lai aprēķinātu cilindra tilpumu. With tiek izmantots, lai uztvertu visas ievades vērtības kopā, atvieglojot to atdalīšanu no paša aprēķina.
Ligzdotas 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
)
)
Šajā piemērā ligzdo With funkcijas, lai izveidotu divu līmeņu ikmēneša hipotekāro maksājumu aprēķinu. Kamēr nav konflikta, visas ārējās With nosauktās vērtības ir pieejamas iekšējā With.
Tā kā slīdņu vadīklas var pavirzīt vienīgi pa 1 solim, slīdņi tiek dalīti vai reizināti, lai efektīvi izveidotu pielāgoto pieaugumu. Procentu likmes gadījumā RateSlider rekvizīts Max ir iestatīts uz 48, dalīts ar 8, lai iegūtu 1/8 procentpunkta pieaugumu, un dalīts ar 100, lai konvertētu no procentiem uz decimāldaļu, ietverot diapazonu no 0,125% līdz 6%. Aizdevuma summas gadījumā AmountSlider rekvizīts Max ir iestatīts uz 60 un reizināts ar 10 000, ietverot diapazonu no 10 000 līdz 600 000.
Tas With tiek automātiski pārrēķināts, kad slīdņi pārvietojas un tiek parādīts jaunais aizdevuma maksājums. Netiek izmantoti mainīgie, un nav vajadzības izmantot slīdņu vadīklu rekvizītu OnChange.
Tālāk sniegtas detalizētas norādes šīs programmas izveidei:
- Izveidojiet jaunu programmu.
- Pievienojiet Slīdņa vadīklu un nosauciet to par RateSlider. Iestatiet tās rekvizītu Max uz 48.
- Pievienojiet Etiķetes vadīklu slīdņa vadīklas kreisajai pusei. Iestatiet tās Teksta rekvizītu kā "Procentu likme:".
- Pievienojiet Etiķetes vadīklu slīdņa vadīklas labajai pusei. Iestatiet tā rekvizītu Teksts uz formulu RateSlider/8 &; " %".
- Pievienojiet citu Slīdņa vadīklu un nosauciet to par AmountSlider. Iestatiet tās rekvizītu Max uz 60.
- Pievienojiet Etiķetes vadīklu šīs slīdņa vadīklas kreisajai pusei. Iestatiet tās Teksta rekvizītu kā "Aizdevuma summa:".
- Pievienojiet Etiķetes vadīklu šīs slīdņa vadīklas labajai pusei. Iestatiet tās Teksta rekvizītu uz formulu AmountSlider/8 * 10000.
- Pievienojiet citu Slīdņa vadīklu un nosauciet to par YearsSlider. Iestatiet tās rekvizītu Max uz 40.
- Pievienojiet Etiķetes vadīklu šīs slīdņa vadīklas kreisajai pusei. Iestatiet Teksta rekvizītu "Gadu skaits:".
- Pievienojiet Etiķetes vadīklu šīs slīdņa vadīklas labajai pusei. Iestatiet tās rekvizītu Teksts uz formulu YearsSlider.
- Pievienojiet vadīklu Etiķete un iestatiet tās rekvizītu Teksts uz augstāk minēto formulu.
- Pievienojiet Etiķetes vadīklu pēdējās etiķetes vadīklas kreisajā pusē. Iestatiet tās Teksta rekvizītu uz "Periodisks ikmēneša maksājums:".
Primārā atslēga, kas atgriezta no Plākstera
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
)
)
)
Šajā piemērā tiek pievienots ieraksts SQL Server tabulai Secība. Tas pēc tam izmanto secības primāro atslēgu, ko atgriezusi Patch funkcija laukā OrderID , lai izveidotu saistītus ierakstus tabulā OrderDetails.
Izvilktās vērtības ar regulāru izteiksmi
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)
Šajā piemērā izvilktas stundas, minūtes un sekundes no ISO 8601 ilguma vērtības un pēc tam šīs apakšatbilstības izmantotas, lai izveidotu datuma/laika vērtību.
Ņemiet vērā, ka, lai arī apakšatbilstības ietver skaitļus, tās joprojām atrodas teksta virknē. Izmantojiet funkciju Value, lai konvertētu uz skaitli, pirms veicat matemātiskas darbības.
Kartēt komponentē ierakstu
Skatīt sadaļu Ieraksta kartēšana.