前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >U8数据库同步至WMS数据库语句

U8数据库同步至WMS数据库语句

作者头像
摘繁华
发布2022-08-31 14:27:46
9540
发布2022-08-31 14:27:46
举报
文章被收录于专栏:摘繁华

U8数据库同步至WMS数据库语句

1. 静态数据

1.1. 部门档案(Department)

代码语言:javascript
复制
WITH DepartmentSync AS(
  SELECT
    cDepCode DEPARTMENT_CODE,
    cDepName DEPARTMENT_NAME,
    cDepFullName DEPARTMENT_DESC,
    'Y' DATA_VALID,
    CONVERT(nvarchar, dp.dModifyDate, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    Department dp
  WHERE
    CONVERT(nvarchar, isnull(dp.dModifyDate, getdate()), 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  DepartmentSync
ORDER BY
  dModifyTime desc

1.2. 用户资料(UserAccount)

代码语言:javascript
复制
WITH UserAccountSync AS(
  SELECT
    u.cUser_Id USER_ACCOUNT,
    u.cUser_Name USER_NAME,
    u.cPassword USER_PASSWORD,
    u.cUserEmail E_MAIL,
    d.cDepCode DEPARTMENTID,
    h.cPsnMobilePhone MOBILE,
    'Y' DATA_VALID,
    CONVERT(
      nvarchar,
      CASE
        WHEN u.dPasswordDate IS NULL THEN u.dCrDate
        ELSE u.dPasswordDate
      END,
      121
    ) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    UA_User_Ex u
    LEFT JOIN hr_hi_person h ON h.cPsn_Num = u.cUser_Id
    LEFT JOIN Department d ON d.cDepCode = h.cDept_num
  WHERE
    CONVERT(
      nvarchar,
      isnull(
        CASE
          WHEN u.dPasswordDate IS NULL THEN u.dCrDate
          ELSE u.dPasswordDate
        END,
        getdate()
      ),
      121
    ) > CONVERT(nvarchar, '', 121)
)
SELECT
  *
FROM
  UserAccountSync
ORDER BY
  dModifyTime desc

1.3. 客户档案(Customer)

代码语言:javascript
复制
WITH CustomerSync AS(
  SELECT
    cCuscode CUSTOMER_CODE,
    cCusname CUSTOMER_NAME,
    cCusabbname SHORT_NAME,
    cc.cCCCode CCUSTOMER_CODE,
    cc.cCCName CCUSTOMER_NAME,
    cu.cCusAddress CUSTOMER_ADDRESS,
    cu.cCusPhone CUSTOMER_TEL,
    CONVERT(nvarchar, cu.dCusDevDate, 121) CUSTOMER_DEVDATE,
    'N/A' SALES_CODE,
    0 RMA_CENTERID,
    'Y' DATA_VALID,
    cu.cModifyPerson MODIFY_USERID,
    CONVERT(
      nvarchar,
      (
        CASE
          WHEN cu.dModifyDate IS NOT NULL THEN cu.dModifyDate
          ELSE cu.dCusCreateDatetime
        END
      ),
      121
    ) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    customer cu
    INNER JOIN customerclass cc ON cu.cCCCode = cc.cCCCode
  WHERE
    CONVERT(
      nvarchar,
      isnull(
        CASE
          WHEN cu.dModifyDate IS NULL THEN cu.dCusCreateDatetime
          ELSE cu.dModifyDate
        END,
        getdate()
      ),
      121
    ) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  CustomerSync
ORDER BY
  dModifyTime desc

1.4. 供应商档案(Vendor)

代码语言:javascript
复制
WITH VendorSync AS(
  SELECT
    vc.cVCCode VENDOR_CCODE,
    vc.cVCName VENDOR_CNAME,
    v.cVenCode VENDOR_CODE,
    v.cVenName VENDOR_NAME,
    v.cVenAbbname SHORT_NAME,
    v.cVenAddress VENDOR_ADDRESS,
    v.cCreatePerson CREATE_USERID,
    'Y' DATA_VALID,
    CONVERT(
      nvarchar,
      (
        CASE
          WHEN v.dModifyDate IS NULL THEN v.dVenCreateDatetime
          ELSE v.dModifyDate
        END
      ),
      121
    ) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    Vendor v
    INNER JOIN VendorClass vc ON v.cVCCode = vc.cVCCode
  WHERE
    CONVERT(
      nvarchar,
      isnull(
        CASE
          WHEN v.dModifyDate IS NULL THEN v.dVenCreateDatetime
          ELSE v.dModifyDate
        END,
        getdate()
      ),
      121
    ) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  VendorSync
ORDER BY
  dModifyTime desc

1.5. 仓库信息(Warehouse)

代码语言:javascript
复制
WITH WarehouseSync AS(
  SELECT
    w.cWhCode WAREHOUSE_NO,
    w.cWhName WAREHOUSE_NAME,
    w.cDepCode DEPARTMENT_NO,
    w.cWhAddress WAREHOUSE_ADDRESS,
    (
      CASE
        WHEN w.bWhPos = 1 THEN 'Y'
        ELSE 'N'
      END
    ) POSITION_FLAG,
    w.cWhPerson WAREHOUSE_PERSON,
    w.cWhPhone WAREHOUSE_TEL,
    'Y' DATA_VALID,
    CONVERT(nvarchar, w.dModifyDate, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    Warehouse w
  WHERE
    CONVERT(nvarchar, isnull(w.dModifyDate, getdate()), 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  WarehouseSync
ORDER BY
  dModifyTime desc

1.6. 货位信息(Location)

代码语言:javascript
复制
WITH LocationSync AS(
  SELECT
    p.cPosCode LOCATION_NO,
    p.cPosName LOCATION_DESC,
    p.cWhCode WAREHOUSE_CODE,
    p.cMemo LOCATION_REMARK,
    'Y' DATA_VALID,
    CONVERT(bit, 0) IsSync
  FROM
    POSITION p
  WHERE
    bPosEnd = 1
    AND CONVERT(nvarchar, p.cPosCode, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  LocationSync
ORDER BY
  LOCATION_NO desc

1.7. 物料档案(Partnumber)

代码语言:javascript
复制
WITH PartnumberSync AS(
  SELECT
    DISTINCT i.cInvCode PART_NUMBER,
    i.cInvName PART_DESC1,
    i.cInvStd PART_DESC2,
    com.cComUnitName PART_UNIT,
    i.cInvCCode PART_TYPECODE,
    ic.cInvCName PART_TYPE,
    cVenCode VENDOR_CODE,
    cPosition LOCATION_NO,
    (
      CASE
        WHEN i.bPropertyCheck = 1 THEN 'Y'
        ELSE 'N'
      END
    ) QC_FLAG,
    --是否质检
    (
      CASE
        WHEN i.bInvQuality = 1 THEN 'Y'
        ELSE 'N'
      END
    ) QUALITY_FLAG,
    --是否保质期管理 
    (
      CASE
        WHEN i.bInvBatch = 1 THEN 'Y'
        ELSE 'N'
      END
    ) BATCH_FLAG,
    --是否批次管理 
    'Y' DATA_VALID,
    CONVERT(nvarchar, i.dModifyDate, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    inventory i
    INNER JOIN inventoryclass ic ON i.cInvCCode = ic.cInvCCode
    INNER JOIN ComputationUnit com ON com.cComunitCode = i.cComUnitCode
  WHERE
    CONVERT(nvarchar, isnull(i.dModifyDate, getdate()), 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  PartnumberSync
ORDER BY
  dModifyTime desc

2. 动态数据

2.1. 入库作业

2.1.1 收料

采购(委外)到货单(ArrivalVouch)

代码语言:javascript
复制
WITH ArrivalVouchSync AS(
  SELECT
    CAST(ph.cCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) RTID,
    ph.cCode RTNO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS VARCHAR
      ),
      3
    ) ITEMNO,
    v.cVenCode VENDORID,
    'N/A' VENDOR_SITE,
    'N/A' VENDOR_DELIVERYNO,
    phs.cInvCode PARTID,
    'N/A' VERSION,
    'Y' PROPERTYCHECK,
    CAST(
      isnull(phs.fValidQuantity, 0) + isnull(phs.fDegradeQuantity, 0) AS DECIMAL(10, 4)
    ) RT_QTY,
    ph.cBusType RT_TYPE,
    'N/A' BRAND,
    'N/A' ORIGIN,
    'Initial' RT_STATUS,
    ph.cMaker RT_USERID,
    ph.cpocode PO_NO,
    CONVERT(nvarchar, ph.dDate, 121) PLAN_RTDATE,
    getdate() ACTURAL_RTDATE,
    (
      CASE
        WHEN phs.bexigency = 1 THEN 'Y'
        ELSE 'N'
      END
    ) URGENT_STATUS,
    (
      CASE
        WHEN phs.bGsp = 1 THEN 'Y'
        ELSE 'N'
      END
    ) QC_FLAG,
    ctransordercode ASN_NO,
    cgeneralordercode ASN_ITEMNO,
    'N/A' WORK_ORDER,
    phs.cBatch ERPLOT_NO,
    'N/A' IQC_LOTNO,
    0 MINPACK_LOTSIZE,
    phs.cGspState QC_RESULT,
    phs.cWhCode WAREHOUSEID,
    'N/A' WAIVE_NO,
    CONVERT(nvarchar, q.DVERIFYTIME, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    PU_ArrivalVouchs phs
    INNER JOIN PU_ArrivalVouch ph ON ph.id = phs.id
    AND phs.cCloser IS NULL
    INNER JOIN QMCHECKVOUCHER q ON q.SOURCEID = ph.id
    AND q.SOURCEAUTOID = phs.Autoid
    INNER JOIN vendor v ON v.cVenCode = ph.cVenCode
  WHERE
    ph.cverifier IS NOT NULL
    AND q.DVERIFYTIME IS NOT NULL
    AND ph.cCloser IS NULL
    AND (
      ph.cBusType = '普通采购'
      OR ph.cBusType = '委外加工'
    )
    AND ph.bNegative = 0
    AND phs.bGsp = 1
    AND CONVERT(nvarchar, q.DVERIFYTIME, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ArrivalVouchSync
ORDER BY
  dModifyTime desc

采购(委外)到货单(免检)(ArrivalvouchInspection)

代码语言:javascript
复制
WITH ArrivalvouchInspectionSync AS(
  SELECT
    CAST(ph.cCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) RTID,
    ph.cCode RTNO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS VARCHAR
      ),
      3
    ) ITEMNO,
    v.cVenCode VENDORID,
    'N/A' VENDOR_SITE,
    'N/A' VENDOR_DELIVERYNO,
    phs.cInvCode PARTID,
    'N/A' VERSION,
    'N' PROPERTYCHECK,
    CAST(phs.iQuantity AS DECIMAL(10, 4)) RT_QTY,
    ph.cBusType RT_TYPE,
    'N/A' BRAND,
    'N/A' ORIGIN,
    'Initial' RT_STATUS,
    ph.cMaker RT_USERID,
    ph.cpocode PO_NO,
    CONVERT(nvarchar, ph.dDate, 121) PLAN_RTDATE,
    getdate() ACTURAL_RTDATE,
    (
      CASE
        WHEN phs.bexigency = 1 THEN 'Y'
        ELSE 'N'
      END
    ) URGENT_STATUS,
    (
      CASE
        WHEN phs.bGsp = 1 THEN 'Y'
        ELSE 'N'
      END
    ) QC_FLAG,
    ctransordercode ASN_NO,
    cgeneralordercode ASN_ITEMNO,
    'N/A' WORK_ORDER,
    phs.cBatch ERPLOT_NO,
    'N/A' IQC_LOTNO,
    0 MINPACK_LOTSIZE,
    phs.cGspState QC_RESULT,
    phs.cWhCode WAREHOUSEID,
    'N/A' WAIVE_NO,
    CONVERT(nvarchar, ph.caudittime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    PU_ArrivalVouchs phs
    INNER JOIN PU_ArrivalVouch ph ON ph.id = phs.id
    AND phs.cCloser IS NULL
    INNER JOIN vendor v ON v.cVenCode = ph.cVenCode
  WHERE
    ph.cverifier IS NOT NULL
    AND ph.caudittime IS NOT NULL
    AND ph.cCloser IS NULL
    AND (
      ph.cBusType = '普通采购'
      OR ph.cBusType = '委外加工'
    )
    AND ph.bNegative = 0
    AND phs.bGsp = 0
    AND CONVERT(nvarchar, ph.caudittime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ArrivalvouchInspectionSync
ORDER BY
  dModifyTime desc
2.1.2 产成品入库

生产订单(FgstockinManufacture)

代码语言:javascript
复制
WITH FgstockinManufactureSync AS(
  SELECT
    o.MoCode FORM_NO,
    'Initial' FORM_STATUS,
    '' REMARK,
    '生产订单' FORM_TYPE,
    '' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    NULL PROCESS_STARTTIME,
    NULL PROCESS_ENDTIME,
    'I04' WRH_FORMCODE,
    NULL CREATE_TYPE,
    NULL SOURCE_NO,
    NULL SITEID,
    o.CreateUser REQUEST_USERID,
    o.CreateDate CREATE_DATE,
    mot.RelsUser MODIFY_USERID,
    CONVERT(nvarchar, mot.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_order o
    INNER JOIN mom_orderdetail mot ON mot.moid = o.moid
  WHERE
    mot.Status = 3
    AND mot.RelsTime IS NOT NULL
    AND mot.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, mot.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinManufactureSync
ORDER BY
  dModifyTime DESC

生产订单明细(FgstockinManufactureDetail)

代码语言:javascript
复制
WITH FgstockinManufactureDetailSync AS(
  SELECT
    o.MoCode + '|' + RIGHT('000' + CAST(od.SortSeq AS nvarchar), 3) FORM_RECID,
    o.MoCode FORM_NO,
    RIGHT('000' + CAST(od.SortSeq AS nvarchar), 3) ITEMNO,
    '生产订单' FORM_TYPE,
    '' WORK_ORDER,
    od.InvCode PARTID,
    'N/A' VERSION,
    od.WhCode WAREHOUSEID,
    od.MoLotCode ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.Qty AS DECIMAL(10, 4)) RETURN_QTY,
    0 ACTUAL_QTY,
    od.remark REMARK,
    '' ITEMNO_FLAG,
    0 STOCKIN_QTY,
    'N/A' RTNPACKAGE_ID,
    od.QcFlag QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    NULL WAIVE_NO,
    NULL WRH_ORG,
    NULL SITEID,
    NULL DID,
    od.RelsUser MODIFY_USERID,
    CONVERT(nvarchar, od.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_orderdetail od
    INNER JOIN mom_order o ON o.MOID = od.MOID
  WHERE
    od.RelsTime IS NOT NULL
    AND od.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, od.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinManufactureDetailSync
ORDER BY
  dModifyTime DESC

委外订单(FgstockinOutsourcing)

代码语言:javascript
复制
WITH FgstockinOutsourcingSync AS(
  SELECT
    mo.cCode FORM_NO,
    'Initial' FORM_STATUS,
    mo.cMemo REMARK,
    '委外订单' FORM_TYPE,
    '' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    NULL PROCESS_STARTTIME,
    NULL PROCESS_ENDTIME,
    'I01' WRH_FORMCODE,
    NULL CREATE_TYPE,
    NULL SOURCE_NO,
    NULL SITEID,
    mo.cMaker REQUEST_USERID,
    mo.dCreateTime CREATE_DATE,
    mo.cVerifier MODIFY_USERID,
    CONVERT(nvarchar, mo.dVerifyTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    OM_MOMain mo
  WHERE
    mo.cVerifier IS NOT NULL
    AND mo.dVerifyTime IS NOT NULL
    AND CONVERT(nvarchar, mo.dVerifyTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinOutsourcingSync
ORDER BY
  dModifyTime DESC

委外订单明细(FgstockinOutsourcingDetail)

代码语言:javascript
复制
WITH FgstockinOutsourcingDetailSync AS(
  SELECT
    CAST(od.MOID AS nvarchar) + '|' + RIGHT('000' + CAST(od.iVouchRowNo AS nvarchar), 3) FORM_RECID,
    o.MOID FORM_NO,
    RIGHT('000' + CAST(od.iVouchRowNo AS nvarchar), 3) ITEMNO,
    '委外订单' FORM_TYPE,
    NULL WORK_ORDER,
    od.cInvCode PARTID,
    NULL VERSION,
    NULL WAREHOUSEID,
    NULL ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.iQuantity AS DECIMAL(10, 4)) RETURN_QTY,
    0 ACTUAL_QTY,
    od.cbMemo REMARK,
    '' ITEMNO_FLAG,
    0 STOCKIN_QTY,
    NULL RTNPACKAGE_ID,
    od.bGsp QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    NULL WAIVE_NO,
    NULL WRH_ORG,
    NULL SITEID,
    NULL DID,
    o.cVerifier MODIFY_USERID,
    CONVERT(nvarchar, o.dVerifyTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    OM_MODetails od
    INNER JOIN OM_MOMain o ON o.MOID = od.MOID
  WHERE
    o.dVerifyTime IS NOT NULL
    AND o.cVerifier IS NOT NULL
    AND CONVERT(nvarchar, o.dVerifyTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinOutsourcingDetailSync
ORDER BY
  dModifyTime DESC

工单退料单(FgstockinReturnMaterial)

代码语言:javascript
复制
WITH FgstockinReturnMaterialSync AS(
  SELECT
    o.cCode FORM_NO,
    'Initial' FORM_STATUS,
    o.cMemo REMARK,
    '工单退料单' FORM_TYPE,
    '' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    NULL PROCESS_STARTTIME,
    NULL PROCESS_ENDTIME,
    'I03' WRH_FORMCODE,
    NULL CREATE_TYPE,
    NULL SOURCE_NO,
    NULL SITEID,
    o.cHandler REQUEST_USERID,
    o.dnmaketime CREATE_DATE,
    (
      CASE
        WHEN o.cHandler IS NULL THEN o.cMaker
        ELSE o.cHandler
      END
    ) MODIFY_USERID,
    CONVERT(
      nvarchar,
      CASE
        WHEN o.dnverifytime IS NULL THEN o.dnmaketime
        ELSE o.dnverifytime
      END,
      121
    ) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    rdrecords11 od
    INNER JOIN rdrecord11 o ON od.ID = o.ID
  WHERE
    od.iQuantity < 0
    AND CONVERT(
      nvarchar,
      CASE
        WHEN o.dnverifytime IS NULL THEN o.dnmaketime
        ELSE o.dnverifytime
      END,
      121
    ) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinReturnMaterialSync
ORDER BY
  dModifyTime DESC

工单退料单明细(FgstockinReturnMaterialDetail)

代码语言:javascript
复制
WITH FgstockinReturnMaterialDetailSync AS(
  SELECT
    CAST(o.cCode AS nvarchar) + '|' + CAST(od.AutoID AS nvarchar) FORM_RECID,
    o.cCode FORM_NO,
    CAST(od.AutoID AS nvarchar) ITEMNO,
    '工单退料单' FORM_TYPE,
    '' WORK_ORDER,
    od.cInvCode PARTID,
    'N/A' VERSION,
    o.cWhCode WAREHOUSEID,
    od.cMoLotCode ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(ABS(od.iQuantity) AS DECIMAL(10, 4)) RETURN_QTY,
    0 ACTUAL_QTY,
    od.cbMemo REMARK,
    '' ITEMNO_FLAG,
    0 STOCKIN_QTY,
    'N/A' RTNPACKAGE_ID,
    '' QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    NULL WAIVE_NO,
    NULL WRH_ORG,
    NULL SITEID,
    NULL DID,
    (
      CASE
        WHEN o.cHandler IS NULL THEN o.cMaker
        ELSE o.cHandler
      END
    ) MODIFY_USERID,
    CONVERT(
      nvarchar,
      CASE
        WHEN o.dnverifytime IS NULL THEN o.dnmaketime
        ELSE o.dnverifytime
      END,
      121
    ) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    rdrecords11 od
    INNER JOIN rdrecord11 o ON od.ID = o.ID
  WHERE
    od.iQuantity < 0
    AND CONVERT(
      nvarchar,
      CASE
        WHEN o.dnverifytime IS NULL THEN o.dnmaketime
        ELSE o.dnverifytime
      END,
      121
    ) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinReturnMaterialDetailSync
ORDER BY
  dModifyTime DESC

其他入库单(FgstockinOther)

代码语言:javascript
复制
WITH FgstockinOtherSync AS(
  SELECT
    o.cCode FORM_NO,
    'Initial' FORM_STATUS,
    o.cMemo REMARK,
    '其他入库单' FORM_TYPE,
    '' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    NULL PROCESS_STARTTIME,
    NULL PROCESS_ENDTIME,
    'I01' WRH_FORMCODE,
    NULL CREATE_TYPE,
    NULL SOURCE_NO,
    NULL SITEID,
    o.cMaker REQUEST_USERID,
    o.dnmaketime CREATE_DATE,
    o.cHandler MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    RdRecord08 o
  WHERE
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinOtherSync
ORDER BY
  dModifyTime DESC

其他入库单明细(FgstockinOtherDetail)

代码语言:javascript
复制
WITH FgstockinOtherDetailSync AS(
  SELECT
    o.cCode + '|' + CAST(od.AutoID AS nvarchar) FORM_RECID,
    o.cCode FORM_NO,
    CAST(od.AutoID AS nvarchar) ITEMNO,
    '其他入库单' FORM_TYPE,
    '' WORK_ORDER,
    od.cInvCode PARTID,
    'N/A' VERSION,
    o.cWhCode WAREHOUSEID,
    '' ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.iQuantity AS DECIMAL(10, 4)) RETURN_QTY,
    0 ACTUAL_QTY,
    od.cbMemo REMARK,
    '' ITEMNO_FLAG,
    0 STOCKIN_QTY,
    'N/A' RTNPACKAGE_ID,
    NULL QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    NULL WAIVE_NO,
    NULL WRH_ORG,
    NULL SITEID,
    NULL DID,
    o.cMaker REQUEST_USERID,
    o.dnmaketime CREATE_DATE,
    o.cHandler MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    rdrecords08 od
    INNER JOIN RdRecord08 o ON od.ID = o.ID
  WHERE
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  FgstockinOtherDetailSync
ORDER BY
  dModifyTime DESC

2.2.出库作业

2.2.1 材料出库

生产订单(MaterialstockoutManufacture)

代码语言:javascript
复制
WITH MaterialstockoutManufactureSync AS(
  SELECT
    DISTINCT o.MoCode FORM_NO,
    od.RelsUser REQUEST_USERID,
    CONVERT(nvarchar, o.CreateDate, 120) CREATE_DATE,
    CONVERT(nvarchar, od.RelsDate, 120) REQUEST_DATE,
    'Initial' FORM_STATUS,
    od.remark REMARK,
    '生产订单' FORM_TYPE,
    'N/A' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    CAST(NULL AS datetime) PROCESS_STARTTIME,
    CAST(NULL AS datetime) PROCESS_ENDTIME,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' UNOPEN_FIRST_FLAG,
    'N' CHECK_BRAND,
    'ERP' CREATE_TYPE,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' RESERVE_FIRST_FLAG,
    'N' PRIORITYLOCATION,
    'N/A' SOURCE_NO,
    NULL SITEID,
    od.RelsUser MODIFY_USERID,
    CONVERT(nvarchar, od.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_order o
    INNER JOIN mom_orderdetail od ON o.MOID = od.MOID
  WHERE
    od.RelsTime IS NOT NULL
    AND od.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, od.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutManufactureSync
ORDER BY
  dModifyTime DESC

生产订单子件(MaterialstockoutManufactureDetail)

代码语言:javascript
复制
WITH MaterialstockoutManufactureDetailSync AS(
  SELECT
    CAST(o.MoCode AS nvarchar) + '|' + CAST(om.AllocateId AS nvarchar) FORM_RECID,
    CAST(o.MoCode AS nvarchar) FORM_NO,
    CAST(om.AllocateId AS nvarchar) ITEMNO,
    '生产订单' FORM_TYPE,
    '' WORK_ORDER,
    om.InvCode PARTID,
    'N/A' VERSION,
    om.WhCode WAREHOUSEID,
    om.LotNo ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(om.Qty AS DECIMAL(10, 4)) REQUEST_QTY,
    CAST(0 AS DECIMAL(10, 4)) ACTUAL_QTY,
    om.remark REMARK,
    '' ITEMNO_FLAG,
    (
      CASE
        WHEN om.QcFlag = 1 THEN 'Y'
        ELSE 'N'
      END
    ) QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    od.RelsUser MODIFY_USERID,
    CONVERT(nvarchar, od.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_moallocate om
    INNER JOIN mom_orderdetail od ON om.MoDId = od.MoDId
    INNER JOIN mom_order o ON od.MoId = o.MoId
  WHERE
    om.WIPType = 3 --只有领料的物料才同步
    AND od.RelsTime IS NOT NULL
    AND od.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, od.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutManufactureDetailSync
ORDER BY
  dModifyTime DESC

委外订单(MaterialstockoutOutsourcing)

代码语言:javascript
复制
WITH MaterialstockoutOutsourcingSync AS(
  SELECT
    DISTINCT o.cCode FORM_NO,
    o.cVerifier REQUEST_USERID,
    CONVERT(nvarchar, o.dDate, 120) CREATE_DATE,
    CONVERT(nvarchar, o.dVerifyDate, 120) REQUEST_DATE,
    'Initial' FORM_STATUS,
    o.cMemo REMARK,
    '委外订单' FORM_TYPE,
    'N/A' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    CAST(NULL AS datetime) PROCESS_STARTTIME,
    CAST(NULL AS datetime) PROCESS_ENDTIME,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' UNOPEN_FIRST_FLAG,
    'N' CHECK_BRAND,
    'ERP' CREATE_TYPE,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' RESERVE_FIRST_FLAG,
    'N' PRIORITYLOCATION,
    'N/A' SOURCE_NO,
    NULL SITEID,
    o.cVerifier MODIFY_USERID,
    CONVERT(nvarchar, o.dVerifyTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    OM_MOMain o
  WHERE
    o.dVerifyTime IS NOT NULL
    AND o.cVerifier IS NOT NULL
    AND CONVERT(nvarchar, o.dVerifyTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutOutsourcingSync
ORDER BY
  dModifyTime DESC

委外订单子件(MaterialstockoutOutsourcingDetail)

代码语言:javascript
复制
WITH MaterialstockoutOutsourcingDetailSync AS(
  SELECT
    CAST(o.cCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(ods.irowno) > 0 THEN ods.irowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) FORM_RECID,
    CAST(o.cCode AS nvarchar) FORM_NO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(ods.irowno) > 0 THEN ods.irowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) ITEMNO,
    '委外订单' FORM_TYPE,
    '' WORK_ORDER,
    ods.cInvCode PARTID,
    'N/A' VERSION,
    ods.cWhCode WAREHOUSEID,
    ods.cBatch ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(ods.iQuantity AS DECIMAL(10, 4)) REQUEST_QTY,
    CAST(0 AS DECIMAL(10, 4)) ACTUAL_QTY,
    ods.cbMemo REMARK,
    '' ITEMNO_FLAG,
    'N' QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    o.cVerifier MODIFY_USERID,
    CONVERT(nvarchar, o.dVerifyTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    OM_MOMaterials ods
    INNER JOIN OM_MODetails od ON od.MODetailsID = ods.MoDetailsID
    INNER JOIN OM_MOMain o ON o.MOID = od.MOID
  WHERE
    o.dVerifyTime IS NOT NULL
    AND o.cVerifier IS NOT NULL
    AND CONVERT(nvarchar, o.dVerifyTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutOutsourcingDetailSync
ORDER BY
  dModifyTime DESC

领料申请单(MaterialstockoutMaterial)

代码语言:javascript
复制
WITH MaterialstockoutMaterialSync AS(
  SELECT
    DISTINCT o.cCode FORM_NO,
    o.cHandler REQUEST_USERID,
    CONVERT(nvarchar, o.dDate, 120) CREATE_DATE,
    CONVERT(nvarchar, o.dVeriDate, 120) REQUEST_DATE,
    'Initial' FORM_STATUS,
    o.cMemo REMARK,
    '领料申请单' FORM_TYPE,
    'N/A' FORM_ATTR,
    NULL MOVE_NO,
    NULL PROCESS_USERID,
    CAST(NULL AS datetime) PROCESS_STARTTIME,
    CAST(NULL AS datetime) PROCESS_ENDTIME,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' UNOPEN_FIRST_FLAG,
    'N' CHECK_BRAND,
    'ERP' CREATE_TYPE,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' RESERVE_FIRST_FLAG,
    'N' PRIORITYLOCATION,
    'N/A' SOURCE_NO,
    NULL SITEID,
    o.cHandler MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    MaterialAppVouch o
  WHERE
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutMaterialSync
ORDER BY
  dModifyTime DESC

领料申请单子件(MaterialstockoutMaterialDetail)

代码语言:javascript
复制
WITH MaterialstockoutMaterialDetailSync AS(
  SELECT
    CAST(o.cCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(od.irowno) > 0 THEN od.irowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) FORM_RECID,
    CAST(o.cCode AS nvarchar) FORM_NO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(od.irowno) > 0 THEN od.irowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) ITEMNO,
    '领料申请单' FORM_TYPE,
    '' WORK_ORDER,
    od.cInvCode PARTID,
    'N/A' VERSION,
    od.cWhCode WAREHOUSEID,
    '' ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.iQuantity AS DECIMAL(10, 4)) REQUEST_QTY,
    CAST(0 AS DECIMAL(10, 4)) ACTUAL_QTY,
    od.cbMemo REMARK,
    'N' ITEMNO_FLAG,
    'N' QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    (
      CASE
        WHEN o.cModifyPerson IS NULL THEN o.cMaker
        ELSE o.cModifyPerson
      END
    ) MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    MaterialAppVouchs od
    INNER JOIN MaterialAppVouch o ON o.id = od.ID
  WHERE
    --od.WIPType = 3 AND  --只有领料的物料才同步
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutMaterialDetailSync
ORDER BY
  dModifyTime DESC

补料申请单(MaterialstockoutReplenishapply)

代码语言:javascript
复制
WITH MaterialstockoutReplenishapplySync AS(
  SELECT
    DISTINCT o.DocCode FORM_NO,
    o.RelsUser REQUEST_USERID,
    CONVERT(nvarchar, o.CreateDate, 120) CREATE_DATE,
    CONVERT(nvarchar, o.DocDate, 120) REQUEST_DATE,
    'Initial' FORM_STATUS,
    NULL REMARK,
    '补料申请单' FORM_TYPE,
    'N/A' FORM_ATTR,
    NULL MOVE_NO,
    o.RelsUser PROCESS_USERID,
    CAST(NULL AS datetime) PROCESS_STARTTIME,
    CAST(NULL AS datetime) PROCESS_ENDTIME,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' UNOPEN_FIRST_FLAG,
    'N' CHECK_BRAND,
    'ERP' CREATE_TYPE,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' RESERVE_FIRST_FLAG,
    'N' PRIORITYLOCATION,
    'N/A' SOURCE_NO,
    NULL SITEID,
    o.ModifyUser MODIFY_USERID,
    CONVERT(nvarchar, o.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_replenishapply o
  WHERE
    o.RelsTime IS NOT NULL
    AND o.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, o.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutReplenishapplySync
ORDER BY
  dModifyTime DESC

补料申请单子件(MaterialstockoutReplenishapplyDetail)

代码语言:javascript
复制
WITH MaterialstockoutReplenishapplyDetailSync AS(
  SELECT
    CAST(o.DocCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(od.SortSeq) > 0 THEN od.SortSeq
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) FORM_RECID,
    CAST(o.DocCode AS nvarchar) FORM_NO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(od.SortSeq) > 0 THEN od.SortSeq
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) ITEMNO,
    '补料申请单' FORM_TYPE,
    '' WORK_ORDER,
    ods.InvCode PARTID,
    'N/A' VERSION,
    ods.WhCode WAREHOUSEID,
    ods.LotNo ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.ApplyQty AS DECIMAL(10, 4)) REQUEST_QTY,
    CAST(0 AS DECIMAL(10, 4)) ACTUAL_QTY,
    ods.Remark REMARK,
    '' ITEMNO_FLAG,
    'N' QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    o.RelsUser MODIFY_USERID,
    CONVERT(nvarchar, o.RelsTime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    mom_moallocate ods
    INNER JOIN mom_replenishapplydtl od ON od.MoAllocateId = ods.AllocateId
    INNER JOIN mom_replenishapply o ON o.ApplyId = od.ApplyId
  WHERE
    ods.WIPType = 3
    AND --只有领料的物料才同步
    o.RelsTime IS NOT NULL
    AND o.RelsUser IS NOT NULL
    AND CONVERT(nvarchar, o.RelsTime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutReplenishapplyDetailSync
ORDER BY
  dModifyTime DESC

其他出库单(MaterialstockoutOther)

代码语言:javascript
复制
WITH MaterialstockoutOtherSync AS(
  SELECT
    DISTINCT o.cCode FORM_NO,
    o.cHandler REQUEST_USERID,
    CONVERT(nvarchar, o.dnmaketime, 120) CREATE_DATE,
    CONVERT(nvarchar, o.dDate, 120) REQUEST_DATE,
    'Initial' FORM_STATUS,
    NULL REMARK,
    '其他出库单' FORM_TYPE,
    'N/A' FORM_ATTR,
    NULL MOVE_NO,
    o.cHandler PROCESS_USERID,
    CAST(NULL AS datetime) PROCESS_STARTTIME,
    CAST(NULL AS datetime) PROCESS_ENDTIME,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' UNOPEN_FIRST_FLAG,
    'N' CHECK_BRAND,
    'ERP' CREATE_TYPE,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' RESERVE_FIRST_FLAG,
    'N' PRIORITYLOCATION,
    'N/A' SOURCE_NO,
    NULL SITEID,
    o.cHandler MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    RdRecord09 o
  WHERE
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutOtherSync
ORDER BY
  dModifyTime DESC

其他出库单子件(MaterialstockoutOtherDetail)

代码语言:javascript
复制
WITH MaterialstockoutOtherDetailSync AS(
  SELECT
    CAST(o.cCode AS nvarchar) + '|' + CAST(od.AutoID AS nvarchar) FORM_RECID,
    CAST(o.cCode AS nvarchar) FORM_NO,
    CAST(od.AutoID AS nvarchar) ITEMNO,
    '其他出库单' FORM_TYPE,
    '' WORK_ORDER,
    od.cInvCode PARTID,
    'N/A' VERSION,
    o.cWhCode WAREHOUSEID,
    NULL ERP_LOTNO,
    NULL ERP_PROCESS,
    CAST(od.iQuantity AS DECIMAL(10, 4)) REQUEST_QTY,
    CAST(od.iFQuantity AS DECIMAL(10, 4)) ACTUAL_QTY,
    od.cbMemo REMARK,
    '' ITEMNO_FLAG,
    'N' QC_FLAG,
    NULL QC_RESULT,
    NULL IQC_LOTNO,
    o.cHandler MODIFY_USERID,
    CONVERT(nvarchar, o.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    Rdrecords09 od
    INNER JOIN RdRecord09 o ON od.ID = o.ID
  WHERE
    --od.WIPType = 3 AND  --只有领料的物料才同步
    o.dnverifytime IS NOT NULL
    AND o.cHandler IS NOT NULL
    AND CONVERT(nvarchar, o.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  MaterialstockoutOtherDetailSync
ORDER BY
  dModifyTime DESC
2.2.2 发货备料

销售发货退货单(Shipping)

代码语言:javascript
复制
WITH ShippingSync AS(
  SELECT
    DISTINCT CAST(d.cDLCode AS nvarchar) SHIPPING_NO,
    d.cCusCode CUSTOMERID,
    d.cPersonCode SALER_USERID,
    CONVERT(nvarchar, d.dDate, 111) CREATE_DATE,
    d.dverifydate SCHEDULE_DATE,
    'Initial' SO_STATUS,
    d.cMemo REMARK,
    d.cBusType SO_TYPE,
    d.cmodifier MODIFY_USERID,
    NULL CREATE_TYPE,
    NULL TRANSPORT_TYPE,
    'N' PICKBYLOT_SPLIT_FLAG,
    'N' CHECK_BRAND,
    'N' RESERVE_FIRST_FLAG,
    'N' PICKBYAREA_FLAG,
    'N' PICKBYLOCATION,
    'N' MERGE_FLAG,
    'N' LIFO_FLAG,
    'N' PRIORITYLOCATION,
    'N' UNOPEN_FIRST_FLAG,
    'N' SOURCE_NO,
    NULL SITEID,
    CONVERT(nvarchar, d.dverifysystime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    DispatchList d
  WHERE
    d.dverifysystime IS NOT NULL
    AND CONVERT(nvarchar, dverifysystime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ShippingSync
ORDER BY
  dModifyTime desc

销售发货退货单明细(ShippingDetail)

代码语言:javascript
复制
WITH ShippingDetailSync AS(
  SELECT
    DISTINCT CAST(d.cDLCode AS nvarchar) + '|' + RIGHT('000' + CAST(ds.irowno AS nvarchar), 3) SHIPPING_RECID,
    CAST(d.cDLCode AS nvarchar) SHIPPING_NO,
    RIGHT('000' + CAST(ds.irowno AS nvarchar), 3) ITEMNO,
    ds.cInvCode PARTID,
    ds.cBatch VERSION,
    cBatch ERP_LOTNO,
    ds.cWhCode WAREHOUSEID,
    CAST(ds.iQuantity AS DECIMAL(10, 4)) SOQTY,
    CAST(fOutQuantity AS DECIMAL(10, 4)) SHIP_QTY,
    iMassDate WARRANTY_MONTH,
    NULL CUSTOMER_SITE,
    d.cShipAddress SHIP_ADDRESS,
    NULL PO_NO,
    NULL PO_ITEMNO,
    ds.cMemo REMARK,
    d.cmodifier MODIFY_USERID,
    NULL SHIP_ADDRESS2,
    NULL CREATE_TYPE,
    NULL ITEMNO_FLAG,
    NULL SCHEDULE_DATE,
    NULL SITEID,
    NULL DID,
    CONVERT(nvarchar, d.dverifysystime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    DispatchLists ds
    INNER JOIN DispatchList d ON ds.DLID = d.DLID
  WHERE
    d.dverifysystime IS NOT NULL
    AND CONVERT(nvarchar, dverifysystime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ShippingDetailSync
ORDER BY
  dModifyTime desc

2.3. 调拨作业

调拨申请单(Transfer)

代码语言:javascript
复制
WITH TransferSync AS(
  SELECT
    DISTINCT v.cTVCode FORM_NO,
    '调拨申请单' FORM_TYPE,
    CONVERT(nvarchar, v.dnmaketime, 121) CREATE_DATE,
    'Initial' FORM_STATUS,
    'N/A' FORM_ATTR,
    v.cTVMemo REMARK,
    v.cOWhCode FROM_WRHID,
    v.cIWhCode TARGET_WRHID,
    v.cMaker REQUEST_USERID,
    v.cVerifyPerson PROCESS_USERID,
    v.cModifyPerson MODIFY_USERID,
    CONVERT(nvarchar, v.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    ST_AppTransVouch v
  WHERE
    v.dnverifytime IS NOT NULL
    AND v.cVerifyPerson IS NOT NULL
    AND CONVERT(nvarchar, v.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  TransferSync
ORDER BY
  dModifyTime DESC

调拨申请单明细(TransferDetail)

代码语言:javascript
复制
WITH TransferDetailSync AS(
  SELECT
    CAST(v.cTVCode AS nvarchar) + '|' + RIGHT('000' + CAST(vs.irowno AS nvarchar), 3) FORM_RECID,
    v.cTVCode FORM_NO,
    RIGHT('000' + CAST(vs.irowno AS nvarchar), 3) ITEMNO,
    '调拨申请单' FORM_TYPE,
    'Initial' FORM_STATUS,
    'N/A' FORM_ATTR,
    v.cTVMemo REMARK,
    vs.cInvCode PARTID,
    'N/A' VERSION,
    CAST(iTVQuantity AS DECIMAL(10, 4)) MOVE_QTY,
    v.cOWhCode FROM_WRHID,
    'N/A' FROM_LOCID,
    v.cIWhCode TARGET_WRHID,
    'N/A' TARGET_LOCID,
    CAST(iTVQuantity AS DECIMAL(10, 4)) FROM_QTY,
    CAST(iTvSumQuantity AS DECIMAL(10, 4)) TARGET_QTY,
    v.cMaker FROM_USERID,
    CONVERT(nvarchar, v.dnmaketime, 121) FROM_DATETIME,
    v.cMaker REQUEST_USERID,
    CONVERT(nvarchar, v.dnmaketime, 121) CREATE_DATE,
    v.cVerifyPerson PROCESS_USERID,
    v.cModifyPerson MODIFY_USERID,
    CONVERT(nvarchar, v.dnverifytime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    ST_AppTransVouchs vs
    INNER JOIN ST_AppTransVouch v ON vs.ID = v.ID
  WHERE
    v.cVerifyPerson IS NOT NULL
    AND v.dnverifytime IS NOT NULL
    AND CONVERT(nvarchar, v.dnverifytime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  TransferDetailSync
ORDER BY
  dModifyTime DESC

2.4. 退货作业

2.4.1 仓库退货

采购(委外)退货单(ReturnVendor)

代码语言:javascript
复制
WITH ReturnVendorSync AS(
  SELECT
    ph.cCode FORM_NO,
    ph.cMaker REQUEST_USERID,
    CONVERT(nvarchar, ph.cMakeTime, 121) CREATE_DATE,
    'Initial' FORM_STATUS,
    ph.cMemo REMARK,
    (
      CASE
        WHEN ph.cBusType = '普通采购' THEN '采购退货单'
        ELSE '委外退货单'
      END
    ) FORM_TYPE,
    NULL FORM_ATTR,
    NULL [ PROCESS_USERID ],
    NULL [ PROCESS_STARTTIME ],
    NULL [ PROCESS_ENDTIME ],
    (
      CASE
        WHEN ph.cchanger IS NULL THEN ph.cMaker
        ELSE ph.cchanger
      END
    ) MODIFY_USERID,
    v.cVenCode VENDORID,
    CONVERT(nvarchar, ph.caudittime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    PU_ArrivalVouch ph
    INNER JOIN vendor v ON v.cVenCode = ph.cVenCode
  WHERE
    ph.cverifier IS NOT NULL
    AND ph.caudittime IS NOT NULL
    AND ph.cCloser IS NULL
    AND (
      ph.cBusType = '普通采购'
      OR ph.cBusType = '委外加工'
    )
    AND ph.bNegative = 1
    AND CONVERT(nvarchar, ph.caudittime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ReturnVendorSync
ORDER BY
  dModifyTime desc

采购(委外)退货单明细(ReturnVendorDetail)

代码语言:javascript
复制
WITH ReturnVendorDetailSync AS(
  SELECT
    CAST(ph.cCode AS nvarchar) + '|' + RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS nvarchar
      ),
      3
    ) FORM_RECID,
    ph.cCode FORM_NO,
    RIGHT(
      '000' + CAST(
        (
          CASE
            WHEN len(phs.ivouchrowno) > 0 THEN phs.ivouchrowno
            ELSE 0
          END
        ) AS VARCHAR
      ),
      3
    ) ITEMNO,
    phs.cInvCode PARTID,
    'N/A' VERSION,
    CAST(phs.iQuantity AS DECIMAL(10, 4)) RETURN_QTY,
    0 ACTUAL_QTY,
    'Initial' PICK_STATUS,
    phs.cWhCode WAREHOUSEID,
    'N/A' ITEMNO_FLAG,
    (
      CASE
        WHEN ph.cchanger IS NULL THEN ph.cMaker
        ELSE ph.cchanger
      END
    ) MODIFY_USERID,
    CONVERT(nvarchar, ph.caudittime, 121) dModifyTime,
    CONVERT(bit, 0) IsSync
  FROM
    PU_ArrivalVouchs phs
    INNER JOIN PU_ArrivalVouch ph ON ph.id = phs.id
    AND phs.cCloser IS NULL
  WHERE
    ph.cverifier IS NOT NULL
    AND ph.caudittime IS NOT NULL
    AND ph.cCloser IS NULL
    AND (
      ph.cBusType = '普通采购'
      OR ph.cBusType = '委外加工'
    )
    AND ph.bNegative = 1
    AND phs.bGsp = 0
    AND CONVERT(nvarchar, ph.caudittime, 121) > CONVERT(nvarchar, '${LastDatetime_}', 121)
)
SELECT
  *
FROM
  ReturnVendorDetailSync
ORDER BY
  dModifyTime desc
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • U8数据库同步至WMS数据库语句
    • 1. 静态数据
      • 1.1. 部门档案(Department)
      • 1.2. 用户资料(UserAccount)
      • 1.3. 客户档案(Customer)
      • 1.4. 供应商档案(Vendor)
      • 1.5. 仓库信息(Warehouse)
      • 1.6. 货位信息(Location)
      • 1.7. 物料档案(Partnumber)
    • 2. 动态数据
      • 2.1. 入库作业
      • 2.2.出库作业
      • 2.3. 调拨作业
      • 2.4. 退货作业
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档