1.0.271.sql 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. -- 1.0.271:S5 生产退料 B-① 迁通用管线 + dopdemorq 双源入站实体登记(本库 status=1 / SQLSERVER status=0)
  2. --
  3. -- 背景:ProductionReturn 由 bespoke 直读 NbrMaster/NbrDetail 迁入通用管线
  4. -- (源→mdp_stg_production_return[头/明细共表,source_table 区分]→transform→mdp_std_production_return(_detail))。
  5. -- 登记 4 个入站实体(本库 master+detail、dopdemorq SQL Server master+detail),均落 mdp_stg_production_return、FULL。
  6. -- 状态:正式脚本(1.0.271,已注册 csproj Copy,随 AutoVersionUpdate 执行)。
  7. --
  8. -- 硬约束:
  9. -- 1) 本库实体 S5_PRODUCTION_RETURN_MASTER/_DETAIL status=1:RunFullAsync 迁 stg 管线后依赖它(否则 s5-production-return-mdp/refresh 端点断)。
  10. -- 2) SQLSERVER 实体 status=0:就位不启用,合入后不改变现有运行行为;启用需带外注密码+受控切源。
  11. -- 3) 四实体均 sync_mode='FULL'(本批 FULL-only,规避增量边界;不启自动增量)。
  12. -- 4) source_table_name='NbrMaster'/'NbrDetail'(两库同名);transform 按 Type='WOD' AND IsActive(判真) AND IsReturn(判假) 过滤(退料)。
  13. -- tenant_id 由入站上下文赋值,本库源含该列(raw 保留),SQL Server 源无此列(回落上下文)。
  14. -- 幂等:WHERE NOT EXISTS 守卫,可重复执行。
  15. -- 本库入站实体(AIDOPDEV_MYSQL, status=1)
  16. INSERT INTO mdp_entity
  17. (tenant_id, source_id, entity_code, entity_name, entity_type, source_table_name, target_table_name,
  18. sync_mode, batch_size, biz_key_expr, status, remark, create_time, update_time)
  19. SELECT 0, (SELECT id FROM mdp_source WHERE source_code='AIDOPDEV_MYSQL'),
  20. 'S5_PRODUCTION_RETURN_MASTER', 'S5生产退料主入站(本库)', 'TABLE',
  21. 'NbrMaster', 'mdp_stg_production_return',
  22. 'FULL', 5000, 'Domain,Nbr', 1, 'S5生产退料 B-① 本库头入站', NOW(), NOW()
  23. WHERE NOT EXISTS (SELECT 1 FROM mdp_entity WHERE entity_code='S5_PRODUCTION_RETURN_MASTER');
  24. INSERT INTO mdp_entity
  25. (tenant_id, source_id, entity_code, entity_name, entity_type, source_table_name, target_table_name,
  26. sync_mode, batch_size, biz_key_expr, status, remark, create_time, update_time)
  27. SELECT 0, (SELECT id FROM mdp_source WHERE source_code='AIDOPDEV_MYSQL'),
  28. 'S5_PRODUCTION_RETURN_DETAIL', 'S5生产退料明细入站(本库)', 'TABLE',
  29. 'NbrDetail', 'mdp_stg_production_return',
  30. 'FULL', 5000, 'Domain,Nbr,Line', 1, 'S5生产退料 B-① 本库明细入站', NOW(), NOW()
  31. WHERE NOT EXISTS (SELECT 1 FROM mdp_entity WHERE entity_code='S5_PRODUCTION_RETURN_DETAIL');
  32. -- dopdemorq SQL Server 入站实体(DOPDEMORQ_SQLSERVER, status=0 就位不启用)
  33. INSERT INTO mdp_entity
  34. (tenant_id, source_id, entity_code, entity_name, entity_type, source_table_name, target_table_name,
  35. sync_mode, batch_size, biz_key_expr, status, remark, create_time, update_time)
  36. SELECT 0, (SELECT id FROM mdp_source WHERE source_code='DOPDEMORQ_SQLSERVER'),
  37. 'S5_PRODUCTION_RETURN_MASTER_SQLSERVER', 'S5生产退料主入站(SQLServer)', 'TABLE',
  38. 'NbrMaster', 'mdp_stg_production_return',
  39. 'FULL', 5000, 'Domain,Nbr', 0, 'S5生产退料 B-① 双源 disabled', NOW(), NOW()
  40. WHERE NOT EXISTS (SELECT 1 FROM mdp_entity WHERE entity_code='S5_PRODUCTION_RETURN_MASTER_SQLSERVER');
  41. INSERT INTO mdp_entity
  42. (tenant_id, source_id, entity_code, entity_name, entity_type, source_table_name, target_table_name,
  43. sync_mode, batch_size, biz_key_expr, status, remark, create_time, update_time)
  44. SELECT 0, (SELECT id FROM mdp_source WHERE source_code='DOPDEMORQ_SQLSERVER'),
  45. 'S5_PRODUCTION_RETURN_DETAIL_SQLSERVER', 'S5生产退料明细入站(SQLServer)', 'TABLE',
  46. 'NbrDetail', 'mdp_stg_production_return',
  47. 'FULL', 5000, 'Domain,Nbr,Line', 0, 'S5生产退料 B-① 双源 disabled', NOW(), NOW()
  48. WHERE NOT EXISTS (SELECT 1 FROM mdp_entity WHERE entity_code='S5_PRODUCTION_RETURN_DETAIL_SQLSERVER');