ఖాతాలు/కాంటాక్ట్లలోని కస్టమర్ల వివరాలను ట్రాక్ చేయడం కస్టమర్ రిలేషన్షిప్ మేనేజ్మెంట్ (CRM)లో చాలా ముఖ్యం. తేదీ ఆధారంగా, కొనుగోలు, కోటింగ్ మరియు సర్వీసింగ్ వంటి అన్ని ప్రక్రియలు జరుగుతాయి. సేల్స్ఫోర్స్లో స్ట్రింగ్ నుండి తేదీని ఎలా సృష్టించాలో మరియు తేదీని స్ట్రింగ్గా మార్చడం ఎలాగో చూద్దాం. ఈ ట్యుటోరియల్లో భాగంగా, మేము ఉదాహరణలతో రోజులు, సంవత్సరాలు, నెలలు మొదలైన వాటిని జోడించడం వంటి ఫార్మాట్ చేసిన తేదీలో వర్తించే పద్ధతులను కూడా చూస్తాము.
అపెక్స్ తేదీ తరగతి
తేదీ తరగతి ఆదిమమైన అన్ని తేదీ పద్ధతులకు మద్దతు ఇస్తుంది. ఇది 'సిస్టమ్' నేమ్స్పేస్ని ఉపయోగిస్తుంది. స్ట్రింగ్ను తేదీ ఆకృతికి మార్చడానికి మేము ఈ తరగతి నుండి valueOf() పద్ధతిని ఉపయోగించవచ్చు. తేదీని ఫార్మాట్ చేసిన తర్వాత, ఈ తేదీ తరగతిలో కూడా అందుబాటులో ఉన్న కొన్ని పద్ధతులను ఉపయోగించి ఈ ఫార్మాట్ చేసిన తేదీకి రోజులు, నెలలు, సంవత్సరాలు, ect., జోడించడానికి మేము కొన్ని పద్ధతులను వర్తింపజేస్తాము.
ముందుగా, సేల్స్ఫోర్స్ అపెక్స్లో valueOf() పద్ధతిని ఉపయోగించి స్ట్రింగ్ను తేదీకి ఎలా మార్చాలో చూద్దాం.
Date.valueOf()
అపెక్స్లోని valueOf() “తేదీ” క్లాస్లో అందుబాటులో ఉంది, ఇది స్ట్రింగ్ను ఆర్గ్యుమెంట్గా తీసుకుంటుంది, ఇది పేర్కొన్న స్ట్రింగ్ను తేదీ ఫార్మాట్లోకి మారుస్తుంది. ఇన్పుట్ స్ట్రింగ్ (పరామితి) మూడు లక్షణాలను కలిగి ఉంటుంది - సంవత్సరం, నెల మరియు రోజు. ఈ మూడింటినీ కలిపి/కలిపారు మరియు పద్ధతికి మార్చారు.
సింటాక్స్: ValueOf()
ఇప్పటికే చెప్పినట్లుగా, మేము 'తేదీ' తరగతి యొక్క వేరియబుల్ను ప్రకటించాలి మరియు దానికి స్ట్రింగ్ను పాస్ చేయాలి.
తేదీ date_variable= date.valueOf(string_date_format);
ఉదాహరణ:
దశ 1:
'సంవత్సరం-నెల-రోజు'ని కలిగి ఉన్న స్ట్రింగ్ను కలిగి ఉండండి.
// సంవత్సరం, నెల మరియు రోజును ఒక్కొక్కటిగా ప్రకటించండిస్ట్రింగ్ ఇయర్ = '2023';
స్ట్రింగ్ నెల = '4';
స్ట్రింగ్ డే = '5';
// వాటన్నింటిని స్ట్రింగ్లో కలపండి
స్ట్రింగ్ string_type = సంవత్సరం + '-' + నెల + '-' + రోజు;
system.debug(string_type);
అవుట్పుట్:
దశ 2:
ఇప్పుడు, అపెక్స్ “తేదీ” క్లాస్ నుండి valueOf() పద్ధతిని ఉపయోగించి మునుపటి “తేదీ” స్ట్రింగ్ను “తేదీ”కి మార్చండి.
// స్ట్రింగ్-తేదీని తేదీకి మార్చండితేదీ converted_date = date.valueOf(string_type);
system.debug(converted_date);
అవుట్పుట్:
“తేదీ”కి మార్చిన తర్వాత, అది స్వయంచాలకంగా తేదీని డేట్ టైమ్ ఫార్మాట్లో తిరిగి ఇస్తుందని మనం చూడవచ్చు. మీరు వీటిని valueOf() పద్ధతికి పాస్ చేసినప్పటికీ, ఇది సమయాన్ని (గంటలు: నిమిషాలు: సెకన్లు) పరిగణించదు. తిరిగి వచ్చిన ఆకృతి YYYY-MM-DD HH:MM:SS.
తేదీని స్ట్రింగ్గా మార్చండి
'తేదీ'ని 'స్ట్రింగ్'గా మార్చడానికి రెండు మార్గాలు ఉన్నాయి. అపెక్స్ మద్దతు ఇచ్చే ఒక మార్గం ఫార్మాట్() పద్ధతిని ఉపయోగించడం. మరొక మార్గం 'తేదీ' లక్షణాలను (సంవత్సరం, నెల మరియు రోజు) మాన్యువల్గా సంగ్రహించడం మరియు వాటిని స్ట్రింగ్గా కలపడం. వాటిని ఒక్కొక్కటిగా చూద్దాం.
1. ఫార్మాట్()
ఫార్మాట్() పద్ధతి అపెక్స్లోని “తేదీ” తరగతిలో అందుబాటులో ఉంది, ఇది “తేదీ”ని “M/D/YYYY” ఆకృతిలో స్ట్రింగ్గా మారుస్తుంది. ఈ పద్ధతికి మేము పేర్కొన్న ఆకృతిని పారామీటర్గా కూడా పాస్ చేయవచ్చు. పేర్కొన్న ఫార్మాట్ డిఫాల్ట్ ఫార్మాట్.
సింటాక్స్:
input_date.format(“format_type”)ఉదాహరణ:
మునుపటి ఉదాహరణను పరిశీలిద్దాం మరియు ఫార్మాట్() పద్ధతిని ఉపయోగించి 'తేదీ'ని తిరిగి 'స్ట్రింగ్'గా మార్చండి. మేము ఫార్మాట్() పద్ధతికి నిర్దిష్ట ఆకృతిని అందించడం లేదు.
// సంవత్సరం, నెల మరియు రోజును ఒక్కొక్కటిగా ప్రకటించండిస్ట్రింగ్ ఇయర్ = '2023';
స్ట్రింగ్ నెల = '4';
స్ట్రింగ్ డే = '5';
// వాటన్నింటిని స్ట్రింగ్లో కలపండి
స్ట్రింగ్ string_type = సంవత్సరం + '-' + నెల + '-' + రోజు;
// స్ట్రింగ్-తేదీని తేదీకి మార్చండి
తేదీ converted_date = date.valueOf(string_type);
system.debug(converted_date);
// ఫార్మాట్()
system.debug(converted_date.format());
అవుట్పుట్:
2. తేదీ తరగతి పద్ధతిని ఉపయోగించడం
ఈ దృష్టాంతంలో, మేము అపెక్స్ “తేదీ” తరగతిలో అందుబాటులో ఉన్న పద్ధతులను ఉపయోగించి “తేదీ” నుండి విడిగా సంవత్సరం, నెల మరియు రోజును సంగ్రహిస్తాము. తర్వాత, 'స్ట్రింగ్' ఫార్మాట్లో 'తేదీ'ని తిరిగి ఇవ్వడానికి మేము ఈ మూడింటిని సంగ్రహిస్తాము.
- రోజు() - ఈ పద్ధతి 'తేదీ' నుండి తేదీని సంగ్రహించడానికి ఉపయోగించబడుతుంది. ఇది తేదీని పేర్కొనే పూర్ణాంకాన్ని అందిస్తుంది.
- నెల() - ఈ పద్ధతి 'తేదీ' నుండి నెలను సంగ్రహించడానికి ఉపయోగించబడుతుంది. ఇది నెల సంఖ్యను పేర్కొనే పూర్ణాంకాన్ని అందిస్తుంది. మనం జనవరిని 1గా, ఫిబ్రవరిని 2గా సూచించవచ్చు. డిసెంబర్ 12.
- సంవత్సరం() - ఈ పద్ధతి 'తేదీ' నుండి సంవత్సరాన్ని సంగ్రహించడానికి ఉపయోగించబడుతుంది. ఇది సంవత్సరాన్ని నాలుగు అంకెల ఆకృతిలో అందిస్తుంది.
సింటాక్స్:
input_date.year() + '-' + input_date.month() + '-' + input_date.day()ఉదాహరణ:
'YYYY-M-D' ఆకృతిలో 'తేదీ'ని తిరిగి 'స్ట్రింగ్'కి మార్చండి.
// సంవత్సరం, నెల మరియు రోజును ఒక్కొక్కటిగా ప్రకటించండిస్ట్రింగ్ ఇయర్ = '2023';
స్ట్రింగ్ నెల = '4';
స్ట్రింగ్ డే = '5';
// వాటన్నింటిని స్ట్రింగ్లో కలపండి
స్ట్రింగ్ string_type = సంవత్సరం + '-' + నెల + '-' + రోజు;
// స్ట్రింగ్-తేదీని తేదీకి మార్చండి
తేదీ converted_date = date.valueOf(string_type);
system.debug(converted_date);
// తేదీని స్ట్రింగ్గా మార్చండి
system.debug(converted_date.year() + '-' + converted_date.month() + '-' + converted_date.day());
అవుట్పుట్:
ఆచరణాత్మక ఉదాహరణలు:
సేల్స్ఫోర్స్ ఆబ్జెక్ట్లలో ఇప్పటికే ఉన్న తేదీకి రోజులు, సంవత్సరాలు మరియు నెలలు జోడించడం వంటి 'తేదీ'ని ఎలా అప్డేట్ చేయాలో చూద్దాం. మూడు పద్ధతులు “n” పూర్ణాంకాన్ని ఆర్గ్యుమెంట్గా తీసుకుంటాయి.
1. addDays()
ఇప్పటికే ఉన్న తేదీకి రోజులను జోడించడానికి, Apex “తేదీ” తరగతిలో అందుబాటులో ఉన్న addDays() పద్ధతికి మద్దతు ఇస్తుంది.
2. addMonths()
ఇప్పటికే ఉన్న తేదీకి నెలలను జోడించడానికి, Apex “తేదీ” తరగతిలో అందుబాటులో ఉన్న addMonths() పద్ధతికి మద్దతు ఇస్తుంది.
3. యాడ్ ఇయర్స్()
ఇప్పటికే ఉన్న తేదీకి సంవత్సరాలను జోడించడానికి, 'తేదీ' తరగతిలో అందుబాటులో ఉన్న addYears() పద్ధతికి Apex మద్దతు ఇస్తుంది.
సింటాక్స్:
ఈ మూడు పద్ధతులకు వాక్యనిర్మాణాన్ని చూద్దాం. ఇక్కడ, “n” జాతులు పూర్ణాంక విలువ.
- input_Date.addDays(n)
- input_Date.addMonths(n)
- input_Date.addYears(n)
ఉదాహరణకి వెళ్ళే ముందు, ఈ క్రింది వాటిని పరిగణించండి:
- సేల్స్ఫోర్స్లోకి లాగిన్ చేసి, 'యాప్ లాంచర్'కి వెళ్లి, ట్యాబ్లో 'ప్రచారం' కోసం శోధించండి. ఇక్కడ, మేము 'ప్రచారం పేరు' మరియు 'ముగింపు తేదీ'ని చొప్పించాము.
- 'ప్రచారాలు' ఎంచుకోండి మరియు 'కొత్తది' పై క్లిక్ చేయండి.
- ప్రచారంలో డేటాను చొప్పించడానికి పాప్అప్ కనిపిస్తుంది. “ప్రచారం పేరు” కింద “Linux సూచన పోస్ట్లు” జోడించి, “ముగింపు తేదీ”ని 4/5/2023గా సెట్ చేయండి. అప్పుడు, 'సేవ్' పై క్లిక్ చేయండి.
మేము రికార్డుతో సిద్ధంగా ఉన్నాము. (టైప్ - కాన్ఫరెన్స్ మరియు స్టేటస్ - ప్లాన్డ్ ఆటోమేటిక్గా వస్తాయి. దానిని వదిలేయండి). డెవలపర్ కన్సోల్లో అనామక విండోను తెరవండి.
ఉదాహరణ 1:
“ప్రచారం” ఆబ్జెక్ట్లో ఇప్పటికే ఉన్న “ముగింపు తేదీ”కి 10 రోజులను జోడించడానికి addDays() పద్ధతిని ఉపయోగిస్తాము.
- దీన్ని చేయడానికి, 'ప్రచారం' ఆబ్జెక్ట్ నుండి రికార్డ్ను పొందడానికి మరియు ఈ రికార్డ్ను 'జాబితా' ఆబ్జెక్ట్లో నిల్వ చేయడానికి మేము ముందుగా SOQL ప్రశ్నను ఉపయోగించాలి.
- తరువాత, మేము జాబితాను పునరావృతం చేయడానికి “ఫర్” లూప్ని ఉపయోగిస్తాము మరియు “ముగింపు తేదీ”కి 10 రోజులను జోడించడానికి addDays() పద్ధతిని ఉపయోగిస్తాము.
- చివరగా, “ప్రచారం” ఆబ్జెక్ట్లో “ముగింపు తేదీ”ని అప్డేట్ చేయడానికి “DML అప్డేట్” స్టేట్మెంట్ని ఉపయోగిస్తాము.
జాబితా<ప్రచారం> query1 = [ప్రచారం నుండి పేరు, ముగింపు తేదీని ఎంచుకోండి పేరు = 'Linux సూచన పోస్ట్లు'];
// addDays() పద్ధతిని ఉపయోగించి EndDateకి 10 రోజులను జోడించండి
కోసం(ప్రచారం i: query1){
i.EndDate = i.EndDate.addDays(10);
}
// ముగింపు తేదీని నవీకరించడానికి నవీకరణ DMLని ఉపయోగించండి
నవీకరణ ప్రశ్న1;
system.debug(query1);
అవుట్పుట్:
మునుపటి “ముగింపు తేదీ” ఏప్రిల్ 5. దానికి 10 రోజులు జోడించిన తర్వాత, 'ముగింపు తేదీ' ఇప్పుడు ఏప్రిల్ 15.
మేము 'ప్రచారం' ట్యాబ్లో కూడా తనిఖీ చేయవచ్చు. వెనుకకు తరలించి, పేజీని రిఫ్రెష్ చేయండి. “ముగింపు తేదీ” నవీకరించబడిందని మీరు చూడవచ్చు.
ఉదాహరణ 2:
ఇప్పటికే ఉన్న “ముగింపు తేదీ”కి 3 నెలలను జోడించడానికి addMonths() పద్ధతిని ఉపయోగిస్తాము.
// SOQLని ఉపయోగించి ప్రచారం నుండి పేరు మరియు ముగింపు తేదీని తిరిగి ఇవ్వండిజాబితా<ప్రచారం> query1 = [ప్రచారం నుండి పేరు, ముగింపు తేదీని ఎంచుకోండి పేరు = 'Linux సూచన పోస్ట్లు'];
system.debug('అసలు: '+query1);
// addMonths() పద్ధతిని ఉపయోగించి ముగింపు తేదీకి 3 నెలలు జోడించండి
కోసం(ప్రచారం i: query1){
i.EndDate = i.EndDate.addMonths(3);
}
// ముగింపు తేదీని నవీకరించడానికి నవీకరణ DMLని ఉపయోగించండి
నవీకరణ ప్రశ్న1;
system.debug('అప్డేట్ చేయబడింది: '+query1);
అవుట్పుట్:
'ముగింపు తేదీ'లో మునుపటి నెల ఏప్రిల్. 3 నెలలు జోడించిన తర్వాత, ఇప్పుడు జూలై.
ఉదాహరణ 3:
ఇప్పటికే ఉన్న “ముగింపు తేదీ”కి 3 సంవత్సరాలను జోడించడానికి addYears() పద్ధతిని ఉపయోగిస్తాము.
// SOQLని ఉపయోగించి ప్రచారం నుండి పేరు మరియు ముగింపు తేదీని తిరిగి ఇవ్వండిజాబితా<ప్రచారం> query1 = [ప్రచారం నుండి పేరు, ముగింపు తేదీని ఎంచుకోండి పేరు = 'Linux సూచన పోస్ట్లు'];
system.debug('అసలు: '+query1);
// addYears() పద్ధతిని ఉపయోగించి ముగింపు తేదీకి 3 సంవత్సరాలను జోడించండి
కోసం(ప్రచారం i: query1){
i.EndDate = i.EndDate.addYears(3);
}
// ముగింపు తేదీని నవీకరించడానికి నవీకరణ DMLని ఉపయోగించండి
నవీకరణ ప్రశ్న1;
system.debug('అప్డేట్ చేయబడింది: '+query1);
అవుట్పుట్:
“ముగింపు తేదీ”కి 3 సంవత్సరాలు జోడించిన తర్వాత, నవీకరించబడిన సంవత్సరం 2026.
ముగింపు
సేల్స్ఫోర్స్ అపెక్స్లో తేదీని ఫార్మాట్ చేయడం చాలా సులభం. ఈ ట్యుటోరియల్లో భాగంగా, అపెక్స్ “డేట్” క్లాస్లో అందుబాటులో ఉన్న valueOf() పద్ధతిని ఉపయోగించి “తేదీ”ని “స్ట్రింగ్” ఫార్మాట్ నుండి “తేదీ”కి ఎలా మార్చాలో నేర్చుకున్నాము. మీరు తేదీని తిరిగి స్ట్రింగ్గా మార్చాలనుకుంటే, మేము ఫార్మాట్() మరియు రోజు(), నెల() మరియు సంవత్సరం() వంటి తేదీ లక్షణాలను ఉపయోగిస్తాము. చివరగా, ప్రత్యేక ఉదాహరణలతో addDays(), addMonths(), and addYears() పద్ధతులను ఉపయోగించి “ముగింపు తేదీ”ని అప్డేట్ చేయడానికి సేల్స్ఫోర్స్ “క్యాంపెయిన్” ఆబ్జెక్ట్పై DML ఆపరేషన్ గురించి చర్చించడం ద్వారా మేము ఈ గైడ్ని ముగించాము.