zoukankan      html  css  js  c++  java
  • odoo10甘特图gantt view

    odoo10中的gantt图示例

    1.Gantt属性说明

    甘特图视图的根元素是<gantt />,它没有子节点但可以采用以下属性:

    date_start (required)

    提供每条记录事件的开始日期时间的字段名称。

    date_stop

    提供每条记录事件结束持续时间的字段名称。 可以用date_delay替换。 必须提供date_stopdate_delay中的一个(且仅一个)。

    如果记录的字段为False,则假定为“点事件”,结束日期将设置为开始日期

    date_delay

    提供事件持续时间的字段的名称

    duration_unit

    minutehour (默认的), dayweekmonthyear其中一个

    default_group_by

    要分组任务的字段的名称

    :该字段必须是实实在在存在于当前模型数据表中的字段,类似的多对多关联关系表中存放的字段不能用于该属性中

    type

    gantt经典甘特视图(默认)

    consolidate 第一个子节点的值在甘特任务中得到合并

    planning 子节点显示在甘特图的任务中

    consolidation

    字段名称,用于显示记录单元格中的合并值

    consolidation_max

    将“group by”字段作为键的字典,以及在以红色显示单元格之前可以达到的最大合并值(例如{“user_id”:100}

    consolidation_exclude

    如果设置为true,则描述是否必须从合并中排除任务的字段的名称,它在合并行中显示条带区域

    warnings
    字典定义必须使用双引号,{'user_id':100}不是有效值

    string

    要在合并值旁边显示的字符串,如果未指定,将使用合并字段的标签

    fold_last_level

    如果设置了值,则折叠最后一个分组级别

    round_dnd_dates

    允许将任务的开始和结束日期舍入到最近的刻度标记

    drag_resize

    调整任务大小,默认为true

    progress

    提供记录事件完成百分比的字段名称,介于0和100之间

    2.Gantt示例

     1 <record id="work_bd_wbs_gantt" model="ir.ui.view">
     2     <field name="name">WBS甘特图</field>
     3     <field name="model">esw.work.breakdown</field>
     4     <field name="arch" type="xml">
     5         <gantt type="consolidate"
     6                date_start="plan_start_time"
     7                date_stop="plan_end_time"
     8                consolidation="work_remark"
     9                default_group_by="employee_id"
    10                string="WBS"
    12         />
    13         <!--
    14         consolidation_exclude = "exclude"
    15         round_dnd_dates="true"
    16         consolidation_max = '{"work_remark": 100}'
    17         -->
    18     </field>
    19 </record>

    :XML中注释掉的属性字段,设置了之后没有发现有什么明显的变化,有发现的可以留言告诉下

    Python代码如下:

     1 plan_start_time = fields.Date(u'计划开始时间', required=True)
     2 plan_work_hours = fields.Integer(u'工时(小时)', required=True)
     3 plan_end_time = fields.Date(u'计划结束时间')
     4 employee_id = fields.Many2one(
     5     'hr.employee',
     6     string=u'人力资源',
     7     domain=_compute_project_employee_domain
     8 )
     9 pre_work_bd_id = fields.Many2one('esw.work.breakdown', string=u'前置任务')
    10 work_remark = fields.Text(u'任务说明', size=200)
    name = fields.Char(u'任务编号')

    注:Python模型代码中建议定义name属性字段,在gantt中默认会用的该字段来做显示,不定义会显示为False

    最终效果如下:

  • 相关阅读:
    Solaris 10学习笔记初学
    EBS R12中文升级补丁
    EXPDP,今天犯了个愚蠢的错误
    LOGSTDBY status: ORA01418,Logical standby問題可真多
    ORA04045,Standby停止Apple log处理一例
    无法relay信件处理一例
    cordova启动页面和图标的设置
    CSS布局探密02
    CSS布局探密01
    CSS布局探密03
  • 原文地址:https://www.cnblogs.com/edi-kai/p/10935462.html
Copyright © 2011-2022 走看看