Çdo variabl në SPS merr automatikisht llojin e duhur të të dhënave. Konvertimi duhet të caktohet vetëm në ndërfaqe. Në këtë kapitul janë shpjeguar llojet individuale nga Antcas Control.
Ky lloj mund të ketë vetëm dy gjendje. Vërtet ose gabim. Në aplikacion, në vend të një variabli, vlera mund të caktohet me TRUE (vërtet) ose FALSE (gabim).
Për më tepër, përdoret lloji special NULL. Ky gjendje vendoset gjatë inicializimit të një variabli, pra një variabl pa shkruar. Për më tepër, me NULL janë të mundura funksione speciale. P.sh., kur asnjë vlerë nuk duhet të komunikojë në ndërfaqe.
Një integer është një numër i plotë, si p.sh. 0 ose 26. Për më tepër, vlera mund të jetë edhe negative. Antcas Control punon me një SPS 64-bit, e cila lejon llogaritjen e numrave shumë të mëdhenj. Numri më i madh është i caktuar me konstantën INT_MAX (9223372036854775807). Numri më i vogël është në INT_MIN ose INT_MAX+1, pasi që shenja përdor një bit. Të gjitha numrat jashtë kësaj rreze do të aplikohet në një float me një eksponent. Llogaritja atëherë është e paprecizuar.
Një integer mund të marrë vlerën -0, i cili nuk është i barabartë me FALSE. Megjithatë, kontrolli me funksionin EQ(-0,0) prodhon TRUE. -0 mund të caktohet vetëm si një varg karakteresh '-0'.
Mund të caktohet edhe një vlerë hex direkt. Ky fillon me 0x ose 0X. Kështu, nga 0xFF bëhet atëherë 255.
Një float ose edhe vlerë reale është një numër me pikë lëvizëse, si p.sh. 0.1 ose 22.005 (me pikë). Për më tepër, eksponentet janë të mbështetur. Si p.sh. 10E2 për 1'000 ose 10e-2 për 0.1. Shkronjat e mëdha dhe të vogla janë të papërfillshme. Ato provohen të konvertohen në një integer, pasi që llogaritja është më e thjeshtë për SPS-në. Mund të ndodhë që llogaritjet me numra të mëdhenj të bëhen të paprecizuara. Numri maksimal i numrave dekadike është i kufizuar në 14, për të rritur performancën e SPS-së.
Numrat me pikë lëvizëse kanë një saktësi të kufizuar. Pavarësisht se kjo varet nga sistemi, Antcas Control përdor zakonisht Formatin IEEE 754 Double Precision, i cili prodhon një gabim relativ maksimal të rrotullimit në një rend të madhsi 1.11e-16. Operacionet aritmetike jo elementare mund ta shkaktojnë gabime më të mëdha dhe natyrshëm duhet të konsiderohet propagimi i gabimit, kur shumë operacione kombinohen.
Për më tepër, ka numra racionale që mund të përfaqësohen si numra me pikë lëvizëse në bazën 10 me saktësi, p.sh. 0.1 ose 0.7, por nuk ka përfaqësim të saktë si numra me pikë lëvizëse në bazën 2, e cila përdoret brenda pavarësisht nga madhësia e mantisë. Kështu, ata nuk mund të konvertohen në përfaqësimin e tyre binar të brendshëm pa humbje të saktësisë. Kjo mund të sjellë rezultate të ngatërrueshme: FLOOR((0.1+0.7)*10) do të prodhojë zakonisht 7 në vend të rezultatit të prituar 8, pasi që përfaqësimi i brendshëm është diçka si 7.9999999999999991118.
Prandaj, duhet të mos mbështetet kurrë në numrat me pikë lëvizëse deri te numri i fundit i numrave dekadike dhe kurrë të kontrolloni direkt për barabartësi e tyre.
Një varg karakteresh ose quhet edhe string, caktohet me një thonj në lart ' ' ose dy thonj në lart " ". Si p.sh. 'Teksti 1' ose . Me bllokun e funksionit CONCAT mund të bashkohen disa vargje karakteresh.
Një Line Feed ose rresht i ri mund të krijohet me CTRL+Enter. Kjo atëherë përfaqësohet nga një shigjetë ↵.
Nuk është e nevojshme një karakter ikje për të caktuar një ' ose " brenda vargut karakteresh vetë. Vargu karakteresh mund të caktohet direkt me "Ka një shenjë \" karakter".
Është e mundur të deklarohen karaktere speciale direkt. Kjo bëhet duke specifikuar vargun e mëposhtëm brenda vargut karakteresh me dy thonj në lart:
| Sequenca Escape | Shkurtesa ASCII |
|---|---|
| \\ | Escaped \ |
| \n | LF |
| \r | CR |
| \r\n | CRLF |
| \0 | NUL |
| \t | TAB |
| \e | ESC |
| \f | FORMFEED |
| \x## | Byte i cili mund të zgjedhet |
Për shembull, për të deklaruar një byte të cilin mund të zgjedhet 126 ose 7E si numër hex, përdoret shprehja e mëposhtme: "\x7E". Kjo varg karakteresh atëherë përfaqëson "~".
Këtë, 7E shërben si një vlerë e zëvendësueshme. Të gjitha vlerat brenda numrave hex 00 deri FF mund të specifikohen. Kujdesoni se UTF-8 BOM "\xEF\xBB\xBF" shfaqet në mënyrë automatike nga shumica e browserëve. Është e mundur të maskoni vargun karakteresh. Kjo bëhet duke përdorur një backslash që ndjek: "\\x7E" kjo atëherë përfaqëson '\x7E'.
Kujdes: Të gjitha vargjet karakteresh jashtë rrezeve UTF-8 nuk mund të ruhen në mënyrë remanente. Në pamjen live këto shfaqen në ngjyrë violete e errët.
Shikoni edhe artikullin Konvertimi i Vargjeve Karakteresh në Numra.
Cakton një datë dhe kohë me DT# p.sh. DT#2016-03-25-22:12:00. Kohët konvertohen në një integer në ms nga data 01.01.1970 (kjo vlerë është në zonën e kohës UTC/GMT).
Cakton një datë nga mesnata me D# p.sh. D#2016-03-25. Kohët konvertohen në një integer në ms nga data 01.01.1970 (kjo vlerë është në zonën e kohës UTC/GMT).
Cakton një kohë në milisekonda me T# p.sh. T#5d3h5m11s500ms. Kohët konvertohen në një integer në ms.
Një array nuk mund të caktohet direkt. Megjithatë, mund të bëhen asocime të një variabli me një pikë. Shih Variablat.
SHUMË E Rëndësishme: Caktoni kurrë një vlerë poshtë në një array. P.sh. set dhe set.p - SPS do të dështojë këtu. Dhe prandaj nuk do të punojë. Për më tepër, kjo mund të sjellë gabime të papritura.