IBM FileNet P8, Version 5.2.1            

Funkcije za delo s števili

Ta razdelek vsebuje krajše opise funkcij, ki se nanašajo na vrednosti celih in realnih števil s plavajočo vejico.

Tabela 1. Tabela funkcij, ki veljajo za realna števila s plavajočo vejico in cela števila
Funkcija Kaj naredi
abs Vrne absolutno vrednost številske funkcije.
bitor, bitand, bitnot Omogočajo delo z logičnimi vrednostmi bitov.
convert Število pretvori v drug podatkovni tip ali drug podatkovni tip pretvori v število.
err_encode Tridelni zapis napake FileNet P8 pretvori v enodelno celo število.
int Obreže vse za decimalno vejico in vrne celoštevilčno vrednost izraza.
max Vrne največjo vrednost iz seznama izrazov kateregakoli od podprtih podatkovnih tipov.
min Vrne najmanjšo vrednost iz seznama izrazov kateregakoli od podprtih podatkovnih tipov.
mod Vrne ostanek po deljenju (modul).
numbertostring S pomočjo podane maske številski izraz pretvori v nizovni izraz.
random Vrne naključno celo število znotraj podanega obsega.
sizeof Vrne velikost indeksiranega polja.

abs

Funkcija vrne absolutno vrednost izraza s celim številom ali realnim številom s plavajočo vejico. Uporabite naslednjo skladnjo:
abs (num_expr)
kjer je num_exp izraz, katerega rezultat je tipa celo ali realno število s plavajočo vejico. Na primer:
abs (ProdajnaCena - NabavnaCena)

bitand, bitor in bitnot

Te funkcije omogočajo delo z logičnimi vrednostmi bitov. Uporabljate jih lahko za veliko nalog, kot sta nastavitev mask in ekstrahiranje bitov. Vsaka od teh funkcij lahko logične operacije izvaja na do 32 postavkah naenkrat.

Če ste seznanjeni s programskim jezikom 'C', potem so bitand, bitor in bitnot enaki logičnemu in (&), logičnemu ali (|) in logičnemu ne (~). Če s 'C'-jem niste seznanjeni, si številke predstavljajte kot binarne vrednosti (število 123 bi na primer bilo 1111011).

Vhodni podatki teh funkcij so cela števila s 32 biti (tj. od 0 do 42946967295) in kot izhodne podatke vrnejo cela števila v istem obsegu. Uporabite naslednjo skladnjo:
bitand (expr1, expr2)

bitor (expr1, expr2)

bitnot (expr)
kjer sta expr1 in expr2 celi števili z 32 biti.
Za specifične informacije o in primere za vsako od funkcij izberite temo s spodnjega seznama.

bitand

Funkcija bitand "primerja" ustrezne bite v dveh celih številih. To je primerjava za vsak par bitov posebej, rezultat pa je novo celo število. Primerjava sledi naslednjim pravilom:
  • Če obe celi števili na enakem položaju vsebujeta 1, tudi novo celo število na tem položaju vsebuje 1.
  • Če obe celi števili na enakem položaju vsebujeta 0, tudi novo celo število na tem položaju vsebuje 0.
  • Če eno celo število na enakem položaju vsebuje 1, drugo pa 0, novo celo število na tem položaju vsebuje 0.
bitand (123, 240) je na primer mogoče ponazoriti na naslednji način.
bitand

     (00000000000000000000000001111011,
         

      00000000000000000000000011110000)
          

  rezultat: 
      00000000000000000000000001110000

bitor

Funkcija bitor "primerja" ustrezne bite v dveh celih številih. To je primerjava za vsak par bitov posebej, rezultat pa je novo celo število. Primerjava sledi naslednjim pravilom:
  • Če katerokoli celo število na enakem položaju vsebuje 1, tudi novo celo število na tem položaju vsebuje 1.
  • Če obe celi števili na enakem položaju vsebujeta 0, tudi novo celo število na tem položaju vsebuje 0.
bitor (123, 240) je na primer mogoče ponazoriti na naslednji način.
bitor
     (00000000000000000000000001111011,
         
      00000000000000000000000011110000)
          
  rezultat:

      00000000000000000000000011111011

bitnot

Funkcija bitnot "negira" celi število. To je primerjava za vsak par bitov posebej, rezultat pa je novo celo število. Za vsak položaj novo celo število vsebuje nasprotno bitno vrednost – tj. če vhodno celo število na primer na danem položaju vsebuje 1, novo celo število na enakem položaju vsebuje 0.

bitnot (123) je na primer mogoče ponazoriti na naslednji način.
bitnot
              (00000000000000000000000001111011
  rezultat:
               11111111111111111111111110000100

int

Funkcija izračuna celoštevilčno vrednost realno številske predstavitve s plavajočo vejico tako, da obreže vse za decimalno vejico. Vrednosti realnega števila s plavajočo vejico 6,2 in 6,8 sta pretvorjeni v celoštevilčno vrednost 6. Predznak števila se ne spremeni.

Uporabite naslednjo skladnjo:
int (num_expr)
kjer je num_expr izraz, katerega rezultat je vrste realnega števila s plavajočo vejico. Na primer:
int (365 / 7)

mod

Funkcija vrne ostanek po deljenju (modul). Vedite, da pri deljenju vrednosti z ničlo pride do napake.

Uporabite naslednjo skladnjo:
mod (num1, num2)
kjer sta num1 in num2 spremenljivki vrste realnega števila s plavajočo vejico ali celega števila in vsebujeta negativni vrednosti.
V naslednjem primeru funkcija vrne ostanek deljenja spremenljivke NumberofDays 7.
mod (NumberOfDays, 7)
Pomnite, da predznak parametra num2 določa predznak izhodnih podatkov funkcije mod (če izhodni podatki niso enaki 0):
Če je num2 > 0,

		0 <= mod (num1, num2) < num2

Če je num2 < 0,

		num2 < mod (num1, num2) <= 0

random

Nekatere aplikacije potrebujejo nek način za generiranje naključnih števil, morda za izvajanje naključnega vzorčenja. Funkcija vrne naključno celo število znotraj podanega obsega. Kot parameter za določanje obsega zahteva celo število.

Uporabite naslednjo skladnjo:
random (num)
kjer je num celo število od 2 so 32768 (vključujoč obe meji). Obseg je med 0 in num - 1. Če bi v zgornjem primeru num bil 23, bi naključno celo število bilo nekje med 0 in 22.

err_encode

Ta funkcije tridelni zapis napake FileNet P8 pretvori v celoštevilsko vrednost, ki jo lahko primerjate s kodo rezultata, ki jo vrne klic na vstopno točko WAL (WorkFlo Application Libraries). WAL vrne kode rezultata, ko pri običajni obdelavi pride do izjemnih stanj (kot je konec datoteke v preprosti obdelavi podatkov) ali do napak.

Err_encode primarno uporabljamo za osnovo nadaljnje obdelave delovnih postavk na rezultatih, ki jih vrne operacija, ki kliče WAL. Običajno taki operaciji sledi sistemsko navodilo razvejitve. Ko se izvaja razvejitev, delovna postavka sledi poti obdelave, ki jo določa koda rezultata, ki jo je vrnila prejšnja operacija. S funkcijo err_code lahko v definiciji razvejitve nakažemo, da v primeru, ko je <povratna koda> = err_encode (80, 0, 2), delovna postavka sledi eni obdelovalnih poti, medtem ko sledi drugi obdelovalni poti, če je <povratna koda> = err_encode (80, 0, 5).

Uporabite naslednjo skladnjo:
err_encode (mod_num, func_num, err_num)
kjer je:
Tabela 2. Parametri in opis za funkcijo err_encode
Parameter Opis
mod_num Prvi del kode rezultata. Je celoštevilski izraz (od 0 do 255), ki nakazuje, katera storitev, knjižnica ali aplikacija je vir napake.
func_num Drugi del kode rezultata. Je celoštevilski izraz (od 0 do 255), ki nakazuje, iz katere funkcije ali modula prihaja napaka ali kategorijo, kateri pripada napaka.
err_num Tretji del kode rezultata. Je celoštevilski izraz (od 0–65535), ki nakazuje številko napake.


Last updated: October 2015
bpfe010.htm

© Copyright IBM Corp. 2015.