ఫంక్షన్లు
String ఫంక్షన్లు
వ్యక్తీకరణలలో strings తో పని చేసేటప్పుడు, literal strings చుట్టడానికి సింగిల్ quotes (’’) ఉపయోగించడం ముఖ్యం. అయితే, literal string లో సింగిల్ quotes చేర్చాలనుకున్నప్పుడు మినహాయింపు వస్తుంది. అలాంటి సందర్భాలలో, మొత్తం string చుట్టడానికి double quotes ("") ఉపయోగించవచ్చు.
ఉదాహరణకు:
- సరైనది: if(${yesno} = 1, “a string with ‘single quotes’ in it”, “no single quotes here”)
- తప్పు: if(${yesno} = 1, ‘a string with ‘single quotes’ in it’, ’no single quotes here’)
Smart quotes విషయంలో, వాటి ఉనికి గురించి అవగాహన కలిగి ఉండటం కీలకం, ఎందుకంటే అవి వ్యక్తీకరణలలో సమస్యలు కలిగించవచ్చు. చాలా rich text editors స్వయంచాలకంగా straight quotes ("" లేదా ‘’) ని smart quotes లేదా curly quotes ("" లేదా ‘’) గా మారుస్తాయి, ఇవి syntax లోపాలు లేదా అనపేక్షిత ప్రవర్తనకు కారణమవుతాయి. దీన్ని నివారించడానికి, మీ వ్యక్తీకరణలలో ఎల్లప్పుడూ straight quotes (’’) స్థిరంగా ఉపయోగిస్తున్నారని నిర్ధారించుకోండి.
rtSurvey వివిధ ఫంక్షన్లకు మద్దతు ఇస్తుంది, వాటిలో:
string(field): ఫీల్డ్ను string కి మారుస్తుంది.- ఉదాహరణ:
string(34.8)'34.8'కి మార్చబడుతుంది.
- ఉదాహరణ:
string-length(field): string ఫీల్డ్ పొడవు తిరిగి ఇస్తుంది.- ఉదాహరణ:
string-length(.) > 3 and string-length(.) < 10ప్రస్తుత ఫీల్డ్ 3 మరియు 10 అక్షరాల మధ్య ఉందని నిర్ధారించడానికి ఉపయోగించవచ్చు.
- ఉదాహరణ:
substr(fieldorstring, startindex, endindex):startindexవద్ద ప్రారంభమయ్యే మరియుendindexకు ముందే ముగిసే substring తిరిగి ఇస్తుంది. Indexes string లో మొదటి అక్షరానికి 0 వద్ద ప్రారంభమవుతాయి.- ఉదాహరణ:
substr(${phone}, 0, 3)ఫోన్ నంబర్ మొదటి మూడు అంకెలు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
concat(a, b, c, ...): ఫీల్డ్లు (మరియు/లేదా strings) కలుపుతుంది.- ఉదాహరణ:
concat(${firstname}, ' ', ${lastname})firstnameమరియుlastnameఫీల్డ్లలోని విలువలు కలిపి పూర్తి పేరు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
linebreak(): లైన్బ్రేక్ అక్షరం తిరిగి ఇస్తుంది.- ఉదాహరణ:
concat(${field1}, linebreak(), ${field2}, linebreak(), ${field3})మూడు ఫీల్డ్ విలువల జాబితాను వాటి మధ్య లైన్బ్రేక్లతో తిరిగి ఇస్తుంది.
- ఉదాహరణ:
lower(): string ను అన్ని lowercase అక్షరాలకు మారుస్తుంది.- ఉదాహరణ:
lower('Street Name')“street name” తిరిగి ఇస్తుంది.
- ఉదాహరణ:
upper(): string ను అన్ని uppercase అక్షరాలకు మారుస్తుంది.- ఉదాహరణ:
upper('Street Name')“STREET NAME” తిరిగి ఇస్తుంది.
- ఉదాహరణ:
select_one మరియు select_multiple ఫంక్షన్లు
count-selected(field): select_multiple ఫీల్డ్లో ఎంచుకున్న అంశాల సంఖ్య తిరిగి ఇస్తుంది.- ఉదాహరణ:
count-selected(.) = 3ఖచ్చితంగా మూడు ఎంపికలు ఎంచుకోబడ్డాయని నిర్ధారించడానికి constraint వ్యక్తీకరణగా ఉపయోగించవచ్చు.
- ఉదాహరణ:
selected(field, value): నిర్దేశించిన విలువ select_one లేదా select_multiple ఫీల్డ్లో ఎంచుకోబడిందా అనేదాన్ని బట్టి నిజం లేదా తప్పు తిరిగి ఇస్తుంది.- ఉదాహరణ:
selected(${color}, 'Blue')ప్రతిస్పందించే వ్యక్తి తమ ఇష్టమైన రంగుగా “Blue” ఎంచుకుంటే మాత్రమే సమూహం లేదా ఫీల్డ్ చూపించడానికి relevance వ్యక్తీకరణగా ఉపయోగించవచ్చు. - గమనిక: రెండవ parameter ఎల్లప్పుడూ choice label కాదు, choice value నిర్దేశించాలి. ఫారం నిర్వచనం choices worksheet లోని value కాలమ్ నుండి విలువ ఉపయోగించండి.
- ఉదాహరణ:
selected-at(field, number): select_multiple ఫీల్డ్లో నిర్దేశించిన స్థానంలో ఎంచుకున్న అంశం తిరిగి ఇస్తుంది. పాస్ చేయబడిన సంఖ్య 0 అయినప్పుడు, మొదటి ఎంచుకున్న అంశం తిరిగి ఇస్తుంది; సంఖ్య 1 అయినప్పుడు, రెండవ ఎంచుకున్న అంశం తిరిగి ఇస్తుంది, మొదలైనవి.- ఉదాహరణ:
selected-at(${fruits}, 0) = 'Apple'మొదటి ఎంచుకున్న ఎంపిక “Apple” అయితే మాత్రమే సమూహం లేదా ఫీల్డ్ చూపించడానికి relevance వ్యక్తీకరణగా ఉపయోగించవచ్చు. - గమనిక: తిరిగి ఇచ్చిన విలువ choice label కాదు, choice value అవుతుంది. ఫారం నిర్వచనం choices worksheet లోని value కాలమ్ నుండి విలువ ఉపయోగించండి.
- ఉదాహరణ:
choice-label(field, value): ఫారం నిర్వచనం choices worksheet లో నిర్వచించినట్లుగా select_one లేదా select_multiple ఫీల్డ్ ఎంపికకు label తిరిగి ఇస్తుంది.- ఉదాహరణ 1:
choice-label(${country}, ${country})countryఅనే ఫీల్డ్లో ప్రస్తుతం ఎంచుకున్న ఎంపికకు choice label తిరిగి ఇస్తుంది. - ఉదాహరణ 2:
choice-label(${languages}, selected-at(${languages}, 0))languagesఅనే ఫీల్డ్లో మొదటి ఎంచుకున్న ఎంపికకు label తిరిగి ఇస్తుంది. - గమనిక: ఈ ఫంక్షన్ విలువ కాదు, choice label పొందుతుంది. ఫారం నిర్వచనం choices worksheet నుండి label కాలమ్ ఉపయోగిస్తుంది.
- ఉదాహరణ 1:
పునరావృత ఫీల్డ్ ఫంక్షన్లు
rtSurvey లో, మీరు అదే ప్రశ్న(లు) అనేకసార్లు అడగాలనుకుంటే, మీరు రిపీట్ సమూహంలో ఫీల్డ్ ఉంచవచ్చు. ఇది అదే ఫీల్డ్ యొక్క బహుళ instances కు కారణమవుతుంది. కింది ఫంక్షన్లు ఈ పునరావృత ఫీల్డ్లు మరియు అవి ఉత్పత్తి చేసే పునరావృత డేటాతో వ్యవహరించడంలో సహాయపడతాయి.
join(string, repeatedfield): రిపీట్ సమూహంలో ఫీల్డ్ కోసం, విలువల string-separated జాబితా రూపొందిస్తుంది. మొదటి parameter విలువలు వేరు చేయడానికి ఉపయోగించే delimiter నిర్దేశిస్తుంది.- ఉదాహరణ:
join(', ', ${member_name})నమోదు చేయబడిన అన్ని పేర్ల నుండి ఒకే comma-separated జాబితా రూపొందిస్తుంది.
- ఉదాహరణ:
join-if(string, repeatedfield, expression):join()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి రిపీట్ సమూహంలో ప్రతి instance తనిఖీ చేస్తుంది. వ్యక్తీకరణ తప్పుగా అంచనా వేయబడినప్పుడు, అంశం output నుండి వదిలివేయబడుతుంది.- ఉదాహరణ:
join-if(', ', ${member_name}, ${age} >= 18)వయసు 18 మరియు అంతకంటే ఎక్కువ సభ్యులైన వయోజన సభ్యుల పేర్ల comma-separated జాబితా మాత్రమే రూపొందిస్తుంది.
- ఉదాహరణ:
count(repeatgroup): రిపీట్ సమూహం ఎన్నిసార్లు పునరావృతమైందో ప్రస్తుత సంఖ్య తిరిగి ఇస్తుంది.- ఉదాహరణ:
count(${groupname})సమూహం యొక్క instances సంఖ్య తిరిగి ఇస్తుంది.
- ఉదాహరణ:
count-if(repeatgroup, expression):count()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి రిపీట్ సమూహంలో ప్రతి instance తనిఖీ చేస్తుంది. వ్యక్తీకరణ తప్పుగా అంచనా వేయబడినప్పుడు, అంశం output నుండి వదిలివేయబడుతుంది.- ఉదాహరణ:
count-if(${members}, ${age} >= 18)“members” రిపీట్ సమూహంలో age ఫీల్డ్ ఆధారంగా వయోజన సభ్యుల గణన తిరిగి ఇస్తుంది.
- ఉదాహరణ:
sum(repeatedfield): రిపీట్ సమూహంలో ఫీల్డ్ కోసం, అన్ని విలువల మొత్తం లెక్కిస్తుంది.- ఉదాహరణ:
sum(${loan_amount})అన్ని రుణాల మొత్తం విలువ తిరిగి ఇస్తుంది.
- ఉదాహరణ:
sum-if(repeatedfield, expression):sum()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి రిపీట్ సమూహంలో ప్రతి instance తనిఖీ చేస్తుంది. వ్యక్తీకరణ తప్పుగా అంచనా వేయబడినప్పుడు, అంశం output నుండి వదిలివేయబడుతుంది.- ఉదాహరణ:
sum-if(${loan_amount}, ${loan_amount} > 500)500 కంటే ఎక్కువ అన్ని రుణాల మొత్తం విలువ తిరిగి ఇస్తుంది.
- ఉదాహరణ:
min(repeatedfield): రిపీట్ సమూహంలో ఫీల్డ్ కోసం, అన్ని విలువలలో కనిష్టాన్ని లెక్కిస్తుంది.- ఉదాహరణ:
min(${member_age})సమూహంలో అత్యల్ప వయస్కుడి వయసు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
min-if(repeatedfield, expression):min()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి ప్రతి instance తనిఖీ చేస్తుంది.- ఉదాహరణ:
min-if(${member_age}, ${member_age} >= 18)సమూహంలో అత్యల్ప వయస్కుడైన వయోజనుడి వయసు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
max(repeatedfield): రిపీట్ సమూహంలో ఫీల్డ్ కోసం, అన్ని విలువలలో గరిష్టాన్ని లెక్కిస్తుంది.- ఉదాహరణ:
max(${member_age})సమూహంలో పెద్దవారి వయసు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
max-if(repeatedfield, expression):max()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి ప్రతి instance తనిఖీ చేస్తుంది.- ఉదాహరణ:
max-if(${member_age}, ${member_age} >= 18)సమూహంలో పెద్దవారైన వయోజనుడి వయసు తిరిగి ఇస్తుంది.
- ఉదాహరణ:
index(): రిపీట్ సమూహంలో పిలవబడినప్పుడు, ప్రస్తుత సమూహం లేదా instance కోసం index సంఖ్య తిరిగి ఇస్తుంది.- ఉదాహరణ: రిపీట్ సమూహంలో ఉపయోగించినప్పుడు
index()మొదటి instance కు 1, రెండవ దానికి 2, మొదలైనవి తిరిగి ఇస్తుంది.
- ఉదాహరణ: రిపీట్ సమూహంలో ఉపయోగించినప్పుడు
indexed-repeat(repeatedfield, repeatgroup, index): రిపీట్ సమూహం వెలుపల నుండి రిపీట్ సమూహంలో ఉన్న ఫీల్డ్ లేదా సమూహాన్ని సూచిస్తుంది. మొదటి parameter ఆసక్తికరమైన పునరావృత ఫీల్డ్ లేదా సమూహాన్ని నిర్దేశిస్తుంది, రెండవది ఫీల్డ్ లేదా సమూహం ఉన్న రిపీట్ సమూహాన్ని నిర్దేశిస్తుంది, మూడవది రిపీట్ సమూహంలో ఉపయోగించేందుకు instance సంఖ్యను నిర్దేశిస్తుంది.- ఉదాహరణ 1:
indexed-repeat(${name}, ${names}, 1)name ఫీల్డ్ “names” అనే మునుపటి రిపీట్ సమూహంలో ఉన్నప్పుడు మొదటి పేరు తిరిగి ఇస్తుంది. - ఉదాహరణ 2:
indexed-repeat(${name}, ${names}, index())ప్రస్తుత రిపీట్ సమూహం యొక్క instance సంఖ్యకు సంబంధించిన పేరు తీసుకుంటుంది.
- ఉదాహరణ 1:
rank-index(index, repeatedfield): ఈ ఫంక్షన్ రిపీట్ సమూహం వెలుపల ఉపయోగించడానికి పునరావృత ఫీల్డ్ యొక్క నిర్దేశించిన instance యొక్క ordinal rank లెక్కిస్తుంది. 1 rank అత్యధిక విలువతో instance కు కేటాయించబడుతుంది, 2 rank తదుపరి అత్యధిక విలువకు, మొదలైనవి.- ఉదాహరణ:
rank-index(1, ${random_draw})ఇతర instances విలువలతో పోల్చి మొదటి instance యొక్కrandom_drawఫీల్డ్ ఆధారంగా మొదటి instance rank లెక్కిస్తుంది.
- ఉదాహరణ:
rank-index-if(index, repeatedfield, expression): ఈ ఫంక్షన్rank-index()వలె పని చేస్తుంది, కానీ అందించిన వ్యక్తీకరణ ఉపయోగించి పునరావృత ఫీల్డ్ రిపీట్ సమూహంలో ప్రతి instance తనిఖీ చేస్తుంది.- ఉదాహరణ:
rank-index-if(1, ${age}, ${age} >= 18)వయోజనుల సమితిలో వయసు rank లెక్కిస్తుంది.
- ఉదాహరణ:
సంఖ్య ఫంక్షన్లు
| Operator | Operation | Example | Example answer |
|---|---|---|---|
+ | Addition | 1 + 1 | 2 |
- | Subtraction | 3 - 2 | 1 |
* | Multiplication | 3 * 2 | 6 |
div | Division | 10 div 2 | 5 |
mod | Modulus | 9 mod 2 | 1 |
rtSurvey సంఖ్య ఫంక్షన్లకు మద్దతు ఇస్తుంది, వాటిలో:
number(field): ఫీల్డ్ విలువను సంఖ్యకు మారుస్తుంది.- ఉదాహరణ:
number('34.8')= 34.8
- ఉదాహరణ:
int(field): ఫీల్డ్ విలువను integer కి మారుస్తుంది.- ఉదాహరణ:
int('39.2')= 39
- ఉదాహరణ:
min(field1, ..., fieldx): పాస్ చేయబడిన ఫీల్డ్లలో కనిష్ట విలువ తిరిగి ఇస్తుంది.- ఉదాహరణ:
min(${father_age}, ${mother_age})తండ్రి లేదా తల్లి వయసు ఏది చిన్నదో తిరిగి ఇస్తుంది.
- ఉదాహరణ:
max(field1, ..., fieldx): పాస్ చేయబడిన ఫీల్డ్లలో గరిష్ట విలువ తిరిగి ఇస్తుంది.- ఉదాహరణ:
max(${father_age}, ${mother_age})తండ్రి లేదా తల్లి వయసు ఏది పెద్దదో తిరిగి ఇస్తుంది.
- ఉదాహరణ:
format-number(field): వినియోగదారు locale సెట్టింగులకు అనుగుణంగా integer లేదా decimal ఫీల్డ్ విలువను ఫార్మాట్ చేస్తుంది.- ఉదాహరణ:
format-number(${income})“120000” ని “120,000” గా ఫార్మాట్ చేయవచ్చు.
- ఉదాహరణ:
round(field, digits): సంఖ్య ఫీల్డ్ విలువను దశాంశ బిందువు తర్వాత నిర్దేశించిన అంకెల సంఖ్యకు గుండ్రంగా మారుస్తుంది.- ఉదాహరణ:
round(${interest_rate}, 2)
- ఉదాహరణ:
abs(number): సంఖ్య యొక్క absolute విలువ తిరిగి ఇస్తుంది.pow(base, exponent): మొదటి parameter యొక్క విలువను రెండవ parameter యొక్క శక్తికి తిరిగి ఇస్తుంది.log10(fieldorvalue): పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క base-ten logarithm తిరిగి ఇస్తుంది.sin(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క sine తిరిగి ఇస్తుంది.cos(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క cosine తిరిగి ఇస్తుంది.tan(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క tangent తిరిగి ఇస్తుంది.asin(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క arcsine తిరిగి ఇస్తుంది.acos(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క arccosine తిరిగి ఇస్తుంది.atan(fieldorvalue): radians లో వ్యక్తీకరించబడిన పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క arctangent తిరిగి ఇస్తుంది.atan2(x, y): (x, y) మరియు సానుకూల x-axis తో మూలం వద్ద subtended కోణాన్ని radians లో తిరిగి ఇస్తుంది. ఫలితం -pi() నుండి pi() వరకు ఉంటుంది.sqrt(fieldorvalue): పాస్ చేయబడిన ఫీల్డ్ లేదా విలువ యొక్క non-negative square root తిరిగి ఇస్తుంది.exp(x): e^x విలువ తిరిగి ఇస్తుంది.pi(): pi విలువ తిరిగి ఇస్తుంది.
తేది మరియు సమయ ఫంక్షన్లు
rtSurvey లో తేది విలువలు YYYY-MM-DD ఫార్మాట్లో strings గా నిల్వ చేయబడతాయి. Datetime విలువలు ISO 8601 strings (YYYY-MM-DDTHH:MM:SS) గా నిల్వ చేయబడతాయి. అంకగణిత లెక్కింపులకు (ఉదా. వ్యవధులు లెక్కించడం) సంఖ్యకు మార్చడానికి decimal-date-time() ఉపయోగించండి.
today(): నేటి తేదీనిYYYY-MM-DDఫార్మాట్లో string గా తిరిగి ఇస్తుంది. ఫారం తెరిచినప్పుడు ఒకసారి అంచనా వేయబడుతుంది.- ఉదాహరణ:
today()→'2024-03-15' - సాధారణ వినియోగం: నేటి తేదీ ముందే నింపడానికి
defaultకాలమ్లో, లేదా తేది ఫీల్డ్తో పోల్చడానికిrelevant/constraintలో.
- ఉదాహరణ:
now(): ప్రస్తుత తేది మరియు సమయాన్ని ISO 8601 string గా తిరిగి ఇస్తుంది. వ్యక్తీకరణ లెక్కించబడిన ప్రతిసారి అంచనా వేయబడుతుంది.- ఉదాహరణ:
now()→'2024-03-15T14:32:00.000+03:00' - సాధారణ వినియోగం: సర్వే సమయంలో నిర్దిష్ట సంఘటన యొక్క ఖచ్చితమైన timestamp రికార్డ్ చేయడం.
- ఉదాహరణ:
date(value): విలువను (string లేదా number) తేది string కి మారుస్తుంది. లెక్కించిన విలువలను తేది రకానికి బలవంతపెట్టడానికి ఉపయోగకరం.- ఉదాహరణ:
date('2024-03-15')→'2024-03-15'
- ఉదాహరణ:
date-time(value): విలువను datetime string కి మారుస్తుంది.- ఉదాహరణ:
date-time(${event_timestamp})
- ఉదాహరణ:
decimal-date-time(value): తేది లేదా datetime string ను Unix epoch నుండి మిల్లీసెకన్లను 86400000 తో భాగించిన decimal number కి మారుస్తుంది (అంటే, 1970-01-01 నుండి fractional days). తేదీలపై అంకగణిత లెక్కింపులు చేయడానికి ఉపయోగించండి.- ఉదాహరణ: రెండు తేదీల మధ్య రోజుల వ్యవధి:
decimal-date-time(${end_date}) - decimal-date-time(${start_date}) - ఉదాహరణ: రెండు datetimes మధ్య నిమిషాల వ్యవధి:
(decimal-date-time(${end_time}) - decimal-date-time(${start_time})) * 1440
- ఉదాహరణ: రెండు తేదీల మధ్య రోజుల వ్యవధి:
format-date(date, format): pattern string ఉపయోగించి తేది విలువను ఫార్మాట్ చేస్తుంది.- Format tokens:
%Y(4-అంక సంవత్సరం),%y(2-అంక సంవత్సరం),%m(నెల 01–12),%d(రోజు 01–31),%a(సంక్షిప్త weekday),%b(సంక్షిప్త నెల పేరు) - ఉదాహరణ:
format-date(today(), '%d/%m/%Y')→'15/03/2024'
- Format tokens:
format-date-time(datetime, format): pattern string ఉపయోగించి datetime విలువను ఫార్మాట్ చేస్తుంది. అన్నిformat-datetokens అదనంగా:%H(గంట 00–23),%h(గంట 01–12),%M(నిమిషాలు 00–59),%S(సెకన్లు 00–59),%3(మిల్లీసెకన్లు),%P(AM/PM)- ఉదాహరణ:
format-date-time(now(), '%d/%m/%Y %H:%M')→'15/03/2024 14:32'
Boolean ఫంక్షన్లు
boolean(value): ఏదైనా విలువను boolean కి మారుస్తుంది. ఖాళీ కాని strings, శూన్యేతర సంఖ్యలు మరియుtrueకుtrueతిరిగి ఇస్తుంది; ఖాళీ strings,0, మరియుfalseకుfalseతిరిగి ఇస్తుంది.- ఉదాహరణ:
boolean(${name})nameఖాళీ కాకపోతేtrueతిరిగి ఇస్తుంది.
- ఉదాహరణ:
boolean-from-string(string): string'1'లేదా'true'(case-insensitive) అయితేtrueతిరిగి ఇస్తుంది; లేకపోతేfalseతిరిగి ఇస్తుంది.- ఉదాహరణ:
boolean-from-string(${enabled_flag})— ఫీల్డ్'true'/'false'ని టెక్స్ట్గా నిల్వ చేసినప్పుడు ఉపయోగకరం.
- ఉదాహరణ:
true(): boolean విలువtrueతిరిగి ఇస్తుంది.- ఉదాహరణ:
requiredకాలమ్లో,true()yesకు సమానం.
- ఉదాహరణ:
false(): boolean విలువfalseతిరిగి ఇస్తుంది.- ఉదాహరణ:
if(${skip_section} = 'yes', false(), true())— required ని డైనమిక్గా సెట్ చేయడం.
- ఉదాహరణ:
not(expression): వ్యక్తీకరణ యొక్క logical negation తిరిగి ఇస్తుంది. వ్యక్తీకరణ తప్పు అయితేtrueతిరిగి ఇస్తుంది, మరియు దాని విరుద్ధం.- ఉదాహరణ:
not(${consent} = 'yes')— సమ్మతి ఇవ్వనప్పుడు హెచ్చరిక చూపించడం. - ఉదాహరణ:
not(selected(${issues}, 'none'))— “none” ఎంచుకోకపోతే మాత్రమే వివరాలు అవసరం.
- ఉదాహరణ:
అదనపు string ఫంక్షన్లు
starts-with(string, prefix):stringprefixతో ప్రారంభమైతేtrueతిరిగి ఇస్తుంది.- ఉదాహరణ:
starts-with(${phone}, '+254')ఫోన్ నంబర్ Kenya country code తో ప్రారంభమవుతుందో తనిఖీ చేస్తుంది.
- ఉదాహరణ:
contains(string, substring):stringsubstringకలిగి ఉంటేtrueతిరిగి ఇస్తుంది.- ఉదాహరణ:
contains(${email}, '@')email చిరునామాకు@చిహ్నం ఉందో తనిఖీ చేస్తుంది.
- ఉదాహరణ:
substring-before(string, needle):needleయొక్క మొదటి సంభవన ముందు వచ్చేstringయొక్క భాగం తిరిగి ఇస్తుంది.- ఉదాహరణ:
substring-before(${full_name}, ' ')మొదటి పదం (first name) సేకరిస్తుంది.
- ఉదాహరణ:
substring-after(string, needle):needleయొక్క మొదటి సంభవన తర్వాత వచ్చేstringయొక్క భాగం తిరిగి ఇస్తుంది.- ఉదాహరణ:
substring-after(${email}, '@')email చిరునామా domain భాగం సేకరిస్తుంది.
- ఉదాహరణ:
normalize-space(string): ముందు మరియు వెనుక whitespace తొలగించి అన్ని అంతర్గత whitespace sequences ని ఒకే space కి collapse చేస్తుంది.- ఉదాహరణ:
normalize-space(${name})— అదనపు spaces తో టైప్ చేయబడిన పేరు clean చేయడం.
- ఉదాహరణ:
translate(string, search_chars, replace_chars):stringలోsearch_charsలో కనిపించే ప్రతి అక్షరాన్నిreplace_charsలో సంబంధిత అక్షరంతో భర్తీ చేస్తుంది.- ఉదాహరణ:
translate(${phone}, ' -()', '')ఫోన్ నంబర్ నుండి spaces, dashes మరియు parentheses తొలగిస్తుంది.
- ఉదాహరణ:
అదనపు గణిత ఫంక్షన్లు
floor(number):numberకంటే తక్కువ లేదా సమానమైన అతిపెద్ద integer తిరిగి ఇస్తుంది (negative infinity వైపు rounds).- ఉదాహరణ:
floor(4.9)= 4,floor(-2.1)= -3
- ఉదాహరణ:
ceiling(number):numberకంటే ఎక్కువ లేదా సమానమైన అతి చిన్న integer తిరిగి ఇస్తుంది (positive infinity వైపు rounds).- ఉదాహరణ:
ceiling(4.1)= 5,ceiling(-2.9)= -2
- ఉదాహరణ:
random(): 0.0 (inclusive) మరియు 1.0 (exclusive) మధ్య random decimal number తిరిగి ఇస్తుంది.- ఉదాహరణ:
int(random() * 6) + 1→ random number 1–6 (dice roll)
- ఉదాహరణ:
coalesce(a, b):aఖాళీ కాకపోతేaతిరిగి ఇస్తుంది; లేకపోతేbతిరిగి ఇస్తుంది.- ఉదాహరణ:
coalesce(${preferred_name}, ${full_name})— preferred name సెట్ చేయబడినట్లయితే ఉపయోగించు, లేకపోతే full name కి fall back అవుతుంది.
- ఉదాహరణ:
once(value):valueఅంచనా వేసి నిల్వ చేస్తుంది, కానీ ప్రస్తుత ఫీల్డ్ ఖాళీ అయినప్పుడు మాత్రమే. ఫీల్డ్కు ఇప్పటికే విలువ ఉంటే,once()ఇప్పటికే ఉన్న విలువ మార్పు లేకుండా తిరిగి ఇస్తుంది.- ఉదాహరణ:
once(today())defaultకాలమ్లో నేటి తేదీ ఒకసారి సెట్ చేస్తుంది. - ఉదాహరణ:
once(uuid())UUID ఒకసారి generate చేసి re-edits అంతటా stable గా ఉంచుతుంది.
- ఉదాహరణ:
Geo ఫంక్షన్లు
area(geoshape_value): geoshape (polygon) విలువ ద్వారా చుట్టుముట్టబడిన వైశాల్యాన్ని square meters లో లెక్కిస్తుంది.- ఉదాహరణ:
area(${field_boundary})— సర్వే చేయబడిన పొలం వైశాల్యం m² లో లెక్కించడం. - ఉదాహరణ:
round(area(${field_boundary}) div 10000, 2)— hectares కు మార్చడం.
- ఉదాహరణ:
distance(coordinates): geotrace (line) యొక్క మొత్తం path length meters లో లేదా రెండు geopoints మధ్య దూరం లెక్కిస్తుంది.- Geotrace కోసం:
distance(${route})మొత్తం path length meters లో తిరిగి ఇస్తుంది. - రెండు geopoints కోసం:
distance(concat(${point_a}, ' ', ${point_b}))వాటి మధ్య దూరం తిరిగి ఇస్తుంది.
- Geotrace కోసం:
ధృవీకరణ ఫంక్షన్లు
regex(value, pattern):valueregular expressionpatternతో సరిపోలితేtrueతిరిగి ఇస్తుంది. Pattern-ఆధారిత ధృవీకరణకుconstraintకాలమ్లో ఉపయోగించండి.- ఉదాహరణ:
regex(., '^[0-9]{10}$')— 10-అంక సంఖ్య ధృవీకరించడం. - ఉదాహరణ:
regex(., '^[A-Z]{2}[0-9]{6}$')— passport number format ధృవీకరించడం.
- ఉదాహరణ:
checklist(min, max, v1, v2, ...): boolean వ్యక్తీకరణల జాబితా అంచనా వేసిtrueవిలువల సంఖ్యminమరియుmax(inclusive) మధ్య ఉంటేtrueతిరిగి ఇస్తుంది.- ఉదాహరణ:
checklist(2, 3, ${q1} = 'yes', ${q2} = 'yes', ${q3} = 'yes')— మూడు షరతులలో సరిగ్గా 2 లేదా 3 నిజం అయితే pass అవుతుంది.
- ఉదాహరణ:
weighted-checklist(min, max, v1, w1, v2, w2, ...):checklist()వలె ఉంటుంది, కానీ ప్రతి విలువకు weight ఉంటుంది.trueవిలువల weights మొత్తంminమరియుmaxమధ్య ఉండాలి.
Utility ఫంక్షన్లు
uuid(): random UUID (RFC 4122 v4 format) ని string గా generate చేస్తుంది.- ఉదాహరణ:
uuid()→'a3f8b2c1-4d5e-6f7a-8b9c-0d1e2f3a4b5c' - Stable unique ID generate చేయడానికి సాధారణంగా
once()తో ఉపయోగిస్తారు:once(uuid())
- ఉదాహరణ:
version(): settings worksheet లో సెట్ చేయబడిన ఫారంversionattribute విలువ తిరిగి ఇస్తుంది.- ఉదాహరణ:
version()→'3.1'
- ఉదాహరణ:
position(): రిపీట్ సమూహంలో పిలవబడినప్పుడు, ప్రస్తుత రిపీట్ instance యొక్క 1-ఆధారిత index తిరిగి ఇస్తుంది.thousandsep(length, separator, value): thousands separator తో సంఖ్యను ఫార్మాట్ చేస్తుంది.- ఉదాహరణ:
thousandsep(0, ',', 1234567)→'1,234,567'
- ఉదాహరణ:
substr-jsonpath(value, jsonpath): JSONPath వ్యక్తీకరణ ఉపయోగించి JSON string నుండి substring సేకరిస్తుంది.- ఉదాహరణ:
substr-jsonpath(${api_response}, '$.data.name')—api_responseలో నిల్వ చేయబడిన JSON string నుండిnameఫీల్డ్ సేకరించడం.
- ఉదాహరణ: