SuiteCRM 账户上的自动递增号码

Auto Increment number on SuiteCRM Accounts

我尝试了 suitecrm 论坛和此处的几个答案。而且我无法将它们实施到当前版本的 Suite CRM。

这是我最后试过的那个,为了进一步说明而坚持。

在 custom/Extension/modules/yourmodule/Ext/Vardefs 中添加一个新文件,例如autoincrement.php 具有以下内容:

<?php
  $dictionary['YOUR_MODULE']['fields']['NAME_OF_AUTO_INC_FIELD'] =  array(
        'name' => 'NAME_OF_AUTO_INC_FIELD',
        'vname' => 'LBL_LABEL_OF_AUTO_INC_FIELD',
        'type' => 'int',
        'readonly' => true,
        'len' => 11,
        'auto_increment' => true,
       'disable_num_format' => true,
    );
?>

并为该文件中的字段添加唯一索引

<?php
 $dictionary['YOUR_MODULE']['indices']['NAME_FOR_INDEX'] = array(
        'name' => 'NAME_FOR_INDEX',
        'type' => 'unique',
        'fields' => array('NAME_OF_AUTO_INC_FIELD'),
    );
?>

运行 在管理中快速重建和修复 -> 修复并执行更改。

之后显示一个空文本框。当新帐户保存时,它会自动迭代。但我想在此帐户页面本身中显示下一个自动递增编号。

我想在新帐户表单中显示下一个自动值而不是默认值。

这不是开箱即用的行为 - 您需要添加一些自定义设置才能执行此操作。

我会创建一个新的 vardef auto_inc_preview,它是一个函数类型字段。这可以用来从数据库中获取最大的数字并显示这个 + 1.

一个可能的问题是,用户看到的数字可能不是生成的 ID - 例如,如果两个或更多人同时创建一个帐户。