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 - 例如,如果两个或更多人同时创建一个帐户。
我尝试了 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 - 例如,如果两个或更多人同时创建一个帐户。