`
xiaoer_1982
  • 浏览: 1865338 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

BOM查找指定子项的所有父项,并以字段的形式输出

阅读更多

/*---------------------------------

-- Author : htl258(Tony)

-- Date : 2009-09-16 18:08:58

-- Version: Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (Intel X86)

Mar 29 2009 10:27:29

Copyright (c) 1988-2008 Microsoft Corporation

Enterprise Evaluation Edition on Windows NT 5.1 <X86> (Build 2600: Service Pack 2)

---------------------------------*/

--> 生成测试数据表:tb

IF NOT OBJECT_ID('[tb]') IS NULL

DROP TABLE [tb]

GO

CREATE TABLE [tb]([ID] INT,[NAME] NVARCHAR(10),[PARENTID] INT)

INSERT [tb]

SELECT 1,'A',0 UNION ALL

SELECT 2,'A1',1 UNION ALL

SELECT 3,'A2',1 UNION ALL

SELECT 4,'B',0 UNION ALL

SELECT 5,'B1',4 UNION ALL

SELECT 6,'A11',2 UNION ALL

SELECT 7,'A111',6 UNION ALL

SELECT 8,'B11',5 UNION ALL

SELECT 9,'A1111',7 UNION ALL

SELECT 10,'A11111',9

GO

--SELECT * FROM [tb]

-->SQL查询如下:

IF OBJECT_ID('FN_STR') IS NOT NULL

DROP FUNCTION FN_STR

GO

CREATE FUNCTION FN_STR(@id INT)

RETURNS NVARCHAR(100)

AS

BEGIN

DECLARE @s NVARCHAR(100);

WHILE EXISTS(SELECT 1 FROM tb WHERE id=@id)

BEGIN

SELECT @s=ISNULL(@s+',','')+NAME FROM tb WHERE id=@id

SET @id=(SELECT PARENTID FROM tb WHERE id=@id)

END

RETURN STUFF(@s,1,CHARINDEX(',',@s),'')

END

GO

SELECT dbo.FN_STR(9) AS path

/*

path

-------------------------------

A111,A11,A1,A

(1 行受影响)

*/

分享到:
评论

相关推荐

    SAPBOM详细解析.pdf

    在系统中,我们可以以单层的方式记录产品结构,只需维护父项和子项两阶的关系,再经过串联,即可得到多阶层关系的产品结构。 四、BOM 的类型 BOM 可以分为多种类型,包括生产用 BOM、销售用 BOM、包材用 BOM、海关...

    在列表框中快速查找和定位子项(7KB)

    标题中的“在列表框中快速查找和定位子项”是一个关于编程的话题,主要涉及的是如何在用户界面的列表框控件中实现高效的搜索和选择功能。列表框是常见的图形用户界面元素,通常用于显示一系列可选项,用户可以从中...

    K3CLOUD BOM自定义字段MRP后携带到计划订单

    在K3CLOUD系统中,实现BOM(Bill of Materials)子项明细自定义字段在MRP(Material Requirements Planning)运算后携带到计划订单是一项高级功能。此功能通过在物料清单增加特定字段,并确保这些字段能正确地传递到...

    JS全选反选父项子项联动多选框

    ### JS全选反选父项子项联动多选框知识点详解 #### 一、知识点概述 在前端开发中,我们经常遇到需要实现全选/反选功能的需求,尤其是在表格或列表选择场景中。本文将详细介绍一种实现“父项选中时,子项随父项选中...

    《如何将EXCEL中多个个BOM汇总到一个表中》附件“合并多个BOM表”

    如果BOM表有层级结构,如父项和子项的关系,需要额外处理。可以通过添加辅助列来记录层级信息,然后利用Excel的查找和引用函数,如VLOOKUP或INDEX/MATCH,来构建完整的树状结构。 步骤7:验证和保存 最后,仔细检查...

    sap bom 详细解析

    1. **序号**:为了区分相同的父项下的不同子项,序号用于唯一标识每个子项,并确定物料的排列顺序。 2. **单位用量**:表示每个父项所使用的子项的数量,是BOM中最基本的数据之一。 3. **基数**:表示每个父项中子项...

    批输入方法导BOM教材

    在BOM数据的结构中,一个父项可能关联多个子项,形成一对多的关系。在SAP的SXDB表中,这表现为会话记录、表头数据、子项目和项目的数据行。导入时,需要特别注意这种层级关系的正确性。 完成数据准备后,回到批输入...

    K3 BOM 入系统

    6. **物料代码**:表示本BOM单的父项物料代码,可以通过手工输入或通过F7键选择。这是必填项。 7. **物料名称**:由系统自动带入父项物料的名称。 8. **规格**:由系统自动带入父项物料的规格。 9. **物料属性**:由...

    mrp算法 可按自由项匹配相应的BOM分解

    1. **MPS件**:在MPS(Master Production Schedule,主生产计划)中的需求量会按照BOM展开到子项。 2. **MRP子件**:在独立需求中的计划需求量。 3. **自由项**:不完全相同的毛需求被视为不同的需求,除非有特殊...

    xp注册表命令(对注册表子项信息和注册表项值中的值进行操作)

    这个命令会输出两个子项中所有不匹配的项。 #### 五、总结 通过本文的介绍,我们可以了解到`reg add`和`reg compare`这两个命令的强大功能。`reg add`命令可以帮助我们在注册表中快速添加新的子项或项,而`reg ...

    SAP BOM展开 完整有注释

    在SAP系统中,BOM(物料清单)是一种重要的技术文档,它详细记录了一个产品(父项)由哪些零部件(子项)组成,以及这些零部件的数量、单位等信息。在制造业中,BOM是非常关键的数据,它不仅用于生产计划的制定,还...

    2BOM展开的方式和种类_CRM产品经理 需求规格说明书管理系统规格需求说明书模板.doc

    多阶用料清单:多阶展开呈现了产品的完整层次结构,从最高层的父项逐级向下,直到所有子项都被列出。例如,产品A由B、C1、D和E组成,其中B又由C1和D1组成,E由2个D1和1个E2组成。 c. 汇总用料清单:汇总BOM将所有...

    PyQt(Python+Qt)学习随笔:QTreeWidgetItem项下的子项列表中增加子项的方法

    QTreeWidgetItem类型的项构建以后,可以通过addChild(QTreeWidgetItem child)方法在该项中的子节点最后加入另一个项child作为该项的子项,也可以通过addChildren(iter[QTreeWidgetItem] children)将一个迭代类型...

    BOM架构说明实用.pdf

    7. **子项编码、名称和规格型号**:子项是构成父项的零部件,需输入子项编号,并自动填充相关详细信息。 8. **辅计量单位、件数、换算率**:定义子项的数量单位和转换关系,件数通过换算率和定额数量计算得出。 9....

    K3-BOM-保存脚本

    1. **INSERT**:用于新增BOM信息,比如新增一个物料编码、父项物料、子项物料、层次关系、用量比例等字段的数据。 2. **UPDATE**:用于修改已存在的BOM数据,例如更改物料的用量、替换某个子组件等。 3. **SELECT**...

    BOM清单基础知识

    物料清单(Bill of Materials,简称BOM)是供应链管理和生产过程中的关键文档,它详细列出了制造一个最终产品所需的所有组件、子组件及其相应的数量。本文将深入介绍BOM的基础知识,包括清单类型、物料清单的构成、...

    打开控制面板及其子项的所有命令-程序员SUMER

    打开控制面板及其子项的所有命令---程序员SUMER 打开控制面板及其子项的所有命令---程序员SUMER 打开控制面板及其子项的所有命令---程序员SUMER 打开控制面板及其子项的所有命令---程序员SUMER 打开控制面板及其子项...

    2001.BOM主数据表关系.pdf

    BOM的类别由STLTY字段标识,它描述了BOM的类型,如物料BOM、设备BOM、标准BOM等,每种BOM类型在SAP系统中有着不同的用途和处理逻辑。 除了核心的BOM表,还有一些其他表与BOM相关联。例如,材料主数据表(例如MARA)...

    BOM expain

    在BOM中,父项代表最终产品或组装件,子项则是构成父项的部件。此外,BOM还记录了子项的数量、生效和失效日期,以及库存、单价、生产和组装信息。APICS将BOM定义为一个详列装配产品所需所有物料及其数量的清单,涵盖...

    Flex布局让子项保持自身高度的实现

    这样设置背景色的时候非常不方便,那么直接在父项上,将align-items设为 flex-start,或者align-items属性的其他值都可以,子项就会保持自身的高度了。 .fat{ display: flex; align-items: flex-start; } 效果如下...

Global site tag (gtag.js) - Google Analytics