On this page
calculate
Calculate
XLSForms మరియు rtSurvey లో Calculate ప్రశ్నలు మీ ఫారంలో ఇతర ఫీల్డ్లు లేదా విలువల ఆధారంగా లెక్కింపులు చేయడానికి ఉపయోగించబడతాయి. ఈ ప్రశ్నలు వినియోగదారుకు చూపించబడవు కానీ నేపథ్యంలో నడుస్తాయి, తర్వాత ఉపయోగానికి లేదా submission కోసం వాటి ఫలితాలు నిల్వ చేస్తాయి.
సింటాక్స్
XLSForm లో, calculate ప్రశ్న ఇలా నిర్వచించబడుతుంది:
| type | name | label | calculation |
|---|---|---|---|
| calculate | calc_q1 | ${q1} + ${q2} |
- type: ఈ ప్రశ్న రకానికి ఎల్లప్పుడూ “calculate”.
- name: calculate ప్రశ్నకు unique పేరు.
- label: Calculate ప్రశ్నలు వినియోగదారులకు చూపించబడవు కాబట్టి సాధారణంగా ఖాళీగా ఉంచబడుతుంది.
- calculation: అంచనా వేయవలసిన formula.
వినియోగాలు
Calculate ప్రశ్నలు సాధారణంగా వీటికి ఉపయోగిస్తారు:
- Arithmetic operations చేయడం
- Strings కలపడం
- సంక్లిష్ట logic లేదా functions వర్తించడం
- తర్వాత ఉపయోగానికి intermediate results నిల్వ చేయడం
ఉదాహరణలు
ప్రాథమిక Arithmetic
| type | name | calculation |
|-----------|----------|-------------|
| calculate | total | ${price} * ${quantity} |
String Concatenation
| type | name | calculation |
|-----------|----------|-------------|
| calculate | full_name| concat(${first_name}, ' ', ${last_name}) |
Functions ఉపయోగించడం
| type | name | calculation |
|-----------|----------|-------------|
| calculate | age | int((today() - ${date_of_birth}) / 365.25) |
rtSurvey లో అధునాతన వినియోగం
pulldata() ఫంక్షన్
rtSurvey calculate ఫీల్డ్లలో pulldata() ఫంక్షన్కు మద్దతు ఇస్తుంది, బాహ్య CSV ఫైల్ల నుండి డేటా పొందడానికి అనుమతిస్తుంది:
| type | name | calculation |
|-----------|----------|-------------|
| calculate | city | pulldata('cities', 'city_name', 'zip_code', ${zip_input}) |
సింటాక్స్
pulldata() కోసం ప్రాథమిక సింటాక్స్:
pulldata('csv_filename', 'column_to_return', 'key_column', ${matching_value})
- ‘csv_filename’: CSV ఫైల్ పేరు (.csv extension లేకుండా)
- ‘column_to_return’: మీరు తీసుకోవాలనుకున్న డేటా కలిగిన column పేరు
- ‘key_column’: సరిపోల్చడానికి column పేరు
- ${matching_value}: key column లో lookup చేయవలసిన విలువ (తరచుగా ఫారం నుండి వేరియబుల్)
ముఖ్యమైన గమనికలు
- Survey deploy చేసేటప్పుడు CSV ఫైల్ మీ XLSForm తో upload చేయాలి.
- మీ CSV ఫైల్లో semicolons కాదు, commas ని separators గా ఉపయోగించండి.
- మీ CSV లో data fields లో commas నివారించండి, అవి parsing సమస్యలు కలిగించవచ్చు.
pulldata()కేవలం 1-to-1 relationships కు మద్దతు ఇస్తుంది. బహుళ matches కనుగొనబడినప్పుడు, మొదటిది మాత్రమే తిరిగి ఇస్తుంది.- Pull చేయగల text length పై పరిమితులు ఉండవచ్చు (సుమారు 76 అక్షరాలు).
షరతులతో కూడిన లెక్కింపులు
షరతులతో కూడిన లెక్కింపులకు if() statements ఉపయోగించవచ్చు:
| type | name | calculation |
|-----------|----------|-------------|
| calculate | discount | if(${total} > 1000, ${total} * 0.1, 0) |
ఉత్తమ పద్ధతులు
- ఫారం చదివిపోవడానికి calculate ఫీల్డ్లకు అర్థవంతమైన పేర్లు ఉపయోగించండి.
- ఒకే ఫీల్డ్లో అతిగా సంక్లిష్టమైన లెక్కింపులు నివారించండి; అవసరమైతే వాటిని విభజించండి.
- ముఖ్యంగా సంక్లిష్ట formulas లేదా బాహ్య డేటా ఉపయోగించేటప్పుడు మీ లెక్కింపులు సమగ్రంగా పరీక్షించండి.
- Calculate ఫీల్డ్లు ఫారం evaluate చేయబడిన ప్రతిసారి నడుస్తాయని గుర్తుంచుకోండి, ఇది చాలా సంక్లిష్టమైన లేదా అనేక లెక్కింపులకు పనితీరు ప్రభావితం చేయవచ్చు.
పరిమితులు
- Calculate ఫీల్డ్లు వినియోగదారులచే నేరుగా సవరించబడవు.
- Calculate ఫీల్డ్ ఫలితం display ఫీల్డ్లో సూచించబడకపోతే లేదా ఫారం logic లో ఉపయోగించబడకపోతే వెంటనే కనిపించదు.
ఈ పేజీ సహాయకరంగా ఉందా?