मैं openerp
के वेब देव के लिए नया हूं, मैं कुछ मदद की सराहना करता हूं। मैं गिनती टाइमर विजेट बनाना चाहता हूं, उदाहरण के लिए textbox
में, स्टार्ट और स्टॉप बटन (मेरे नए कस्टम फ़ील्ड या अलग में शामिल) के साथ।ओपनरप वेब क्लाइंट फ़ील्ड को कस्टमाइज़ करने के लिए कैसे करें (मूल फ़ील्ड विजेट का विस्तार करें)
मैंने समय गिनने के लिए एक छोटा javascript
फ़ंक्शन बनाया।
क्या मुझे मूल FieldChar
का विस्तार करके एक नया विजेट बनाना चाहिए? एक नया प्रकार का क्षेत्र बनाएं?
मैं अपना काउंटर कोड कहां रखूं, और char
फ़ील्ड (या नए प्रकार के फ़ील्ड) पर इसे कैसे प्रदर्शित करूं?
मैं कैसे कुछ के साथ openerp.web.form.FieldChar
तरह का विस्तार करने के बारे में कुछ दस्तावेज़ मिले:
openerp.web_mymodule = function(openerp) {
openerp.web.form.Field.include({
init: function(view, node) {
console.log('mine');
this._super(view, node);
}
});
}
मैं कुछ मार्गदर्शन की जरूरत भी कैसे इंटरफ़ेस काम करता है के बारे में openerp's
डॉक के साथ एक साथ यह सब डाल करने के लिए।
अग्रिम धन्यवाद है
यहाँ जहां मैं हूं: मॉड्यूल: web_uptimer
web_uptimer.js:
openerp.web_uptimer = function (openerp)
{
openerp.web.form.widgets.add('uptimer', 'openerp.web_uptimer.CountUp');
openerp.web_uptimer.CountUp = openerp.web.form.FieldChar.extend(
{
template : "uptimer.template",
init: function (view, code) {
this._super(view, code);
console.log('counting...');
alert('counting...');
}
});
}
web_uptimer.xml:
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<t t-name="uptimer.template">
<html>
</html>
</t>
</templates>
मेरी त्वरित गिनती अप टाइमर परीक्षण:
<html>
<head>
<title></title>
<script type="text/javascript">
var counter = 0;
var minutes = 0;
var hours = 0;
var timer;
var todisplay;
var h2disp;
var m2disp;
var s2disp;
function countUP()
{
counter = counter + 1;//increment the counter by 1
if(counter == 60)
{
counter = 0;
minutes = minutes + 1;
if(minutes == 60)
{
minutes = 0;
hours = hours + 1
}
}
if(counter < 10)
{
s2disp = "0" + counter;
}
else
{
s2disp = counter;
}
if(minutes < 10)
{
m2disp = "0" + minutes;
}
else
{
m2disp = minutes;
}
if(hours < 10)
{
h2disp = "0" + hours;
}
else
{
h2disp = hours;
}
todisplay = h2disp + ":" + m2disp + ":" + s2disp;
document.getElementById("timer_container").innerHTML = todisplay;
}
</script>
</head>
<body onload='timer=setInterval("countUP()", 1000);'>
<div id="timer_container">00:00:00</div>
<div>
<button onclick='clearInterval(timer);'>Stop Timer</button>
<button onclick='timer=setInterval("countUP()", 1000);'>Continue Timer</button>
</div>
</body>
</html>
आप सही रास्ते पर हैं। यहां प्रलेखन पर एक नज़र डालें: http: //doc.openerp।कॉम/ट्रंक/डेवलपर्स/वेब/मॉड्यूल/अंत में वे टाइमर विजेट का उदाहरण लेते हैं! : डी मैंने इसका परीक्षण किया, लेकिन काफी व्याख्यात्मक लगता है। – TimoSolo
उत्तर तीमुथियुस के लिए धन्यवाद। मैं web_example की कोशिश कर रहा हूं जिसने मुझे बताया है। कुछ मुद्दों के बाद (मेन्यूटेम टैग पार्स त्रुटि) मैं काउंटर प्रदर्शित करने का प्रबंधन करता हूं (यह एक शुरुआत है !!!) लेकिन बटन फ़ंक्शंस कॉल नहीं कर रहे हैं ... क्या यह 6.1 पर काम कर रहा है? (मुझे आश्चर्य है कि जिस दस्तावेज़ से आपने मुझे लिंक किया है वह ट्रंक स्थित है) मैं कोड (एक बटन और अलर्ट) को सरल बनाने की कोशिश कर रहा हूं लेकिन काम नहीं कर रहा हूं। लगता है कि "घटनाएं" काम नहीं करती हैं या नहीं सुनाई जाती हैं ... कोई विचार? अग्रिम धन्यवाद, मैं अभी भी आगे बढ़ रहा हूं ताकि यह अच्छा हो –