डेटा स्टोरेज: संस्थाओं और एक्सटेंशन के विरुद्ध डेटा संग्रहीत करना
संस्था गुणधर्म
कुंजी-मान जोड़ी क्या है?
'कुंजी-मान' एक प्रारूप है जिसमें डेटा संग्रहीत किया जा सकता है। आप किसी संस्था या एक्सटेंशन की संपत्ति या विशेषता को कुंजी-मान जोड़ी में संग्रहीत कर सकते हैं। कुंजी एक अद्वितीय स्ट्रिंग होगी और मान एक JSON ऑब्जेक्ट होगा। सत्र की जानकारी, उपयोगकर्ता प्रोफाइल और वरीयताएँ जैसे डेटा को कुंजी-मान जोड़ियों के रूप में संग्रहीत किया जा सकता है। आप उन संस्थाओं के विरुद्ध डेटा संग्रहीत कर सकते हैं जिन्हें हम समर्थन करते हैं और Zoho Projects के लिए जो एक्सटेंशन आप विकसित करते हैं।
किसी संस्था के विरुद्ध डेटा संग्रहीत करना
Zoho Projects Project, Task और Issue संस्थाओं का समर्थन करता है। आप अपनी संबंधित संस्थाओं के विरुद्ध प्रोजेक्ट-विशेष, Task-विशेष या समस्या-विशेष डेटा संग्रहीत करने में सक्षम होंगे। कुंजी एक अद्वितीय स्ट्रिंग होगी और डेटा एक JSON ऑब्जेक्ट होगा जिसे भविष्य में कुंजी से पहचाना जाना होगा। आप निम्नलिखित तरीकों का उपयोग करके किसी संस्था के विरुद्ध संग्रहीत डेटा को क्रमशः संग्रहीत, पुनः प्राप्त, अपडेट और हटा सकते हैं।
entity.store
var value = [
{"id" : "1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu","name" : "Sample.png"}
];
var count = 1;
zohoprojects.entity.store("6573492", value, count).then(function(response)
/* Output
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"sample.png\"}]",
"count" : 1,
"id": 1587134426
}
]
}
*/
);
| तर्क नाम | डेटा प्रकार | विवरण |
| कुंजी | स्ट्रिंग |
संस्था गुणधर्म की पहचान करने के लिए उपयोग की जाने वाली अद्वितीय स्ट्रिंग। केवल इसी कुंजी का उपयोग किया जाना चाहिएडेटा को पुनः प्राप्त करने के लिएबाद में। नोट: अधिकतम लंबाई: <200> TBD |
| मान | JSONObject | संपत्ति / डेटा जिसे संस्था के विरुद्ध संग्रहीत करना होगा। |
| गणना | पूर्णांक | संस्था के विरुद्ध संग्रहीत घटनाओं की संख्या। |
entity.retrieve
zohoprojects.entity.retrieve("6573492").then(function(response)
/*Output
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"update.png\"}]",
"id": 1587134426,
"count: 1
}
]
}
*/
);
entity.update
| तर्क नाम | डेटा प्रकार | विवरण |
| id | स्ट्रिंग | entity.store() विधि का उपयोग करके संस्था के विरुद्ध वर्तमान कुंजी को संग्रहीत करते समय आउटपुट के रूप में उत्पन्न ID। |
| कुंजी | स्ट्रिंग | नई कुंजी को संस्था के विरुद्ध मैप किया जाना होगा। आप पुरानी/वर्तमान कुंजी को बनाए रखने का विकल्प भी चुन सकते हैं। |
| मान | JSON ऑब्जेक्ट | डेटा या संपत्ति जिसे संस्था के विरुद्ध अपडेट किया जाना होगा। |
| गणना | पूर्णांक | संस्था के विरुद्ध अपडेट की गई घटनाओं की संख्या। |
var valueObj = [
{"id" : "1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu","name" : "Sample_New.png"}
];
zohoprojects.entity.update({id:"1587134426",key:"6573492",value:valueObj,count:2}).then(function(response)
/*Output
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"Sample_New.png\"}]",
"id": 1587134426,
"count" : 2
}
]
}
*/
);
entity.remove
zohoprojects।entity।remove(1587134426)।then(function(response)
/* आउटपुट
{
"status": "success"
}
*/
);
संस्था गुणधर्मों की सीमाएँ
- एक कुंजी के विरुद्ध संग्रहीत मान एक बार में 50KB से अधिक नहीं होना चाहिए।
- यह विधि 'app_settings', 'attachment_picker', 'blueprint_during', और 'top_band' स्थानों के लिए आह्वान नहीं किया जा सकता।
- संस्था गुणधर्म में संग्रहीत मान एक वैध JSON प्रारूप में होना चाहिए।
- संस्था गुणधर्म पर समवर्ती संपादन संगति सुनिश्चित नहीं करते हैं। अर्थात्, जब दो अलग-अलग उपयोगकर्ता एक ही समय में समान संस्था गुणधर्म में परिवर्तन करते हैं, तो केवल नवीनतम परिवर्तन सहेजा जाएगा और पूर्ववर्ती खो जाएगा/अधिलेखित हो जाएगा।
एक्सटेंशन गुणधर्म
एक्सटेंशन गुणधर्म क्या है?
यह एक कुंजी-मान जोड़ी है जो एक्सटेंशन के विरुद्ध स्वयं संग्रहीत है। हालाँकि, एक्सटेंशन के विरुद्ध संग्रहीत डेटा खो जाएगा यदि एक्सटेंशन उत्पाद से अनइंस्टॉल किया जाता है। जबकि, संस्था के विरुद्ध संग्रहीत डेटा तब भी बरकरार रहेगा यदि एक्सटेंशन अनइंस्टॉल किया जाता है क्योंकि केवल एक्सटेंशन-विशेष जानकारी हटाई जाती है और संस्था-विशेष डेटा अन्य एक्सटेंशन द्वारा पहुँचने के लिए अभी भी उपलब्ध होगा।
app.store
var value = [
{"id" : "1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu","name" : "Sample.png"}
];
zohoprojects.app.store("6573492", value).then(function(response)
/* आउटपुट
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"sample.png\"}]",
"id": 1587134426
}
]
}
*/
);
| तर्क का नाम | डेटा प्रकार | विवरण |
| key | string | एक्सटेंशन प्रॉपर्टी की पहचान करने के लिए उपयोग की जाने वाली अद्वितीय string। |
| value | JSONObject | वह प्रॉपर्टी/डेटा जिसे एक्सटेंशन के विरुद्ध संग्रहीत किया जाना है। |
app.retrieve
एक्सटेंशन के विरुद्ध संग्रहीत डेटा को पुनः प्राप्त करता है। इस विधि का तर्क वह key होना चाहिए जिसका उपयोग तब किया गया था जब इसे संग्रहीत किया गया था। डेटा को केवल तब ही पुनः प्राप्त किया जा सकता है जब यह विधि उस एक्सटेंशन से आह्वान की जाए जिसके विरुद्ध इसे संग्रहीत किया गया था। जब एक्सटेंशन को अनइंस्टॉल किया जाता है, तो डेटा हटा दिया जाएगा।
zohoprojects.app.retrieve("6573492").then(function(response)
/*आउटपुट
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"update.png\"}]",
"id": 1587134426
}
]
}
*/
);
app.update
| तर्क का नाम | डेटा प्रकार | विवरण |
| id | string | वह ID जो app.store() विधि का उपयोग करके एक्सटेंशन के विरुद्ध वर्तमान key को संग्रहीत करते समय आउटपुट के रूप में उत्पन्न किया गया था। |
| key | string | वह नई key जिसे एक्सटेंशन के विरुद्ध मैप किया जाना है। आप पुरानी/वर्तमान key को बनाए रखने का विकल्प भी चुन सकते हैं। |
| value | JSON Object | वह डेटा या प्रॉपर्टी जिसे एक्सटेंशन के विरुद्ध अपडेट किया जाना है। |
var valueObj = [
{"id" : "1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu","name" : "Sample_New.png"}
];
zohoprojects.app.update({id:"1587134426",key:"6573492",value:valueObj}).then(function(response)
/*Output
{
"properties": [
{
"key": "6573492",
"value": "[{\"id\":\"1-QabBt69U8myXYRDVU-1YiCo2k-JWRfu\",\"name\":\"Sample_New.png\"}]",
"id": 1587134426
}
]
}
*/
);
app.remove
zohoprojects.app.remove(1587134426)।then(function(response)
/* Output
{
"status": "success"
}
*/
);
एक्सटेंशन प्रॉपर्टीज़ की सीमाएँ
- किसी कुंजी के विरुद्ध संग्रहीत मान एक बार में 50KB से अधिक नहीं होना चाहिए।
- प्रति एक्सटेंशन अधिकतम 100 कुंजी-मान जोड़े ही संग्रहीत किए जा सकते हैं।
- एक्सटेंशन प्रॉपर्टी में संग्रहीत मान एक वैध JSON प्रारूप में होना चाहिए।
- एक्सटेंशन प्रॉपर्टी पर समवर्ती संपादन सुसंगतता सुनिश्चित नहीं करते हैं। अर्थात्, जब दो अलग-अलग उपयोगकर्ता एक ही एक्सटेंशन प्रॉपर्टी में एक ही समय पर परिवर्तन करते हैं, तो केवल सबसे हाल का परिवर्तन सहेजा जाएगा और पहला परिवर्तन खो जाएगा या अधिलेखित हो जाएगा।