vault backup: 2025-08-12 10:25:57

This commit is contained in:
2025-08-12 10:25:58 +08:00
63 changed files with 278 additions and 52 deletions

View File

@ -15,7 +15,7 @@
"pageSize": "A4",
"marginType": "1",
"showTitle": true,
"open": false,
"open": true,
"scale": 100,
"landscape": false,
"marginTop": "10",

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 335 KiB

After

Width:  |  Height:  |  Size: 335 KiB

View File

Before

Width:  |  Height:  |  Size: 708 KiB

After

Width:  |  Height:  |  Size: 708 KiB

View File

Before

Width:  |  Height:  |  Size: 206 KiB

After

Width:  |  Height:  |  Size: 206 KiB

View File

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 301 KiB

View File

Before

Width:  |  Height:  |  Size: 169 KiB

After

Width:  |  Height:  |  Size: 169 KiB

View File

Before

Width:  |  Height:  |  Size: 312 KiB

After

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -0,0 +1,3 @@
![](assets/Pasted%20image%2020250812094137.png)

View File

@ -19,7 +19,6 @@
- [流程中无法圈阅](流程中无法圈阅.md)
- [提交流程时报错拒绝访问](提交流程时报错拒绝访问.md)
- [文件没有成功生成](文件没有成功生成.md)
- [无法安装.NET Framework 3.5](无法安装.NET%20Framework%203.5.md)
- [Code111 文件名太长](Code111%20文件名太长.md)
- [MainService.exe遇到访问冲突(Access Violation)](MainService.exe遇到访问冲突(Access%20Violation).md)
- [Office文件浏览时出现客户端闪退](Office文件浏览时出现客户端闪退.md)
@ -44,4 +43,11 @@
- [中望CAD签名.dwg文件报错当前操作DWG文件不存在或者已经打开](中望CAD签名.dwg文件报错当前操作DWG文件不存在或者已经打开.md)
- [图纸签字不显示](图纸签字不显示.md)
- [填写CAD属性中文显示成问号](填写CAD属性中文显示成问号.md)
- [dwg图纸采用caxa浏览器查看报错](dwg图纸采用caxa浏览器查看报错.md)
- [dwg图纸采用caxa浏览器查看报错](dwg图纸采用caxa浏览器查看报错.md)
- [图纸无法签字](图纸无法签字.md)
- [CAXA无法提取图面信息](CAXA无法提取图面信息.md)
## 数据库
- [SQL Server默认实例已存在](SQL%20Server默认实例已存在.md)
- [无法安装.NET Framework 3.5](无法安装.NET%20Framework%203.5.md)

View File

@ -0,0 +1,9 @@
# 问题情况
在已安装提取组件且正常情况测试还出现CAXA无法提取图面信息的情况
![](assets/Pasted%20image%2020250812101945.png)
# 解决办法
在客户端文件夹Sanpin>plm>v8>==**Client**== 找到 `DrawLib2013. dll` 文件

View File

@ -0,0 +1,35 @@
# 问题情况
在安装的时候,选择了 **默认实例**
![image-20240715124828303](../相关操作/1.0-EDM/assets/image-20240715124828303.png)
但是点击下一步,提示默认实例已经被占用了
![](assets/Pasted%20image%2020250807113230.png)
# 解决方法
## 删除默认实例
若是全新安装数据库,只是在第一次安装的时候失败了,导致默认实例虽然被创建出来使用了,但是实际上根本没有用,也无法使用的情况,则可以考虑将此默认实例删除
**控制面板** 中选择 **卸载程序** 选项
![](assets/Pasted%20image%2020250807113508.png)
选择 `Microsoft SQL Server版本` 。例如,` Microsoft SQL Server 2017 (64-bit) `
选择 **卸载**
![](assets/Pasted%20image%2020250807113536.png)
`SQL Server` 对话框弹出窗口中选择 **删除** 以启动 `Microsoft SQL Server 安装向导`
![](assets/Pasted%20image%2020250807113611.png)
**选择实例** 页上,使用下拉框指定要删除的 `SQL Server` 实例,或者指定与仅删除 `SQL Server` 共享功能和管理工具相对应的选项,然后将其删除即可
## 使用其他实例命名
若无法确认 **默认实例** 是否有用,则可以选择 **命名实例**,命名后进行服务端安装时,需要 [指定数据库实例](../相关操作/0.5-SETOUT/12.服务端安装、端口设置.md#指定数据库实例) 才可

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 377 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

View File

@ -0,0 +1,19 @@
# 问题情况
图纸属性、流程高级设定全部对得上,但走流程就是签不上字
![](assets/75f4f9a0894dde5d548a59bb29bbff00.jpg)
# 解决办法
将图框的标题栏使用 [X命令](../../设计软件使用/AutoCAD/6.块制作.md#X命令) 打散 ,再用 [B命令](../../设计软件使用/AutoCAD/6.块制作.md#B命令) 重新定义标题栏块
# 问题原因
标题栏中,该属性可能是通过对块选择后,右键选择 **块编辑器****在位编辑块** 选项后,再编辑、定义属性的
![](assets/Pasted%20image%2020250807133150.png)
这样定义出来的属性,虽然存在于图纸图面上,但 `PLM` 系统并不能很好的读取到,也就无法将信息写入到这个属性当中了
![](assets/Pasted%20image%2020250807133343.png)

View File

@ -22,7 +22,9 @@ winver
[2004、20h2、21h1至22h2](Files/2004-20h2-21h1.7z) 版本使用此源文件
将源文件解压放入到C盘根目录下
[windows server 2012](Files/windows-server-2012-sxs.7z.001) 请使用此源文件(有四个压缩包,请四个一起解压)
将源文件解压放入到 `C` 盘根目录下
可通过 **服务器管理器** 进行安装,选择 **指定备用源路径** 安装(备用源写 `C:\sxs`,源文件解压到哪,就写哪个位置)

View File

@ -4,7 +4,7 @@
# 解决方法
将图纸保存为2004版本的
将图纸保存为2004版本的(现在建议将其保存为 `2010` 版本)
![image-20240819141822291](assets/image-20240819141822291.png)

View File

@ -1,6 +1,6 @@
# 介绍
三品PLM使用的数据库为 `SQL Server`可以是2012、2016、2019版本
三品 `PLM` 使用的数据库为 `SQL Server`,可以是 `2012``2016``2019` 版本
# 安装教程
@ -50,7 +50,7 @@
> 注意:实例名称可以修改,但修改需要慎重,修改后在服务端安装时,需要着重注意 [指定数据库实例](12.服务端安装、端口设置.md#指定数据库实例)
根目录如果想要修改的话可以进行更改,但通常情况下不改动。点击下一步即可
根目录如果想要修改的话可以进行更改,但通常情况下不改动。点击下一步即可(在这一步可能会出现 [SQL Server默认实例已存在](../../报错处理/SQL%20Server默认实例已存在.md) 的情况)
![image-20240715124828303](../1.0-EDM/assets/image-20240715124828303.png)
@ -96,39 +96,39 @@
## SSMS安装
双击打开SSMS的安装程序
双击打开 `SSMS` 的安装程序
![image-20240715101754880](../1.0-EDM/assets/image-20240715101754880.png)
打开后更改SSMS的安装位置为D
打开后更改 `SSMS` 的安装位置为 `D`
![image-20240715101859912](../1.0-EDM/assets/image-20240715101859912.png)
点击 “ 安装 ” 按钮后,等待片刻
点击 **安装** 按钮后,等待片刻
![image-20240715101939799](../1.0-EDM/assets/image-20240715101939799.png)
安装完成后点击 “ 关闭 ” 即可
安装完成后点击 **关闭** 即可
![image-20240715102157116](../1.0-EDM/assets/image-20240715102157116.png)
## 更改端口
对于一个电脑中安装了多个SQL Server的情况需要为每个SQL Server指定端口默认使用1433端口
对于一个电脑中安装了多个 `SQL Server` 的情况,需要为每个 `SQL Server` 指定端口(默认使用 `1433` 端口)
使用`WIN+R`搜索 `SQLServerManager11.msc` 或者用`WIN+Q`搜索`SQL Server 配置管理器`,打开 `SQL Server Configuration Manager` 程序,在 `SQL Server网络配置` 中找到实例的协议安装数据库时创建的实例叫XXX那这里显示的就是XXX的实例
使用 `WIN+R` 搜索 `SQLServerManager11.msc` 或者用 `WIN+Q` 搜索 `SQL Server 配置管理器`,打开 `SQL Server Configuration Manager` 程序,在 `SQL Server网络配置` 中找到实例的协议安装数据库时创建的实例叫XXX那这里显示的就是XXX的实例
![](assets/Pasted%20image%2020241228111642.png)
`TCP/IP`中找到`IPALL`,设置TCP动态端口为空TCP端口设置为未被占用的端口即可
`TCP/IP` 中找到 `IPALL`,设置 `TCP` 动态端口为空,`TCP` 端口设置为未被占用的端口即可
![](assets/Pasted%20image%2020241228112131.png)
cmd命令行窗口中使用`netstat -an`命令可以查询到端口使用情况,找一个未被使用的端口使用即可
`CMD` 命令行窗口中使用 `netstat -an` 命令可以查询到端口使用情况,找一个未被使用的端口使用即可
![](assets/Pasted%20image%2020241228112602.png)
更改端口后需要在SQL Server服务中找到该实例的服务右键重启服务
更改端口后,需要在 `SQL Server` 服务中找到该实例的服务,右键重启服务
![](assets/Pasted%20image%2020241228112745.png)
@ -138,7 +138,7 @@
### 需要microsoft.NET Framework 3.5 Service
在SQL Server安装过程中可能会出现安装失败提示需要 `microsoft.NET Framework 3.5 Service...`
`SQL Server` 安装过程中,可能会出现安装失败,提示需要 `microsoft.NET Framework 3.5 Service...`
![在这里插入图片描述](assets/62fb622ac62e0271fc2bffb40367b78a.png)
@ -158,7 +158,7 @@
打开 `SQL Server Management Studio` 软件,输入用户名与密码后点击连接,连接成功即代表安装成功
如果要连接指定实例在IP地址后用`\`跟上实例名即可
如果要连接指定实例在IP地址后用 `\` 跟上实例名即可
# 修改调整

View File

@ -50,7 +50,7 @@
`CAXA` 的图纸(`.exb`)需要单独安装 `CAXA` 提取组件(优点在于可以做测量,测量精度高),需要分别安装如下三个文件夹中的程序
补充:==服务器上一定要装(要做 [属性映射](../1.5-EDM-CAD/35.CAXA图纸模板制作.md#属性映射) 的电脑要破解,没破解的电脑可以浏览),所有使用 `CAXA` 绘图的电脑,以及有看图需求的电脑都要安装==
补充:==服务器上一定要装(要做 [属性映射](../1.5-EDM-CAD/35.CAXA图纸模板制作.md#属性映射) 的电脑要破解,没破解的电脑可以浏览、可以提取属性),所有使用 `CAXA` 绘图的电脑,以及有看图需求的电脑都要安装==
![image-20240715135634395](../1.0-EDM/assets/image-20240715135634395.png)

View File

@ -200,6 +200,10 @@
![](assets/Pasted%20image%2020250725105842.png)
如果没有勾选可能会出现如下情况没勾选会去读取其他图纸的BOM结构然后一并提取出来这样需要更久的时间去提取也容易出错
![](assets/Pasted%20image%2020250811163752.png)
## 能够通过流程对附件中的文档借用件进行归档
对于文件借用件,通常需要选择到原件后才能走流程完成归档工作,对于借用过来的文件,是无法走流程完成归档工作的,勾选此参数后,即可实现对文档借用件可通过流程的归档过程完成归档

View File

@ -0,0 +1,57 @@
# 介绍
**迁移** 是指将一台计算机中的三品PLM管理软件系统所包含的 **数据库文件**、**电子仓文件**、**程序文件** 作为一个整体,从一台计算机转移到另一台计算机的过程
**注册** 则是指将已 **分离** 的三品PLM管理软件系统重新安装到计算机上并重新获得以前系统中的数据和应用功能
**分离** 是指将三品PLM管理软件系统安全地和本机分开
**分离和注册工具** 是指专门用于执行 **分离****注册** 工作的工具,名称为 `TransferTool.exe`,这个工具可以在服务端的安装目录下找到
![](assets/Pasted%20image%2020250811152749.png)
## 前提条件
需要关闭掉三品PLM系统的客户端与服务端
![](assets/Pasted%20image%2020250811152852.png)
# 操作
## 分离系统
找到 `TransferTool.exe` 工具
![](assets/Pasted%20image%2020250811152749.png)
双击打开该程序,然后选择 **分离当前服务端连接的数据库(为系统迁移作准备)**
![](assets/Pasted%20image%2020250811153227.png)
点击 **下一步** 弹出如下窗口
![](assets/Pasted%20image%2020250811170111.png)
显示的提示框中点击 **是**,若看到以下提示则表示数据库分离成功
![](assets/Pasted%20image%2020250811170130.png)
## 注册系统
在服务端的安装目录,双击打开 `TransferTool.exe` 工具,选择 **注册系统到本机** 选项
![](assets/Pasted%20image%2020250811172747.png)
**下一步** 弹出如下窗口,在这个窗口程序会自动分析迁移过来的系统目录结构下是否有 **分离的数据库****电子仓**。如果程序自动分析显示 **没发现** 时,用户可以点击按钮,手动选择系统已分类的数据库文件和电子仓目录
数据库名称是原来的旧名称,用户可以改为新的名称或保持不变
![](assets/Pasted%20image%2020250811172844.png)
数据库服务器和用户信息设置。默认的数据库服务器是 `(local)`,点击 **使用以下登录ID和密码的SQL Server**并输入正确的本地数据库登录ID和密码并点击 **下一步**
![](assets/Pasted%20image%2020250811173011.png)
在弹出的窗体中若显示以下的页面则注册系统成功,点击 **马上启动服务端** 按钮可以启动服务端,点击 **完成** 可以完成注册系统的操作
![](assets/Pasted%20image%2020250811173121.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 925 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 951 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 993 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1001 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 542 KiB

View File

@ -32,7 +32,7 @@
**对象分类属性** 窗体的 **规则定义** 页,分别设置 **名称**、**流程模板**、**名称编码器**、**编码器** 和 **导出模板**
对相关属性完成设定后,点击确定即可创建对应分类,但该分类的窗体表单仍是初始状态,无法满足使用,需要进行相应的 [属性配置](#窗体表单配置) 与 [自定义控件页面](170.自定义控件页面.md)
对相关属性完成设定后,点击确定即可创建对应分类,但该分类的窗体表单仍是初始状态,无法满足使用,需要进行相应的 [属性配置](#窗体表单配置) 与 [自定义控件页面](170.自定义控件页面.md)
![img](assets/clip_image002.jpg)
@ -123,14 +123,13 @@
#### 查找字段类型
根据人名查找PLM中的用户,确保填写用户名称的准确性;
根据人名查找 `PLM` 中的用户,确保填写用户名称的准确性;
在对应明细变中增加**字段描述**==**人员名称**==,选择**字段类型**==**查找**==,在==**数据填充SQL**==中输入:``select username '用户姓名' from cfuser where username like '%{.}%'
在对应明细变中增加 **字段描述****人员名称**,选择 **字段类型****查找**,在数据填充SQL中输入`select username '用户姓名' from cfuser where username like '%{.}%'`
![](assets/Pasted%20image%2020250804171252.png)
实现效果是在该窗体表单的明细表这一栏中输入任意字符,立即进行匹配,获取相关的字符,并以下拉框的形式展现出来
## 界面设计

View File

@ -20,7 +20,7 @@
接下来在系统中进行属性映射配置,对于要从图纸中提取的属性,就需要进行映射
使用`admin`账号登录三品PLM系统选择 **系统设置****CAD接口****可配置块****属性映射****重新配置**
使用 `admin` 账号登录三品PLM系统选择 **系统设置****CAD接口****可配置块****属性映射****重新配置**
![image-20240703132105812](../1.0-EDM/assets/image-20240703132105812.png)

View File

@ -46,6 +46,6 @@
#### 添加物料
通过 **添加物料** 功能,可以直接从PLM系统中将物料信息添加到明细表上
通过 **添加物料** 功能,可以直接从 `PLM` 系统中将物料信息添加到明细表上
![](../1.0-EDM/assets/Pasted%20image%2020250309143048.png)

View File

@ -122,11 +122,11 @@
那么当我使用 `Creo 11.0.0.0` 版本的默认模板去配置自定义模板的话,保存出来的其实是 `Creo 11.0.0.0` 的模板,用 `Creo 9.0` 是打不开的
所以建议使用来自低版本的CreoPro/E去配置自定义模板这样得到的模板文件通用性更高
所以建议使用来自低版本的 `Creo``Pro/E` 去配置自定义模板,这样得到的模板文件通用性更高
Pro/E 5.0的模板: [零件模板](Files/inlbs_part_solid_abs.prt) 、 [钣金件模板](Files/inlbs_part_sheetmetal_abs.prt) 、 [装配模板](Files/inlbs_asm_design_abs.asm)
`Pro/E 5.0` 的模板: [零件模板](Files/inlbs_part_solid_abs.prt) 、 [钣金件模板](Files/inlbs_part_sheetmetal_abs.prt) 、 [装配模板](Files/inlbs_asm_design_abs.asm)
高版本Creo编辑过低版本Creo的模板文件后无论是保存、另存存出来的都是高版本的Creo文件用低版本的Creo是打不开的
高版本 `Creo` 编辑过低版本 `Creo` 的模板文件后,无论是保存、另存,存出来的都是高版本的 `Creo` 文件,用低版本的 `Creo` 是打不开的
![](assets/Pasted%20image%2020250323175727.png)
@ -142,7 +142,7 @@ Pro/E 5.0的模板: [零件模板](Files/inlbs_part_solid_abs.prt) 、 [钣金
接下来在系统中进行属性映射配置,对于要从图纸中提取的属性,就需要进行映射
使用admin账号登录三品PLM系统,选择 **系统设置****CAD接口****Pro/E****属性映射****重新配置**
使用 `admin` 账号登录三品 `PLM` 系统,选择 **系统设置****CAD接口****Pro/E****属性映射****重新配置**
![](assets/Pasted%20image%2020250323194445.png)

View File

@ -22,7 +22,7 @@
在弹出的 **摘要信息** 弹窗中选择 **自定义** 选项,去添加要定义的属性,在 **属性名称** 一栏中可以直接输入要添加的属性名,也可以在预备的选项中选择添加
添加好后点击 **确定** 进行保存即可
添加好后点击 **确定** 进行保存即可
![](assets/Pasted%20image%2020250511223924.png)

View File

@ -38,7 +38,7 @@
![](assets/Pasted%20image%2020250512201259.png)
单击后选择 **链接到属性** 选项
**单击** 后选择 **链接到属性** 选项
![](assets/Pasted%20image%2020250512201350.png)

View File

@ -323,4 +323,10 @@
这份文件实际上是一份借用件,且与在企业知识库中 [编辑借用件](../1.0-EDM/7.借用与编辑借用文档.md#编辑借用件) 操作不同,完成 [文档关联物料](../../../..//SanPinPLM/相关操作/2.0-PDM/56.文档关联物料.md) 后,在物料的关联页签中,能够直接通过 [生命周期](../1.0-EDM/5.文件生命周期.md#生命周期) 将文件 [检出](../1.0-EDM/5.文件生命周期.md#检出)
![](assets/Pasted%20image%2020250214220700.png)
![](assets/Pasted%20image%2020250214220700.png)
# 相关参数
建议使用 [图纸生成BOM](#图纸生成BOM) 、 [图纸更新BOM](#图纸更新BOM) 功能前,将 [图纸在生成BOM时不检测当前目录下其他图纸文件](../0.5-SETOUT/25.实施必设参数.md#图纸在生成BOM时不检测当前目录下其他图纸文件) 参数勾选上
![](assets/Pasted%20image%2020250725105842.png)

View File

@ -117,17 +117,23 @@
![image-20240813171247905](assets/image-20240813171247905.png)
## 相关参数
建议使用 [图纸生成BOM](#图纸生成BOM) 、 [图纸更新BOM](#图纸更新BOM) 功能前,将 [图纸在生成BOM时不检测当前目录下其他图纸文件](../0.5-SETOUT/25.实施必设参数.md#图纸在生成BOM时不检测当前目录下其他图纸文件) 参数勾选上
![](assets/Pasted%20image%2020250725105842.png)
# 从Excel导入BOM
## BOM导入模板制作
从Excel导入BOM需要使用到 [批量bom导入](Files/Documents/批量bom导入.xlsx) 模板
`Excel` 导入 `BOM`,需要使用到 [批量bom导入](Files/Documents/批量bom导入.xlsx) 模板
需要注意的是Excel模板要求对标题栏的名称做定义即物料编码一栏的名称是 **ItemCode**,物料名称一栏的名称是 **ItemName**,层次码一栏的名称是 **Wbs**
需要注意的是,`Excel` 模板要求对标题栏的名称做定义,即物料编码一栏的名称是 **ItemCode**,物料名称一栏的名称是 **ItemName**,层次码一栏的名称是 **Wbs**
**==注意:层次码必须在第一列!==**
若有其他信息需要一并导入可根据需要自行调整Excel模板加入其他要导入的属性**字段名** 设置为Excel单元格的名称即可操作如下
若有其他信息需要一并导入,可根据需要自行调整 `Excel` 模板,加入其他要导入的属性,将 **字段名** 设置为 `Excel` 单元格的名称即可,操作如下
![](assets/Pasted%20image%2020250105124027.png)

View File

@ -64,6 +64,8 @@
在数据库中存储的是字符串,类型为 `nvarchar(50)`
需要引用 [枚举数据](18.枚举数据定义.md)
#### 时间类型
在数据库中存储的是字符串,类型为 `nvarchar(20)`
@ -84,6 +86,12 @@
字段长度默认为255在数据库中存储的是字符串类型为 `nvarchar(255)`
#### 查找
在数据库中存储的是字符串,类型为 `nvarchar(255)`
在实际使用过程中,可以执行 `SQL` 语句获取查询结果,获取的查询结果可能不止一条,会将所有查找的结果以下拉列表的形式返回,选择返回结果即可将内容填写到输入栏中
### 多属性映射
若有多个 **对象属性** 要同步映射到同一个 **对象属性** 中,则可以在表达式中写上多个 **对象属性名称**,获取的内容会通过分隔符进行分隔

View File

@ -93,6 +93,12 @@ end.
chiGetFieldValueBySql('select top 1 usr_sqlmj from pdmitem where usr_sqlmj like ''%' + str + '%''')
```
获取的结果赋值给变量
```delphi
str := chiGetFieldValueBySql('select usr_333 from pdmitem where itemcode = ''' + fedtItemCode.Text + '''');
```
#### 执行sql填充下拉框
此函数作用为执行 `SQL` 语句,将获取到的结果作为下拉选项提供给下拉框,需要写入两个参数,第一个为 `SQL` 语句,第二个为要接收结果的控件(接收结果的控件,其 **按钮类型** 必须为 **下拉**,详见 [根据输入内容在数据库中查询,获取查询结果作为下拉列表以供选择](999.Delphi脚本记录.md#根据输入内容在数据库中查询,获取查询结果作为下拉列表以供选择) 说明

View File

@ -425,9 +425,7 @@ end.
### 枚举itemindex说明
`itemindex` 是指枚举的序号,当为空时,`itemindex``-1`,不为空时,从 `1` 开始计数(切记!不是从 `0` 开始)
![](assets/Pasted%20image%2020250804150629.png)
`itemindex` 是指枚举的序号,当为空时,`itemindex``-1`,不为空时,从 `0` 开始计数(切记!不是从 `1` 开始)
如果枚举序号不同,哪怕枚举值一样也是无用的
@ -439,13 +437,17 @@ end.
>
> 若想达到效果,当 `cbxusr_444` 枚举控件选择 `A` 的时候,`cbxusr_333` 枚举控件要更新成 `3`
>
> 那么使用 `cbxusr_333.itemindex := cbxusr_444.itemindex;` 是无法实现的,因为 `cbxusr_444` 枚举控件选择 `A` 的时候,`iteminde` 为 `1`,而 `cbxusr_333` 枚举控件的 `itemindex` 为 `1` 的时候,对应的是枚举 `3`
> 那么使用 `cbxusr_333.itemindex := cbxusr_444.itemindex;` 是无法实现的,因为 `cbxusr_444` 枚举控件选择 `A` 的时候,`iteminde` 为 `0`,而 `cbxusr_333` 枚举控件的 `itemindex` 为 `0` 的时候,对应的是枚举 `3`
>
> `cbxusr_444.Text := cbxusr_333.Text;` 的效果说明:
>
> `cbxusr_333` 枚举控件选择 `3` 的时候,`cbxusr_333.Text` 获取到的就是 `3`,而将这个值赋值给 `cbxusr_444.Text` 后,实际上在数据库里 `cbxusr_444` 是存储着 `3` 的,虽然在页面上最初会显示成 `3`,但当我们保存后,`3` 所对应的 `C` 枚举会显示在 `cbxusr_444` 控件内
## 枚举项联动
`fedtusr_FBaseUnitId` 控件有值,且 `fedtusr_FPurchaseUnitId``fedtusr_FSaleUnitId``fedtusr_FSalePriceUnitId` 等控件没有选择值的情况下,将 `fedtusr_FBaseUnitId` 控件的值赋予给其他控件(仅限于 **值改变时执行**
枚举控件空值为-1从0开始计数
枚举控件空值为-1从0开始计数(计数方式见 [枚举itemindex说明](#枚举itemindex说明)
```Delphi
uses MyClass,Variables,BaseUtil,CommonFunc,DataConst,CFFrm,CFSimplePropFrm,Forms,StdCtrls,Variants,SysUtils,Classes,Controls,Dialogs,
@ -513,11 +515,6 @@ end.
当要设置自定义分隔符号,`StringList.Delimiter := '-';` 需要写在转化语句之前
<<<<<<< HEAD
uses MyClass,Variables,BaseUtil,CommonFunc,DataConst,CFFrm,CFSimplePropFrm,Forms,StdCtrls,Variants,SysUtils,Classes,Controls,Dialogs,
CHostIntf,ProductClas,DocClas,LoginClas,VirtualTrees,CEntClas,PathClas;
=======
```delphi
uses
MyClass, Variables, BaseUtil, CommonFunc, DataConst, CFFrm, CFSimplePropFrm,
@ -740,4 +737,51 @@ begin
chiExecuteSqlNoResultRec('update pdmitem set usr_mj2 = ' + QuotedStr(str) + ' where itemcode = ' + QuotedStr(fedtItemCode.Text));
end; // 添加end
end.
```
## 整数判断
期望当物料 **启用库存周期复检**`cbxusr_FEnableCyclistQCSTK` 为true 时,**复检周期须不小于0**`fedtusr_FStockCycle` 的值要大于0**不小于提醒提前期**`fedtusr_FEWLeadDay`),对 **复检周期** 进行校验
```delphi
// 定义变量存储转换后的整数数值
var StockCycle, LeadDay: Integer;
begin
// 注释:在下面添加您的脚本代码
if cbxusr_FEnableCyclistQCSTK.checked = true then
begin
try
// 将输入框文本转换为整数
StockCycle := StrToInt(fedtusr_FStockCycle.Text);
LeadDay := StrToInt(fedtusr_FEWLeadDay.Text);
except
on E: EConvertError do
begin
ShowMessage('复检周期或提醒提前期输入格式错误,请输入有效的整数!');
if Pos(fedtusr_FStockCycle.Text, E.Message) > 0 then
fedtusr_FStockCycle.SetFocus
else
fedtusr_FEWLeadDay.SetFocus;
Abort;
end;
end;
// 检查复检周期是否大于提醒提前期,若不满足则提示错误
if not (StockCycle > LeadDay) then
begin
ShowMessage('启用库存周期复检时,复检周期必须大于提醒提前期,请重新设置!');
fedtusr_FStockCycle.SetFocus; // 将焦点定位到复检周期输入框
Abort; // 终止后续操作,防止错误数据提交
end;
// 检查复检周期是否小于0
if StockCycle < 0 then
begin
ShowMessage('启用库存周期复检时复检周期不能小于0请重新设置');
fedtusr_FStockCycle.SetFocus;
Abort;
end;
end;
end.
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 KiB

View File

@ -6,7 +6,7 @@
Tips: 此处我们以精确实业客户的枚举导入模板的制作为例子,在面对不同客户给到的不同的特征编码表,需及时做出对应的改变,此处笔记仅作对照理解作用!
![](assets/Pasted%20image%2020250804102827.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250804102827.png)
如图,这是客户给到的特征编码表,每一行都是一个物料所具有的各个特性,而有非常多种物料都具备此特性,那么如果我们要去对所有的特性种类做一个总结以此来制作批量枚举导入模板,所以建议先将所有特性列和特性描述做一个去重和对应操作
@ -18,15 +18,15 @@ Tips: 此处我们以精确实业客户的枚举导入模板的制作为例子
如图E列Excel公式为 `=UNIQUE (B:B)`得到的是B列去重后的数据
![](assets/Pasted%20image%2020250801171845.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250801171845.png)
在得到去重后的数据后,即可对每一个去重后的数据做 **XLOOKUP匹配** 得到这个数据所对应的所有数据如通过物料编号得到物料名称如图J1的Excel公式为=XLOOKUP (H1, B: B, A:A)通过匹配H1在B列的数据最后在A列中得到对应的数据最后下拉得到J列的整行数据
![](assets/Pasted%20image%2020250804094224.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250804094224.png)
需要注意的是,通过公式得到的数据都是会随着 **源数据** 的改变而改变的如E列的数据是通过对B列去重得到的B列就是E列的源数据那么如果将B列数据改变E列数据也将改变所以为了方便接下来对表格进行操作我们可以将通过公式得到的数据 **复制粘贴转变为数值**
![](assets/Pasted%20image%2020250804100759.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250804100759.png)
### 筛选物料枚举项
@ -34,12 +34,12 @@ Tips: 此处我们以精确实业客户的枚举导入模板的制作为例子
在客户给到的特征值域表内,借助数据的筛选功能,可得到所需要的特定属性的项
![](assets/Pasted%20image%2020250804104135.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250804104135.png)
如图筛选的是所有内部特性号为Z9999999003且语言为Z1和ZH中文缩写和中文的项
将筛选出的所有项复制到 **字段名****系统内字段** 匹配的 **枚举空模板**
![](assets/Pasted%20image%2020250804104700.png)
![](../相关操作/4.0-other/assets/Pasted%20image%2020250804104700.png)
至此就完成了枚举模板的制作

Binary file not shown.

After

Width:  |  Height:  |  Size: 582 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 640 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 576 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 850 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@ -0,0 +1,22 @@
# 目录
# 1. 发起变更申请
新建变更申请单,编辑后创建工作流程
![](assets/Pasted%20image%2020250808111925.png)
![](assets/Pasted%20image%2020250808112056.png)
(略)流程审批过程
![](assets/Pasted%20image%2020250808112233.png)
# 2. 图纸更改
选中需要更改的归档图纸,右键----生命周期-----变更,选择图纸更改流程
![](assets/Pasted%20image%2020250808112519.png)
![](assets/Pasted%20image%2020250808112602.png)