[ADD]: Added tooltips for all state fields.

bzr revid: uco@tinyerp.co.in-20091123135238-oadv1oyefpsi9631
This commit is contained in:
uco (OpenERP) 2009-11-23 19:22:38 +05:30
parent 50ee2493f4
commit 47a820f7a1
26 changed files with 71 additions and 41 deletions

View File

@ -524,7 +524,8 @@ class account_fiscalyear(osv.osv):
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
'period_ids': fields.one2many('account.period', 'fiscalyear_id', 'Periods'),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'Status', readonly=True),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'State', readonly=True,
help='When fiscal year is created. The state is \'Draft\'. At the end of the year it is in \'Done\' state.'),
}
_defaults = {
@ -587,7 +588,8 @@ class account_period(osv.osv):
'date_start': fields.date('Start of Period', required=True, states={'done':[('readonly',True)]}),
'date_stop': fields.date('End of Period', required=True, states={'done':[('readonly',True)]}),
'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', required=True, states={'done':[('readonly',True)]}, select=True),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'Status', readonly=True)
'state': fields.selection([('draft','Draft'), ('done','Done')], 'State', readonly=True,
help='When monthly periods are created. The state is \'Draft\'. At the end of monthly period it is in \'Done\' state.'),
}
_defaults = {
'state': lambda *a: 'draft',
@ -669,7 +671,8 @@ class account_journal_period(osv.osv):
'period_id': fields.many2one('account.period', 'Period', required=True, ondelete="cascade"),
'icon': fields.function(_icon_get, method=True, string='Icon', type='char', size=32),
'active': fields.boolean('Active', required=True),
'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'State', required=True, readonly=True,
help='When journal period is created. The state is \'Draft\'. If a report is printed it comes to \'Printed\' state. When all transactions are done, it comes in \'Done\' state.'),
'fiscalyear_id': fields.related('period_id', 'fiscalyear_id', string='Fiscal Year', type='many2one', relation='account.fiscalyear'),
}
@ -754,7 +757,8 @@ class account_move(osv.osv):
'ref': fields.char('Ref', size=64),
'period_id': fields.many2one('account.period', 'Period', required=True, states={'posted':[('readonly',True)]}),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, states={'posted':[('readonly',True)]}),
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'State', required=True, readonly=True,
help='When new account move is created the state will be \'Draft\'. When all the payments are done it will be in \'Valid\' state.'),
'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}),
'to_check': fields.boolean('To Be Verified'),
'partner_id': fields.related('line_id', 'partner_id', type="many2one", relation="res.partner", string="Partner"),
@ -1604,7 +1608,7 @@ class account_subscription(osv.osv):
'period_total': fields.integer('Number of Periods', required=True),
'period_nbr': fields.integer('Period', required=True),
'period_type': fields.selection([('day','days'),('month','month'),('year','year')], 'Period Type', required=True),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'State', required=True, readonly=True),
'lines_id': fields.one2many('account.subscription.line', 'subscription_id', 'Subscription Lines')
}

View File

@ -126,7 +126,8 @@ class account_bank_statement(osv.osv):
'Entry lines', states={'confirm':[('readonly',True)]}),
'state': fields.selection([('draft', 'Draft'),('confirm', 'Confirmed')],
'State', required=True,
states={'confirm': [('readonly', True)]}, readonly="1"),
states={'confirm': [('readonly', True)]}, readonly="1",
help='When new statement is created the state will be \'Draft\'. And after getting confirmation from the bank it will be in \'Confirmed\' state.'),
'currency': fields.function(_currency, method=True, string='Currency',
type='many2one', relation='res.currency'),
}

View File

@ -377,7 +377,8 @@ class account_move_line(osv.osv):
'analytic_lines': fields.one2many('account.analytic.line', 'move_id', 'Analytic lines'),
'centralisation': fields.selection([('normal','Normal'),('credit','Credit Centralisation'),('debit','Debit Centralisation')], 'Centralisation', size=6),
'balance': fields.function(_balance, fnct_search=_balance_search, method=True, string='Balance'),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'Status', readonly=True),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'State', readonly=True,
help='When new move line is created the state will be \'Draft\'. When all the payments are done it will be in \'Valid\' state.'),
'tax_code_id': fields.many2one('account.tax.code', 'Tax Account', help="The Account can either be a base tax code or tax code account."),
'tax_amount': fields.float('Tax/Base Amount', digits=(16,int(tools.config['price_accuracy'])), select=True, help="If the Tax account is tax code account, this field will contain the taxed amount.If the tax account is base tax code,\
this field will contain the basic amount(without tax)."),

View File

@ -28,7 +28,7 @@
</record>
<record id="process_node_draftinvoices0" model="process.node">
<field name="menu_id" ref="account.menu_action_invoice_tree1_new"/>
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Draft Invoices&quot;&quot;&quot;" name="name"/>

View File

@ -189,7 +189,9 @@ class account_analytic_account(osv.osv):
'date': fields.date('Date End'),
'company_id': fields.many2one('res.company', 'Company', required=True),
'company_currency_id': fields.function(_get_company_currency, method=True, type='many2one', relation='res.currency', string='Currency'),
'state': fields.selection([('draft','Draft'), ('open','Open'), ('pending','Pending'), ('close','Close'),], 'State', required=True),
'state': fields.selection([('draft','Draft'), ('open','Open'), ('pending','Pending'), ('close','Close'),], 'State', required=True,
help='When an account is created its in \'Draft\' state. If any associated partner is there, it can be in \'Open\' state.\
If any pending balance is there it can be in \'Pending\'. And finally when all the transactions are over, it can be in \'Close\' state.'),
}
def _default_company(self, cr, uid, context={}):

View File

@ -100,7 +100,8 @@ class payment_order(osv.osv):
('draft', 'Draft'),
('open','Confirmed'),
('cancel','Cancelled'),
('done','Done')], 'State', select=True),
('done','Done')], 'State', select=True,
help='When an order is placed the state is \'Draft\'. Once the bank is confirmed the state is set to \'Confirmed\'. Then the order is paid the state is \'Done\'.'),
'line_ids': fields.one2many('payment.line','order_id','Payment lines',states={'done':[('readonly',True)]}),
'total': fields.function(_total, string="Total", method=True,
type='float'),

View File

@ -75,7 +75,8 @@ class auction_dates(osv.osv):
'acc_income': fields.many2one('account.account', 'Income Account', required=True),
'acc_expense': fields.many2one('account.account', 'Expense Account', required=True),
'adj_total': fields.function(_adjudication_get, method=True, string='Total Adjudication',store=True),
'state': fields.selection((('draft','Draft'),('closed','Closed')),'Status',select=1, readonly=True),
'state': fields.selection((('draft','Draft'),('closed','Closed')),'State',select=1, readonly=True,
help='When auction starts the state is \'Draft\'. At the end of auction, the state becomes \'Closed\'.'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account', required=True),
}
@ -442,7 +443,7 @@ class auction_lots(osv.osv):
# 'paid_vnd':fields.function(_is_paid_vnd,string='Seller Paid',method=True,type='boolean',store=True),
'paid_vnd':fields.boolean('Seller Paid'),
'paid_ach':fields.function(_is_paid_ach,string='Buyer invoice reconciled',method=True, type='boolean',store=True),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('sold','Sold'),('taken_away','Taken away')),'Status', required=True, readonly=True),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('sold','Sold'),('taken_away','Taken away')),'State', required=True, readonly=True),
'buyer_price': fields.function(_buyerprice, method=True, string='Buyer price',store=True),
'seller_price': fields.function(_sellerprice, method=True, string='Seller price',store=True),
'gross_revenue':fields.function(_grossprice, method=True, string='Gross revenue',store=True),
@ -989,7 +990,7 @@ class report_seller_auction(osv.osv):
'avg_price':fields.float('Avg adjudication',readonly=True),
'avg_estimation':fields.float('Avg estimation',readonly=True),
'date': fields.date('Create Date', required=True, select=1),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('sold','Sold')),'Status',readonly=True, select=1)
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('sold','Sold')),'State',readonly=True, select=1)
}
def init(self, cr):
@ -1199,7 +1200,7 @@ class report_auction_adjudication(osv.osv):
_auto = False
_columns = {
'name': fields.many2one('auction.dates','Auction date',readonly=True,select=1),
'state': fields.selection((('draft','Draft'),('close','Closed')),'Status', select=1),
'state': fields.selection((('draft','Draft'),('close','Closed')),'State', select=1),
'adj_total': fields.float('Total Adjudication'),
'date': fields.date('Date', readonly=True,select=1),
'user_id':fields.many2one('res.users', 'User',select=1)
@ -1305,7 +1306,7 @@ class report_object_encoded(osv.osv):
_description = "Object encoded"
_auto = False
_columns = {
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('invoiced','Invoiced')),'Status', required=True,select=1),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('invoiced','Invoiced')),'State', required=True,select=1),
'user_id':fields.many2one('res.users', 'User', select=1),
'estimation': fields.float('Estimation',select=2),
'date': fields.date('Create Date', required=True),
@ -1375,7 +1376,7 @@ class report_unclassified_objects(osv.osv):
'obj_num': fields.integer('Catalog Number'),
'obj_price': fields.float('Adjudication price'),
'lot_num': fields.integer('List Number', required=True, select=1 ),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('sold','Sold')),'Status', required=True, readonly=True),
'state': fields.selection((('draft','Draft'),('unsold','Unsold'),('paid','Paid'),('sold','Sold')),'State', required=True, readonly=True),
'obj_comm': fields.boolean('Commission'),
'bord_vnd_id': fields.many2one('auction.deposit', 'Depositer Inventory', required=True),
'ach_login': fields.char('Buyer Username',size=64),

View File

@ -314,7 +314,7 @@ class report_creator(osv.osv):
'model_ids': fields.many2many('ir.model', 'base_report_creator_report_model_rel', 'report_id','model_id', 'Reported Objects'),
'field_ids': fields.one2many('base_report_creator.report.fields', 'report_id', 'Fields to Display'),
'filter_ids': fields.one2many('base_report_creator.report.filter', 'report_id', 'Filters'),
'state': fields.selection([('draft','Draft'),('valid','Valid')], 'Status', required=True),
'state': fields.selection([('draft','Draft'),('valid','Valid')], 'State', required=True),
'sql_query': fields.function(_sql_query_get, method=True, type="text", string='SQL Query', store=True),
'group_ids': fields.many2many('res.groups', 'base_report_creator_group_rel','report_id','group_id','Authorized Groups'),
}

View File

@ -511,7 +511,9 @@ class crm_case(osv.osv):
'user_id': fields.many2one('res.users', 'Responsible'),
'history_line': fields.one2many('crm.case.history', 'case_id', 'Communication', readonly=1),
'log_ids': fields.one2many('crm.case.log', 'case_id', 'Logs History', readonly=1),
'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),
'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created. If the case is in progress the state is set to \'Open\'.\
When the case is over, the state is set to \'Done\'. If the case needs to be reviewed then the state is set to \'Pending\'.'),
'ref' : fields.reference('Reference', selection=_links_get, size=128),
'ref2' : fields.reference('Reference 2', selection=_links_get, size=128),

View File

@ -36,7 +36,7 @@ class crm_segmentation(osv.osv):
'description': fields.text('Description'),
'categ_id': fields.many2one('res.partner.category', 'Partner Category', required=True, help='The partner category that will be added to partners that match the segmentation criterions after computation.'),
'exclusif': fields.boolean('Exclusive', help='Check if the category is limited to partners that match the segmentation criterions. If checked, remove the category from partners that doesn\'t match segmentation criterions'),
'state': fields.selection([('not running','Not Running'),('running','Running')], 'Execution Status', readonly=True),
'state': fields.selection([('not running','Not Running'),('running','Running')], 'Execution State', readonly=True),
'partner_id': fields.integer('Max Partner ID processed'),
'segmentation_line': fields.one2many('crm.segmentation.line', 'segmentation_id', 'Criteria', required=True),
'som_interval': fields.integer('Days per Periode', help="A period is the average number of days between two cycle of sale or purchase for this segmentation. It's mainly used to detect if a partner has not purchased or buy for a too long time, so we suppose that his state of mind has decreased because he probably bought goods to another supplier. Use this functionality for recurring businesses."),

View File

@ -130,7 +130,9 @@ class event(osv.osv):
'register_prospect': fields.function(_get_prospect, method=True, string='Unconfirmed Registrations'),
'date_begin': fields.datetime('Beginning date', required=True),
'date_end': fields.datetime('Ending date', required=True),
'state': fields.selection([('draft','Draft'),('confirm','Confirmed'),('done','Done'),('cancel','Cancelled')], 'Status', readonly=True, required=True),
'state': fields.selection([('draft','Draft'),('confirm','Confirmed'),('done','Done'),('cancel','Cancelled')], 'State', readonly=True, required=True,
help='If event is created, the state is \'Draft\'. If event is confirmed for the particular dates the state is set to \'Confirmed\'.\
If the event is over, the state is set to \'Done\'. If event is cancelled the state is set to \'Cancelled\'.'),
'mail_auto_registr':fields.boolean('Mail Auto Register',help='Check this box if you want to use the automatic mailing for new registration'),
'mail_auto_confirm':fields.boolean('Mail Auto Confirm',help='Check this box if you want ot use the automatic confirmation emailing or the reminder'),
'mail_registr':fields.text('Registration Email',help='This email will be sent when someone subscribes to the event.'),

View File

@ -77,7 +77,8 @@ class hr_expense_expense(osv.osv):
('invoiced', 'Invoiced'),
('paid', 'Reimbursed'),
('cancelled', 'Cancelled')],
'State', readonly=True),
'State', readonly=True, help='When the expense request is created the state is \'Draft\'. It is confirmed by the user and request is sent to admin, the state is \'Waiting Confirmation\'.\
If the admin accepts it, the state is \'Accepted\'. If an invoice is made for the expense request, the state is \'Invoiced\'. If the expense is paid to user, the state is \'Reimbursed\'.'),
}
_defaults = {
'date' : lambda *a: time.strftime('%Y-%m-%d'),

View File

@ -96,7 +96,8 @@ class hr_holidays(osv.osv):
_columns = {
'name' : fields.char('Description', required=True, readonly=True, size=64, states={'draft':[('readonly',False)]}),
'state': fields.selection([('draft', 'Draft'), ('confirm', 'Waiting Validation'), ('refuse', 'Refused'), ('validate', 'Validated'), ('cancel', 'Cancelled')], 'Status', readonly=True),
'state': fields.selection([('draft', 'Draft'), ('confirm', 'Waiting Validation'), ('refuse', 'Refused'), ('validate', 'Validated'), ('cancel', 'Cancelled')], 'State', readonly=True, help='When the holiday request is created the state is \'Draft\'. It is confirmed by the user and request is sent to admin, the state is \'Waiting Validation\'.\
If the admin accepts it, the state is \'Validated\'. If it is refused, the state is \'Refused\'.'),
'date_from' : fields.datetime('Start Date', readonly=True, states={'draft':[('readonly',False)]}),
'user_id':fields.many2one('res.users', 'User', states={'draft':[('readonly',False)]}, select=True, readonly=True),
'date_to' : fields.datetime('End Date', readonly=True, states={'draft':[('readonly',False)]}),

View File

@ -15,7 +15,7 @@
<field name="to_invoice" widget="selection" />
<field name="amount_max"/>
<field name="amount_invoiced"/>
<separator colspan="4" string="Status"/>
<separator colspan="4" string="State"/>
<field name="state"/>
</group>
</field>

View File

@ -119,7 +119,9 @@ class idea_idea(osv.osv):
'count_votes' : fields.function(_vote_count, method=True, string="Count of votes", type="integer"),
'count_comments': fields.function(_comment_count, method=True, string="Count of comments", type="integer"),
'category_id': fields.many2one('idea.category', 'Category', required=True ),
'state': fields.selection([('draft','Draft'),('open','Opened'),('close','Accepted'),('cancel','Cancelled')], 'Status', readonly=True),
'state': fields.selection([('draft','Draft'),('open','Opened'),('close','Accepted'),('cancel','Cancelled')], 'State', readonly=True,
help='When the Idea is created the state is \'Draft\'. It is opened by the user, the state is \'Opened\'.\
If the idea is accepted, the state is \'Accepted\'.'),
'stat_vote_ids': fields.one2many('idea.vote.stat', 'idea_id', 'Statistics', readonly=True),
}

View File

@ -435,8 +435,10 @@ class mrp_production(osv.osv):
'product_lines': fields.one2many('mrp.production.product.line', 'production_id', 'Scheduled goods'),
'workcenter_lines': fields.one2many('mrp.production.workcenter.line', 'production_id', 'Workcenters Utilisation'),
'state': fields.selection([('draft','Draft'),('picking_except', 'Packing Exception'),('confirmed','Waiting Goods'),('ready','Ready to Produce'),('in_production','In Production'),('cancel','Cancelled'),('done','Done')],'Status', readonly=True),
'hour_total': fields.function(_production_calc, method=True, type='float', string='Total Hours', multi='workorder'),
'state': fields.selection([('draft','Draft'),('picking_except', 'Packing Exception'),('confirmed','Waiting Goods'),('ready','Ready to Produce'),('in_production','In Production'),('cancel','Cancelled'),('done','Done')],'State', readonly=True,
help='When the production order is created the state is set to \'Draft\'. If the order is confirmed the state is set to \'Waiting Goods\'. If any exceptions are there, the state is set to \'Packing Exception\'.\
If the stock is available then the state is set to \'Ready to Produce\'. When the production get started then the state is set to \'In Production\'. When the production is over, the state is set to \'Done\'.'),
'hour_total': fields.function(_production_calc, method=True, type='float', string='Total Hours', multi='workorder'),
'cycle_total': fields.function(_production_calc, method=True, type='float', string='Total Cycles', multi='workorder'),
'sale_name': fields.function(_sale_name_calc, method=True, type='char', string='Sale Name'),
@ -820,7 +822,9 @@ class mrp_procurement(osv.osv):
('cancel','Cancel'),
('ready','Ready'),
('done','Done'),
('waiting','Waiting')], 'Status', required=True),
('waiting','Waiting')], 'State', required=True,
help='When a procurement is created the state is set to \'Draft\'. If the procurement is confirmed, the state is set to \'Confirmed\'.\
After confirming the state is set to \'Running\'. If any exception arises in the order then the state is set to \'Exception\'. Once the exception is removed the state becomes \'Ready\'. It is in \'Waiting\'. state when the procurement is waiting for another one to finish.'),
'note' : fields.text('Note'),
}
_defaults = {

View File

@ -68,7 +68,7 @@ class mrp_production_workcenter_line(osv.osv):
return res
_inherit = 'mrp.production.workcenter.line'
_columns = {
'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pause'),('cancel','Canceled'),('done','Finished')],'Status', readonly=True),
'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pause'),('cancel','Canceled'),('done','Finished')],'State', readonly=True),
'date_start_date': fields.function(_get_date_date, method=True, string='Start Date', type='date'),
'date_planned': fields.related('production_id', 'date_planned', type='datetime', string='Date Planned'),
'date_planned_end': fields.function(_get_date_end, method=True, string='End Date', type='datetime'),

View File

@ -503,7 +503,7 @@ class mrp_repair_line(osv.osv, ProductChangeMixin):
'location_id': fields.many2one('stock.location', 'Source Location', required=True, select=True),
'location_dest_id': fields.many2one('stock.location', 'Dest. Location', required=True, select=True),
'move_id': fields.many2one('stock.move', 'Inventory Move', readonly=True),
'state': fields.selection([('draft','Draft'),('confirmed','Confirmed'),('done','Done'),('cancel','Canceled')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'),('confirmed','Confirmed'),('done','Done'),('cancel','Canceled')], 'State', required=True, readonly=True),
}
_defaults = {
'state': lambda *a: 'draft',

View File

@ -262,7 +262,7 @@ class product_template(osv.osv):
'warranty': fields.float('Warranty (months)'),
'sale_ok': fields.boolean('Can be sold', help="Determine if the product can be visible in the list of product within a selection from a sale order line."),
'purchase_ok': fields.boolean('Can be Purchased', help="Determine if the product is visible in the list of products within a selection from a purchase order line."),
'state': fields.selection([('',''),('draft', 'In Development'),('sellable','In Production'),('end','End of Lifecycle'),('obsolete','Obsolete')], 'Status', help="Tells the user if he can use the product or not."),
'state': fields.selection([('',''),('draft', 'In Development'),('sellable','In Production'),('end','End of Lifecycle'),('obsolete','Obsolete')], 'State', help="Tells the user if he can use the product or not."),
'uom_id': fields.many2one('product.uom', 'Default UoM', required=True, help="Default Unit of Measure used for all stock operation."),
'uom_po_id': fields.many2one('product.uom', 'Purchase UoM', required=True, help="Default Unit of Measure used for purchase orders. It must in the same category than the default unit of measure."),
'uos_id' : fields.many2one('product.uom', 'Unit of Sale',

View File

@ -115,7 +115,9 @@ class project(osv.osv):
'warn_footer': fields.text('Mail Footer', help="Footer added at the beginning of the email for the warning message sent to the customer when a task is closed."),
'notes': fields.text('Notes', help="Internal description of the project."),
'timesheet_id': fields.many2one('hr.timesheet.group', 'Working Time', help="Timetable working hours to adjust the gantt diagram report"),
'state': fields.selection([('template', 'Template'), ('open', 'Running'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', required=True, readonly=True),
'state': fields.selection([('template', 'Template'), ('open', 'Running'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', required=True, readonly=True,
help='The project can be in either if the states \'Template\' and \'Running\'. If it is template then we can make projects based on the template projects. If its in \'Running\' state it is a normal project.\
If it is to be reviewed then the state is \'Pending\'. When the project is completed the state is set to \'Done\'.'),
}
_defaults = {
@ -278,7 +280,9 @@ class task(osv.osv):
'priority' : fields.selection([('4','Very Low'), ('3','Low'), ('2','Medium'), ('1','Urgent'), ('0','Very urgent')], 'Importance'),
'sequence': fields.integer('Sequence'),
'type': fields.many2one('project.task.type', 'Type'),
'state': fields.selection([('draft', 'Draft'),('open', 'In Progress'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'Status', readonly=True, required=True),
'state': fields.selection([('draft', 'Draft'),('open', 'In Progress'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', readonly=True, required=True,
help='If the task is created the state \'Draft\'. If the task is started, the state becomes \'In Progress\'. If review is needed the task is in \'Pending\' state.\
If the task is over, the states is set to \'Done\'.'),
'date_start': fields.datetime('Starting Date'),
'date_deadline': fields.datetime('Deadline'),
'date_close': fields.datetime('Date Closed', readonly=True),

View File

@ -163,7 +163,7 @@ class purchase_order(osv.osv):
'pricelist_id':fields.many2one('product.pricelist', 'Pricelist', required=True, states={'confirmed':[('readonly',True)], 'approved':[('readonly',True)]}, help="The pricelist sets the currency used for this purchase order. It also computes the supplier price for the selected products/quantities."),
'state': fields.selection([('draft', 'Request for Quotation'), ('wait', 'Waiting'), ('confirmed', 'Waiting Supplier Ack'), ('approved', 'Approved'),('except_picking', 'Shipping Exception'), ('except_invoice', 'Invoice Exception'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Order Status', readonly=True, help="The state of the purchase order or the quotation request. A quotation is a purchase order in a 'Draft' state. Then the order has to be confirmed by the user, the state switch to 'Confirmed'. Then the supplier must confirm the order to change the state to 'Approved'. When the purchase order is paid and received, the state becomes 'Done'. If a cancel action occurs in the invoice or in the reception of goods, the state becomes in exception.", select=True),
'state': fields.selection([('draft', 'Request for Quotation'), ('wait', 'Waiting'), ('confirmed', 'Waiting Supplier Ack'), ('approved', 'Approved'),('except_picking', 'Shipping Exception'), ('except_invoice', 'Invoice Exception'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Order State', readonly=True, help="The state of the purchase order or the quotation request. A quotation is a purchase order in a 'Draft' state. Then the order has to be confirmed by the user, the state switch to 'Confirmed'. Then the supplier must confirm the order to change the state to 'Approved'. When the purchase order is paid and received, the state becomes 'Done'. If a cancel action occurs in the invoice or in the reception of goods, the state becomes in exception.", select=True),
'order_line': fields.one2many('purchase.order.line', 'order_id', 'Order Lines', states={'approved':[('readonly',True)]}),
'validator' : fields.many2one('res.users', 'Validated by', readonly=True),
'notes': fields.text('Notes'),

View File

@ -26,7 +26,7 @@ import netsvc
class purchase_order_line(osv.osv):
_inherit='purchase.order.line'
_columns = {
'state': fields.selection([('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Done'), ('cancel', 'Cancelled')], 'State', required=True, readonly=True),
'invoice_lines': fields.many2many('account.invoice.line', 'purchase_order_line_invoice_rel', 'order_line_id', 'invoice_id', 'Invoice Lines', readonly=True),
'invoiced': fields.boolean('Invoiced', readonly=True),
'partner_id': fields.related('order_id','partner_id',string='Partner',readonly=True,type="many2one", relation="res.partner"),

View File

@ -763,7 +763,7 @@ class sale_order_line(osv.osv):
'number_packages': fields.function(_number_packages, method=True, type='integer', string='Number Packages'),
'notes': fields.text('Notes'),
'th_weight': fields.float('Weight'),
'state': fields.selection([('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Done'), ('cancel', 'Cancelled'), ('exception', 'Exception')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Done'), ('cancel', 'Cancelled'), ('exception', 'Exception')], 'State', required=True, readonly=True),
'order_partner_id': fields.related('order_id', 'partner_id', type='many2one', relation='res.partner', string='Customer'),
'salesman_id':fields.related('order_id','user_id',type='many2one',relation='res.users',string='Salesman'),
}

View File

@ -98,7 +98,7 @@ class scrum_sprint(osv.osv):
'progress': fields.function(_calc_progress, method=True, string='Progress (0-100)'),
'effective_hours': fields.function(_calc_effective, method=True, string='Effective hours'),
'planned_hours': fields.function(_calc_planned, method=True, string='Planned Hours'),
'state': fields.selection([('draft','Draft'),('open','Open'),('done','Done')], 'Status', required=True),
'state': fields.selection([('draft','Draft'),('open','Open'),('done','Done')], 'State', required=True),
}
_defaults = {
'state': lambda *a: 'draft',
@ -166,7 +166,7 @@ class scrum_product_backlog(osv.osv):
'sequence' : fields.integer('Sequence'),
'priority' : fields.selection([('4','Very Low'), ('3','Low'), ('2','Medium'), ('1','Urgent'), ('0','Very urgent')], 'Priority'),
'tasks_id': fields.one2many('scrum.task', 'product_backlog_id', 'Tasks Details'),
'state': fields.selection([('draft','Draft'),('open','Open'),('done','Done')], 'Status', required=True),
'state': fields.selection([('draft','Draft'),('open','Open'),('done','Done')], 'State', required=True),
'progress': fields.function(_calc_progress, method=True, string='Progress (0-100)'),
'effective_hours': fields.function(_calc_effective, method=True, string='Effective hours'),
'planned_hours': fields.function(_calc_planned, method=True, string='Planned Hours')

View File

@ -453,7 +453,9 @@ class stock_picking(osv.osv):
('assigned', 'Available'),
('done', 'Done'),
('cancel', 'Cancelled'),
], 'Status', readonly=True, select=True),
], 'State', readonly=True, select=True,
help=' The \'Draft\' state is used when a user is encoding a new and unconfirmed picking. The \'Confirmed\' state is used for stock movement to do with unavailable products. The \'Available\' state is set automatically when the \
products are ready to be moved. The \'Waiting\' state is used in MTO moves when a movement is waiting for another one.'),
'min_date': fields.function(get_min_max_date, fnct_inv=_set_minimum_date, multi="min_max_date",
method=True, store=True, type='datetime', string='Planned Date', select=1, help="Planned date for Packing. Default it takes current date"),
'date': fields.datetime('Date Order', help="Date of Order"),
@ -979,7 +981,9 @@ class stock_move(osv.osv):
'note': fields.text('Notes'),
'state': fields.selection([('draft', 'Draft'), ('waiting', 'Waiting'), ('confirmed', 'Confirmed'), ('assigned', 'Available'), ('done', 'Done'), ('cancel', 'Cancelled')], 'Status', readonly=True, select=True),
'state': fields.selection([('draft', 'Draft'), ('waiting', 'Waiting'), ('confirmed', 'Confirmed'), ('assigned', 'Available'), ('done', 'Done'), ('cancel', 'Cancelled')], 'State', readonly=True, select=True,
help='When the stock move is created it is in the \'Draft\' state. After that it is set to \'Confirmed\' state. If stock is available state is set to \'Avaiable\'. When the packing it done the state is \'Done\'.\
The state is \'Waiting\' if the move is waiting for another one.'),
'price_unit': fields.float('Unit Price',
digits=(16, int(config['price_accuracy']))),
}
@ -1340,7 +1344,7 @@ class stock_inventory(osv.osv):
'date_done': fields.datetime('Date done'),
'inventory_line_id': fields.one2many('stock.inventory.line', 'inventory_id', 'Inventories', readonly=True, states={'draft': [('readonly', False)]}),
'move_ids': fields.many2many('stock.move', 'stock_inventory_move_rel', 'inventory_id', 'move_id', 'Created Moves'),
'state': fields.selection( (('draft', 'Draft'), ('done', 'Done'), ('cancel','Cancelled')), 'Status', readonly=True),
'state': fields.selection( (('draft', 'Draft'), ('done', 'Done'), ('cancel','Cancelled')), 'State', readonly=True),
}
_defaults = {
'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),

View File

@ -70,7 +70,7 @@ class subscription_subscription(osv.osv):
'interval_type': fields.selection([('days', 'Days'), ('weeks', 'Weeks'), ('months', 'Months')], 'Interval Unit'),
'exec_init': fields.integer('Number of documents'),
'date_init': fields.datetime('First Date'),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'Status'),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'State'),
'doc_source': fields.reference('Source Document', required=True, selection=_get_document_types, size=128),
'doc_lines': fields.one2many('subscription.subscription.history', 'subscription_id', 'Documents created', readonly=True),
'cron_id': fields.many2one('ir.cron', 'Cron Job')