Screen Flow गाइड
किसी भी Salesforce Screen Flow में MultiDatePick कैलेंडर लगाएँ। कंपोनेंट स्क्रीन पर डालें, Config Name सेट करें, और काम पूरा।
Apex की ज़रूरत नहींएक प्रॉपर्टी: Config Name
कॉन्फ़िगरेशन एक बार Setup Wizard में बनाएँ, या Config Library से आयात करें। Flow में आप एक प्रॉपर्टी सेट करते हैं और बाकी सब कंपोनेंट खुद लोड कर लेता है।
- एक Screen खोलें
- MultiDatePick खोजें
- Booking, Date या Date Time ड्रैग करें
- Config Name
- सहेजें
हर चेकबॉक्स कॉन्फ़िगरेशन से आता है। Config Name सेट हो, तो Flow Builder में कोई चेकबॉक्स छूने की ज़रूरत नहीं। स्क्रीन पर भरी गई टेक्स्ट और नंबर प्रॉपर्टी कॉन्फ़िगरेशन को ओवरराइड करती हैं।
किसी रिकॉर्ड से जोड़कर सहेजें
Parent Record Id को उस रिकॉर्ड से बाँधें जिसके लिए Flow चलता है, जैसे {!recordId} या किसी Get Records का नतीजा। तब कंपोनेंट अपने रिकॉर्ड उसी parent से जोड़कर सहेजता है। Date और Date Time में इसे खाली छोड़ें, तो चयन Flow को मिल जाता है।
खाली Flow से बनाएँ
Flow Builder में पाँच मिनट। कुछ डिप्लॉय नहीं करना: Debug से टेस्ट करें।
Setup, Flows, New Flow, Screen Flow, Create।
कैनवास पर एक Screen एलिमेंट जोड़ें।
कंपोनेंट सूची में MultiDatePick खोजें और उसे ड्रैग करें।
कॉन्फ़िगरेशन का नाम ठीक वैसा ही लिखें जैसा विज़र्ड ने सहेजा था। अगर रिकॉर्ड किसी parent के हैं, तो Parent Record Id बाँधें।
Debug पर क्लिक करें, तारीखें या टाइम स्लॉट चुनें और देखें कि रिकॉर्ड बने या नहीं। फिर Activate करें और Flow को रिकॉर्ड पेज, एक्शन बटन या Experience Cloud साइट पर जोड़ें।
Flow को क्या वापस मिलता है
Booking अपनी बुकिंग खुद सहेजता है। Date और Date Time चयन Flow को सौंप देते हैं, या Parent Record Id सेट होने पर खुद सहेजते हैं।
| कंपोनेंट | आउटपुट (Flow Builder में लेबल) | API नाम |
|---|---|---|
| Booking | Successful Bookings Count, Conflict Dates | bookingSuccessCount, bookingConflictDates |
| Date | Selected Dates, Date Ranges JSON | selectedDates, selectedDateRangesJson |
| Date Time | Dates With Times JSON | selectedDatesWithTimesJson |
Apex की ज़रूरत नहीं: तैयार Flow एक्शन
आपको कभी Apex नहीं लिखना पड़ता। Date या Date Time के JSON से रिकॉर्ड बनाने के लिए पैकेज के साथ आने वाले तीन हिस्से इस्तेमाल करें। ये Flow Builder में किसी भी स्टैंडर्ड एक्शन की तरह दिखते हैं।
- Parse Date Entries from JSON
- उसकी एंट्री पर Loop
- Create Records, हर एंट्री का एक
इसे Action में खोजें। इसे Date Ranges JSON या Dates With Times JSON दें। केवल तारीख है या तारीख और समय, यह अपने आप पहचान लिया जाता है।
क्लास: MultiDatePickParser
एक्शन यही लौटाता है। इसे Apex-Defined वेरिएबल में रखें और data पर Loop चलाएँ।
data: Loop के लिए एंट्रीtotalCount: कितनी हैंsuccess,errorMessage: Decision के लिए
एक एंट्री, यानी आपका Loop वेरिएबल। इसे Create Records में मैप करें।
fromDate,toDate: रेंज (एक दिन के लिए दोनों बराबर)startTime,endTime: केवल Date Timeid: एंट्री नंबर
Date Ranges JSON (Date)
{ "data": [
{ "id": 1, "fromDate": "2026-02-10", "toDate": "2026-02-12" },
{ "id": 2, "fromDate": "2026-02-15", "toDate": "2026-02-15" }
] }
Dates With Times JSON (Date Time)
{ "data": [
{ "id": 1, "fromDate": "2026-02-10", "toDate": "2026-02-10",
"startTime": "09:00", "endTime": "17:00" }
] }
परिशिष्ट: प्रॉपर्टी हाथ से मैप करें
केवल तब, जब आप Config Name इस्तेमाल न करें। Flow Builder प्रॉपर्टी वर्णक्रम में दिखाता है और Conflict Behavior जैसी picklist को सादे टेक्स्ट बॉक्स की तरह दिखाता है, इसीलिए Config Name आसान रास्ता है। Booking स्क्रीन के लिए ये सेट करें:
| Flow Builder में लेबल | क्या डालें | API नाम |
|---|---|---|
| Resource Object API Name | जिस ऑब्जेक्ट को आप बुक करते हैं, जैसे Room ऑब्जेक्ट | resourceObjectApiName |
| Resource Name Field | वह फ़ील्ड जो हर संसाधन के नाम के रूप में दिखता है | resourceNameField |
| क्षमता फ़ील्ड (Capacity Field) | एक संसाधन एक साथ कितनी बुकिंग ले सकता है। स्लॉट पर 3/5 दिखता है और भरने पर बंद हो जाता है। | capacityField |
| Booking Object API Name | वह ऑब्जेक्ट जिसमें हर बुकिंग सहेजी जाती है | resourceBookingObject |
| Booking Date Field | बुकिंग ऑब्जेक्ट पर तारीख फ़ील्ड | bookingDateField |
| Booking Start Time Field, Booking End Time Field | बुकिंग ऑब्जेक्ट पर समय फ़ील्ड | bookingStartTimeField, bookingEndTimeField |
| Booking Resource Field | बुकिंग से संसाधन तक का lookup | bookingResourceField |
| टकराव व्यवहार (Conflict Behavior) | block (डिफ़ॉल्ट), skip या allow लिखें | conflictBehavior |
| Parent Record Id | वह रिकॉर्ड जिससे बुकिंग जुड़ी हैं, जैसे {!recordId} | recordId |
| Parent Record Relationship Field | बुकिंग से उस parent तक का lookup | relationshipFieldApiName |
यहाँ चेकबॉक्स आप खुद सेट करते हैं। Config Name के बिना हर चेकबॉक्स (Required, Show Inline, Output Date Ranges as JSON और बाकी) वैसा ही रहता है जैसा आप स्क्रीन पर टिक करते हैं।
बनाने से पहले देख लें
बिना लॉगिन लाइव डेमो आज़माएँ, या जिस दिन MultiDatePick Salesforce AppExchange पर आए, उस दिन सूचना पाएँ।
Flow में अटके हैं? Support@MultiDatePick.com