UBF打印模板中,单据自定义扩展字段显示均为扩展字段值集值编码,而在实际运用过程中打印时需要显示扩展字段名称,具体实现方法如下

方式一:采用SQL系统定义函数[dbo].[fn_GetSegName]实现<通用>

  1)、检查[fn_GetSegName]函数是否存在(SQL位置:ERP数据库->可编译性->函数->标量值函数)

2)、在U9中注册函数[fn_GetSegName];

 文件路径:  D:\yonyou\U9V50\Portal\bin\script.xml
D:\yonyou\U9V50\Portal\ApplicationServer\bin\script.xml
注册文件: script.xml
注册函数: <sql name="fn_GetSegName" method="fn_GetSegName" owner="dbo" />

  3)、注册自定义函数后,需重启IIS方可在U9产品中使用;

  4)、打印模板自定义字段调用函数[fn_GetSegName]方法;

select fn_GetSegName(UFIDA::U9::MO::Issue::IssueDoc.IssueDocLines.Item.DescFlexField.CombineName ,'#@#',) 
from UFIDA::U9::MO::Issue::IssueDoc
where UFIDA::U9::MO::Issue::IssueDoc.DocNo=Fields!IssueDoc_DocNo.Value and UFIDA::U9::MO::Issue::IssueDoc.IssueDocLines.LineNum=Fields!IssueDoc_IssueDocLines_LineNum.Value

  5)、fn_GetSegName(DescFlexField_CombineName ,'#@#',56)  参数说明:参数1、参数2固定值,参数3为扩展字段段数(公共段1-50,私有段从51段开始)

方式二:采用SQL用户自定义函数实现<定制>

  1)、创建SQL函数:函数名称[Fn_YM_IssueDetailDescFlex]

--=================================================
--获取生产领料单明细物料私有段6值集值名称
--=================================================
IF EXISTS (SELECT * FROM sysobjects WHERE name = N'Fn_YM_IssueDetailDescFlex')
DROP FUNCTION Fn_YM_IssueDetailDescFlex
GO
CREATE FUNCTION dbo.Fn_YM_IssueDetailDescFlex
(
@DocNo NVARCHAR(), --生产领料单单号
@lineNo NVARCHAR()--生产领料单行号
)
RETURNS NVARCHAR()
AS
BEGIN
DECLARE @DescFlexFieldStr NVARCHAR()
select @DescFlexFieldStr=cast( D.[name] as NVARCHAR() ) from MO_IssueDoc A
inner join [MO_IssueDocLine] B on (B.[issueDoc]=A.[ID])
inner join [CBO_ItemMaster] C on (B.[item]=C.[ID])
inner join (select [Base_DefineValue].[Code],[Name]
from [Base_DefineValue_Trl]
inner join [Base_DefineValue] on ([Base_DefineValue].[ID]=[Base_DefineValue_Trl].[ID])
inner join [Base_ValueSetDef] on ([Base_ValueSetDef].[ID]=[ValueSetDef])
where [Base_ValueSetDef].[Code]='' ) d on (C.[DescFlexField_PrivateDescSeg6]=d.[code])
where A.[DocNo]=@DocNo and b.[LineNum]=@lineNo RETURN @DescFlexFieldStr
END

函数 <Fn_YM_IssueDetailDescFlex>

  2)、SQL验证函数可用性

select dbo.Fn_YM_IssueDetailDescFlex('GQLL-201908070034','') -- 参数1:生产领料单单号;参数2:生产领料单行号

  3)、U9中注册自定义函数

注释:注册自定义函数后,需重启IIS方可在U9产品中使用;

 路径: D:\yonyou\U9V50\Portal\bin\script.xml
D:\yonyou\U9V50\Portal\ApplicationServer\bin\script.xml
注册文件:script.xml
注册函数: <sql name="Fn_YM_IssueDetailDescFlex" method="Fn_YM_IssueDetailDescFlex" owner="dbo" />

  4)、调用自定义函数[Fn_YM_IssueDetailDescFlex]

select
Fn_YM_IssueDetailDescFlex(UFIDA::U9::MO::Issue::IssueDoc.DocNo,UFIDA::U9::MO::Issue::IssueDoc.IssueDocLines.LineNum)
from UFIDA::U9::MO::Issue::IssueDoc
where UFIDA::U9::MO::Issue::IssueDoc.DocNo=Fields!IssueDoc_DocNo.Value
and UFIDA::U9::MO::Issue::IssueDoc.IssueDocLines.LineNum=Fields!IssueDoc_IssueDocLines_LineNum.Value

U9单据打印模板自定义扩展字段显示名称的更多相关文章

  1. 纸壳CMS现已支持自定义扩展字段

    简介 纸壳CMS是开源免费的可视化内容管理系统. GitHub https://github.com/SeriaWei/ZKEACMS 自定义字段 纸壳CMS现已支持自定义字段,在不修改代码的情况下, ...

  2. 吉特仓储管系统(开源WMS)--Web在线报表以及打印模板分享

    很早之前就想写这篇文章与大家分享一下自己在吉特仓储管理系统中开发打印和报表的功能,在GitHub(https://github.com/hechenqingyuan/gitwms)上公开下载的代码中很 ...

  3. python 全栈开发,Day70(模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介)

    昨日内容回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...

  4. Django基础(2)--模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介

    没整理完 昨日回顾: 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 ...

  5. 重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印

    重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印 一.引言 桌面端系统经常需要对接各种硬件设备,比如扫描器.读卡器.打印机等. 这里介绍下桌面端 ...

  6. Django模板自定义标签和过滤器,模板继承(extend),Django的模型层

    上回精彩回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...

  7. EasyBPM打印模板的缓存问题

    业务平台EasyBPM(易实管理软件)有一个功能是模板打印的功能.就是可以使用一个docx格式的模板,输出一个docx格式的单据的文档. 打印的逻辑是先从服务端获取模板,如果没有对应的模板,就提示先上 ...

  8. WCF自定义扩展,以实现aop!

    引用地址:https://msdn.microsoft.com/zh-cn/magazine/cc163302.aspx  使用自定义行为扩展 WCF Aaron Skonnard 代码下载位置: S ...

  9. Jquery自定义扩展方法(二)--HTML日历控件

    一.概述 研究了上节的Jquery自定义扩展方法,自己一直想做用jquery写一个小的插件,工作中也用到了用JQuery的日历插件,自己琢磨着去造个轮子--HTML5手机网页日历控件,废话不多说,先看 ...

随机推荐

  1. 【JZOJ6231】【20190625】等你哈苏德

    题目 有\(m\)条线段,每条线段为\([l_i,r_i]\),每条线段可以是黑/白色 有些线段已经被染色,有些需要被确定颜色 询问是否存在一种染色方案,使得对于每一个位置\(i\),覆盖它的线段黑白 ...

  2. LINK : fatal error LNK1181: cannot open input file 'glew32.lib' error: command 'C:\\Program Files (

    下载 库文件 参考: https://stackoverflow.com/questions/53355474/kivent-installation-fatal-error-lnk1181-cant ...

  3. 【cf比赛记录】Codeforces Round #600 (Div. 2)

    Codeforces Round #600 (Div. 2) ---- 比赛传送门 昨晚成绩还好,AC A,B题,还能上分(到底有多菜) 补了C.D题,因为昨晚对C.D题已经有想法了,所以补起题来也快 ...

  4. cesium地下模式(地表透明)2

    接上一篇博客,这篇直接分析火星的源码,看它到底改了些什么. 注意:在cesium1.63.1版本改变了模块化方式,由AMD改为ES6模块化.注意引入文件加载模块时做出对应修改. 1.火星代码里修改了4 ...

  5. 编译错误: file not found with angled include use quotes instead #include <lualib.h> 和 #include "lualib.h"

    http://stackoverflow.com/questions/17465902/use-of-external-c-headers-in-objective-c 问题: 7down votef ...

  6. tomcat中文乱码

    1. https://blog.csdn.net/qq_35038153/article/details/78430359 2. 1.修改apache-tomcat-9.0.14-windows-x6 ...

  7. 修改qt版本

    安装了qt4和qt5 /usr/lib/x86_64-linux-gnu/qt-default/qtchooser 的default.conf 第一行改成自己qmake的bin路径即可

  8. pymysql装饰器封装

    pymysql装饰器封装 def openClose(fun): def run(sql=None): coon =pymysql.connect(host='localhost' ,port=330 ...

  9. jsch配置sftp服务器ssh免密登录

    前期对接了一个通过ssh免密登录的需求,是基于原先密码登录sftp服务器的代码上进行改造,实际上代码改动量非常少,趁此机会对自己整理的资料做一下总结. 1. 什么是SFTP SFTP是一个安全文件传送 ...

  10. 华为云ARM64服务器试用

    公司同事弄了个华为云的ARM64服务器,让我帮忙部署我们的服务,所以先试用了一下. 总体感觉还行,使用的CentOS系统,yum也能用,epel源也可以用.但是SCL软件集用不了. uname -a ...