संस्थाओं और एक्सटेंशन के विरुद्ध डेटा संग्रहीत करना

संस्थाओं और एक्सटेंशन के विरुद्ध डेटा संग्रहीत करना

इस पृष्ठ का अनुवाद AI उपकरणों का उपयोग करके किया गया है और इसमें त्रुटियाँ हो सकती हैं। सबसे सटीक और नवीनतम विवरण के लिए, कृपया मूल अंग्रेजी संस्करण को देखें।

डेटा स्टोरेज: संस्थाओं और एक्सटेंशन के विरुद्ध डेटा संग्रहीत करना

जब आप Zoho Projects के लिए कोई एक्सटेंशन बनाते हैं, तो आपको एक्सटेंशन के डेटा को कहीं संग्रहीत करना पड़ सकता है। हम संस्थाओं और एक्सटेंशन के विरुद्ध ऐसे डेटा को संग्रहीत करने के लिए कुंजी-मान जोड़ियों का उपयोग करते हैं। इसलिए, RDBMS जैसे पारंपरिक डेटाबेस की आवश्यकता समाप्त हो जाती है, जहाँ डेटा पंक्तियों और स्तंभों में संग्रहीत होता है।

संस्था गुणधर्म

कुंजी-मान जोड़ी क्या है?

'कुंजी-मान' एक प्रारूप है जिसमें डेटा संग्रहीत किया जा सकता है। आप किसी संस्था या एक्सटेंशन की संपत्ति या विशेषता को कुंजी-मान जोड़ी में संग्रहीत कर सकते हैं। कुंजी एक अद्वितीय स्ट्रिंग होगी और मान एक JSON ऑब्जेक्ट होगा। सत्र की जानकारी, उपयोगकर्ता प्रोफाइल और वरीयताएँ जैसे डेटा को कुंजी-मान जोड़ियों के रूप में संग्रहीत किया जा सकता है। आप उन संस्थाओं के विरुद्ध डेटा संग्रहीत कर सकते हैं जिन्हें हम समर्थन करते हैं और Zoho Projects के लिए जो एक्सटेंशन आप विकसित करते हैं।

किसी संस्था के विरुद्ध डेटा संग्रहीत करना

Zoho Projects Project, Task और Issue संस्थाओं का समर्थन करता है। आप अपनी संबंधित संस्थाओं के विरुद्ध प्रोजेक्ट-विशेष, Task-विशेष या समस्या-विशेष डेटा संग्रहीत करने में सक्षम होंगे। कुंजी एक अद्वितीय स्ट्रिंग होगी और डेटा एक JSON ऑब्जेक्ट होगा जिसे भविष्य में कुंजी से पहचाना जाना होगा। आप निम्नलिखित तरीकों का उपयोग करके किसी संस्था के विरुद्ध संग्रहीत डेटा को क्रमशः संग्रहीत, पुनः प्राप्त, अपडेट और हटा सकते हैं।

यदि वर्तमान उपयोगकर्ता के पास केवल READ पहुँच है, तो वे केवल डेटा को पुनः प्राप्त कर सकेंगे, अर्थात् retrieve() को केवल आह्वान किया जा सकता है। यदि उनके पास EDIT पहुँच है, तो 'store()', 'update()', और 'remove()' जैसे अन्य कार्य भी आह्वान किए जा सकते हैं।

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

किसी संस्था के विरुद्ध संग्रहीत डेटा को अपडेट करता है। इस विधि का तर्क निम्नलिखित चार पूर्वनिर्धारित कुंजियों के साथ एक JSON ऑब्जेक्ट है:
तर्क नाम डेटा प्रकार विवरण
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

किसी विशेष संस्था के विरुद्ध संग्रहीत डेटा को हटाता है। इस विधि का तर्क वह ID है जो 'entity.store()' विधि का उपयोग करके समान डेटा को संग्रहीत करते समय आउटपुट के रूप में उत्पन्न हुआ था।


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

एक्सटेंशन के विरुद्ध संग्रहीत डेटा को अपडेट करता है। इस विधि का तर्क निम्नलिखित पूर्वनिर्धारित keys के साथ एक JSON object है:
तर्क का नाम डेटा प्रकार विवरण
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

एक विशिष्ट एक्सटेंशन के विरुद्ध संग्रहीत डेटा को हटाता है। इस पद्धति का तर्क वह ID है जो तब जेनरेट किया गया था जब समान डेटा को app.store() पद्धति का उपयोग करके संग्रहीत किया गया था।


zohoprojects.app.remove(1587134426)।then(function(response)
/* Output
{
  "status": "success"
}
*/
);

एक्सटेंशन प्रॉपर्टीज़ की सीमाएँ

  • किसी कुंजी के विरुद्ध संग्रहीत मान एक बार में 50KB से अधिक नहीं होना चाहिए।
  • प्रति एक्सटेंशन अधिकतम 100 कुंजी-मान जोड़े ही संग्रहीत किए जा सकते हैं।
  • एक्सटेंशन प्रॉपर्टी में संग्रहीत मान एक वैध JSON प्रारूप में होना चाहिए।
  • एक्सटेंशन प्रॉपर्टी पर समवर्ती संपादन सुसंगतता सुनिश्चित नहीं करते हैं। अर्थात्, जब दो अलग-अलग उपयोगकर्ता एक ही एक्सटेंशन प्रॉपर्टी में एक ही समय पर परिवर्तन करते हैं, तो केवल सबसे हाल का परिवर्तन सहेजा जाएगा और पहला परिवर्तन खो जाएगा या अधिलेखित हो जाएगा।
आप एक्सटेंशन के विरुद्ध संग्रहीत डेटा को निम्नलिखित पद्धतियों का उपयोग करके क्रमशः संग्रहीत, पुनर्प्राप्त, अपडेट और हटा सकते हैं।