K3 新单到老单关联字段的添加
新单到老单字段的添加分为两种:
一种为文本字段信息的关联,新单与老单字段的信息均为文本字段;
另一种为基础资料信息的关联,新单与老单均为基础资料字段信息。
K3 WISE 11.0中存储老单关联字段信息的表为 ICSelbills ,该表的内部结构为:
FID:表示下推目标单据的类型,其值主要关联在表ICTransActionType中的FID,该表内主要是各种单据的缩写类型;
FFieldName:原单据在VB层面的标识单据编号的名称,在数据库中一般根据需要变更单据的内容来制定;
FDstCtlField:目标单据中需要下推过去的目标字段数据库的名称;
FSelType:目标字段的类型;0表示单据分录字段,2表示单据头字段,1表示该目标字段的当前值将会作为选单序时簿的过滤条件;
FDK:用于表头控件,对于同一个目标字段,回填值用于区分基础资料与普通文本的方式;基础资料时 0-代表基础资料表中的内码FINTERID 或 FID,1-代表基础资料表中的名称FNAME ,2-代表基础资料中标的FNUMBER字段;
FColName:源字段的别名,该名称一般为自己定义,对于字段的下推并没有什么太大意义,因为在软件内部的查询结果集中会给它们重新定义临时标准名称;
FName:源字段的数据库字段名称,该名称需要查询BOS或者数据库找到该值;
FTableName:源字段所在的表名称;
FTableAlias:原表别名,在跟踪中并未发现实质性作用,一般根据原有表明进行定义,若没有的自己可定义;
FAction:用于处理一些简单的字段值判断,或者是字段之间的运算,最为重要的是:基础资料中的查询信息,对应上面的FDK,基础资料的字段需要三类语句:
SELECT FINTERID FROM t_submessage WHERE FinterID=v1.FBase5
SELECT FNAME FROM t_submessage WHERE FinterID=v1.FBase5
SELECT FNUMBER FROM t_submessage WHERE FinterID=v1.FBase5
普通文本无该语句的要求,直接定义字段关系即可;
FROB:目前为止并未发现实质性作用;
FAllowEdited:猜想为应该是控制下推目标单据显示后,字段的可编辑性,目前还未进行求证;
文本关联信息的下推实例
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0142' , , ,'FText10', 'FText1', 't_RPContract', 'v1', '', , )
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0142' , , ,'FText11', 'FText1', 't_RPContract', 'v1', '', , )
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0142' , , ,'FText12', 'FText1', 't_RPContract', 'v1', '', , )
基础资料关联的实例
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0179' , , ,'FBase30', 'FBase3', 't_RPContract', 'v1', '(SELECT FName FROM t_submessage WHERE FinterID=v1.FBase3)', , )
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0179' , , ,'FBase31', 'FBase3', 't_RPContract', 'v1', '(SELECT FName FROM t_submessage WHERE FinterID=v1.FBase3)', , )
insert into ICSelbills
(FID, FFieldName, FDstCtlField, FSelType, FDK,FColName, FName ,FTableName, FTableAlias, FAction, FROB, FAllowEdited)
values
('S01', 'FContractID', 'FHeadSelfS0179' , , ,'FBase32', 'FBase3', 't_RPContract', 'v1', '(SELECT FName FROM t_submessage WHERE FinterID=v1.FBase3)', , )
总述:变更的方式均为相同,区别在于是否要添加查询语句;
K3 新单到老单关联字段的添加的更多相关文章
- 四、K3 WISE 开发插件《工业单据老单插件开发新手指导》
开发环境:K/3 Wise 13.0.K/3 Bos开发平台.Visual Basic 6.0 =============================================== 目录 一 ...
- jQuery Validate 表单验证插件----通过name属性来关联字段来验证,改变默认的提示信息,将校验规则写到 js 代码中
一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW 访问密码 f224 二. 添加一个另外一个插件jquery.validate.messages_cn.js. ...
- K3老单序时簿开发示例
K3需要对老单进行二次开发,老单的二次开发比较麻烦,这里整理一下老单序时簿上添加按钮的二次开发示例. --以下SQL脚本--获取 MENU IDselect FID,FmenuID,FName fro ...
- mysql 删除单表内多个字段重复的数据
mysql 删除单表内多个字段重复的数据 DELETE from lot_log_payflow WHERE (pay_no,sub_flow_type) in () s1) AND id ) s2) ...
- openerp学习笔记 计算字段、关联字段(7.0中非计算字段、关联字段只读时无法修改保存的问题暂未解决)
计算字段.关联字段,对象修改时自动变更保存(当 store=True 时),当 store=False 时,默认不支持过滤和分组7.0中非计算字段.关联字段只读时无法修改保存的问题暂未解决 示例代码: ...
- <form> 标签 // HTML 表单 // from 表单转换成json 格式
<form> 标签 // HTML 表单 // from 表单转换成json 格式 form 表单,对开发人员来说是在熟悉不过的了,它是页面与web服务器交互时的重要信息来源 表 ...
- JavaScript 客户端JavaScript之Document对象中的表单和表单元素
Form对象 代表一个HTML表单(document可以有多个表单元素) 表单访问 document.form[document.forms.length-1] 访问表单元素 document.for ...
- YII关联字段并带搜索排序功能
1.简介 从接触yii框架到现在已经快有两个月了,但是自己对yii框架的了解程度并不是很深,并没有系统地去学习,仅仅只是在做项目的时候遇到不懂得知识才去翻手册. 在上一个项目中因为需要将关联的表的字段 ...
- odoo14 入门解刨关联字段
Odoo中关联字段是用来绑定表与表之间主从关系的. 主从关系指: 首先必须要明白id的存在的意义,它具备"唯一"的属性,也就是表中所有记录中该字段的值不会重复. 假设表A存储是身份 ...
随机推荐
- Solr与Elasticsearch比较
Solr优点1.Solr有一个更大.更成熟的用户.开发和贡献者社区.2.支持添加多种格式的索引,如:HTML.PDF.微软 Office 系列软件格式以及 JSON.XML.CSV 等纯文本格式.3. ...
- 【Codeforces 639B】Bear and Forgotten Tree 3
[链接] 我是链接,点我呀:) [题意] [题解] 首先,因为高度是h 所以肯定1下面有连续的h个点依次连成一条链.->用了h+1个点了 然后,考虑d这个约束. 会发现,形成d的这个路径,它一定 ...
- elasticsearch 文档阅读笔记(三)
文档 elasticsearch是通过document的形式存储数据的,个人理解文档就是一条数据一个对象 我们添加索引文档中不仅包含了数据还包含了元数据 比如我们为一个数据添加索引 文档中不仅有jso ...
- 0816关于MySQL的审计 init-connect+binlog实现用户操作追踪
转自:http://blog.sina.com.cn/s/blog_605f5b4f01013xkv.html mysql 用init-connect+binlog实现用户操作追踪 做access 的 ...
- 手动编译java的package问题,及演示继承的基本实现
不用IDE,而直接用命令编译JAVA包,仔细看了下,作一个记录. 以下的URL值得收藏. http://www.aiuxian.com/article/p-2115485.html http://ww ...
- junit4单元测试基础
导入方法看如下截图就明白了: 新建测试用例 右击包名,点击新建,或者新建里的others,选择JUnit test case,如下图所示: 接下来,给测试类起名字和选择要测试的类,如下图所示: ...
- pl/sql developer 自动输入替换 光标自动定位
pl/sql developer 自动输入替换 工具->首选项->用户界面->编辑器->自动替换,自己定义一些规则,然后输入key,点击tab或者空格,就可以进行替换了: SL ...
- C++管理指针成员
1.C++中一般採用以下三种方法之中的一个管理指针成员: (1)指针成员採取常规行为. 这种类具有指针的全部缺陷:具有指针成员且使用默认复制构造函数和赋值操作符,无法避免悬垂指针(两个对象的指针成员指 ...
- iOS应用主流UI架构实现
一.介绍 如今iOS开发过程中,最常见的一种UI架构是:界面底部是四五个tab bar .中间是内容显示.顶部是包括标题及返回等操作button,当点击进入某个模块后可以点击进行返回.这样的架构的应用 ...
- C语言——结构体的使用
C语言允许用户自己建立由不同类型数据组成的组合型的数据结构,它称为结构体. 1.建立一个结构体 struct 结构体名{ 成员列表 }; struct Date { int month; int da ...