ZMD_MRP_PARAMETERS
3000
公司下工厂跑MRP时,如果为外购则通过外挂表取infor record计划交期。

METHOD if_ex_md_mrp_parameters~adjust_material_master_params.
TYPES:BEGIN OF ieord,
matnr TYPE c LENGTH ,
werks TYPE c LENGTH ,
zeord TYPE n LENGTH ,
vdatu TYPE d,
bdatu TYPE d,
lifnr TYPE c LENGTH ,
reswk TYPE c LENGTH ,
ekorg TYPE c LENGTH ,
* IGMNG type p length decimals ,
END OF ieord.
DATA: it_eord TYPE STANDARD TABLE OF ieord,
il_eord TYPE ieord. DATA:output TYPE char40,
l_addrstr TYPE ni_nodeaddr.
*&add by rainy on .
*&通过ip break.
* CALL FUNCTION 'TH_USER_INFO'
* IMPORTING
* terminal = output
* addrstr = l_addrstr.
* IF l_addrstr = '192.168.0.200' .
* BREAK-POINT.
* ENDIF.
break test_13.
*&->end add by rainy on . IF sy-cprog = 'RMMRP000' OR sy-tcode = 'MD01' OR sy-tcode = 'MD02' OR sy-tcode = 'MD03'.
CLEAR: it_eord, it_eord[], il_eord.
* break: pp10.
* if IM_MT61D-matnr = '22-05-500277-1'.
SELECT matnr werks zeord vdatu bdatu lifnr reswk ekorg
INTO CORRESPONDING FIELDS OF TABLE it_eord
FROM eord
WHERE werks = im_mt61d-werks
AND matnr = im_mt61d-matnr. *&->add by rainy on --- DEVK905062
*& 定义
TYPES:gt_eine TYPE STANDARD TABLE OF eine.
DATA: wa_eine TYPE eine.
DATA: wa_zextsource TYPE zextsource. *&->end add by rainy on
LOOP AT it_eord INTO il_eord. IF il_eord-reswk = ''. "and sy-datum >= il_eord-VDATU and sy-datum <= il_eord-BDATU.
* select single WEBAZ into CH_MT61D_EXT-WEBAZ "袁生确认只在3000工厂维护内外购统一的收货处理时间
* from marc
* where werks = ''
* and matnr = IM_MT61D-matnr.
* if sy-subrc <> .
* CH_MT61D_EXT-WEBAZ = .
* endif. *&A1.外挂表zextsource取货源(物料+工厂->采购组+供应商)
SELECT SINGLE *
INTO wa_zextsource
FROM zextsource
WHERE matnr EQ im_mt61d-matnr
AND werks EQ im_mt61d-werks.
*&
IF sy-subrc EQ .
*&A2.通过物料+工厂(‘’)+zextsource货源找info record 的计划交货时间
SELECT SINGLE aplfz INTO ch_mt61d_ext-plifz"* INTO CORRESPONDING FIELDS OF wa_eine
FROM eine
JOIN eina
ON eine~infnr EQ eina~infnr
WHERE eina~matnr EQ im_mt61d-matnr
AND eina~lifnr EQ wa_zextsource-lifnr
AND eina~loekz NE 'X' AND eine~werks EQ ''
AND eine~ekorg EQ wa_zextsource-ekorg.
IF sy-subrc <> .
ch_mt61d_ext-plifz = .
ENDIF.
ch_changed = 'X'. ELSE.
* MESSAGE '外挂表没有维护' im_mt61d-matnr im_mt61d-werks '货源信息'
*&A3.当外挂表没有数据,按照原来逻辑。
SELECT SINGLE aplfz
INTO ch_mt61d_ext-plifz
FROM eine
INNER JOIN eina
ON eine~infnr = eina~infnr
INNER JOIN eord
ON eord~werks = eine~werks
AND eord~matnr = eina~matnr
AND eord~lifnr = eina~lifnr
AND eord~ekorg = eine~ekorg
WHERE eord~matnr = im_mt61d-matnr
AND eord~werks = ''
AND eina~loekz <> 'X'.
IF sy-subrc <> .
ch_mt61d_ext-plifz = .
ENDIF.
ch_changed = 'X'. ENDIF. *&->start notes by rainy on .
*&->前期逻辑注释
* SELECT SINGLE aplfz INTO ch_mt61d_ext-plifz
* FROM eine INNER JOIN eina
* ON eine~infnr = eina~infnr
* INNER JOIN eord
* ON eord~werks = eine~werks
* AND eord~matnr = eina~matnr
* AND eord~lifnr = eina~lifnr
* AND eord~ekorg = eine~ekorg
* WHERE eord~matnr = im_mt61d-matnr
* AND eord~werks = ''
* AND eina~loekz <> 'X'.
* IF sy-subrc <> .
* ch_mt61d_ext-plifz = .
* ENDIF.
* ch_changed = 'X'.
*&->end notes by riany on . ENDIF.
CLEAR il_eord.
ENDLOOP. ENDIF.
ENDMETHOD.

001infor record 计划时间取值增强-20150622的更多相关文章

  1. 1.6 SQL (根据时间取值)

    select * from 表名 where createdate > date_add(subdate(curdate(),date_format(curdate(),'%w')-1),int ...

  2. python 嵌套字典取值增强版

    def getdictvalue(d,code): result=[] if isinstance(d, dict) : try: value = d[code] result.append(valu ...

  3. SQLserver各种时间取值格式

    叫大哥 SQLServer提取日期中的年月日及其他格式 SQLServer提取日期中的年月日及其他格式   提取年:datepart(yy,getdate())提取月:datepart(mm,getd ...

  4. ETHINK组件取值手册

    Ethink组件取值手册 一.取值 Sql查询配置中取值方式:所有可以对外过滤的组件都可以用id.output取值 就是取组件setOutput()里输出的值 ,具体分为以下两种: 1)$p{OBJ_ ...

  5. JavaScript笔记——this的取值

    有关ECMAScript定义如何获取this请移步ECMAScript中关于如何获取this的定义 绝大多数情况下,函数的调用方式决定了this的取值 全局上下文 console.log(this = ...

  6. Jmeter函数 唯一取值 笔记

    java sample时: result.setIdleTime(毫秒):设置waste time ,jmeter在统计响应时间时会自动减去此函数设置的时间 result.setSuccessful( ...

  7. Oracle存储过程-自定义数据类型,集合,遍历取值

    摘要 Oracle存储过程,自定义数据类型,集合,遍历取值 目录[-] 0.前言 1.Packages 2.Packages bodies 3.输出结果 0.前言 在Oracle的存储过程中,可能会遇 ...

  8. Data层相关问题 & JS循环取值

    第一次写博客,里面是自己工作中碰到的问题及总结的知识点,便于自己以后回顾,技术大牛们请直接忽略这篇文章,也希望能帮助到想我这样的小白! Data层相关问题总结: 1. 代码管理用的是 VSS 2005 ...

  9. php 数组定义、取值和遍历

    <?php //常用函数 //生成随机数 //echo rand(1,10); //两个参数来确定随机数的范围 //日期时间函数 //var_dump(time()); //取当前时间的UNIX ...

随机推荐

  1. linux学习之vimrc配置推荐

    ,gb2312,gbk,gb18030,big5 "去掉vi一致性 set nocompatible ""设置行号 set number "打开文件类型自动检测 ...

  2. JS鼠标的拖拽原理

    拖拽功能主要是用在让用户做一些自定义的动作,比如拖动排序,弹出框拖动移动等等,效果还是蛮不错的.下面讲解一下拖拽的原理,希望可以帮助到有需要的朋友! 一.拖拽的流程动作①鼠标按下②鼠标移动③鼠标松开 ...

  3. socket心跳检测

    一.什么是心跳检测 判断对方(设备,进程或其它网元)是否正常动行,一般采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经当掉.用于检测TCP的异常断开. 基本原因是服务器端不能 ...

  4. Scrapy爬虫入门系列3 将抓取到的数据存入数据库与验证数据有效性

    抓取到的item 会被发送到Item Pipeline进行处理 Item Pipeline常用于 cleansing HTML data validating scraped data (checki ...

  5. 手机端 html 页面

    <!doctype html> <html> <meta charset="utf-8"> <meta name="viewpo ...

  6. Servlet 环境设置

    开发环境是您可以开发.测试.运行 Servlet 的地方. 就像任何其他的 Java 程序,您需要通过使用 Java 编译器 javac 编译 Servlet,在编译 Servlet 应用程序后,将它 ...

  7. Eclipse 创建 Java 接口

    打开新建 Java 接口向导 新建 Java 接口向导可以创建新的 Java 接口.打开向导的方式有: 点击 File 菜单并选择 New > Interface 在 Package Explo ...

  8. python 动态语言 __slots__

    python 是动态语言,就是说可以动态的创建属性, 别的语言不行,再创建类的时候已经规定好了 使用__slots__,注意要用tuple定义同意绑定的属性名称,仅对当前类起作用,对继承的子类是不起作 ...

  9. In the shell, what does “ 2>&1 ” mean?

    In a Unix shell, if I want to combine stderr and stdout into the stdout stream for further manipulat ...

  10. ChemDraw 15出现安装异常如何处理

    化学绘图软件ChemDraw最近更新了,更新后的是2015版本,ChemDraw Professional 15是其中组件之一.一些用户朋友在使用ChemDraw 15的过程中由于对软件的不了解往往会 ...