zoukankan      html  css  js  c++  java
  • STO单没有取进FP,IN_SAELS_ORDER表无,但IN_PO_STO有

    描述 :业务反馈STO单没有取进FP,经检查IN_SALES_ORDER表没有此单数据,但在IN_PO_STO表却有

    跟进如下:

    1、检查IN_PO_STO表是否有数据

    SELECT * FROM IN_PO_STO WHERE PO_ID ='4700016874';

    2、检查SAP_SALES_ORDER 存储过程插入IN_SALES_ORDER表为什么没有写进去;

    经检查TEMP_IN_SALES_ORDER_STO是没有数据的

     SELECT *
            FROM TEMP_IN_SALES_ORDER_STO OE
                 --JOIN SAP_MARA SM ON OE.ITEM_ID = SM.MATNR
                 LEFT JOIN SAP_CUSTOMER_INSPECT CI
                    ON OE.ITEM_ID = CI.MATNR AND OE.CUSTOMER_ID = CI.KUNNR
                 JOIN STG.IN_PO_STO SI 
                    ON LTRIM(OE.SO_ID,'0')=LTRIM(SI.PO_ID,'0') AND OE.SO_LINE_ID = SI.PO_LINE_NO
           WHERE  
           NOT EXISTS
                            (SELECT NULL
                               FROM IN_SALES_ORDER
                              WHERE OE.SO_ID || '_' || OE.SO_LINE_ID =
                                          LTRIM(IN_SALES_ORDER.SO_ID,'0')
                                       || '_'
                                       || IN_SALES_ORDER.SO_LINE_ID)AND 
             TRIM(OE.CUSTOMER_ID) IS NOT NULL 
             AND TRIM(OE.SITE_ID) IS NOT NULL
            and OE.SO_ID='4700016874';

    3、TEMP_IN_SALES_ORDER_STO没有数据,数据来源于SSIS中的SapToSapTemp_ForPO.dtsx

    --INSERT INTO STG.TEMP_IN_SALES_ORDER_STO(SO_ID, SO_LINE_ID, POSNR, FAMILY_ID, CUSTOMER_ID, VC_OR_NOT, ITEM_ID, SITE_ID, CREATION_DATE, SALES_GROUP, CHANNEL_ID, DISTRIBUTION, PURCHASE_GROUP, REQUIRE_DATE, PROMISE_DATE, QTY, EX_PROMISE_DATE, STATUS, TOEC_OR_NOT)
    SELECT SZ.EBELN AS SO_ID,
    LTRIM(SUBSTR(SZ.POSNR,1,6),'0')||'_'||LTRIM(SUBSTR(SZ.POSNR,7,4),'0') AS SO_LINE_ID,
    SZ.POSNR AS POSNR,
    SZ.MVGR2 AS FAMILY_ID,
    SZ.KUNNR AS CUSTOMER_ID,
    SZ.KZKFG AS VC_OR_NOT,
    SZ.MATNR AS ITEM_ID,
    LTRIM(SE.LIFNR,'R') AS SITE_ID,
    TO_DATE(SUBSTR(SZ.ERDAT,1,4)||'-'||SUBSTR(SZ.ERDAT,5,2)||'-'||SUBSTR(SZ.ERDAT,7,2),'YYYY-MM-DD') AS CREATION_DATE,
    SZ.VKORG AS SALES_GROUP,
    SZ.VTWEG AS CHANNEL_ID,
    SZ.BZIRK AS DISTRIBUTION,
    SZ.EKORG AS PURCHASE_GROUP,
    TO_DATE(SUBSTR(SZ.VDATU,1,4)||'-'||SUBSTR(SZ.VDATU,5,2)||'-'||SUBSTR(SZ.VDATU,7,2),'YYYY-MM-DD') AS REQUIRE_DATE,
    TO_DATE(SUBSTR(SZ.EDATU,1,4)||'-'||SUBSTR(SZ.EDATU,5,2)||'-'||SUBSTR(SZ.EDATU,7,2),'YYYY-MM-DD') AS PROMISE_DATE,
    SZ.WMENG AS QTY,
    CASE WHEN SZ.ZEDATU = '00000000' THEN NULL ELSE TO_DATE(SUBSTR(SZ.ZEDATU,1,4)||'-'||SUBSTR(SZ.ZEDATU,5,2)||'-'||SUBSTR(SZ.ZEDATU,7,2),'YYYY-MM-DD') END AS EX_PROMISE_DATE,
    SZ.ZSTATE AS STATUS,
    SZ.ZTO_EC AS TOEC_OR_NOT
    FROM SAPSR3.ZTSD_008_1@SAP_SEP SZ JOIN SAPSR3.EKKO@SAP_SEP SE ON SZ.MANDT = SE.MANDT AND SZ.EBELN = SE.EBELN
    WHERE SZ.EKORG  IN ('2090','2510') 
      AND TRIM(SZ.ZSFCH) IS NULL
    /*
    AND (SZ.ZSTATE IN ('R','E') OR TO_DATE(SUBSTR(SZ.ERDAT,1,4)||'-'||SUBSTR(SZ.ERDAT,5,2)||'-'||SUBSTR(SZ.ERDAT,7,2),'YYYY-MM-DD')=TO_DATE(SYSDATE,'YYYY-MM-DD'))
    */
    AND SZ.MANDT = '800'
    AND TRIM(SZ.KZKFG) IS NULL
    AND LTRIM(SE.LIFNR,'R') LIKE '2%'
    
    UNION ALL
    
    SELECT SZ.EBELN AS SO_ID,
    LTRIM(SUBSTR(SZ.POSNR,1,6),'0')||'_'||LTRIM(SUBSTR(SZ.POSNR,7,4),'0') AS SO_LINE_ID,
    SZ.POSNR AS POSNR,
    SZ.MVGR2 AS FAMILY_ID,
    SZ.KUNNR AS CUSTOMER_ID,
    SZ.KZKFG AS VC_OR_NOT,
    SZ.MATNR AS ITEM_ID,
    LTRIM(SE.LIFNR,'R') AS SITE_ID,
    TO_DATE(SUBSTR(SZ.ERDAT,1,4)||'-'||SUBSTR(SZ.ERDAT,5,2)||'-'||SUBSTR(SZ.ERDAT,7,2),'YYYY-MM-DD') AS CREATION_DATE,
    SZ.VKORG AS SALES_GROUP,
    SZ.VTWEG AS CHANNEL_ID,
    SZ.BZIRK AS DISTRIBUTION,
    SZ.EKORG AS PURCHASE_GROUP,
    TO_DATE(SUBSTR(SZ.VDATU,1,4)||'-'||SUBSTR(SZ.VDATU,5,2)||'-'||SUBSTR(SZ.VDATU,7,2),'YYYY-MM-DD') AS REQUIRE_DATE,
    TO_DATE(SUBSTR(SZ.EDATU,1,4)||'-'||SUBSTR(SZ.EDATU,5,2)||'-'||SUBSTR(SZ.EDATU,7,2),'YYYY-MM-DD') AS PROMISE_DATE,
    SZ.WMENG AS QTY,
    CASE WHEN SZ.ZEDATU = '00000000' THEN NULL ELSE TO_DATE(SUBSTR(SZ.ZEDATU,1,4)||'-'||SUBSTR(SZ.ZEDATU,5,2)||'-'||SUBSTR(SZ.ZEDATU,7,2),'YYYY-MM-DD') END AS EX_PROMISE_DATE,
    SZ.ZSTATE AS STATUS,
    SZ.ZTO_EC AS TOEC_OR_NOT
    FROM SAPSR3.ZTSD_008_1@SAP_SEP SZ JOIN SAPSR3.EKKO@SAP_SEP SE ON SZ.MANDT = SE.MANDT AND SZ.EBELN = SE.EBELN
    WHERE SZ.EKORG='2020' 
      AND TRIM(SZ.ZSFCH) IS NULL
    AND SZ.MANDT = '800'
    AND TRIM(SZ.KZKFG) IS NULL
    AND SZ.EBELN LIKE '52%'
    AND SZ.EBELN='4700016874';
    
    SELECT * FROM  SAPSR3.ZTSD_008_1@SAP_SEP WHERE EBELN='4700016874';

    第二条SQL语句可以看出数据是在凌晨1点才写进去的,但取数的时候是在12:03分执行的,所以执行第一条SQL语句是没有数据写进去的

  • 相关阅读:
    python初识面向对象
    python装饰器
    python递归函数及二分法查找
    python内置函数及匿名函数
    生成器和生成器函数以及各种推导式
    第一类对象 函数名 变量名
    初识函数
    文件操作
    基本数据类型补充 深浅拷贝
    Python小程序练习及认识小数据池和编码
  • 原文地址:https://www.cnblogs.com/Snowfun/p/8927104.html
Copyright © 2011-2022 走看看