S1S4_UAT_P0_补ASN_主样例_20260614.sql 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. -- P0 主样例销售订单 ASN 发货种子(订单发货页可按 MPO482024102300001 检索)
  2. -- 租户:AIDOP 797403760988229
  3. -- 执行前请确认未占用单号 SH-UAT-P0-20260614-01
  4. SET @tenant_id := 797403760988229;
  5. SET @order_no := 'MPO482024102300001';
  6. SET @asn_id := 'SH-UAT-P0-20260614-01';
  7. SET @operator := 'UAT数据导入';
  8. SET @ship_date := '2024-10-29';
  9. SET @now := NOW();
  10. -- 主表(ShType=SH, Typed 非 S, IsActive=1)
  11. INSERT INTO ASNBOLShipperMaster
  12. (Id, OrdNbr, SoldTo, ShipDate, Status, Remark, ShType, Typed, IsActive, IsConfirm, CreateUser, CreateTime2, tenant_id)
  13. SELECT
  14. @asn_id, @order_no, 'CUST0005', @ship_date, '', 'UAT导入:P0主样例ASN', 'SH', '', 1, 0, @operator, @now, @tenant_id
  15. FROM DUAL
  16. WHERE NOT EXISTS (
  17. SELECT 1 FROM ASNBOLShipperMaster
  18. WHERE tenant_id = @tenant_id AND Id = @asn_id
  19. );
  20. SET @master_rec_id := (
  21. SELECT RecID FROM ASNBOLShipperMaster
  22. WHERE tenant_id = @tenant_id AND Id = @asn_id
  23. LIMIT 1
  24. );
  25. -- 明细行 1:3121C0035 × 1500
  26. INSERT INTO ASNBOLShipperDetail
  27. (Line, OrdNbr, OrdLine, ContainerItem, Descr, QtyToShip, ShType, Typed, IsActive, IsConfirm, ASNBOLShipperRecID, tenant_id)
  28. SELECT 1, @order_no, 1, '3121C0035', 'P0主样例行1', 1500, 'SH', '', 1, 0, @master_rec_id, @tenant_id
  29. FROM DUAL
  30. WHERE @master_rec_id IS NOT NULL
  31. AND NOT EXISTS (
  32. SELECT 1 FROM ASNBOLShipperDetail
  33. WHERE tenant_id = @tenant_id AND ASNBOLShipperRecID = @master_rec_id AND Line = 1
  34. );
  35. -- 明细行 2:1A0C885 × 3500
  36. INSERT INTO ASNBOLShipperDetail
  37. (Line, OrdNbr, OrdLine, ContainerItem, Descr, QtyToShip, ShType, Typed, IsActive, IsConfirm, ASNBOLShipperRecID, tenant_id)
  38. SELECT 2, @order_no, 2, '1A0C885', 'P0主样例行2', 3500, 'SH', '', 1, 0, @master_rec_id, @tenant_id
  39. FROM DUAL
  40. WHERE @master_rec_id IS NOT NULL
  41. AND NOT EXISTS (
  42. SELECT 1 FROM ASNBOLShipperDetail
  43. WHERE tenant_id = @tenant_id AND ASNBOLShipperRecID = @master_rec_id AND Line = 2
  44. );
  45. SELECT m.RecID, m.Id, m.OrdNbr, d.Line, d.ContainerItem, d.QtyToShip
  46. FROM ASNBOLShipperMaster m
  47. LEFT JOIN ASNBOLShipperDetail d ON d.ASNBOLShipperRecID = m.RecID
  48. WHERE m.tenant_id = @tenant_id AND m.OrdNbr = @order_no
  49. ORDER BY d.Line;