Zbrajanje, oduzimanje, množenje i dijeljenje vrijednosti u kontroli

Primjenjuje se na
InfoPath 2010 InfoPath 2013

Korisnicima možete olakšati ispunjavanje obrazaca na temelju predloška obrasca pomoću formula za izračun vrijednosti kontrole na temelju podataka koje korisnik unosi u druge kontrole. Izračuni mogu obuhvaćati zbrajanje, oduzimanje, množenje i dijeljenje vrijednosti. Ako, primjerice, dizajnirate predložak obrasca koji će električni izvođači koristiti za prijavu za dozvole, možete dodati formulu kontroli koja automatski izračunava ukupnu cijenu koju izvođač mora platiti za aplikaciju množenjem broja dozvola u aplikaciji s cijenom svake dozvole.

Sadržaj članka

Što je formula?

Formula je XPath izraz koji se sastoji od vrijednosti, polja ili grupa, funkcija i operatora koji se koriste za izračun i prikaz drugih vrijednosti. Formule se mogu koristiti za sljedeće zadatke:

  • Izračunavanje matematičkih vrijednosti iz vrijednosti koje navedete prilikom dizajniranja predloška obrasca ili vrijednosti koje korisnici unose u kontrole prilikom ispunjavanja obrazaca na temelju predloška obrasca.
  • Prikaz određenih datuma i vremena.
  • Prikaz vrijednosti koje korisnici unose u jednu kontrolu u drugoj kontroli.
  • Postavite zadanu vrijednost polja ili kontrole.
  • Pokrenite pravilo na temelju vrijednosti izračunate pomoću formule.

Svaki XPath izraz koji se koristi u formuli kombinacija je vrijednosti, funkcija i operatora koji se vrednuju kao jedna vrijednost. Formula može sadržavati nekoliko izraza. Formulu možete smatrati rečenicom koja se sastoji od jednog ili više izraza, a svaki izraz predstavlja jedan izraz u formuli.

Na sljedećoj je slici prikazan odnos između formule i izraza.

046c2cb3-2a43-40c6-af65-5f7ee9c0e1a4

Funkcija je izraz koji vraća vrijednost na temelju rezultata izračuna. Vrijednosti korištene u funkcijama nazivaju se argumentima. Možete koristiti standardne funkcije XPath 1.0 koje su obuhvaćene programom InfoPath, kao i neke funkcije specifične za InfoPath. Veze na dodatne informacije o funkcijama programa InfoPath potražite u odjeljku Vidi također.

Vrh stranice

Korištenje dva ili više operatora u formuli

Kada formula sadrži dva ili više matematičkih operatora, InfoPath izračunava prema prioritetu operatora. Na sljedećem je popisu prikazan redoslijed kojim se izvode operacije:

  1. Izračuni u zagradama
  2. Izračuni množenja i dijeljenja
  3. Zbrajati i oduzimati izračune

Ako formula sadrži dva operatora koji imaju isti prioritet, izračuni se izvode slijeva nadesno.

Zamislite, primjerice, da stvarate predložak obrasca za prijavu dozvole koji sadrži tekstni okvir u kojem se prikazuju ukupni troškovi svih dozvola poslanih u aplikaciji. Vrijednosti koje zahtijeva ova formula dolaze iz drugih tekstnih okvira u obrascu. Tekstni okvir koji prikazuje ukupni trošak sadrži sljedeću formulu:

txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2 /txtNumberOfPermits

Ova formula sadrži operatore zbrajanja (+), množenja (*)i dijeljenja (/). U skladu s prioritetom operatora, množenje i izračuni dijeljenja izvode se prije izračuna zbrajanja. Budući da operatori množenja i dijeljenja imaju isti prioritet, izračun množenja obavlja se prije operatora dijeljenja jer se operator množenja nalazi lijevo od operatora dijeljenja. Formula se izračunava na ovaj način:

  1. Vrijednost u txtPermit1Qty množi se s vrijednošću u txtPermitCost1.
  2. Vrijednost u txtPermit2Qty množi se s vrijednošću u txtPermitCost2, a taj se rezultat zatim dijeli vrijednošću u txtNumberOfPermits.
  3. Rezultat izračuna u prvom koraku dodaje se rezultatima izračuna u 2. koraku.

Da biste upravljali redoslijedom izračuna, izračun koji želite najprije obuhvatite zagradama. Izračuni u zagradama izvode se prije izračuna izvan zagrada. Izračune sa zagradama smjestite lijevo od izračuna bez zagrada. Izračuni u ugniježđenim zagradama izvode se rade od unutrašnje do vanjske zagrade.

Razmislite, primjerice, o sljedećoj formuli:

((txtPermit1Qty * txtPermitCost1) + (txtPermit2Qty * txtPermitCost2))/txtNumberOfPermits

U ovom izračunu vrijednost koja rezultira množenjem vrijednosti u txtPermit1Qty i txtPermitCost1 dodaje se vrijednosti koje rezultira množenjem vrijednosti u txtPermit2Qty i txtPermitCost2. Zbroj tog izračuna zatim se dijeli s vrijednošću u txtNumberOfPermits.

Vrh stranice

Umetanje matematičke formule u kontrolu

  1. Dvokliknite kontrolu ili polje za koje želite stvoriti formulu.

  2. Kliknite karticu Podaci.

  3. Kliknite Umetni formulu6aee2be-ff9c-4a64-a987-2db942c81046 .

  4. Da biste u formulu umetnuli vrijednost ili matematički operator, upišite vrijednost ili simbol matematičke operacije u okvir Formula .
    Popis matematičkih operacija

    Operacija Simbol
    Dodaj +
    Oduzmi -
    Pomnoži *
    Podijeli /

    Napomena

    Ako formula koristi operator dijeljenja (/), provjerite postoji li razmak ispred i iza operatora dijeljenja. Ako operator dijeljenja nema razmak ispred i iza njega, InfoPath može protumačiti '/' kao razdjelnik za korake mjesta XPath, a ne kao operator dijeljenja.

    Savjet

    Matematičke formule obično ovise o cijelim brojevima ili decimalnim vrijednostima kao argumentima. Da biste izbjegli prazne vrijednosti u formuli, potvrdite okvir Tretiraj prazne vrijednosti kao nulu u kategoriji Dodatno u dijaloškom okviru Mogućnosti obrasca.

  5. Da biste provjerili sadrži li formula ispravnu sintaksu, u dijaloškom okviru Umetanje formule kliknite Potvrdi formulu.
    Moja formula sadrži pogreške
    Kliknite Prikaži pojedinosti u dijaloškom okviru Microsoft Office InfoPath da biste vidjeli pogreške u formuli. Slijedi nekoliko prijedloga za rješavanje sljedećih pogrešaka:

    • Ako koristite funkciju u formuli, provjerite koristite li odgovarajuće argumente za funkciju. Neke funkcije zahtijevaju polja ili grupe, dok su za druge funkcije potrebne određene vrijednosti kao argumenti. Veze na dodatne informacije o funkcijama potražite u odjeljku Vidi također.
    • Izbrišite i ponovno upišite formulu da biste bili sigurni da je ispravno napisana.
  6. Da biste testirali promjene, kliknite Pretpregled na alatnoj traci Standardno ili pritisnite CTRL + SHIFT + B.

Vrh stranice