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. SQl查询数据库表名、表的列名、数据类型、主键

    1.获取所有数据库名:     2.Select Name FROM Master..SysDatabases order by Name   3.  4.2.获取所有表名:   5.   (1)  ...

  2. php使用N层加密eval gzinflate str_rot13 base64 破解方法汇总

    php使用N层加密eval gzinflate str_rot13 base64 破解方法汇总 来源:本站转载 作者:佚名 时间:2011-02-14 TAG: 我要投稿 PHP使用eval(gzin ...

  3. JS DOM -- 关于回车键盘事件执行事件

    一.需求制作一个模拟对话框, 二. 1.需要发送后,输入框清空 2.按enter键可发送 三.代码部分 <!DOCTYPE HTML> <html> <head> ...

  4. linux下调试使用的 一些shell命令

    查看文件日期:strings |grep Build gdb g++ gcc make systemctl gdb: bt s n b 1.firewalld的基本使用 启动: systemctl s ...

  5. 学习笔记 - Unity是如何将你的项目发布到如此多的平台的?

    很多Unity的开发者是不是都会觉得Unity能把项目导出发布到那么多不同的平台上运行是件很牛X的事情?那么你有没有想过Unity是如何做到的呢?本文就来大体的聊一聊Unity做的这件神奇的事情. 概 ...

  6. webdriver下拉框中选择option的方法提醒

    select这个标签比较特殊 下面的option不能用点击下拉框,再点击选中这种方法 前端代码: <html> <body> <select id="Shipp ...

  7. mysql存储引擎的种类与差别(innodb与myisam)

    查找数据库的存数引擎: show engines show variables like '%storage_engine%' 更改数据库的引擎更改配置文件/etc/my.cnf 改动default- ...

  8. flask/sqlalchemy - OperationalError: (sqlite3.OperationalError) no such table

    狗书第五章 记得要先创建表 执行 db.create_all()语句来创建表 https://segmentfault.com/q/1010000005794140

  9. Android 混淆完全解析

    1.http://blog.csdn.net/jddkdd2/article/details/8858909

  10. 接入qq登录功能出现的问题

    在调用qq授权的接口时,出现以上错误. 原因是: 打包的应用签名和第一次上传包的签名不一致造成的 解决方法: 第一种方法:用上次打包apk的keystore重新打包apk,使签名一致. 第二种方法:联 ...