2017-01-24 57 views
1

我想基于userdetails中的fieldvale单独在editview中显示字段。基于用户详细信息的值,editview中的sugarcrm显示字段

例:对于一个用户can_add_no将在用户的详细信息,如果检查比该特定用户可以添加在quotequote_extra_no模块。

我尝试了以下。为该字段的引用模块添加了依赖关系。

$dictionary['Quote']['fields']['quote_extra_no'] = array (
    'audited'     => true, 
    'calculated'    => false, 
    'duplicate_merge'   => 'disabled', 
    'duplicate_merge_dom_value' => '0', 
    'importable'    => 'true', 
    'len'      => '255', 
    'massupdate'    => false, 
    'merge_filter'    => 'disabled', 
    'name'      => 'quote_extra_no', 
    'no_default'    => true, 
    'reportable'    => true, 
    'required'     => false, 
    'size'      => '50', 
    'source'     => 'custom_fields', 
    'studio'     => 'visible', 
    'type'      => 'varchar', 
    'unified_search'   => false, 
    'vname'      => 'LBL_EXTRA_REF', 
    'dependency'    => 'equal(related($assigned_user_link,"can_add_no"),"1")', 
); 

还在Editview中添加了该字段。但它不工作。如果当前用户can_add_no已设置或勾选了复选框。他可以在报价的编辑视图中编辑quote_extra_no

我怎样才能实现的功能,因为依赖不帮我做到这一点。

+0

你的公式表明,它是引用的所分配的用户,而不是当前用户。您可以确认是否是当前用户或需要拥有该属性的指定用户? – Reisclef

+0

分配的用户@Reisclef – TomPHP

+0

好吧,只有当前用户是分配的用户,并且所述用户已经打勾了can_add_no时,也是如此。如果是这样,可以通过自定义视图。如果你不能从现有的答案中解决问题,我会看看我能否进一步提供帮助。 – Reisclef

回答

1

有两个可能做到这一点你应该有两个模块之间的关系。

  1. 通过使用相关性:

    等于(相关($ related_field_name, “can_add_no”), “1”)”

  2. IN record.js写在方法的方法调用API为canadd_no,并根据该节目隐藏领域。

API调用示例:

app.api.call('read', app.api.buildURL(this.model.get('_module'), 'read', {id: this.model.get('id')}), null, 
       { 
        success: function(data) { 
          your costume code to hide 
         } 
        }, 
       }); 

More Info related to API

+0

API方法的任何示例?请加入 – TomPHP

+1

我添加API方法的示例。 –

+0

谢谢.. @Amitesh – TomPHP

相关问题