Kingdee 云星空 7.7 自定义BOM成本查询 替代料用量取0 金额取0


-- =============================================
-- Author:      自定义BOM成本查询 替代料用量取0 金额取0
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[Proc_T_ENG_BOMITEM_SUPPLIERPRICEDEFFAULT]@PFNUMBER NVARCHAR(30)
AS
BEGIN-- SET NOCOUNT ON added to prevent extra result sets from-- interfering with SELECT statements.SET NOCOUNT ON;--declare @p3 dbo.udt_inttable
DECLARE @FPPMATERIALID INT /**/
--insert into @p3 SELECT MAX(FID) FID FROM dbo.T_ENG_BOM WHERE 1=1 AND FFORBIDSTATUS='A' AND FDOCUMENTSTATUS='C'AND FUSEORGID=100436 GROUP BY FMATERIALID
SELECT @PFNUMBER=MAX(FNUMBER),@FPPMATERIALID=MAX(FMATERIALID) FROM dbo.T_ENG_BOM WHERE FNUMBER LIKE @PFNUMBER+'%'AND FFORBIDSTATUS='A' AND FDOCUMENTSTATUS='C'AND FUSEORGID=100436IF OBJECT_ID('tempdb..#MAXFID') IS NOT NULL
BEGIN
DROP TABLE tempdb..#MAXFID
END
SELECT MAX(FID) FID INTO #MAXFID FROM dbo.T_ENG_BOM WHERE 1=1 AND FFORBIDSTATUS='A' AND FDOCUMENTSTATUS='C'AND FUSEORGID=100436 GROUP BY FMATERIALIDIF OBJECT_ID('tempdb..#T_ENG_BOMITEM') IS NOT NULL
BEGIN
DROP TABLE tempdb..#T_ENG_BOMITEM
END
CREATE  TABLE #T_ENG_BOMITEM
(
FITEMS  NVARCHAR(300)       NULL,/*项次组合*/
FTOPVERSION NVARCHAR(80)    NULL,/*顶级BOM版本*/
FLEVEL  NVARCHAR(1) NULL,/*BOM层次*/
FVERSION    NVARCHAR(30)    NULL, /*父项BOM版本*/
FUSEORGID   INT NULL,/*使用组织ID*/
FPMATERIALNO    NVARCHAR(80)    NOT NULL,/*父项物料编码*/
FLOT INT    NULL,/*批量*/
FSEQ INT    NULL,/*子项序号*/
FREPLACEGROUP INT       NULL,/*项次*/
FMATERIALNO NVARCHAR(30)    NOT NULL,/*子项物料编码*/
FOLDMATERIALNO   NVARCHAR(30)   NULL,/*旧物料编码*/
FMATERIALNAME    NVARCHAR(255)  NULL,/*物料名称*/
FSPECIFICATION   NVARCHAR(510)  NULL,/*规格型号*/
FERPCLSID    NVARCHAR(10)   NULL,/*物料属性*/
FMATERIALTYPE NVARCHAR(10)  NULL,/*子项物料类型   */
FNUMERATOR DECIMAL(20,10)   NULL,/*分子*/
FDENOMINATOR DECIMAL(20,10) NULL,/*分母*/
FFIXSCRAPQTY    DECIMAL(20,10)  NULL,/* 固定损耗*/
FSCRAPRATE  DECIMAL(20,10)  NULL,/*变动损耗率*/
FQTY DECIMAL(20,10) NULL,/*用量*/
FEFFECTDATE     DATETIME    NULL,/*生效日期*/
FEXPIREDATE     DATETIME    NULL,/*失效日期*/
FISSUETYPE     VARCHAR(1)  NULL,/*发料方式*/
FOWNERID INT    NULL,/*货主   */
FPOSITIONNO NVARCHAR(2000)  NULL,/*位置号*/
FCHILDSUPPLYORGID INT   NULL, /*供应组织*/
F_BHR_PLMSEQ    NVARCHAR(10)    NULL,/*PLM序号*/
F_BHR_ECNNO     NVARCHAR(30)    NULL,/*ECN编号*/
FISSKIP NVARCHAR(1) NULL,/*跳层*/
FISKEYITEM NVARCHAR(1)  NULL,/*替代主料*/
FREPLACETYPE    NVARCHAR(1)     NULL,/*替代方式*/
FREPLACEPOLICY  NVARCHAR(100)       NULL,/*替代策略*/
FREPLACEPRIORITY    NVARCHAR(100)       NULL,/*替代优先级*/
FPPMATERIALID INT NOT NULL, /*顶项物料ID*/
FPMATERIALID INT NOT NULL, /*父项物料ID*/
FMATERIALID INT NOT NULL,/*子项物料ID*/
FSUPPLIERID INT NULL,
FSUPPLIERNO VARCHAR(30) NULL,
FSUPPLIERNAME VARCHAR(100) NULL,
FCYFORPRICE DECIMAL(18,6) NULL,
FTAXCYFORPRICE DECIMAL(18,6) NULL,
FPRICE DECIMAL(18,6) NULL,
FTAXPRICE DECIMAL(18,6) NULL,
FTAXAMOUNT DECIMAL(18,6) NULL,
FCYFORTYPE VARCHAR(10) NULL
);WITH cte AS
(
SELECT 1 AS BOM层次,h.FID 顶阶ID
,h.FID 本阶ID
,CAST(10000+b.FREPLACEGROUP AS  NVARCHAR) AS 项次组合
,CAST(CAST(h.FID AS NVARCHAR(10)) +'.'+CAST(h.FID AS NVARCHAR) AS NVARCHAR(MAX)) AS 内码组合
,CAST('.'+CAST(h.FID AS VARCHAR)+'-'+CAST(10000+b.FREPLACEGROUP AS  NVARCHAR) AS NVARCHAR(MAX)) AS 内码项次1
,CAST(CAST(h.FID AS NVARCHAR(10)) +'.'+CAST(h.FID AS NVARCHAR)+'-'+CAST(10000+b.FREPLACEGROUP AS  NVARCHAR)  AS  NVARCHAR(MAX)) AS 内码_项次组合
,h.FNUMBER 产成品BOM版本
,h.FNUMBER BOM版本, h.FUSEORGID 使用组织
/*,h.FMASTERID,*/
,h.FMATERIALID PFMATERIALID,h.FQTY 批量
,b.FSEQ 子项序号,b.FREPLACEGROUP 项次
,b.FMATERIALID
,b.FMATERIALTYPE  AS 子项物料类型
/*,CAST(CASE WHEN b.FMATERIALTYPE = '1' THEN '标准件'WHEN FMATERIALTYPE ='2' THEN '返还件' WHEN FMATERIALTYPE = '3' THEN '替代件' ELSE '未知类型' END AS NVARCHAR(10)) AS 子项物料类型,b.FDOSAGETYPE 用量类型,*/
,b.FBASENUMERATOR 分子,b.FBASEDENOMINATOR 分母,b.FBASEFIXSCRAPQTY 固定损耗,FSCRAPRATE 变动损耗率-- ,b.FBASENUMERATOR/b.FBASEDENOMINATOR 用量1
,CONVERT(DECIMAL(23,10),b.FBASENUMERATOR/(CASE b.FBASEDENOMINATOR WHEN 0 THEN 1 ELSE b.FBASEDENOMINATOR END )*(1+b.FBASEFIXSCRAPQTY)) 用量/*CONVERT(DECIMAL(23,10),p.用量*b.FBASENUMERATOR/b.FBASENUMERATOR*(1+b.FBASEFIXSCRAPQTY)) 用量*/
,b.FEFFECTDATE 生效日期,b.FEXPIREDATE 失效日期,b.FISSUETYPE 发料方式,b.FOWNERID 货主,FPOSITIONNO 位置号,/*b.FENTRYROWID 子项标识,*/
b.FCHILDSUPPLYORGID 供应组织,RIGHT('0000'+b.F_BHR_PLMSEQ,4) PLM序号,b.F_BHR_ECNNO ECN编号,
ba.FISSKIP 跳层,ba.FISKEYITEM 替代主料,ba.FREPLACETYPE 替代方式,ba.FREPLACEPOLICY 替代策略,ba.FREPLACEPRIORITY 替代优先级/*,b.FQTY 标准用量,b.FACTUALQTY 实际用量*/FROM T_ENG_BOMCHILD b WITH(NOLOCK)
JOIN dbo.T_ENG_BOM h WITH(NOLOCK) ON h.FID = b.FID
JOIN dbo.T_ENG_BOMCHILD_A ba  WITH(NOLOCK) ON ba.FENTRYID = b.FENTRYID
--JOIN dbo.T_ENG_BOMCHILD_A b ON h.FID=b.FID
WHERE 1=1  AND h.FDOCUMENTSTATUS='C' AND h.FFORBIDSTATUS = 'A' /*只取未禁用状态的BOM*/AND h.FUSEORGID=100436 AND h.FNUMBER=@PFNUMBERUNION ALL
SELECT p.BOM层次+1 AS BOM层次,p.顶阶ID
,h.FID 本阶ID
,CAST(p.项次组合+'.'+CAST(10000+b.FREPLACEGROUP AS  NVARCHAR) AS  NVARCHAR) AS 项次组合
,CAST(p.内码组合 +'.'+CAST(h.FID AS NVARCHAR) AS NVARCHAR(MAX)) AS 内码组合
,CAST('.'+CAST(h.FID AS VARCHAR)+'-'+CAST(10000+b.FREPLACEGROUP AS  NVARCHAR) AS NVARCHAR(MAX)) AS 内码项次
,CAST(p.内码_项次组合 +'.'+CAST(h.FID AS NVARCHAR)+'-'+CAST(10000+b.FREPLACEGROUP AS  NVARCHAR)  AS  NVARCHAR(MAX)) AS 内码_项次组合
,p.产成品BOM版本
,h.FNUMBER BOM版本, h.FUSEORGID 使用组织
/*,h.FMASTERID,*/
,h.FMATERIALID PFMATERIALID,h.FQTY 批量
,b.FSEQ 子项序号,b.FREPLACEGROUP 项次
,b.FMATERIALID
,b.FMATERIALTYPE AS 子项物料类型
/*,CAST(CASE WHEN b.FMATERIALTYPE = '1' THEN '标准件'WHEN FMATERIALTYPE ='2' THEN '返还件' WHEN FMATERIALTYPE = '3' THEN '替代件' ELSE '未知类型' END AS NVARCHAR(10)) AS 子项物料类型,b.FDOSAGETYPE 用量类型,*/
,b.FBASENUMERATOR 分子,b.FBASEDENOMINATOR 分母,b.FBASEFIXSCRAPQTY 固定损耗,FSCRAPRATE 变动损耗率-- ,b.FBASENUMERATOR/b.FBASEDENOMINATOR 用量1
,CONVERT(DECIMAL(23,10),p.用量*b.FBASENUMERATOR/(CASE b.FBASEDENOMINATOR WHEN 0 THEN 1 ELSE b.FBASEDENOMINATOR END )*(1+b.FBASEFIXSCRAPQTY)) 用量
--CONVERT(DECIMAL(23,10),p.用量*b.FBASENUMERATOR/b.FBASENUMERATOR*(1+b.FBASEFIXSCRAPQTY)) 用量
,b.FEFFECTDATE 生效日期,b.FEXPIREDATE 失效日期,b.FISSUETYPE 发料方式,b.FOWNERID 货主,FPOSITIONNO 位置号/*,b.FENTRYROWID 子项标识,*/
,b.FCHILDSUPPLYORGID 供应组织,RIGHT('0000'+b.F_BHR_PLMSEQ,4) PLM序号,b.F_BHR_ECNNO ECN编号
,ba.FISSKIP 跳层,ba.FISKEYITEM 替代主料,ba.FREPLACETYPE 替代方式,ba.FREPLACEPOLICY 替代策略,ba.FREPLACEPRIORITY 替代优先级/*,b.FQTY 标准用量,b.FACTUALQTY 实际用量*/FROM cte p
JOIN dbo.T_ENG_BOM h WITH(NOLOCK)ON h.FMATERIALID = p.FMATERIALID JOIN #MAXFID u ON u.FID = h.FIDJOIN T_ENG_BOMCHILD b WITH(NOLOCK)ON u.FID = b.FID --AND EXISTS(SELECT 1 FROM @p3 u WHERE u.FID=b.FID)
JOIN dbo.T_ENG_BOMCHILD_A ba WITH(NOLOCK) ON ba.FENTRYID = b.FENTRYID
WHERE 1=1 AND h.FUSEORGID=100436
)
INSERT #T_ENG_BOMITEM
SELECT --b.内码组合,b.顶阶ID,b.PFMATERIALID,项次组合,产成品BOM版本,BOM层次--,顶阶ID,本阶ID,项次组合,内码组合,内码项次1,内码_项次组合,BOM版本,使用组织,fxwl.FNUMBER 父项物料编码, 批量,子项序号,项次,zxwl.FNUMBER 子项物料编码,zxwl.FOLDNUMBER 旧物料编码,zxwl_L.FNAME 物料名称,zxwl_L.FSPECIFICATION 规格型号,META.枚举项名称 物料属性,子项物料类型,分子,分母,固定损耗,变动损耗率,(CASE b.子项物料类型 WHEN 1 THEN b.用量 ELSE 0 END) AS 用量,生效日期,失效日期,发料方式,货主,位置号,供应组织,PLM序号,ECN编号,跳层,替代主料,替代方式,替代策略,替代优先级,@FPPMATERIALID,b.PFMATERIALID,ISNULL(b.FMATERIALID,0),ISNULL(p.FSUPPLIERID,0),ISNULL(p.FSUPPLIERNO,''),ISNULL(p.FSUPPLIERNAME,''),ISNULL(p.FPRICE,0) FCYFORPRICE,ISNULL(p.FTAXPRICE,0) FTAXCYFORPRICE,ISNULL(p.FRATEPRICE,0),ISNULL(p.FTAXRATEPRICE,0),(CASE b.子项物料类型 WHEN 1 THEN ISNULL(p.FTAXRATEPRICE,0)*b.用量 ELSE 0 END) AS FTAXAMOUNT,ISNULL(P.FCYFORTYPE,'')FROM cte b
JOIN T_BD_MATERIAL fxwl         --父项关联物料表ON fxwl.FMATERIALID = b.PFMATERIALIDJOIN T_BD_MATERIAL_L fxwl_L       --父项关联物料多语言表ON fxwl.FMATERIALID = fxwl_l.FMATERIALID AND fxwl_L.FLOCALEID =2052   JOIN T_BD_MATERIAL zxwl         --子项关联物料表ON zxwl.FMATERIALID = b.FMATERIALIDJOIN T_BD_MATERIAL_L zxwl_L        --子项关联物料多语言表ON zxwl.FMATERIALID = zxwl_L.FMATERIALID AND zxwl_L.FLOCALEID =2052JOIN dbo.T_BD_MATERIALBASE wlb ON wlb.FMATERIALID = b.FMATERIALIDLEFT JOIN (SELECT 枚举项名称,FVALUEFROM [dbo].[Vw_META_FORMENUMITEM]WHERE 枚举类型名称= 'BD_物料属性') META ON wlb.FERPCLSID=META.FVALUELEFT JOIN  dbo.Vw_PUR_LATESTPRICELISTENTRY_DEFSUP p ON p.FMATERIALID=b.FMATERIALID
ORDER BY b.项次组合
SELECT FITEMS,FLEVEL, RIGHT('0000'+CONVERT( VARCHAR(4),FSEQ),4) FSEQ,RIGHT('0000'+CONVERT( VARCHAR(4),FREPLACEGROUP),4) FREPLACEGROUP,CASE FMATERIALTYPE WHEN 3 THEN '3:替代件' WHEN 2 THEN '2:返还件' WHEN 1 THEN '1:标准件' ELSE '其他类型' END  FMATERIALTYPE,FPPMATERIALID,FPMATERIALID,FMATERIALID,FPMATERIALNO,FMATERIALNO,FMATERIALNAME,FSPECIFICATION,FERPCLSID,FCYFORTYPE,FNUMERATOR,FDENOMINATOR,FQTY,FPOSITIONNO,FSUPPLIERID,FSUPPLIERNO, FSUPPLIERNAME, FPRICE, FTAXPRICE,FCYFORPRICE,FTAXCYFORPRICE, FTAXAMOUNT FROM #T_ENG_BOMITEMEND

Kingdee 云星空 7.7 自定义BOM成本查询 替代料用量取0 金额取0相关推荐

  1. 四化智造MES(WEB)与金蝶云星空对接集成业务订单列表查询连通生产入库单新增(生产入库确认退货-生产退库单-TEST)

    接通系统:四化智造MES(WEB) MES系统是集成生产管理.品质管理.设备管理.BI数据中心.库存管理.工时管理.数据采集.看板管理等为一体的综合性生产管理系统.通过强调制造过程的透明化,帮助企业由 ...

  2. 金蝶云星空对接打通旺店通·企业奇门组装拆卸单查询接口与创建其他出库单接口

    源系统:金蝶云星空 金蝶K/3Cloud在总结百万家客户管理最佳实践的基础上,提供了标准的管理模式:通过标准的业务架构:多会计准则.多币别.多地点.多组织.多税制应用框架等,有效支持企业的运营管理:K ...

  3. 金蝶云星空与奇门WMS-A对接集成盘亏单查询打通出库单创建

    金蝶云星空与奇门WMS-A对接集成盘亏单查询打通出库单创建 来源系统:金蝶云星空 金蝶K/3Cloud在总结百万家客户管理最佳实践的基础上,提供了标准的管理模式:通过标准的业务架构:多会计准则.多币别 ...

  4. 旺店通与金蝶云星空对接集成采购入库单接口

    旺店通·旗舰奇门与金蝶云星空对接集成采购入库单查询连通销售退货新增V1(12-采购入库单集成方案-P) 数据源系统:旺店通·旗舰奇门 旺店通是北京掌上先机网络科技有限公司旗下品牌,国内的零售云服务提供 ...

  5. kingdee漏洞金蝶云星空存在弱口令漏洞

    kingdee漏洞简介 金蝶云星是基于云计算.大数据.社交.人工智能.物联网等前沿技术研发的新一代战略性企业管理软件.金蝶云星空存在弱口令漏洞,攻击者利用该漏洞登录系统后台,获取敏感信息. CNNVD ...

  6. 纷享销客对接打通金蝶云星空查询对接接口(自定义)接口与物料新增接口

    接入系统:纷享销客 纷享销客以连接型CRM为特色,连接业务,连接人,连接系统,实现以客户为中心,企业内部和上下游业务的高效协作.纷享销客坚持行业化战略,为高科技.现代企业服务.快消.农牧.大制造等行业 ...

  7. 金蝶云星空自定义接口:查询数据库

    一.项目需求: 1.客户要求,在"海柔"系统上,调用"金蝶"自定义接口,满足海柔系统获取金蝶数据的效果. 二.代码思路: 1.自定义接口业务接口,调用金蝶标准登 ...

  8. 星空主题设计理念_敏捷协调,智慧运营:金蝶云·星空的产品设计理念与应用实践...

    随着金蝶公司云转型战略的推进,金蝶云·星空从2014年开始了大规模的云服务推广,并在客户的大力支持下几年来取得了持续高速增长的业绩. 在2019金蝶云·星空全国巡展首发大会上,金蝶中国助理总裁韩革缨女 ...

  9. java金蝶星空云金蝶Java 对接 金蝶云星空 接口 对接 金蝶API 对接 金蝶 接口 解决 会话失效 问题 会话已失效,请重新登录

    java金蝶星空云金蝶Java 对接 金蝶云星空 接口 对接 金蝶API 对接 金蝶 接口 解决 会话失效 问题 会话已失效,请重新登录 1.准备工作 1.1 接口调用账户 1.2 下载 金蝶星空云 ...

最新文章

  1. MinkowskiBroadcast广播
  2. WebStorm 打开多个项目的方法
  3. MATLAB-基本语法
  4. 怎么让用一行代码实现页面的定时强制刷新?脚本刷流量再也不用愁了!
  5. OpenBase关于一致性,可用性,分区容错性(CAP)分析
  6. 《一天聊一个设计模式》 抽象工厂
  7. python股票历史最低点_Python统计某一只股票每天的开盘,收盘,最高,最低价格!...
  8. php 上次登陆时间,php使用cookie显示用户上次访问网站日期的方法
  9. win10系统崩溃怎么修复_系统崩溃怎么重装系统图文教程
  10. 基于AJAX的自动完成
  11. 遇到的一个很有趣的陷阱
  12. 无法在此设备上查看受保护内容_细说丨你想要的Excel保护与加密都在这里
  13. python做excel自动化-用Python控制Excel实现自动化办公,手把手教你
  14. 几款KINECT应用
  15. input在vue中如何一次性上传多张图片_小程序图片上传,存储,获取,显示
  16. python mysql扩展,python-sql-faker:轻量级、易拓展的数据库智能填充开源库(Python实现版)...
  17. 串之Ukkonen、Rabin_karp算法
  18. 一个只完成了一部分的小游戏。。。
  19. 常用的excel操作小技巧--自己用的,仅供记录
  20. App测试分类总结及方法

热门文章

  1. 浅尝webSocket
  2. 合理利用“泛在式” - 手机促使人群分化
  3. 三极管自激振荡升压电路笔记
  4. Kitkat中对class core, class main, class late_start的简单分析
  5. iOS3DTouch功能实现
  6. 华为云计算工程师证好考吗?
  7. lzma java sdk,Java LZMA 磁盘与内存压缩实现
  8. sudo apt-get install package时出现E:无法定位软件包
  9. Android Framework启动流程
  10. C++11 std::this_thread::sleep_for让我睡一会再干活