文档章节

BOM

fandyx
 fandyx
发布于 2015/01/20 20:05
字数 234
阅读 34
收藏 0
点赞 0
评论 0
// Copyright (C), 2015, CEU Co., Ltd.
// USR Changed by 2015-01-20T17:57:50 Fandy Xie 谢宇帆
// Version       : 1.0
// Description   : 展开BOM明细
// Return        :
// BOM Explode using Recursive function.
// This job explode all the sub components of an item.
static void bomExplodeRecursive(Args _args)
{
    qty             netConsum       = 10.00;
    inventSiteId    inventSiteId    = companyInfo::find().fallBackSiteId();
    ItemId          itemId          = "1107";
    int             linNum;

void explodeBOM(
    Itemid  parmItemId      ,
    BOMQty  parmNetConsum   ,
    int     parmLevel = 1)
{
    BOMversion      bomVersion;
    inventDim       inventDim;
    BOM             bomLocal;
    
    int             tmpLevel    = 1;
    inventTable     inventTable;
    ;

    if (!parmItemId)
        return;
        
    netConsum  = parmNetConsum;
    /*
    select firstonly bomVersion
        where bomVersion.ItemId         == parmItemId               &&
              bomVersion.Active
    join inventDim
        where inventDim.inventDimId     == bomVersion.InventDimId   &&
             ((inventDim.InventSiteId   == inventSiteId             ||
              !inventSiteId)                                        ||
              !inventDim.InventSiteId);
    */
    /*
    inventDim.InventSizeId = _inventSiteId;
    bomVersion =  bomVersion::findActive(parmItemId, systemdateget(), 1, inventDim::findOrCreate(inventDim));
    */

    while select bomversion index hint BomIdx
        where bomversion.ItemId    == parmItemId      &&
              bomversion.Active    == Noyes::Yes
    join bomLocal index hint NumIdx
        where bomLocal.BOMId == bomversion.BOMId
    {
        inventTable         = inventTable::find(bomLocal.ItemId);
        if(bomLocal.BOMQtySerie)
            parmNetConsum   = netConsum * (bomLocal.BOMQty / bomLocal.BOMQtySerie);
        else if(bomLocal.BOMQty)
            parmNetConsum   = netConsum * bomLocal.BOMQty;
        else
            parmNetConsum   = netConsum;
        linNum++;
        if(inventTable.ItemType == ItemType::BOM)
        {
            tmpLevel = parmLevel + 1;

            warning(strfmt("序号[%1],层次[%2],类型[%3],物料编号[%4],用量[%5].",
                    linNum, parmLevel, inventTable.ItemType, inventTable.ItemId, parmNetConsum));
            explodeBOM(bomLocal.ItemId, parmNetConsum, tmpLevel);
        }
        else
            info(   strfmt("序号[%1],层次[%2],类型[%3],物料编号[%4],用量[%5].",
                    linNum, parmLevel, inventTable.ItemType, inventTable.ItemId, parmNetConsum));
    }
}
;
    setprefix(strfmt("产品编号[%1], 数量[%2].",itemId, netConsum));
    explodeBOM(itemId, netConsum);
}


© 著作权归作者所有

共有 人打赏支持
fandyx
粉丝 0
博文 39
码字总数 11111
作品 0
东莞
技术主管
文件带 BOM 的看法

释义 BOM(byte order mark)是为 UTF-16 和 UTF-32 准备的,用于标记字节序(byte order)。 UTF-8需不需要用BOM? UTF-8 不需要 BOM,(尽管 Unicode 标准允许在 UTF-8 中使用 BOM)。 在 ...

低至一折起 ⋅ 2017/12/14 ⋅ 0

JS子页面访问父页面元素/变量/函数

四个属性变量 window.self window.parent window.top window.frames 在页面中嵌入一个 iframe 页面后 子页面中并不能直接访问父页面中的变量、函数或者文档元素 1、使用 iframe 嵌入一个子页...

big_cat ⋅ 2016/03/02 ⋅ 0

UTF-8编码中BOM的检测与删除

所谓BOM,全称是Byte Order Mark,它是一个Unicode字符,通常出现在文本的开头,用来标识字节序(Big/Little Endian),除此以外还可以标识编码(UTF-8/16/32),如果出现在文本中间,则解释...

workingTiams ⋅ 2012/11/28 ⋅ 1

解释BOM头及去掉BOM头方法

什么是bom头? 在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记...

陶邦仁 ⋅ 2012/09/21 ⋅ 0

BOM 创建用户定义函数,每个子节点de父节点的信息

--生成测试数据 createtable BOM(ID int,parentID int,sClassName varchar(10)) insertinto BOM values(1,0,'1111' ) insertinto BOM values(2,1,'1111_1' ) insertinto BOM values(3,2,'111......

橘子红了呐 ⋅ 2017/11/19 ⋅ 0

PHP+Smarty模板中CSS问题:Firefox下正常显示,而在IE下,显示得很混乱

第一个原因是:bom的问题(在页面上输出空信息) [转] 先制作好了页面的模板(用UTF-8编码),当载入Smarty运行的时候,发现在Firefox下正常显示,而在IE下,显示得很混乱!难道 是smarty和C...

mac_zhao ⋅ 2012/03/08 ⋅ 0

编码转换:UTF-8 BOM to GBK

编码转换:UTF-8 BOM to GBK 最近因为一个实验,需要文本文件的编码格式为GBK或者GB2312,而源数据又是很多编码格式的,有些是GBK,有些是UTF-8,这样就不好用工具直接转,手动就更不可取了,...

IMGTN ⋅ 2012/11/15 ⋅ 1

UTF-8编码中BOM的检测与删除

所谓BOM,全称是Byte Order Mark,它是一个Unicode字符,通常出现在文本的开头,用来标识字节序(Big/Little Endian),除此以外还可以标识编码(UTF-8/16/32),如果出现在文本中间,则解释...

xrzs ⋅ 2012/10/12 ⋅ 0

化解32层递归限制

--2005化解32层递归限制,2000可用循环替代或用(游标while加break递归自己用一个变量传参) if object_id('Tree','U') is not null drop table [Tree] go CREATE TABLE [dbo].[Tree]( [ID] [bi......

晨曦之光 ⋅ 2012/03/09 ⋅ 0

Linux上用命令清理BOM()

将一个项目同步到服务器上之后,页面顶部出现了离奇的空行,并且导致部分JS出错。查看原代码发现里面有这么个东东: HTML中被强插这么一行就自然出现空行了,JS文件同样会编译错误所以导致J...

陈昊Sevens ⋅ 2016/10/24 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

笔试题之Java基础部分【简】【一】

基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法,其他 1.length、length()和size() length针对...

anlve ⋅ 17分钟前 ⋅ 1

table eg

user_id user_name full_name 1 zhangsan 张三 2 lisi 李四 `` ™ [========] 2018-06-18 09:42:06 星期一½ gdsgagagagdsgasgagadsgdasgagsa...

qwfys ⋅ 42分钟前 ⋅ 0

一个有趣的Java问题

先来看看源码: public class TestDemo { public static void main(String[] args) { Integer a = 10; Integer b = 20; swap(a, b); System.out......

linxyz ⋅ 46分钟前 ⋅ 0

十五周二次课

十五周二次课 17.1mysql主从介绍 17.2准备工作 17.3配置主 17.4配置从 17.5测试主从同步 17.1mysql主从介绍 MySQL主从介绍 MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主...

河图再现 ⋅ 今天 ⋅ 0

docker安装snmp rrdtool环境

以Ubuntu16:04作为基础版本 docker pull ubuntu:16.04 启动一个容器 docker run -d -i -t --name flow_mete ubuntu:16.04 bash 进入容器 docker exec -it flow_mete bash cd ~ 安装基本软件 ......

messud4312 ⋅ 今天 ⋅ 0

OSChina 周一乱弹 —— 快别开心了,你还没有女友呢。

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享吴彤的单曲《好春光》 《好春光》- 吴彤 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :小萝莉街上乱跑,误把我认错成...

小小编辑 ⋅ 今天 ⋅ 8

Java 开发者不容错过的 12 种高效工具

Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松。目前,市面上涌现出越来越多的高效编程工具。所以,以下总结了一系列工具列表,其中包含了大多数开发人员已经使用...

jason_kiss ⋅ 昨天 ⋅ 0

Linux下php访问远程ms sqlserver

1、安装freetds(略,安装在/opt/local/freetds 下) 2、cd /path/to/php-5.6.36/ 进入PHP源码目录 3、cd ext/mssql进入MSSQL模块源码目录 4、/opt/php/bin/phpize生成编译配置文件 5、 . ./...

wangxuwei ⋅ 昨天 ⋅ 0

如何成为技术专家

文章来源于 -- 时间的朋友 拥有良好的心态。首先要有空杯心态,用欣赏的眼光发现并学习别人的长处,包括但不限于工具的使用,工作方法,解决问题以及规划未来的能力等。向别人学习的同时要注...

长安一梦 ⋅ 昨天 ⋅ 0

Linux vmstat命令实战详解

vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令...

刘祖鹏 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部