Merge remote-tracking branch 'origin/main'

This commit is contained in:
2025-07-14 10:52:53 +08:00
94 changed files with 545 additions and 84 deletions

View File

@ -24,7 +24,7 @@
在安装前确保防火墙、杀毒软件已关闭
双击服务端安装程序服务端的安装程序一定是Server_blank加版本信息
双击服务端安装程序(服务端的安装程序一定是 `Server_blank` 加版本信息)
![image-20240715145839560](../1.0-EDM/assets/image-20240715145839560.png)
@ -44,7 +44,7 @@
![image-20240715150539815](../1.0-EDM/assets/image-20240715150539815.png)
创建新的数据库,直接点下一步即可
创建新的数据库,直接点下一步即可(创建的数据库默认名为 `plmv8` 使用的字符集是 `GBK`**数据库必须由程序创建,自己创建的数据库会无法安装**
![image-20240715154212454](../1.0-EDM/assets/image-20240715154212454.png)
@ -78,8 +78,10 @@
# 端口设置
打开服务器管理器
打开服务器管理器
![](assets/Pasted%20image%2020250331152027.png)
==在 **工具** 中选择 **高级安全 Windows Defender 防火墙** 选项==
![image-20240716193339075](../1.0-EDM/assets/image-20240716193339075.png)

View File

@ -180,7 +180,6 @@
![](assets/Pasted%20image%2020250326172745.png)
## 手动归档零部件时,对其下的借用零部件也一起归档
使得手动归档BOM时BOM其下的零部件物料也会被归档

View File

@ -96,6 +96,10 @@
![image-20240529155337941](../1.0-EDM/assets/image-20240529155337941.png)
#### 员工姓名
员工姓名记录着员工的名字,虽然不是强制要求必填的,但建议填写,以便于 [批量导入签章](../1.0-EDM/70.电子签章设置.md#批量导入签章) 后去 [查看电子签章](../1.0-EDM/70.电子签章设置.md#查看电子签章) ,以及便于使用 [用户名只在登录的时候,其他地方均显示姓名](#用户名只在登录的时候,其他地方均显示姓名) 参数
#### 主管领导
在用户信息定义界面中,虽然主管领导一栏与 [流程模板中的动态用户](../1.0-EDM/75.文档审批流程模板制作.md#动态用户) ——用户主管密切相关,但通常情况下不建议这么设置,保持其为空即可
@ -122,7 +126,9 @@
在 [批量用户导入](Files/Documents/批量用户导入.xlsx) 模板中,需要写入导入用户应具备的信息,即 ==**用户名**、**员工姓名**、**所在部门路径、电子仓**== 等
需要注意的是Excel模板要求对标题栏的名称做定义即用户名一栏的名称是 **userid**,员工姓名一栏的名称是 **username**,所在部门路径一栏的名称是 **orgnamepath**,电子仓一栏的名称是 **locid**
需要注意的是Excel模板要求对标题栏的名称做定义可参考 [Excel单元格名称修改方式](../../简略教程/Excel单元格名称修改方式.md) 进行定义
用户名一栏的名称是 **userid**,员工姓名一栏的名称是 **username**,所在部门路径一栏的名称是 **orgnamepath**,电子仓一栏的名称是 **locid**
若有其他信息需要一并导入根据需要自行调整Excel模板加入其他要导入的属性**字段名** 设置为Excel单元格的名称即可操作如下
@ -132,7 +138,7 @@
![image-20240825193513408](assets/image-20240825193513408.png)
也可在 ==系统设置 → 参数配置 → 系统参数 → 数据定义相关 → 对象属性定义 → 用户== 中查询,如图所示
也可在 ==系统设置 → 参数配置 → 系统参数 → 数据定义相关 → 对象属性定义 → 用户== 中查询,如图所示r
![image-20240825193706480](assets/image-20240825193706480.png)
@ -180,7 +186,7 @@
#### 添加角色
点击 **添加** 按钮后,会进入到角色选择页面,左侧目录与系统角色目录完全一致,点击对应的文件夹,可见其所具备的角色,选择要为用户添加的角色,点击添加即可将其添加至确认区,选择完成后点击确定即可完成角色添加
点击 **添加** 按钮后,会进入到 [角色](42.角色设置.md) 选择页面,左侧目录与系统角色目录完全一致,点击对应的文件夹,可见其所具备的角色,选择要为用户添加的角色,点击添加即可将其添加至确认区,选择完成后点击确定即可完成角色添加
在三品PLM系统中一个用户可具备多个角色
@ -188,6 +194,12 @@
![image-20240529161655768](../1.0-EDM/assets/image-20240529161655768.png)
##### 扩展
新建用户在没有分配 [角色](42.角色设置.md#角色) 的情况下登录会出现弹窗(弹窗出现后点击确定会关闭客户端),用户登录只会校验该用户是否分配了角色
![](assets/Pasted%20image%2020250710090228.png)
#### 移除角色
在角色管理页面中,选择要移除的角色,点击“移除”按钮即可完成角色移除

View File

@ -58,6 +58,12 @@
> 注意:**用户在登录系统后初始权限来源于 “ 权限设置 ” 窗体中的设定值,角色模块定义的权限不宜过大,用户的具体权限一般都在模块中由管理员重新定义他所具有的权限**
#### 扩展
在角色本身没有赋予任何权限的情况下, [用户](40.用户设置.md#用户) 登录系统后,只能看到各个功能模块授予他本身的权限
![](assets/Pasted%20image%2020250710091353.png)
### 包含用户
**包含用户** 中的用户都具有该角色所具有的特性,并通过登录系统后获得该类角色对应模块下所定义的权限——即 [初始权限](../1.0-EDM/20.文件权限管理.md#初始权限)

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

View File

@ -16,7 +16,7 @@
![发布窗体](../../../外发客户教程/assets/image-20240902201810278.png)
**添加用户窗体**可以选择整个部门将其添加进来也可以只选择某个人将其添加进来8.266及以后版本存在发布给部门时部门内成员可跳过签收直接具备权限的bug
**添加用户窗体** 中,可以选择整个部门将其添加进来,也可以只选择某个人将其添加进来(`8.266`及以后版本存在发布给部门时部门内成员可跳过签收直接具备权限的bug
![image-20240902202154617](../../../外发客户教程/assets/image-20240902202154617.png)

View File

@ -123,6 +123,6 @@
## 界面设计
界面设计是对窗体表单的 **常规属性** 页面进行设计,在该页面右键即可在菜单中选择 **自定义界面**,进入到 [自定义控件页面](170.自定义控件页面.md) 当中
界面设计是对窗体表单的 **常规属性** 页面进行设计,在该页面右键即可在菜单中选择 **自定义界面**,进入到 [自定义控件页面](170.自定义控件页面.md) 当中(可能会出现迟迟 [打不开常规属性自定义界面](../../报错处理/打不开常规属性自定义界面.md) 的情况
![image-20240615201756319](assets/image-20240615201756319.png)

View File

@ -14,7 +14,7 @@
## 相关参数介绍
选择 **系统设置** 模块,并选择 **参数配置** 选项,选择 “ 搜索 ” 并搜索 **版本**
选择 **系统设置** 模块,并选择 **参数配置** 选项,选择 **搜索** 并搜索 **打印**
- 打印一批文件时,采用相同的水印
- 打印文档时,水印可以修改

View File

@ -20,7 +20,7 @@
![img](assets/clip_image002-17185011420605.jpg)
**选择流程步骤** 窗体,单击选择 **流程模板** 列表中的流程模板,单击选择 **流程图** 中的流程过程,单击选择 **过程参与人**,单击 **确定** 按钮确定选择
**选择流程步骤** 窗体,单击选择 **流程模板** 列表中的 [流程模板](192.窗体表单审批流程模板制作.md) ,单击选择 **流程图** 中的流程过程,单击选择 **过程参与人**,单击 **确定** 按钮确定选择
![img](assets/clip_image002-17185011787776.jpg)

View File

@ -0,0 +1,50 @@
# 介绍
窗体表单的审批流程模板制作方式和 [文档审批流程模板制作方式](75.文档审批流程模板制作.md) 是相似的,基础操作基本一致,但在 [设定操作](75.文档审批流程模板制作.md#设定操作) 中有所不同
## 区别
**过程定义****高级设定** 中,需要修改 **设定****对象类型****窗体表单**(在 [设定操作](75.文档审批流程模板制作.md#设定操作) 中此处记录的是 **文档**
![](assets/Pasted%20image%2020250710105711.png)
## 操作步骤
1. 对象类型
2. 对象分类
3. 属性名称
4. 赋值内容
我们需要对此四处进行调整修改
### 1.对象类型
对象类型这一栏,点击箭头,选择 **窗体表单** 如下图所示
![](assets/Pasted%20image%2020250710105929.png)
### 2.对象分类
对象分类这一栏,点击箭头,选择你当前制作的 **窗体表单**
举例:你正在做的是立项申请表的窗体表单,那你就选择立项申请表
![](assets/Pasted%20image%2020250710110158.png)
### 3.属性名称
属性名称这一栏,点击箭头,选择对应的属性
![](assets/Pasted%20image%2020250710110426.png)
这里选择的属性对应的是 **企业配置****对象分类****窗体表单****正在制作的窗体表单****窗体表单配置中的属性**,要在哪个属性上写内容,就选择哪个属性
![](assets/Pasted%20image%2020250710110831.png)
### 4.赋值内容
需要根据情况设置 **流程属性****对象属性**==对于文件在创建之初就具备的属性,需要在 **对象属性** 中进行设置,对于文件在走流程时逐渐添加上去的信息,需要在 **流程属性** 中进行设置==(可参考 [设定操作](75.文档审批流程模板制作.md#设定操作) 进行赋值即可)
![](assets/Pasted%20image%2020250710111042.png)

View File

@ -6,11 +6,11 @@
## 换章流程说明
文件在归档状态下,无法换章情况
文件在归档状态下,如下三种情况无法实现换章效果
1. 执行工作流,无法换章
2. 执行变更流,但是没有经过变更操作,无法换章
3. 执行变更流,经过变更操作但没有做出实际变更行为,无法换章
2. 执行变更流,但是没有经过 [变更操作](102.文档变更流程模板制作.md#变更操作) ,无法换章
3. 执行变更流,经过 [变更操作](102.文档变更流程模板制作.md#变更操作) 但没有做出实际变更行为,无法换章
若想要单独走一个换章的流程,可以设置一个工作流,先将文件 [取消归档](5.文件生命周期.md#取消归档) ,然后再紧跟着进行 [归档](5.文件生命周期.md#归档) 过程,在归档过程中盖章

View File

@ -80,7 +80,7 @@ Word文件请见 [Word文档模板制作](26.Word文档模板制作.md)
3. 复制该工作表,在复制表中文本框依然存在,且可以照常签字
4. 同一工作簿中有多个同名文本框,无论是否位于同一工作表,系统都可统一对这些同名文本框进行签字
4. 同一工作簿中有多个同名文本框,无论是否位于同一工作表,系统都可统一对这些同名文本框进行签字
5. 流程模板中,**属性名称** 设置为文本框“名称”即可,无需因多个工作表中存在”同名“文本框而进行特别设置
@ -97,7 +97,7 @@ Word文件请见 [Word文档模板制作](26.Word文档模板制作.md)
### 制作方式
选中指定单元格后左上角原来显示C2也就是单元格坐标的位置就是 **名称栏**,点击该位置写入新名称后回车即可
选中指定单元格后左上角原来显示C2也就是单元格坐标的位置就是 [名称栏](../../简略教程/Excel单元格名称修改方式.md#介绍) ,点击该位置写入新名称后回车即可
> **注意**:在名称框中输入新名称后一定是**回车**!这样才能生效
>
@ -121,7 +121,7 @@ Word文件请见 [Word文档模板制作](26.Word文档模板制作.md)
1. 一个工作簿里无论多少工作表,单元格都不允许同名
2. 通过复制工作表得到的新表,虽然指定位置的单元格名称与原表是一致的,但是不生效
1. 想要生效必须让单元格名称为XXX_ALL格式但存在新的问题不可删除原始工作表创建出的副本不能在签名位置前插入行或列副本签名位置始终是原始工作表签名位置的单元格坐标
3. 多个工作表多处位置签名只能进行多次命名,且名称不同,在流程模板中需要分别写入到 属性名称 中,工作量大
3. 多个工作表多处位置签名只能进行多次命名,且名称不同,在流程模板中需要分别写入到 [设定操作](75.文档审批流程模板制作.md#设定操作) 的 **属性名称** 中,工作量大
4. 通过文档模板创建新文档,然后复制出一个新的工作表,走流程的时候,新工作表签不上名
## 单元格坐标(极不推荐)

View File

@ -1,14 +1,14 @@
# 介绍
想要让Office文件在系统中自动转PDF文件需要服务器上具备Office软件或WPS软件本篇笔记以WPS Office软件的集成为主进行讲解
想要让 `Office` 文件在系统中自动转 `PDF` 文件,需要服务器上具备 `Office` 软件或 `WPS` 软件,本篇笔记以 `WPS Office` 软件的集成为主进行讲解
# 操作
## 查看程序位数
打开WPS软件**任务管理器** 中查看它的进程位数
打开`WPS`软件,在 **任务管理器** 中查看它的进程位数
如果进程后带有 `(32位)` 的信息代表所安装的WPS Office软件是32位的否则说明是64位的
如果进程后带有 `(32位)` 的信息,代表所安装的 `WPS Office` 软件是32位的否则说明是64位的
![](assets/Pasted%20image%2020250429142402.png)
@ -106,4 +106,14 @@ mmc comexp.msc /64
打开PLM客户端**系统设置****参数配置****搜索** → 搜索“工具” 找到 **将Office文件转成PDF文件的工具** 参数,将其改成 **Microsoft Office**
![](assets/Pasted%20image%2020250429154027.png)
![](assets/Pasted%20image%2020250429154027.png)
# 启用转换要求
必须得要在服务器上打开了一个 `Excel` 文件,一个 ` Word ` 文件,才能顺利完成转 `PDF` 设置
![](assets/377ea1c1eeacd72231820a6bbfd5113b.png)
否则的话,会出现报错
![](assets/4a23c0ea09e4cc92f112436b2267a5e7.jpg)

View File

@ -82,7 +82,7 @@
- **新增**:导入文件时的默认选项
- **替换**:导入文件时,若系统中存在同名文件,选择 **替换** 可以直接用新文件把老文件给替换掉(老版本文件不会保留)
- **替换**:导入文件时,若当前文件夹中存在同名文件,选择 **替换** 可以直接用新文件把老文件给替换掉(老版本文件不会保留)。若是在系统中存在同名文件,但文件不处于当前文件夹中,那么选择 **替换** 选项,实际是将其他文件夹下的同名文件创建快捷方式到当前文件夹下(新文件不导入)
- **替换(提升版本)**:导入文件时,若系统中存在同名文件,选择 **替换** 可以直接用新文件把老文件给替换掉,同时文件的版本会进行提升,并且会将老版本保留下来
@ -94,6 +94,16 @@
#### 补充
##### 归档文件再次导入同名文件
如果在同个文件夹下导入xi
![](assets/归档.png)
导入到不同文件夹下
##### 替换权限逾越
在文件夹A中设置用户X的权限为空即不可见不可浏览也不可操作文件夹A但是在文件夹B中给予用户X [新增](20.文件权限管理.md#新增) 权限

View File

@ -1,6 +1,6 @@
# 介绍
文档模板配置需要和 [文档分类](80.文档分类设置.md) 做关联绑定
文档模板指得是放置在 **企业知识库****文档模板** 区中的文件,对于系统来讲,放置在此的都会将其当做是文档模板,但只是将文件放进去,仍是无法直接通过 [新建文档](4.创建或导入文件.md#新建文档) 操作给创建出来的,需要将文档模板和 [文档分类](80.文档分类设置.md) 做关联绑定才行
## 名称规则

View File

@ -1,12 +1,12 @@
# 制作
无论是印章还是个人签名其电子签章的制作方式都相同的取一张干净的白纸获取到签名或印章将其扫描为PDF可用扫描机或扫描全能王进行处理华为手机中相册集成了扫描功能
无论是印章还是个人签名,其电子签章的制作方式都相同的,取一张干净的白纸,获取到签名或印章,将其扫描为`PDF`(可用扫描机或扫描全能王进行处理,华为手机中相册集成了扫描功能)
扫描得到签名的PDF文件后在电脑上打开进行截图截图大小尽量保证在长宽比为`2:1`
扫描得到签名的`PDF`文件后,在电脑上打开进行截图,截图大小尽量保证在长宽比为:`2:1`
![image-20240826154529584](assets/image-20240826154529584.png)
截图的文件更推荐保存为位图文件,即 `.bmp` 文件为了方便CAD图纸签章
截图的文件更推荐保存为位图文件,即 `.bmp` 文件(为了方便`CAD`图纸签章)
然后在电脑上使用画图软件打开该文件,将其像素调整为 `200:100` 即可
@ -24,7 +24,7 @@
## 电脑手写体签名制作
Creo三维签名需要使用电脑手写体签名`FontCreator` 软件打开
`Creo` 三维签名需要使用电脑手写体签名,将 `FontCreator` 软件打开
第一次打开需要自己手动创建字体工程,名称只能是:`SPPLMFONT`为了三品PLM系统能够识别
@ -110,6 +110,26 @@ Creo三维签名需要使用电脑手写体签名将 `FontCreator` 软件打
![](assets/Pasted%20image%2020240614150815.png)
#### 补充
查看电子签章的前提要求是,该用户必须要有 [员工姓名](../0.5-SETOUT/40.用户设置.md#员工姓名) (仅限于查看,导入是可以正常导入的,但是没有 **员工姓名** 的用户是无法在此查看到的)
![](assets/Pasted%20image%2020250710162635.png)
这种情况下,即便是搜索也无法找到
![](assets/Pasted%20image%2020250710162657.png)
只有在 [员工姓名](../0.5-SETOUT/40.用户设置.md#员工姓名) 中写了内容,才能找得到
![](assets/Pasted%20image%2020250710162822.png)
> 扩展内容,那么为什么杨杰在没有 **员工姓名** 的情况下也能查找到呢
>
> 这是因为在数据库中,杨杰的 **员工姓名** 字段值不为 `null`(为空可以找到,为 `null` 不行)
>
> ![](assets/Pasted%20image%2020250710162933.png)
## 手写体签名导入
完成了 [电脑手写体签名制作](#电脑手写体签名制作) 后,并不像图片签章那样可以直接导入,需要先打开制作好的字体文件进行安装,将手写体安装到电脑上

View File

@ -16,7 +16,7 @@
# 前置要求
制作流程模板,需要用户角色至少具备 **流程模板****可见、浏览、修改、新增** 权限
制作流程模板,需要用户 [角色](../0.5-SETOUT/42.角色设置.md) 至少具备 **流程模板****可见、浏览、修改、新增** 权限
![image-20240628191418801](assets/image-20240628191418801.png)
@ -127,7 +127,7 @@
>
> ![image-20240703191755795](assets/image-20240703191755795.png)
系统不仅可以为 **文档** 设定操作,还可以为 [窗体表单](175.窗体表单.md) 、 [文档变更记录](210.文档变更记录分类.md) 等设定操作
系统不仅可以为 **文档** 设定操作,还可以为 [窗体表单](175.窗体表单.md) 、 [文档变更记录](210.文档变更记录分类.md) 等设定操作(详见 [窗体表单审批流程模板制作](192.窗体表单审批流程模板制作.md)
![](assets/Pasted%20image%2020250211152217.png)

View File

@ -84,24 +84,6 @@
下图以从系统中为例
选择需要添加的文件 → 添## 在流程中增加流程附件
我们在创建工作流的时候
如果想在流程中增加流程附件
![](../../../外发客户教程/客户特供/金凯/assets/Pasted%20image%2020250425114332.png)
在创建工作流的时候点击流程附件→添加对象→选择任意一种添加方式
1. 从系统中从plm系统中添加文件
2. 从模板生成从plm系统中选择文档模板生成一个新的文件
3. 从本地磁盘:先选择选取文件的文档分类,再从本地选择文档
![](../../../外发客户教程/客户特供/金凯/assets/Pasted%20image%2020250425114555.png)
下图以从系统中为例
选择需要添加的文件 → **添加****确定**
![](../../../外发客户教程/客户特供/金凯/assets/Pasted%20image%2020250425132209.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 626 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 624 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

@ -0,0 +1,11 @@
保存后,找到 `CAXA` 的安装位置,打开文件夹找到 ` template\zh-CN ` 文件夹
![image-20240716203504917](../1.0-EDM/assets/image-20240716203504917.png)
选择要保存模板的位置,即 `ANSI、GB、ISO、JIS` 中的一个这与CAXA的工程图模板分类对应
![image-20240716203950004](../1.0-EDM/assets/image-20240716203950004.png)
将保存的 `.tpl` 文件粘贴到对应文件夹内即可,这样就能在 `CAXA` 中新建文件直接选择该模板了
![image-20240716204102588](../1.0-EDM/assets/image-20240716204102588.png)

View File

@ -16,7 +16,7 @@
## 产品工作区
此功能位于 **产品管理** 模块之下,工程师可在 **产品工作区** 之中创建半成品、零件等物料将其搭建成BOM
此功能位于 **产品管理** 模块之下,工程师可在 **产品工作区** 之中,创建半成品、零件等物料,将其搭建成`BOM`
> 需要注意的是三品PLM与ERP不同在三品PLM产品工作区中 **物料** 与 **BOM** 是同步创建出来的也就是说在搭建BOM时物料也就随之生成了

View File

@ -1,107 +0,0 @@
# 介绍
在三品PLM当中 [BOM](20.产品管理基本概念.md#基础概念) 以 `DBOM` 即设计BOM为主在三品PLM当中搭建BOM分有四种方式
1. [直接搭建](#直接搭建(不推荐))
2. [编辑明细表搭建](#编辑明细表搭建)
# 操作注意点
所有的打样物料全部搭建在产品区的打样目录下
![](assets/Pasted%20image%2020250620092301.png)
目前分类只建到客户,有新的打样项目则需要自己手动增加分类
例如目前有一个继峰的ABC项目
![](assets/Pasted%20image%2020250620092713.png)
==这里千万要注意ERP分类编码的位数是和正式物料的位数不一样的这里是最容易出错的地方==打打样分类下是8开头然后成品、本成品原本是1位数现在变成两位数。客户原本是2位数现在变成三位数
![](assets/Pasted%20image%2020250620092846.png)
最后记得,创建分类文件夹
![](assets/Pasted%20image%2020250620093629.png)
然后就可以正常的产品区打样目录下新建物料和BOM了
# 直接搭建
直接搭建指的是在产品工作区或者标准物料库通过直接 [创建](50.创建与编辑物料.md#创建物料) 或 [借用](54.借用与编辑借用物料.md#借用) 的方式对物料搭建出相应的BOM结构
选择父物料对其右键,直接选择 **新建**,创建出对应的子物料
![image-20240828190402747](assets/image-20240828190402747.png)
==**注意**:直接在物料下新建子物料,该子物料不会将原件置于对应的分类文件夹之下==,通过 [把零部件放入标准物料库](59.把零部件放入标准物料库.md) 操作可以将其归纳到对应分类文件夹中
如果子物料已经存在于系统当中,可以对子物料进行 **借用**
![img](assets/clip_image002-17234341551101.jpg)
然后对父物料右键,选择 **粘贴** 即可
![img](assets/clip_image002-17234341967853.jpg)
目标物料下将生成被借用物料的借用件
![img](assets/clip_image002-17234342163334.jpg)
# 编辑明细表搭建
编辑明细表搭建指的是在产品工作区或者标准物料库通过 **编辑明细表** 的方式对物料搭建出相应的BOM结构
选择父物料对其右键,直接选择 **编辑明细表**
![image-20240829134039977](assets/image-20240829134039977.png)
**编辑明细表** 界面可以编辑当前物料的所有子物料
1. 新建/插入
1. 直接在当前物料下新建子物料,需要指定该物料的分类,并在该行内填写相关属性
![image-20241121154059903](assets/image-20241121154059903.png)
2. 物料编码在设置了物料分类后点击应用,再点击物料编码填写栏右侧的三个点才能自动生成
![image-20240829140448269](assets/image-20240829140448269.png)
2. 搜索添加/插入
1. 通过搜索找到已有的物料,将其添加进来
![image-20240829141344937](assets/image-20240829141344937.png)
3. 选择添加/插入
1. 在各个区域中寻找物料,将其添加进来
![image-20240829141519758](assets/image-20240829141519758.png)
4. 在位添加
1. 知道物料编码的话,可以直接输入物料编码完成添加
![image-20240829141641844](assets/image-20240829141641844.png)
5. 在位替换
1. 直接将原有的子物料替换掉,输入要替换的新物料的编码完成添加
![image-20240829141812316](assets/image-20240829141812316.png)
6. 替换
1. 在各个区域中寻找物料,将其作为新物料替换掉旧物料
![image-20240829141910009](assets/image-20240829141910009.png)
7. 添加替代件
1. 选择物料后,可在各个区域中寻找物料,将其作为该物料的替代件(替代件的结构类型不能是产品)
![image-20240829142128390](assets/image-20240829142128390.png)
注:**添加** 即为 **借用****新建** 即为新增物料,与 [直接搭建](#直接搭建(不推荐)) 存在相同问题,即新建的物料不在对应的分类文件夹下

Binary file not shown.

Before

Width:  |  Height:  |  Size: 960 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

View File

@ -29,6 +29,8 @@
显示源窗体中的编辑控件,双击控件节点时,在 [脚本编辑器](#脚本编辑器) 的当前光标位置增加控件名称,支持节点拖动
![](assets/Pasted%20image%2020250225085445.png)
### 脚本编辑区
编辑脚本的地方。 编辑时支持模糊匹 **配控件区** 的控件名和 **函数/变量区** 的函数或变量名;
@ -79,8 +81,30 @@ end.
显示系统支持的变量和函数,双击节点时,在 **脚本编辑区** 的当前光标位置增加变量或函数名称,鼠标移到树节点时,提示信息窗显示变量类型或函数原型,支持节点拖动
![](assets/Pasted%20image%2020250225085445.png)
![](assets/Pasted%20image%2020250710101403.png)
#### 执行sql获取字符串
此函数作用为执行 `SQL` 语句,去获取字符串结果
案例如下
```delphi
chiGetFieldValueBySql('select top 1 usr_sqlmj from pdmitem where usr_sqlmj like ''%' + str + '%''')
```
#### 执行sql填充下拉框
此函数作用为执行 `SQL` 语句,将获取到的结果作为下拉选项提供给下拉框,需要写入两个参数,第一个为 `SQL` 语句,第二个为要接收结果的控件(接收结果的控件,其 **按钮类型** 必须为 **下拉**,详见 [根据输入内容在数据库中查询,获取查询结果作为下拉列表以供选择](999.Delphi脚本记录.md#根据输入内容在数据库中查询,获取查询结果作为下拉列表以供选择) 说明
案例如下:
```delphi
chiFillComboBox('select distinct top 10 usr_sqlmj from pdmitem where usr_sqlmj like ''%' + str + '%''',fedtusr_sqlmj);
```
### 错误提示区
执行 **保存****检查语法正确性** 命令时,如果脚本存在错误,则错误信息被显示在 **错误提示区**,双击错信息行时,在 **脚本编辑区** 中对于的错误行用红色背景标记
执行 **保存****检查语法正确性** 命令时,如果脚本存在错误,则错误信息被显示在 **错误提示区**,双击错信息行时,在 **脚本编辑区** 中对于的错误行用红色背景标记
![](assets/Pasted%20image%2020250710101604.png)

View File

@ -567,4 +567,98 @@ begin
fedtFShtName.Text := TempStr; // 直接赋值
end.
```
```
## 删除文本中的空格
删除掉指定控件中输入的文本的空格
```delphi
uses
MyClass, Variables, BaseUtil, CommonFunc, DataConst, CFFrm, CFSimplePropFrm,
Forms, StdCtrls, Variants, SysUtils, Classes, Controls, Dialogs,
CHostIntf, ProductClas, DocClas, LoginClas, VirtualTrees, CEntClas, PathClas;
// 在begin之前定义过程
procedure RemoveSpacesFromEdit(EditControl: TCustomEdit);
var
OriginalText: string;
begin
OriginalText := EditControl.Text;
// 使用StringReplace函数删除所有空格
EditControl.Text := StringReplace(OriginalText, ' ', '', [rfReplaceAll]);
end;
begin
// 调用过程处理edtSpec控件
RemoveSpacesFromEdit(edtSpec);
end.
```
### 删除其他空白字符
如果需要删除其他空白字符如制表符换行符可以修改过程为
```delphi
uses
MyClass, Variables, BaseUtil, CommonFunc, DataConst, CFFrm, CFSimplePropFrm,
Forms, StdCtrls, Variants, SysUtils, Classes, Controls, Dialogs,
CHostIntf, ProductClas, DocClas, LoginClas, VirtualTrees, CEntClas, PathClas;
// 在begin之前定义过程
procedure RemoveSpacesFromEdit(EditControl: TCustomEdit);
var
OriginalText: string;
begin
OriginalText := EditControl.Text;
// 删除所有空白字符
OriginalText := StringReplace(OriginalText, ' ', '', [rfReplaceAll]);
// 制表符
OriginalText := StringReplace(OriginalText, #9, '', [rfReplaceAll]);
// 换行符
OriginalText := StringReplace(OriginalText, #13#10, '', [rfReplaceAll]);
EditControl.Text := OriginalText;
end;
begin
// 调用过程处理edtSpec控件
RemoveSpacesFromEdit(edtSpec);
end.
```
## 根据输入内容在数据库中查询,获取查询结果作为下拉列表以供选择
根据在 `fedtusr_sqlmj` 控件中输入的内容在数据库中进行查询并将查询结果去重后列出头十条作为下拉选择以供 `fedtusr_sqlmj` 控件选择
```delphi
uses MyClass,Variables,BaseUtil,CommonFunc,DataConst,CFFrm,CFSimplePropFrm,Forms,StdCtrls,Variants,SysUtils,Classes,Controls,Dialogs,
CHostIntf,ProductClas,DocClas,LoginClas,VirtualTrees,CEntClas,PathClas;
var
str:string;
begin
//注释:在下面添加您的脚本代码
str := fedtusr_sqlmj.Text;
if Length(str) > 0 then
begin
if Length(chiGetFieldValueBySql('select top 1 usr_sqlmj from pdmitem where usr_sqlmj like ''%' + str + '%''')) > 0 then
begin
chiFillComboBox('select distinct top 10 usr_sqlmj from pdmitem where usr_sqlmj like ''%' + str + '%''',fedtusr_sqlmj);
end
else
begin
chiFillComboBox('select ''''',fedtusr_sqlmj);
end;
end;
end.
```
### 前置要求
接收下拉选择的控件的 **按钮类型** 必须是 **下拉** 才行属性的类型可以是文本也可以是枚举枚举要求枚举来源为空
![](assets/Pasted%20image%2020250710104426.png)
此外脚本必须放在 **按钮** **单击执行**
![](assets/Pasted%20image%2020250710104559.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 423 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB