odoo学习之带出信息
# 输入客户带出它默认的发运方式和包装方式
def on_change_partner_id_return(self,cr,uid,ids,partner_id,context=None):
result={}
if partner_id:# 如果存在
#找到满足条件的值
obj=self.pool.get('res.partner').browse(cr,uid,partner_id,context=context)
#取出数据显示在前端
fyfs=obj.send_type
zxbzfs=obj.packing_type
print fyfs
print zxbzfs
# 返回结果
result['send_invoice_type']=fyfs
result['packing_type']=zxbzfs
return {'value':result} 这是在sale_origin表中 判断年月算法:
#判断开始日期和结束日期
def get_prompt_end_date(self, cr, uid, ids,state_date,end_date, context=None): if state_date>=end_date:
raise osv.except_osv(u'提示',u'结束日期不能小于开始日期!')
return
#创建时修改上次的结束日期
def create(self, cr, uid, vals, context=None):
if context is None:
context ={}
if vals.get('state_date')>vals.get('end_date'):
raise osv.except_osv(u'提示',u'结束日期不能小于开始日期!')
se osv.except_osv(u'提示',u'开始日期不能小于上次开始日期!')
obj1=self.search(cr, uid, [('lproduct_id','=',vals.get('lproduct_id')),('partner_id','=',vals.get('partner_id'))],order='id desc', limit=1)
if obj1:
sdate=vals.get('state_date')
date_state=self.browse(cr, uid,obj1,context=None)
if sdate<date_state.state_date:
raise osv.except_osv(u'提示',u'开始日期不能小于上次开始日期!')
yy=int(sdate[0:4])
mm=int(sdate[5:7])
dd=int(sdate[8:10])
if (yy%400==0) or ( yy%100 !=0 and yy%4==0):
print '闰年'
if dd==1:
if mm==2 or mm==4 or mm==6 or mm==8 or mm==9 or mm==11:
mm=mm-1
dd=31
elif mm==5 or mm==7 or mm==10 or mm==12:
mm=mm-1
dd=30
elif mm==3:
mm=mm-1
dd=29
else:
dd=31
mm=12
yy=yy-1
else:
dd=dd-1
else:
print '平年'
if dd==1:
if mm==2 or mm==4 or mm==6 or mm==8 or mm==9 or mm==11:
dd=31
mm=mm-1
elif mm==5 or mm==7 or mm==10 or mm==12:
mm=mm-1
dd=30
elif mm==3:
mm=mm-1
dd=28
else:
dd=31
mm=12
yy=yy-1
else:
dd=dd-1
sdd=str(dd)
smm=str(mm)
if dd<10:
sdd='0'+str(dd)
if mm<10:
smm='0'+str(mm)
ndate=str(yy)+'-'+smm+'-'+sdd
# print ndate
self.write(cr, uid, obj1, {'end_date': ndate}, context=context)
# ndate = sdate + datetime.timedelta(-1)
new_id=super(sale_price_list_line,self).create(cr,uid,vals,context=context)
return new_id
_columns = {
'price_id':fields.many2one('sale.price.list',u'产品售价号',required=True,),
'lproduct_id':fields.many2one('product.product',u'产品'),
'partner_id':fields.many2one('res.partner',u'客户',required=True),
'puom':fields.many2one('product.uom',u'单位'),
'state_date':fields.date(u'开始日期'),
'end_date':fields.date(u'结束日期'),
'price_unit':fields.float(u'单价',required=True),
'price_tax':fields.float(u'含税单价'),
}
_defaults = {
# 'state_date':'1999-01-01',
'end_date':'2999-01-01',
}
odoo学习之带出信息的更多相关文章
- QT如何编译出带调试信息的qtwebkit库
因为在编译QT的时候默认是不编译成带调试信息的qtwebkit库的,不论如何设置参数都是没有用的.后面在一博客中查找到相关信息 1.编译带debug 信息的webkit 库 注释或者删除qt-ev ...
- css案例学习之通过relative与absolute实现带说明信息的菜单
效果如下 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...
- odoo之带出历史订单产品
这是在sale_origin中下由两张单子{sale_origin_line和history_order} class history_order(osv.osv): _name="hist ...
- (私人收藏)[开发必备]最全Java离线快速查找手册(可查询可学习,带实例)
(私人收藏)[开发必备]最全Java离线快速查找手册(可查询可学习,带实例) https://pan.baidu.com/s/1L54VuFwCdKVnQGVc8vD1TQnwmj java手册 Ja ...
- layer弹出信息框API
首先向大家推荐layer,在这里也非常感谢贤心的贡献,非常不错的信息框及弹出层解决方案,为一些项目的前端开发提高了很大的效率,希望layer 越办越好! 下面是API,呵呵,官方抄袭过来的,为了自己看 ...
- alv行可编辑时带出描述
ALV显示可以编辑的状态下可以带出描述信息等,比如维护表程序输入公司代码时需要带出公司代码的描述,这时就需要通过下面事件来触发 定义一个类: CLASS lcl_event_receiver DEFI ...
- MVC扩展控制器, 把部分视图转换成字符串(带验证信息), 并以json传递给前端视图
当我们使用jQuery异步提交表单数据的时候,需要把部分视图转换成字符串(带验证信息),以json的形式传递给前端视图. 使用jQuery异步加载部分视图,返回内容追加到页面某个div: jQ ...
- (私人收藏)[开发必备]HTML5最全快速查找离线手册(可查询可学习,带实例)
[开发必备]HTML5最全快速查找离线手册(可查询可学习,带实例) HTML5最全快速查找离线手册:https://pan.baidu.com/s/19seE8TJQSx4IsWgXtKQS0Aj9y ...
- DoModal时带出次级窗口闪现
最近在做MFC 界面开发. 在一个CDialog窗口DoModal模态显示时, 会将次级窗口带出闪现(比如将一个窗口active, 然后点击我现在程序需要弹框的按钮,弹出弹出正常,但原来active的 ...
随机推荐
- 洛谷P4562 [JXOI2018]游戏(组合数学)
题意 题目链接 Sol 这个题就比较休闲了. \(t(p)\)显然等于最后一个没有约数的数的位置,那么我们可以去枚举一下. 设没有约数的数的个数有\(cnt\)个 因此总的方案为\(\sum_{i=c ...
- 【代码笔记】Web-JavaScript-JavaScript输出
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- HTML的语义化和一些简单优化
1.什么是语义化? 必应网典的解释 语义化是指用合理HTML标记以及其特有的属性去格式化文档内容.通俗地讲,语义化就是对数据和信息进行处理,使得机器可以理解. 语义化的(X)HTML文档有助于提升你的 ...
- AngularJS ui-router刷新子页面路由
网上有各种刷新子页面路由的方法,但是不知道为什么放到我的页面就不行了,尴尬! 网上的方法有: <a href="#" ui-sref="app.toMenu&quo ...
- 利用奇异值分解(SVD)进行图像压缩-python实现
首先要声明,图片的算法有很多,如JPEG算法,SVD对图片的压缩可能并不是最佳选择,这里主要说明SVD可以降维 相对于PAC(主成分分析),SVD(奇异值分解)对数据的列和行都进行了降维,左奇异矩阵可 ...
- python常用模块json
python jons模块 json模块 主要是解决数据格式的转换问题,比如python接收到json对象需要转换为python对象,供python处理,亦或者python数据需要发送到其给其他客户端 ...
- [20170705]理解linux su命令.txt
[20170705]理解linux su命令.txt --//我一般在维护时经常使用root用户登录,然后su - oracle 转到其他用户操作--//一般都加入 - 参数.这个已经成了条件反射.. ...
- c#事务处理(sqlTransaction)
事务: /// <summary> /// 删除考勤 /// </summary> /// <param name="dto">Id</p ...
- 【第七篇】SAP ABAP7.5x新语法之F4增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之F4增强 前言部分 ...
- Centos7.5.1804永久生效修改主机名
原来主机名 [root@node1 ~]# 查看Centos的版本: [root@node1 ~]# cat /etc/redhat-release CentOS Linux release (Cor ...