[IMP] survey: check_token, view for survey response
bzr revid: chm@openerp.com-20130215130924-uiy66a1q9n5yqoud
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_survey_type_manager,survey.type.manager,model_survey_type,base.group_tool_manager,1,1,1,1
|
||||
access_survey_request_manager,survey.request manager,model_survey_request,base.group_tool_manager,1,1,1,1
|
||||
access_survey_tbl_column_heading_manager,survey.tbl.column.heading manager,model_survey_tbl_column_heading,base.group_tool_manager,1,1,1,1
|
||||
access_survey_res_partner_user,survey.res.partner.user,base.model_res_partner,base.group_tool_user,1,1,1,1
|
||||
access_survey_user,survey.user,model_survey,base.group_tool_user,1,1,1,1
|
||||
@@ -9,7 +8,6 @@ access_survey_question_user,survey.question user,model_survey_question,base.grou
|
||||
access_survey_answer_user,survey.answer user,model_survey_answer,base.group_tool_user,1,1,1,1
|
||||
access_survey_response_user,survey.response user,model_survey_response,base.group_tool_user,1,1,1,1
|
||||
access_survey_response_answer_user,survey.response.answer user,model_survey_response_answer,base.group_tool_user,1,1,1,1
|
||||
access_survey_history_user,survey.history.user,model_survey_history,base.group_tool_user,1,1,1,1
|
||||
access_survey_response_line_user,survey.response.line user,model_survey_response_line,base.group_tool_user,1,1,1,1
|
||||
access_survey_res_partner_user,survey.res.partner.user,base.model_res_partner,base.group_tool_user,1,1,1,1
|
||||
access_survey_survey_user,survey.survey.user,model_survey,base.group_survey_user,1,1,1,1
|
||||
@@ -18,7 +16,6 @@ access_survey_question_survey_user,survey.question.survey.user,model_survey_ques
|
||||
access_survey_answer_survey_user,survey.answer.survey.user,model_survey_answer,base.group_survey_user,1,1,1,1
|
||||
access_survey_response_survey_user,survey.response.survey.user,model_survey_response,base.group_survey_user,1,1,1,1
|
||||
access_survey_response_answer_survey_user,survey.response.answer.survey.user,model_survey_response_answer,base.group_survey_user,1,1,1,1
|
||||
access_survey_history_survey_user,survey.history.survey.user,model_survey_history,base.group_survey_user,1,1,1,1
|
||||
access_survey_response_line_survey_user,survey.response.line.survey.user,model_survey_response_line,base.group_survey_user,1,1,1,1
|
||||
access_survey_question_column_heading_survey_user,survey.question.column.heading.survey.user,model_survey_question_column_heading,base.group_survey_user,1,0,0,0
|
||||
access_survey_question_column_heading_user,survey.question.column.heading user,model_survey_question_column_heading,base.group_tool_user,1,1,1,1
|
||||
|
||||
|
+16
-53
@@ -20,15 +20,12 @@
|
||||
##############################################################################
|
||||
|
||||
import copy
|
||||
from datetime import datetime
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from time import strftime
|
||||
import os
|
||||
|
||||
from openerp import netsvc, tools
|
||||
from openerp.osv import fields, osv
|
||||
from openerp.tools.translate import _
|
||||
|
||||
|
||||
class survey_type(osv.osv):
|
||||
_name = 'survey.type'
|
||||
_description = 'Survey Type'
|
||||
@@ -38,6 +35,7 @@ class survey_type(osv.osv):
|
||||
}
|
||||
survey_type()
|
||||
|
||||
|
||||
class survey(osv.osv):
|
||||
_name = 'survey'
|
||||
_description = 'Survey'
|
||||
@@ -231,6 +229,7 @@ class survey(osv.osv):
|
||||
|
||||
survey()
|
||||
|
||||
|
||||
class survey_page(osv.osv):
|
||||
_name = 'survey.page'
|
||||
_description = 'Survey Pages'
|
||||
@@ -281,6 +280,7 @@ class survey_page(osv.osv):
|
||||
|
||||
survey_page()
|
||||
|
||||
|
||||
class survey_question(osv.osv):
|
||||
_name = 'survey.question'
|
||||
_description = 'Survey Question'
|
||||
@@ -592,6 +592,7 @@ class survey_question_column_heading(osv.osv):
|
||||
}
|
||||
survey_question_column_heading()
|
||||
|
||||
|
||||
class survey_answer(osv.osv):
|
||||
_name = 'survey.answer'
|
||||
_description = 'Survey Answer'
|
||||
@@ -649,19 +650,20 @@ class survey_answer(osv.osv):
|
||||
|
||||
survey_answer()
|
||||
|
||||
|
||||
class survey_response(osv.osv):
|
||||
_name = "survey.response"
|
||||
_rec_name = 'date_create'
|
||||
_columns = {
|
||||
'date_deadline': fields.date("Deadline date", help="Date by which the person can respond to the survey"),
|
||||
'survey_id' : fields.many2one('survey', 'Survey', required=1, ondelete='cascade'),
|
||||
'survey_id' : fields.many2one('survey', 'Survey', required=1, readonly=1, ondelete='cascade'),
|
||||
'date_create' : fields.datetime('Create Date', required=1),
|
||||
'response_type' : fields.selection([('manually', 'Manually'), ('link', 'Link')], 'Answer Type', required=1, readonly=1),
|
||||
'response_type' : fields.selection([('manually', 'Manually'), ('link', 'Link')], 'Answer Type', required=1),
|
||||
'question_ids' : fields.one2many('survey.response.line', 'response_id', 'Answer'),
|
||||
'state' : fields.selection([('new', 'Not Started'),('done', 'Finished'),('skip', 'Not Finished')], 'Status', readonly=True),
|
||||
'token': fields.char("Indentification token"),
|
||||
'partner_id' : fields.many2one('res.partner', 'Partner'),
|
||||
'email': fields.char("Email", size=64),
|
||||
'state' : fields.selection([('new', 'Wait answer'), ('done', 'Finished'), ('skip', 'Not Finished')], 'Status', readonly=True),
|
||||
'token': fields.char("Indentification token", readonly=1),
|
||||
'partner_id' : fields.many2one('res.partner', 'Partner', readonly=1),
|
||||
'email': fields.char("Email", size=64, readonly=1),
|
||||
}
|
||||
_defaults = {
|
||||
'state' : lambda * a: "new",
|
||||
@@ -683,6 +685,7 @@ class survey_response(osv.osv):
|
||||
|
||||
survey_response()
|
||||
|
||||
|
||||
class survey_response_line(osv.osv):
|
||||
_name = 'survey.response.line'
|
||||
_description = 'Survey Response Line'
|
||||
@@ -707,6 +710,7 @@ class survey_response_line(osv.osv):
|
||||
|
||||
survey_response_line()
|
||||
|
||||
|
||||
class survey_tbl_column_heading(osv.osv):
|
||||
_name = 'survey.tbl.column.heading'
|
||||
_order = 'name'
|
||||
@@ -719,6 +723,7 @@ class survey_tbl_column_heading(osv.osv):
|
||||
|
||||
survey_tbl_column_heading()
|
||||
|
||||
|
||||
class survey_response_answer(osv.osv):
|
||||
_name = 'survey.response.answer'
|
||||
_description = 'Survey Answer'
|
||||
@@ -735,6 +740,7 @@ class survey_response_answer(osv.osv):
|
||||
|
||||
survey_response_answer()
|
||||
|
||||
|
||||
class res_partner(osv.osv):
|
||||
_inherit = "res.partner"
|
||||
_name = "res.partner"
|
||||
@@ -743,47 +749,4 @@ class res_partner(osv.osv):
|
||||
}
|
||||
res_partner()
|
||||
|
||||
class survey_request(osv.osv):
|
||||
_name = "survey.request"
|
||||
_order = 'date_deadline'
|
||||
_rec_name = 'date_deadline'
|
||||
|
||||
_columns = {
|
||||
'date_deadline': fields.date("Deadline date"),
|
||||
'token': fields.char("Indentification token"),
|
||||
'partner_id': fields.many2one("res.partner", "Partner"),
|
||||
'email': fields.char("Email", size=64),
|
||||
'survey_id': fields.many2one("survey", "Survey", required=1, ondelete='cascade'),
|
||||
'response_id': fields.many2one('survey.response', 'Answer'),
|
||||
'state': fields.selection([('draft','Draft'),('cancel', 'Cancelled'),('waiting_answer', 'Waiting Answer'),('done', 'Done')], 'Status', readonly=1)
|
||||
}
|
||||
_defaults = {
|
||||
'state': lambda * a: 'draft',
|
||||
# 'date_deadline': lambda * a : (datetime.now() + relativedelta(months=+1)).strftime("%Y-%m-%d %H:%M:%S")
|
||||
}
|
||||
def survey_req_waiting_answer(self, cr, uid, ids, arg):
|
||||
self.write(cr, uid, ids, { 'state' : 'waiting_answer'})
|
||||
return True
|
||||
|
||||
def survey_req_draft(self, cr, uid, ids, arg):
|
||||
self.write(cr, uid, ids, { 'state' : 'draft'})
|
||||
return True
|
||||
|
||||
def survey_req_done(self, cr, uid, ids, arg):
|
||||
self.write(cr, uid, ids, { 'state' : 'done'})
|
||||
return True
|
||||
|
||||
def survey_req_cancel(self, cr, uid, ids, arg):
|
||||
self.write(cr, uid, ids, { 'state' : 'cancel'})
|
||||
return True
|
||||
|
||||
def on_change_partner(self, cr, uid, ids, partner_id, context=None):
|
||||
if partner_id:
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
partner = partner_obj.browse(cr, uid, partner_id, context=context)
|
||||
return {'value': {'email': partner.email}}
|
||||
return {}
|
||||
|
||||
survey_request()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
@@ -999,17 +999,46 @@
|
||||
Survey Response
|
||||
-->
|
||||
|
||||
<record model="ir.ui.view" id="survey_response_form">
|
||||
<field name="name">survey_response_form</field>
|
||||
<record id="survey_response_search" model="ir.ui.view">
|
||||
<field name="name">survey_response_search</field>
|
||||
<field name="model">survey.response</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Survey Answer">
|
||||
<search string="Search Survey">
|
||||
<field name="survey_id"/>
|
||||
<field name="date_create"/>
|
||||
<field name="email"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="response_type"/>
|
||||
<field name="question_ids" nolabel="1" colspan="4" />
|
||||
<field name="state"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Survey" domain="[]" context="{'group_by':'survey_id'}"/>
|
||||
<filter string="Email" domain="[]" context="{'group_by':'email'}"/>
|
||||
<filter string="Partner" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="survey_response_tree">
|
||||
<field name="name">survey_response_tree</field>
|
||||
<field name="model">survey.response</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Survey Response" version="7.0">
|
||||
<header>
|
||||
<field name="state" widget="statusbar"/>
|
||||
</header>
|
||||
<sheet>
|
||||
<group col="2">
|
||||
<group>
|
||||
<field name="survey_id"/>
|
||||
<field name="date_create"/>
|
||||
<field name="date_deadline"/>
|
||||
<field name="response_type"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="partner_id"/>
|
||||
<field name="email"/>
|
||||
<field name="token"/>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
@@ -1018,16 +1047,36 @@
|
||||
<field name="name">survey_response_tree</field>
|
||||
<field name="model">survey.response</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Survey Answer">
|
||||
<tree string="Survey Response" version="7.0">
|
||||
<field name="survey_id"/>
|
||||
<field name="date_create"/>
|
||||
<field name="date_deadline"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="email"/>
|
||||
<field name="response_type"/>
|
||||
<field name="state"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="action_survey_response">
|
||||
<field name="name">Survey Type</field>
|
||||
<field name="res_model">survey.response</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="survey_response_tree"></field>
|
||||
<field name="search_view_id" ref="survey_response_search"/>
|
||||
<field name="help" type="html">
|
||||
<p>
|
||||
Nobody have reply to your surveys.
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<menuitem name="Survey Responses" id="menu_survey_type_form1"
|
||||
action="action_survey_response" parent="menu_surveys"
|
||||
groups="base.group_tool_manager" sequence="3"/>
|
||||
|
||||
<!--
|
||||
Survey Response Answer
|
||||
-->
|
||||
@@ -1080,86 +1129,6 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Survey Request
|
||||
-->
|
||||
|
||||
<record model="ir.ui.view" id="survey_request_form">
|
||||
<field name="name">survey_request_form</field>
|
||||
<field name="model">survey.request</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Request" version="7.0">
|
||||
<header>
|
||||
<button name="survey_req_draft" string="Set to Draft" states="cancel,done" type="object"/>
|
||||
<button name="survey_req_waiting_answer" string="Waiting Answer" states="draft" type="object" class="oe_highlight"/>
|
||||
<button name="survey_req_done" string="Done" states="waiting_answer" type="object" class="oe_highlight"/>
|
||||
<button name="survey_req_cancel" string="Cancel" states="waiting_answer" type="object"/>
|
||||
<field name="state" widget="statusbar" statusbar_visible="draft,waiting_answer"/>
|
||||
</header>
|
||||
<sheet string="Survey Request">
|
||||
<group class="oe_header">
|
||||
<field name="date_deadline"/>
|
||||
<field name="survey_id"/>
|
||||
<field name="partner_id" on_change="on_change_partner(partner_id)"/>
|
||||
<field name="email"/>
|
||||
<field name="response_id" readonly="1"/>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="survey_request_tree">
|
||||
<field name="name">survey_request_tree</field>
|
||||
<field name="model">survey.request</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Evaluation Plan Phase" colors="red:date_deadline<current_date">
|
||||
<field name="date_deadline"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="email"/>
|
||||
<field name="survey_id"/>
|
||||
<field name="response_id" />
|
||||
<field name="state" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="survey_request_search" model="ir.ui.view">
|
||||
<field name="name">survey_request_search</field>
|
||||
<field name="model">survey.request</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Survey">
|
||||
<field name="email" string="Survey"/>
|
||||
<separator/>
|
||||
<filter icon="terp-gtk-media-pause" string="Waiting Answer" domain="[('state','=','waiting_answer')]"/>
|
||||
<filter icon="terp-emblem-important" string="Late" domain="[('date_deadline','<',current_date)]"/>
|
||||
<separator/>
|
||||
<filter string="My Survey(s)" icon="terp-personal" domain="[('partner_id.user_id.id','=',uid)]"/>
|
||||
<field name="survey_id" widget="selection"/>
|
||||
<field name="partner_id"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Survey" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'survey_id'}"/>
|
||||
<filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="action_survey_request_tree">
|
||||
<field name="name">Survey Requests</field>
|
||||
<field name="res_model">survey.request</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">['|', ('partner_id.user_id.id','=',uid), ('survey_id.responsible_id.id','=',uid)]</field>
|
||||
<field name="view_id" ref="survey_request_tree"></field>
|
||||
<field name="search_view_id" ref="survey_request_search"/>
|
||||
</record>
|
||||
|
||||
<menuitem name="Survey Requests" id="menu_survey_type_form1"
|
||||
action="action_survey_request_tree" parent="menu_surveys"
|
||||
groups="base.group_tool_manager" sequence="3"/>
|
||||
|
||||
<!--
|
||||
Survey Type
|
||||
-->
|
||||
@@ -1222,12 +1191,5 @@
|
||||
res_model="survey.answer"
|
||||
src_model="survey.question"/>
|
||||
|
||||
<act_window
|
||||
context="{'search_default_survey_id': active_id, 'default_survey_id': active_id}"
|
||||
id="act_survey_request"
|
||||
name="Survey Requests"
|
||||
res_model="survey.request"
|
||||
src_model="survey"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -209,24 +209,31 @@ class survey_question_wiz(osv.osv_memory):
|
||||
|
||||
def _check_token(self, cr, uid, survey_id, context):
|
||||
# get if the token of the partner or anonymous user is valid
|
||||
res = {'partner_id': False, 'response_id': False, 'state': None}
|
||||
|
||||
if not survey_id:
|
||||
return res
|
||||
|
||||
survey_browse = self.pool.get('survey').browse(cr, uid, survey_id, context=context)
|
||||
if False and survey_browse.responsible_id.id == uid:
|
||||
res['partner_id'] = survey_browse.responsible_id.partner_id.id or False
|
||||
return res
|
||||
|
||||
if survey_browse.responsible_id.id == uid:
|
||||
response_id = False
|
||||
partner_id = survey_browse.responsible_id.partner_id.id or False
|
||||
sur_response_obj = self.pool.get('survey.response')
|
||||
dom = [('survey_id', '=', survey_id), ('state', 'in', ['new', 'skip']), "|", ('date_deadline', '=', None), ('date_deadline', '<', datetime.now())]
|
||||
|
||||
if context.get("survey_token", None):
|
||||
response_id = sur_response_obj.search(cr, uid, dom + [("token", "=", context.get("survey_token", None))], context=context, limit=1, order="date_deadline DESC")
|
||||
else:
|
||||
sur_response_obj = self.pool.get('survey.response')
|
||||
|
||||
pid = self.pool.get('res.users').browse(cr, uid, uid, context=context).partner_id.id
|
||||
response_id = sur_response_obj.search(cr, uid, [
|
||||
('survey_id', '=', survey_browse.id), ('state', '=', 'new'),
|
||||
'|', ('partner_id', '=', pid), ("token", "=", context.get("survey_token", None)),
|
||||
'|', ('date_deadline', '=', None), ('date_deadline', '<', datetime.now())], context=context, limit=1)
|
||||
if response_id:
|
||||
sur_response_browse = sur_response_obj.browse(cr, uid, response_id[0], context=context)
|
||||
partner_id = sur_response_browse.partner_id.id or False
|
||||
response_id = sur_response_obj.search(cr, uid, dom + [('partner_id', '=', pid)], context=context, limit=1, order="date_deadline DESC")
|
||||
|
||||
return {'partner_id': partner_id or False, 'response_id': response_id and response_id[0] or False}
|
||||
if response_id:
|
||||
sur_response_browse = sur_response_obj.browse(cr, uid, response_id[0], context=context)
|
||||
res['partner_id'] = sur_response_browse.partner_id.id or False
|
||||
res['state'] = sur_response_browse.state
|
||||
|
||||
return res
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
|
||||
"""
|
||||
@@ -469,10 +476,10 @@ class survey_question_wiz(osv.osv_memory):
|
||||
tot_page_id = self.pool.get('survey').browse(cr, uid, context.get('survey_id', False))
|
||||
tot_per = (float(100) * (int(field.split('_')[2]) + 1) / len(tot_page_id.page_ids))
|
||||
value[field] = tot_per
|
||||
response_obj = self.pool.get('survey.response')
|
||||
sur_response_obj = self.pool.get('survey.response')
|
||||
surv_name_wiz = self.pool.get('survey.name.wiz')
|
||||
if context.get('response_id') and int(context['response_id'][0]) > 0:
|
||||
response_ans = response_obj.browse(cr, uid, context['response_id'][context['response_no']])
|
||||
response_ans = sur_response_obj.browse(cr, uid, context['response_id'][context['response_no']])
|
||||
fields_list.sort()
|
||||
|
||||
for que in response_ans.question_ids:
|
||||
@@ -552,26 +559,25 @@ class survey_question_wiz(osv.osv_memory):
|
||||
click_state = True
|
||||
click_update = []
|
||||
surv_name_wiz = self.pool.get('survey.name.wiz')
|
||||
surv_all_resp_obj = self.pool.get('survey.response')
|
||||
sur_response_obj = self.pool.get('survey.response')
|
||||
surv_tbl_column_obj = self.pool.get('survey.tbl.column.heading')
|
||||
survey_obj = self.pool.get('survey')
|
||||
resp_obj = self.pool.get('survey.response.line')
|
||||
res_ans_obj = self.pool.get('survey.response.answer')
|
||||
que_obj = self.pool.get('survey.question')
|
||||
sur_name_read = surv_name_wiz.read(cr, uid, context.get('sur_name_id', False), [])
|
||||
response_id = 0
|
||||
sur_name_read = surv_name_wiz.read(cr, uid, context.get('sur_name_id', False), context=context)
|
||||
|
||||
if not sur_name_read['response']:
|
||||
response_id = surv_all_resp_obj.create(cr, uid, {'response_type': 'link', 'partner_id': check_token['partner_id'], 'date_create': datetime.now(), 'survey_id': context['survey_id']})
|
||||
surv_name_wiz.write(cr, uid, [context.get('sur_name_id', False)], {'response': tools.ustr(response_id)})
|
||||
else:
|
||||
response_id = int(sur_name_read['response'])
|
||||
elif check_token['response_id']:
|
||||
response_id = check_token['response_id']
|
||||
else:
|
||||
response_id = sur_response_obj.create(cr, uid, {'response_type': 'link', 'partner_id': check_token['partner_id'], 'date_create': datetime.now(), 'survey_id': context.get('survey_id')})
|
||||
|
||||
if response_id not in surv_all_resp_obj.search(cr, uid, []):
|
||||
response_id = surv_all_resp_obj.create(cr, uid, {'response_type': 'link', 'partner_id': check_token['partner_id'], 'date_create': datetime.now(), 'survey_id': context.get('survey_id', False)})
|
||||
surv_name_wiz.write(cr, uid, [context.get('sur_name_id', False)], {'response': tools.ustr(response_id)})
|
||||
surv_name_wiz.write(cr, uid, [context.get('sur_name_id', False)], {'response': tools.ustr(response_id)})
|
||||
sur_response_obj.write(cr, uid, response_id, {'state': 'skip'})
|
||||
|
||||
#click first time on next button then increemnet on total start suvey
|
||||
#click first time on next button then increment on total start suvey
|
||||
if not safe_eval(sur_name_read['store_ans']):
|
||||
survey_id = sur_name_read['survey_id'][0]
|
||||
survey_browse = survey_obj.read(cr, uid, survey_id)
|
||||
@@ -753,7 +759,7 @@ class survey_question_wiz(osv.osv_memory):
|
||||
if val and key.split('_')[1] == "commentcolumn" and key.split('_')[0] == que_id:
|
||||
for res_id in response_list:
|
||||
if key.split('_')[2] in res_id.split('_')[1]:
|
||||
a = res_ans_obj.write(cr, uid, [res_id.split('_')[0]], {'comment_field': val})
|
||||
res_ans_obj.write(cr, uid, [res_id.split('_')[0]], {'comment_field': val})
|
||||
sur_name_read['store_ans'][resp_id].update({key: val})
|
||||
|
||||
if comment_field and comment_value:
|
||||
|
||||
Reference in New Issue
Block a user