SAP B1 基础实操 - 用户定义字段 (UDF)
目录
一、功能介绍
1. 使用场景
2. 操作逻辑
3. 常用定义部分
3.1 主数据
3.2 营销单据
4. 字段设置表单
4.1 字段基础信息
4.2 不同类详细设置
4.3 默认值/必填
二、案例
1 要求
2 操作步骤
一、功能介绍

1. 使用场景
在实施过程中,经常会碰见用户需要的信息字段在标准单据中不存在的情况,这是需要使用【用户定义字段(UDF)】这一功能,新建自定义字段,用于收录标准单据无对应字段的信息。
2. 操作逻辑
在【用户定义字段 - 管理】表单中对增加字段进行设置后,它会出现在对应表单的自定义字段部分。点击【查看】下的【用户定义字段】,选中单据的用户定义字段就会显现,如下两图。


3. 常用定义部分
基础部分最常用需要增加用户定义字段的表单包括:【业务伙伴主数据】、【物料主数据】、营销单据。均在下图打框的类别中。
3.1 主数据
1)其中【业务伙伴主数据】、【物料主数据】在【主数据】部分。
打开【主数据】子目录,会看到许多表单类别:

找到【业务伙伴】和【物料】子目录,在其下对应位置增加用户定义字段即可:

由于【业务伙伴主数据】和【物料主数据】都是结构复杂的单据,在后台对应着多张表单,增加字段时需要确定登记位置是主表还是子表:

其中详细字段解析见同专栏《SAP B1 三大表单标准功能介绍-业务伙伴主数据》和《SAP B1 三大基本表单标准功能介绍-物料主数据》的系列文章。
3.2 营销单据
营销单据是指和营销活动相关的一系列单据,主要集中在【销售】和【采购】模块。在【用户定义字段 - 管理】表单中,【营销单据】子目录结构相较于【主数据】要简单很多,对比如下:


官方说明文档中并未指明【营销单据】范围,却经常使用这一说法,博主通过查看单据是否显示【营销单据】下新建的用户定义字段来判断单据是否属于营销单据,查出单据包括:
- 销售:销售报价单;销售订单;交货;退货请求;退货;预售款申请;应付发票;营收贷项凭证;应收预留发票
- 采购:采购申请;采购报价单;采购订单;采购收货单;采购退货单;采购退货请求;采购退货;预付款申请;应付发票;应付预留发票
也就是说,从用户定义字段影响的单据数量上说,【营销单据】要比【主数据】多得多。【营销单据】每增加一个用户定义字段,以上所有单据均受影响,而【主数据】内细分明确,设定用户定义字段时往往确定了唯一的影响单据。
4. 字段设置表单

4.1 字段基础信息
头衔:该字段是所保存信息的系统列名,类似于 “CardName”。输入全英字母,尽量是含义的英文缩写,不要用拼音。在字段保存成功后,系统会在输入内容前自动加上 “U_” 以示区分。

描述:该字段是所保存信息的单据显示名,类似于【名称】。根据客户系统语言,输入中文或英文解释,保存后会在单据页面显示为字段名。
类型:分为可选的 5 类,用于定义新建字段的类型,对应理解:【字母数字的】类似于 字符串;【数字】类似于 浮点数(可以是小数);【日期/时间】类似于 时间型;【单位与总计】用于存放有特定结构、单位的数(如费率、金额);【常规】用于存放附件信息(如链接、图片)。

长度:若字段类型没有格式长度要求(如时间型长度确定),则需要在【长度】字段输入新建字段的长度加以限制。
4.2 各类型结构/高级验证
【结构】与【验证】字段选中【高级】时【规则】选项内容,会随着【类型】的变化而变化,这里分情况讲解。
1)字母数字的
结构:此时结构包括 定期、地址、电话号码、文本、复选框。默认项为【定期】,选中时就是普通单行文本,除此结构需要设置【长度】,其余均不用。如需要对应特殊格式,则选择其他四种。其中【复选框】所生成字段效果类似于下图中【必填字段】,为勾选字段,无需对【验证】字段做设置。

验证(高级):此时规则有如下选项。其中【以...开始】意为,填入信息需要以【值】中内容为开头,否则报错。
如下例,设置需要:从“1”开始。

填入信息为“X123”,为符合开头设定,报错且不可保存。

2)数字
选择【数字】类型时不需要设置结构。

验证(高级):此时规则如下图。

3)日期/时间
结构:此时结构包括日期和小时。

选择【日期】结构后,新增用户定义字段会出现小日历图标召唤日历,并以固定的【yyyy.mm.dd】格式将日期填入字段中。

选择【小时】结构后,输入数字会自动转换为小时形式,或输入【__:__】结构。

验证(高级):结构选择【日期】时,同类型为【数字】时。结构选【小时】时,无规则。
4)单位与总计
结构:此时结构包括 费率、金额、价格、数量、百分比、度量。均不需要设置【长度】。

验证(高级):同类型为【数字】时。
5)常规
结构:此时结构包括 链接、图像,生成的字段需要从附件文件夹选取。均不需要设置【长度】。

验证(高级):无规则。
4.3 验证
验证:默认值为【无】,选【无】的时候即没有验证需求,若选择其他选项,则会通过一定的方式对字段中内容进行限定。

1)已链接至实体
选择【已连接至实体】,则设置变为下拉框字段,并且所选项来自于其他表单的实体内容,不可直接手动更改。

- 链接至系统对象:指系统表单和字段,点击下拉框可进行选择。设定效果如下面第二张图。


- 设置链接表:链接表为用户定义表单和系统预设的自定义表,效果类似【链接至系统对象】。

- 链接至用户定义对象:链接表为用户定义表单,效果类似【链接至系统对象】。

2)有效值
选择【有效值】,则设置变为下拉框字段,与【已连接至实体】不同的是,内容需要手动添加。如下图,点击【新建】即可新增选项值。其中【值】类似【头衔】是系统内记录的值,【描述】为表单内显示的值。

3)高级
见前一小节。
4.4 默认值/必填
设置字段默认值:勾选后,表示该字段需要默认值,出现单行文本字段用于输入默认值。

设置成功后,字段初始状态不为空,而是默认值。

必填字段:勾选后,该字段必填,若为空时保存单据则会报错。
二、案例
1 要求
客户给的业务伙伴信息表格中,包含 “供应商等级”、“客户简称”、“信息来源” 列,其中,要求供应商默认等级为 “C”。
2 操作步骤
1)点击通过进程:工具 --> 定制工具 --> 用户定义字段 - 管理,打开【用户定义字段 - 管理】表单。

2)找到业务伙伴主数据主表对应的位置,点击【添加】,召唤出【字段数据】。

3)逐一设定。



4)如下图,此时对【业务伙伴主数据】的【主表】定义了三个用户定义字段:

此时打开【业务伙伴主数据】显示用户定义字段,效果如下:

3. 补充
后续维护字段,或许需要在设定上做修改,或者删除。
3.1 更新字段
如需修改字段设置,则在【用户定义字段 - 管理】表单中选中需要维护的字段,这时【更新】按钮会亮起,点击后出现字段设置,可进行部分更改。

其中灰色字段不可修改,如果一定要改(如头衔拼写错误),需要整个字段设定删除重新设定。

3.2 删除字段
选中待删除字段,这是【删除】按钮会亮起,然后如下图操作即可。

相关文章:
SAP B1 基础实操 - 用户定义字段 (UDF)
目录 一、功能介绍 1. 使用场景 2. 操作逻辑 3. 常用定义部分 3.1 主数据 3.2 营销单据 4. 字段设置表单 4.1 字段基础信息 4.2 不同类详细设置 4.3 默认值/必填 二、案例 1 要求 2 操作步骤 一、功能介绍 1. 使用场景 在实施过程中,经常会碰见用户需…...
Idea发布springboot项目无法识别到webapp下面的静态资源
问题: Idea发布springboot项目无法识别到webapp下面的静态资源 访问报错404 解决办法: 修改之后重新构建,访问成功...
Redis及其他缓存
1.NOSQL、Redis概述,通用命令,redis五大数据类型,三大特殊数据类型 NOSQL概述: (NOT ONLY SQL-不仅仅是SQL),泛指非关系型数据库,为解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用问题 常见no…...
golang入门
学习视频:https://www.bilibili.com/video/BV1gf4y1r79E go安装 go源码包一般解压到/usr/local/linux下go的环境变量配置: export GOROOT/usr/local/go # 源码包export GOPATH$HOME/go # 工作路径export PATH P A T H : PATH: PATH:GOROOT/bin:$GOPATH/…...
Behind the Code:与 Rakic 和 Todorovic 对话 OriginTrail 如何实现 AI 去中心化
原文:https://www.youtube.com/watch?vZMuLyLCtE3s&listPLtyd7v_I7PGnko80O0LCwQQsvhwAMu9cv&index12 作者:The Kusamarian 编译:OneBlock 随着人工智能技术的飞速发展,一系列前所未有的挑战随之而来:模型的…...
TS 学习 (持续更新中)
如果我们在 ts 中写 不用运行就能在文件中报错 ts 是一种静态类型的检查 能将运行时出现的错误前置 一般不用 命令行编译 ts 转换成 js 将中文转码 tsc index(.ts) 输入命令生成 配置文件 能在中间进行 配置转换成 js 的哪个规范 es5 还是 6 和其它转…...
el-table使用type=“expand”根据数据条件隐藏展开按钮
一:添加className <el-table :data"tableData" border :loading"loading" :row-class-name"getRowClass" expand-change"expandchange"><el-table-column type"expand"><template #default"…...
9月6日(∠・ω<)⌒☆
1、手写unique_ptr指针指针 #include <iostream> #include <stdexcept>template <typename T> class unique_ptr { public:// 构造函数explicit unique_ptr(T* ptr nullptr) : m_ptr(ptr) {}// 析构函数~unique_ptr() {delete m_ptr;}// 禁止复制构造函数…...
k8s执行crictl images报错
FATA[0000] validate service connection: CRI v1 image API is not implemented for endpoint "unix:///run/containerd/containerd.sock": rpc error: code Unimplemented desc unknown service runtime.v1.ImageService 解决方法: vim /etc/contai…...
基于人工智能的音乐情感分类系统
目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 音乐情感分类是通过对音乐音频信号进行分析,识别出音乐传递的情感,如“愉快”、“悲伤”、“愤怒”等。该技术…...
MySQL灾难恢复策略:构建稳健的备份与恢复机制
在现代企业环境中,数据的安全性和可靠性至关重要。灾难恢复计划(Disaster Recovery Plan, DRP)是确保在发生灾难性事件后,能够迅速恢复业务的关键策略。对于依赖MySQL数据库的系统,实现有效的灾难恢复计划尤为重要。本…...
docker安装DVWA(巨简单)
拉取镜像docker pull vulnerables/web-dvwa 启动docker run --rm -it -p 80:80 vulnerables/web-dvwa dvwa:...
使用matplotlab绘制多条形图
##黑马程序学习 这种多个条形图放在一起的图形该怎么画呢? 请看以下代码 #横着的条形图 from matplotlib import pyplot as plt import matplotlib#设置显示中文 和 负号 matplotlib.rcParams[font.sans-serif][SimHei] matplotlib.rcParams[axes.unicode_minus]F…...
五、Selenium操作指南(二)
文章目录 四、获取页面元素属性(一)get_attribute获取属性(二)获取文本(三) 获取其他属性 五、页面交互操作(一)输入文本 send_keys()(二)点击 click()&#…...
Peewee+Postgresql+PooledPostgresqlDatabase重连机制
需求: Postgresql数据库服务重启后,需要业务代码正常读写数据库 方案: 通过继承playhouse.shortcuts.ReconnectMixin和playhouse.pool.PooledPostgresqlDatabase来创建一个新的ReconnectPooledPostgresqlDatabase类修改reconnect_errors属性来…...
IIS 反向代理模块: URL Rewrite 和 Application Request Routing (ARR)
需要设置iis反向代理的场景其实挺多的。例如websocket、Server Sent Events(SSE) 都需要反向代理。 对于需要临时放公网访问的应用,直接运行127.0.0.1的开发环境,然后通过反向代理访问127.0.0.1就可以了,省去麻烦的iis设置。 IIS 实现反向代…...
企业在选择CRM系统时需要注意哪些问题呼叫系统外呼系统部署搭建
在这个信息技术快速发展的时代,许多企业为了对客户进行有效的管理对CRM系统进行了实施。那么,有人会问了,企业在选择CRM系统是需要注意哪些问题呢?我们一起来看看 业务需求匹配:系统功能是否与企业当前及未来的需求相符ÿ…...
数据库水平分表方案
数据库分表有很多策略,如下: 数据库分表是处理大型数据库中数据量过大的一种常见策略,它可以提高查询性能、减少锁竞争、降低维护成本等。以下是一些常见的数据库分表方案: 1. **垂直分表(Vertical Partitioning&…...
MySQL表操作及约束
修改表 重命名: mysql> alter table user1 rename to user; 新增一列 mysql> alter table user add image_path varchar(128) comment 路径 after birthday; mysql> alter table user add image_path varchar(128) comment 路径 after birthday; Query…...
Redis 键值对操作全攻略
文章目录 一 . get 和 set二 . keys *三 . exists四 . del五 . expire六 . ttl七 . Redis 的 key 的过期策略八 . 定时器的实现8.1 基于优先级队列8.2 基于时间轮实现的定时器 九 . type十 . 数据库管理相关命令 Hello , 大家好 , 这个专栏给大家带来的是 Redis 系列 ! 本篇文章…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...
龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
网络编程(UDP编程)
思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

