创建自定义链接字段

链接字段是链接到另一个文档类型的字段。例如,客户字段在销售订单中就是一个链接字段。该字段链接到客户主数据。

您可以按照以下步骤插入自定义链接字段。

步骤 1:前往自定义表单

首页 > 自定义 > 表单自定义 > 自定义表单

步骤 2:选择表单

在自定义表单中,选择文档类型(报价单、销售订单、采购发票项目等)。一旦下方附表中的字段更新后,打开您希望插入自定义字段上方的字段。然后点击“在上方插入”以插入新的自定义字段。

步骤 4:自定义字段值

要将字段设置为链接,请输入以下值。

  1. 标签:用户希望在表单中显示的标签。
  2. 类型:设置为“链接”
  3. 名称:字段的名称
  4. 选项:输入字段所链接的文档类型的名称

注意:此功能将从版本 15 及以上版本可用。

Frappe 提供了一种用户友好的方式,通过表单构建器对链接字段应用筛选器。

您会注意到,在文档类型中的所有链接字段上都有一个操作图标,它为您提供了选择要应用的筛选器的选项。

例如,在“公司”的情况下,点击该图标将打开一个对话框,您可以在其中选择所需的筛选器。

一旦您做出选择并点击应用,筛选后的结果将相应显示。

如果您正在自定义表单并决定更改筛选器,将出现一个“重置为默认值”按钮。点击此按钮会将筛选器恢复为原始状态。但需要注意的是,“自定义表单”中的任何筛选器都将覆盖默认筛选器。

评估支持

用户可以根据表单中的某些值添加动态筛选器。

用法:

eval: doc.fieldname

或

eval: doc.fieldname1 + doc.fieldname2

对于子表:
可以添加两种类型的筛选器。

  • 来自子表行:要添加这些筛选器,请使用 doc.child_table_field_name
  • 来自父文档:要添加这些筛选器,请使用 parent.parent_doc_fieldname

在“eval:”之后添加的表达式会被评估,并返回其值。

Note: Filters applied through frm.set_query, will take preference over filters applied via the User Interface (UI).

签名字段

在 ERPNext 中,可以使用签名(Signature)字段类型创建电子签名。该字段允许您在一个区块中书写签名,就像在纸上签名一样。

要创建电子签名,请按照以下步骤操作:

  1. 打开 DocType 并进入自定义表单。
  2. 在表单视图或字段表中,创建一个名为“签名”的新字段,并将字段类型选择为 签名。

  1. 点击更新。
  2. 刷新页面并输入您的签名。

动态链接字段

动态链接字段是一种可以搜索并保存任何文档类型值的字段。让我们通过一个例子来了解动态链接字段的工作原理。

在创建商机或报价时,我们必须明确指定它是针对潜在客户还是客户。根据我们的选择(潜在客户/客户),会显示另一个链接字段,我们可以在其中选择实际的潜在客户或客户。

如果您将前一个字段(即选择实际潜在客户或客户的字段)设置为动态链接,那么后一个字段将自动链接到第一个字段中选择的主数据,即潜在客户或客户。因此,我们无需为客户和潜在客户分别插入单独的链接字段。

以下是插入自定义动态字段的步骤。例如,我们将在日记账中插入动态链接字段。

首先,我们将创建一个链接字段,该字段将链接到文档类型。

选项字段中提到的文档类型,指的是父文档类型。就像报价是一种文档类型,其下包含多个报价记录一样。同样,文档类型本身也是一种文档类型,其下创建了销售订单、采购订单和其他文档类型作为文档类型记录。

文档类型

—- 销售订单

—- 采购发票

—- 报价

—- 销售发票

—- 员工

—- 工作订单

… 等等。

因此,将此字段与父文档类型链接将列出所有文档类型记录。

此自定义字段的类型将为“动态链接”。在选项字段中,将指定文档类型链接字段的名称。

此字段将允许根据在文档类型链接字段中选择的值来选择文档 ID。例如,如果我们在前一个字段中选择销售订单,则动态链接字段将列出所有销售订单的 ID。

自定义文档类型链接字段中的选项

默认情况下,文档类型链接字段将提供所有表单/文档类型供选择。如果您希望此字段在搜索结果中显示某些特定的文档类型,则需要为其编写自定义脚本。

表格多选字段

表格多选字段与链接字段非常相似。主要区别在于,表格多选字段允许您选择多个值。

让我们通过一个示例来理解这一点。假设您想将待办事项分配给多个用户,如下所示:

您可以通过以下步骤添加表格多选字段:

步骤 1:创建子文档类型。

创建一个新的文档类型,启用“是子表”和“可编辑网格”复选框,并添加一个类型为“链接”的字段,如下所示。

将链接字段设置为必填。确保子表中的字段已勾选“在列表视图中显示”。

步骤 2:添加类型为“表格多选”的字段。

创建一个类型为“表格多选”的字段,并在“选项”中添加第一步中创建的文档类型。

您可以通过点击选定值旁边的叉号,或将光标放在该值旁边并按退格键,来移除任何选定的值。

此字段允许每个值仅被选择一次。

注意:表格多选字段不能添加到子文档类型中。

地理位置字段

“地理位置”字段用于捕获和存储地理坐标,例如纬度和经度。

这可用于多种用途,例如跟踪资产、员工或事件的位置。地理位置数据有助于在ERP系统中映射和可视化各种实体的地理分布。

以下是关于ERPNext中地理位置字段的几个关键点:

  1. 存储坐标:地理位置字段通常存储纬度和经度值,这些值代表地球表面上的一个特定点。
  2. 在模块中的使用:此字段可用于与位置信息相关的不同模块。例如,它可以在资产模块中用于跟踪资产的物理位置,或在员工模块中用于记录员工的位置。
  3. 与地图集成:地理位置数据可以与地图服务(如谷歌地图)集成,以提供位置的视觉表示。这对于路线规划、现场访问和物流管理非常有用。
  4. 自动捕获:某些实现允许使用支持GPS的设备自动捕获地理位置数据,确保准确和实时的位置跟踪。
  5. 自定义:ERPNext支持自定义,因此可以根据组织的特定需求将地理位置字段添加到自定义表单和文档类型中。

字段类型

以下是您在创建新字段或修改标准字段时可以定义的字段类型。

链接字段连接到另一个主数据,并从中获取数据。例如,在报价单主数据中,客户是一个链接字段。要了解更多信息,请点击此处。

动态链接字段是一种可以搜索并保存任何文档/文档类型值的字段。点击此处了解动态链接字段如何工作。

复选框

这将使您能够在此处拥有一个复选框。

选择

选择将是一个下拉字段。您可以在选项字段中添加多个结果,每行一个。

表格

表格是一种链接字段,它在当前表单中呈现另一个文档类型。例如,销售订单中的项目表格是一个表格字段,它链接到销售订单项目文档类型。

附件

附件字段允许您从文件管理器中浏览一个文件并将其附加在此处。

附件图片

附件图片是一个字段,您可以在其中附加 jpeg、png 等格式的图片。这将成为代表该特定文档类型的图片。例如,如果您希望在项目文档类型中显示项目图片,您可以将字段选择为附件图片字段。

文本编辑器

文本编辑器是一个文本字段。它具有文本格式化选项。在 ERPNext 中,此字段通常用于定义条款与条件。

日期

此字段将使您能够在此字段中输入日期。

日期和时间

此字段将为您提供一个日期和时间选择器。默认设置为当前日期和时间(由您的计算机提供)。

条码

在此字段中,您可以将字段指定为条码,这将允许您输入条码编号。一旦您这样做,系统将自动根据该编号生成条码。

按钮

这种字段将是一个操作按钮,例如保存、提交等。

代码

如果字段类型选择为代码,您将能够向该字段输入代码。

颜色

您将可以选择为此表单指定颜色。

列分隔

由于 ERPNext 具有多列布局,使用列分隔,您可以将一组字段最多分为两列。

货币

货币字段保存数值,例如项目价格、金额等。货币字段的值最多可以保留六位小数。此外,您可以为货币字段显示货币符号。

数据

数据字段将是一个简单的文本字段。它允许您输入最多 140 个字符的值,使其成为最通用的字段类型。要为电子邮件、姓名或电话号码输入启用验证,请在设置 > 文档类型中将选项设置为”电子邮件”、”姓名”、”电话”。

浮点数

浮点数字段保存数值,最多保留九位小数。浮点数字段的精度通过设置精度来设定

设置 > 设置 > 系统设置

该设置将应用于所有浮点数字段。

地理位置

使用地理位置字段存储 GeoJSON feature_collection。存储多边形、线和点。它在内部使用以下自定义属性来标识圆形。

阅读地理位置字段以了解更多信息。

HTML

当您希望数据以 HTML 格式输入时,您可以选择该字段为 HTML 字段。

图片

图片字段将渲染在另一个附件字段中选择的图片文件。

对于图片字段,在选项(在文档类型中)下,应提供一个字段名称,其中附加了图片文件。通过引用该字段中的值,图片将成为图片字段中的引用。

整数

整数字段保存数值,没有小数位。

小文本

小文本字段保存文本内容,并且比数据字段具有更多的字符限制。

长文本

当您希望输入具有无限字符限制的数据时,您可以将字段定义为长文本字段。

文本

此字段类型允许您在字段中添加文本。小文本、长文本和文本字段中的字符限制将根据关系数据库管理系统确定。

Markdown 编辑器

此字段允许您以标记语言添加文本。

密码

密码字段将包含解码后的值。

百分比

您可以将字段定义为百分比字段,在后台它将计算为百分比。

评分

您可以将字段定义为评分字段,在后台它将计算为评分。

只读

只读字段将保存从另一个表单获取的数据,这些数据不可编辑。如果其值的来源是预先确定的,您应将字段类型设置为只读。

节分隔

分段用于将表单划分为多个部分。

签名

您可以将字段定义为签名字段,在此字段中添加数字签名。

表格多选

这是“链接”类型和“表格”类型字段的组合。与带有“添加行”按钮的子表不同,您可以在一个字段中选择多个值。

时间

这是一个时间字段,您可以在该字段中定义时间。

持续时间

如果您想定义一个时间段,可以使用持续时间字段。

如果您不想以天或秒为单位跟踪持续时间,可以在表单中分别启用“隐藏天数”和“隐藏秒数”选项。

这是进行上述更改后持续时间字段的外观。

单据命名规则

在 ERPNext 中,系统地管理命名约定有助于保持记录的连贯性和可追溯性。文档命名规则功能允许您根据条件设置动态命名,比标准的文档命名设置(序列)提供了更大的灵活性。

✨ 与传统命名设置的主要区别 文档命名设置是对整个文档类型全局应用前缀或模式,而文档命名规则则引入了条件逻辑,根据文档中的特定字段值来应用命名序列。

🛠️ 如何设置文档命名规则 请按照以下步骤配置文档命名规则:

步骤:

  1. 选择文档类型 选择要应用规则的文档类型(例如:销售发票、客户等)。

  2. 设置优先级 为规则分配一个优先级数字。

🔹 优先级较高的规则(例如 10)会优先于优先级较低的规则(例如 5)应用。 🔹 如果多个规则匹配,则使用优先级最高的那个。

  1. 添加规则条件 ➕ 您可以为每条规则添加多个条件。仅当所有条件都满足时,该规则才会被应用。

🔍 示例用例 场景:您希望根据客户所在地为其命名。

如果客户的国家是印度,命名格式应为: CUST-INDIA-00001, CUST-INDIA-00002, …

这可以通过使用两个文档命名规则来实现:

规则 1:前缀 = CUST-INDIA-,条件 = 国家 = 印度

规则 2:前缀 = CUST-USA-,条件 = 国家 = 美国

如果国家是美国,格式应为: CUST-USA-00001, CUST-USA-00002, …

  1. 定义前缀 在“命名”部分下的“前缀”字段中输入所需的前缀。 示例:PSI/

  2. 设置序列号起始值 在前缀旁边的字段中指定起始序列号。 示例:5 → 第一个文档将被命名为 PSI/00005

以下是一个示例:

✅ 优势 基于文档字段自动命名

减少手动选择和人为错误

支持同一文档类型内的多种命名模式

适用于拥有多分支、多国家或多类别文档类型的公司

📝 备注 务必确保条件足够具体,以避免规则之间的冲突。

如果没有规则匹配,系统将回退到默认的命名序列(如果已配置)。

文档命名设置

主记录和事务记录可以通过命名系列的形式添加前缀。

ERPNext 允许您为文档添加前缀,每个前缀
构成一个独立的系列。例如,前缀为 INV12#### 的系列将生成
编号 INV120001、INV120002,依此类推。

您可以为所有事务记录设置多个系列。例如,可以生成如下所示的销售发票编号:

  • ACC-SINV-.YYYY.-
  • SINV12####
  • SALESINV-00####

您可以通过以下路径定义或选择命名系列模式:

首页 > 设置 > 文档命名设置

1. 为文档设置命名系列

  1. 选择您要为其创建系列的事务记录。系统将在文本框中更新当前系列。
  2. 根据需要编辑系列,为每个系列设置唯一的前缀。 第一个前缀将是默认前缀。每个新的前缀命名系列必须在新的一行中添加。新添加的命名系列将在文档中可用。

  1. 如果您希望用户明确选择系列而非使用默认系列,请勾选“用户必须始终选择”复选框。 如果勾选此项,则不会有默认的命名系列。
  2. 您还可以通过“更新系列”部分输入系列名称和起始点来更新系列的起始编号。
  3. 点击“更新”按钮,为所选文档更新命名系列集合。

注意:要查看新添加的命名系列,请点击“设置”>“重新加载”。

2. 命名系列中的会计年度

您还可以在命名系列中显示会计年度。默认情况下,如果您在命名系列中输入’YYYY’,它将选取当前年份。要基于会计年度设置命名系列,请输入类似’ACC-SINV-.19-20.-‘的内容,其中19-20是当前会计年度。通常每个会计年度都有独立的系列。

如下面的销售发票截图所示,列出了2019年:

3. 更新现有命名系列的当前值

您可以更改现有系列的起始/当前序列号。

  1. 在“更新系列”部分下,选择要更改序列的前缀。
  2. 系统将获取并显示当前值。
  3. 根据需要更改起始/现有序列号。
  4. 点击“更新系列编号”。

例如,如果当前的销售订单系列编号为16,而您希望重新开始或将其设置为50,请根据情况输入0或50。任何新创建的销售订单将从新的序列号开始。

要了解更多信息,请访问此文章。

提示:您可以为每种客户类型或
每个零售门店设置独立的系列。

4. 在命名系列中使用字段值

一些公司倾向于为供应商使用“短代码”,例如,公司“Web Notes”使用WN,稍后可在命名系列中用于快速识别。

例如:

在文档:供应商下创建了一个自定义字段“供应商ID”。
然后在命名系列中,我们允许类似
PO-.YY.MM.-.vendorid.-.####
的结果,生成“PO-1503-WN-00001”

5. 更新修订文档

一些公司倾向于将修订后的文档命名为新文档。ERPNext 提供了一项功能,可根据您的需求配置此设置。

要配置修订文档的命名:

  1. 导航到“修订文档”部分。
  2. 选择以下选项之一:
  3. 应用默认修订计数器以更改所有文档类型的命名。
  4. 通过选择相关文档类型并定义其命名方法,为特定文档类型自定义命名。

  1. 点击“更新修订计数器”以保存您的更改。

6. 视频

  1. 批量重命名

命名系列

主数据和交易记录可以通过命名系列的形式添加前缀。

ERPNext 允许您为文档添加前缀,每个前缀构成一个独立的系列。例如,前缀为 INV12#### 的系列将生成 INV120001、INV120002 等编号。

您可以为所有交易记录设置多个系列。例如,可以生成如下所示的销售发票 ID:

  • ACC-SINV-.YYYY.-
  • SINV12####
  • SALESINV-00####

您可以通过以下路径定义或选择命名系列模式:

首页 > 设置 > 命名系列

1. 为文档设置命名系列

  1. 选择您要为其创建系列的交易记录。系统将在文本框中更新当前系列。

  2. 根据需要编辑系列,为每个系列设置唯一的前缀。 第一个前缀将是默认前缀。每个新的前缀命名系列必须在新的一行中添加。新添加的命名系列将在文档中可用。

  3. 如果您希望用户明确选择一个系列而不是使用默认系列,请勾选“用户必须始终选择”复选框。 如果勾选此项,则不会有默认的命名系列。

  4. 您还可以通过在“更新系列”部分输入系列名称和起始点来更新系列的起始编号。

  5. 点击“更新”按钮以更新所选文档的命名系列集合。

注意:要查看新添加的命名系列,请点击“设置”>“重新加载”。

2. 命名系列中的财务年度

您还可以在命名系列中显示财务年度。默认情况下,如果您在命名系列中输入’YYYY’,它将获取当前年份。要根据会计年度设置命名系列,请输入类似’ACC-SINV-.FY.-‘的内容,其中’FY’将被解析以匹配当前会计年度。通常每个财务年度都有一个独立的系列。

或者,也可以手动将会计年度嵌入到命名系列中,例如输入类似’ACC-SINV-.19-20.-‘的内容,其中19-20是当前会计年度。

如您所见,在以下销售发票截图中,列出了2019年:

3. 更新现有命名系列的当前值

您可以更改现有系列的起始/当前序列号。

  1. 在“更新系列”部分下,选择要更改序列的前缀。
  2. 当前值将被获取并显示。
  3. 根据需要更改起始/现有序列号。
  4. 点击“更新系列编号”。

例如,如果当前销售订单系列编号为16,而您希望重新开始或将其设置为50,请根据您的情况输入0或50。任何新创建的销售订单将从新的序列号开始。

要了解更多信息,请访问此文章。

提示:您可以为每种类型的客户或每个零售门店设置独立的系列。

4. 在命名系列中使用字段值

一些公司倾向于使用供应商的“短代码”,例如公司“Web Notes”的短代码为WN,稍后可在命名系列中使用以便快速识别。

例如:

在文档:供应商下创建了一个自定义字段“供应商ID”。 然后在命名系列中,我们允许类似 PO-.YY.MM.-.vendor_id.-.#### 的格式 结果生成“PO-1503-WN-00001”

5. 视频

单据类型

DocType 是基于 Frappe 框架的任何应用的核心构建块。

它描述了数据的模型和视图。它包含为数据存储的字段,以及这些字段如何相互关联。它还包含关于如何命名数据的信息。像销售订单、销售发票、工单这样的表单在后端都是作为 DocType 添加的。

DocType 允许您根据需求在 ERPNext 中插入自定义表单。

要创建一个新的 DocType,请前往:

设置 > 自定义 > DocType > 新建

1. 如何创建新的 DocType:

  1. 名称:输入新 DocType 的名称。
  2. 模块:输入您希望将新 DocType 添加到的模块。
  3. 保存。

1.1. 附加详情

  1. 字段

您可以选择添加任意数量的字段。标签、字段类型、必填字段和其他相关选项也可以在此处添加。在此处了解更多关于字段类型的信息。

  1. 命名

您可以在此处选择是否希望此 DocType 中的每个表单自动命名。如描述中所述,您可以选择表单的命名模式。这可以是 DocType 内的一个字段、命名系列、提示、定义的命名系列或基于格式的名称。为方便起见,您还可以为命名添加描述和名称大小写(如标题大小写或大写)。

  1. 表单设置

表单、图像字段、附件、时间线等的其他设置可以在此处配置。要了解更多关于表单的信息,请访问自定义表单。

  1. 视图设置

在此处,您可以定义 DocType 的视图设置,例如搜索字段、默认排序字段、默认排序顺序等。

  1. 权限规则

您可以在此处定义 DocType 的权限规则,并配置哪些用户能够使用或修改此 DocType。在此处了解更多关于用户和权限的信息。

  1. Web 视图

您可以选择是否为此 DocType 启用 Web 视图。为 DocType 启用 Web 视图将允许您的网站用户访问这些表单。请随意了解更多关于网站用户的信息。

1.2. 更多属性

  1. 可提交:您可以通过勾选或取消勾选此框,选择此 DocType 是仅可“保存”还是也可“提交”。
  2. 是子表:您可以定义是否希望新 DocType 成为另一个 DocType 内的子表。请查看子表以获取更多信息。
  3. 是单例:如果勾选,此 DocType 将成为一个单一表单,例如销售订单,用户将无法复制它。例如,销售模块中的销售设置是一个单例 DocType。
  4. 是树形:ERPNext 中的一些 DocType 被结构化为树形,其中有一些父 DocType 和一些子 DocType。例如,DocType 公司被结构化为树形,有母公司以及子公司。如果您希望您的 DocType 也类似地结构化,可以启用此选项。

  1. 快速录入:您可以选择是否为此 DocType 启用快速录入。这将允许您仅输入几个必填详细信息并保存 DocType,从而完成快速录入。例如,在日记账中查看快速录入。
  2. 跟踪更改:如果您希望维护对每个表单所做更改的日志,可以选择此选项。请查看文档版本控制以更深入地了解此功能。
  3. 跟踪已查看:如果您希望维护所有已查看此表单的用户的日志,可以选择此选项。
  4. 跟踪视图:如果您希望维护每个用户查看此表单次数的日志,可以选择此选项。

  1. 自定义?:添加自定义 DocType 时,此字段默认会被勾选。同样,如果您正在自定义系统中已存在的 DocType,此字段默认不会被勾选。

2. 视频