基础数据同步视图修改
This commit is contained in:
		
							parent
							
								
									545167fa69
								
							
						
					
					
						commit
						2a1400897b
					
				|  | @ -1,40 +1,100 @@ | ||||||
| ## 物料编码 | ## 物料编码 | ||||||
| ~~~sql | ~~~sql | ||||||
| CREATE OR REPLACE FORCE EDITIONABLE VIEW "TKNCC"."V_UAPBD_QUERYSYNC_MATERIAL" ("PK_MATERIAL", "CODE", "NAME", "MATERIALSPEC", "PK_MEASDOC", "CHKFREEFLAG", "ENABLESTATE", "PK_STORDOC", "MATERSTATE", "PK_ORG", "ORG_CODE", "TS") AS  | -- TKNCC.V_UAPBD_QUERYSYNC_MATERIAL source | ||||||
|   SELECT DISTINCT | create view V_UAPBD_QUERYSYNC_MATERIAL as | ||||||
|   m.PK_MATERIAL, | SELECT | ||||||
|   m.CODE, |     t."PK_MATERIAL",t."CODE",t."NAME",t."MATERIALSPEC",t."ENABLESTATE",t."DW_CODE",t."DW_NAME",t."PK_MEASDOC",t."CHKFREEFLAG",t."STOCKORG_CODE",t."PK_STORDOC",t."STOCKCODE",t."STOCKNAME",t."PK_ORG",t."REAL_ORG_CODE",t."MTS",t."MKTS", | ||||||
|   m.NAME, |     'C022' AS org_code, | ||||||
|   m.MATERIALSPEC, |     t1.materstate, | ||||||
|   m.PK_MEASDOC, |     t.PK_MARBASCLASS, | ||||||
|   mk.chkfreeflag, |     CASE | ||||||
|   m.ENABLESTATE, |         WHEN t.mTS IS NULL | ||||||
|   mk.pk_stordoc, |             AND t.mkTS IS NULL | ||||||
|   md.materstate, |             AND t1.mdTS IS NULL THEN to_char(TO_DATE(sysdate, 'YYYY-MM-DD HH24:MI:SS')) | ||||||
|   m.PK_ORG, |         ELSE GREATEST( | ||||||
|   oo.code AS org_code, |                 COALESCE(t.mTS, '2000-01-01 00:00:00'), | ||||||
|   GREATEST(m.TS, mk.TS, md.TS, oo.TS) AS TS |                 COALESCE(t.mkTS, '2000-01-01 00:00:00'), | ||||||
|  |                 COALESCE(t1.mdTS, '2000-01-01 00:00:00')) | ||||||
|  |         END AS ts | ||||||
| FROM | FROM | ||||||
|   bd_material m |     ( | ||||||
|   LEFT JOIN bd_materialstock mk ON m.PK_MATERIAL = mk.pk_material |         SELECT | ||||||
|   LEFT JOIN bd_materialprod md ON m.PK_MATERIAL = md.pk_material |             m.PK_MATERIAL, | ||||||
|   LEFT JOIN org_orgs oo ON m.pk_org = oo.pk_org |             m.CODE, | ||||||
| WHERE |             m.NAME, | ||||||
|   m.dr = 0; |             m.MATERIALSPEC, | ||||||
|  |             m.PK_MARBASCLASS, | ||||||
|  |             m.ENABLESTATE, | ||||||
|  |             mc.code AS dw_code, | ||||||
|  |             mc.name AS dw_name, | ||||||
|  |             mc.pk_measdoc AS pk_measdoc, | ||||||
|  |             mk.chkfreeflag, | ||||||
|  |             os.code AS stockorg_code, | ||||||
|  |             bdstoc.pk_stordoc, | ||||||
|  |             bdstoc.code AS stockcode, | ||||||
|  |             bdstoc.name AS stockname, | ||||||
|  |             oo.PK_ORG, | ||||||
|  |             oo.code AS real_org_code, | ||||||
|  |             m.ts AS mts, | ||||||
|  |             mk.ts AS mkts | ||||||
|  |         FROM | ||||||
|  |             bd_material m | ||||||
|  |                 INNER JOIN bd_materialstock mk ON | ||||||
|  |                 m.PK_MATERIAL = mk.pk_material | ||||||
|  |                 INNER JOIN org_stockorg os ON | ||||||
|  |                         mk.pk_org = os.pk_stockorg | ||||||
|  |                     AND os.code = 'C022' | ||||||
|  |                 LEFT JOIN bd_stordoc bdstoc ON | ||||||
|  |                 mk.pk_stordoc = bdstoc.pk_stordoc | ||||||
|  |                 LEFT JOIN bd_measdoc mc ON | ||||||
|  |                 m.pk_measdoc = mc.pk_measdoc | ||||||
|  |                 LEFT JOIN org_orgs oo ON | ||||||
|  |                 m.pk_org = oo.pk_org | ||||||
|  |         WHERE | ||||||
|  |             m.dr = 0 | ||||||
|  |         --		AND (oo.code = '30401' | ||||||
|  | --			OR m.CODE LIKE '1%' | ||||||
|  | --			OR m.CODE LIKE '2%' | ||||||
|  | --			OR m.CODE LIKE '4%') | ||||||
|  |         ORDER BY | ||||||
|  |             m.pk_material DESC | ||||||
|  |     )t | ||||||
|  |         LEFT JOIN ( | ||||||
|  |         SELECT | ||||||
|  |             md.pk_material, | ||||||
|  |             md.materstate, | ||||||
|  |             orgf.code AS orgf_code, | ||||||
|  |             md.ts AS mdts | ||||||
|  |         FROM | ||||||
|  |             bd_materialprod md | ||||||
|  |                 INNER JOIN org_factory orgf ON | ||||||
|  |                         md.pk_org = orgf.pk_factory | ||||||
|  |                     AND orgf.code = 'C022' | ||||||
|  |     )t1 ON | ||||||
|  |             t.PK_MATERIAL = t1.PK_MATERIAL | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
| ~~~ | ~~~ | ||||||
| 
 | 
 | ||||||
| ## 物料分类 | ## 物料分类 | ||||||
| ~~~sql | ~~~sql | ||||||
| CREATE  VIEW V_UAPBD_QUERYSYNC_MATERIALCLASS AS | create view V_UAPBD_QUERYSYNC_MATCLASS as | ||||||
| SELECT | SELECT | ||||||
|     m.code, |     m.code, | ||||||
|     m.name, |     m.name, | ||||||
|     m.pk_marbasclass , |     m.pk_marbasclass , | ||||||
|     p.name AS parent_name, |     p.name AS parent_name, | ||||||
|     p.code AS parent_code, |     p.code AS parent_code, | ||||||
|     oo.CODE AS org_code, |  | ||||||
|     p.pk_marbasclass pk_parent, |     p.pk_marbasclass pk_parent, | ||||||
|     GREATEST(p.TS, m.TS) AS TS |     oo.CODE AS real_org_code, | ||||||
|  |     m.enablestate, | ||||||
|  |     CASE | ||||||
|  |         WHEN p.TS IS NULL | ||||||
|  |             AND m.TS IS NULL THEN to_char(TO_DATE(sysdate, 'YYYY-MM-DD HH24:MI:SS')) | ||||||
|  |         ELSE GREATEST( | ||||||
|  |                 COALESCE(p.TS, '2000-01-01 00:00:00'), | ||||||
|  |                 COALESCE(m.TS, '2000-01-01 00:00:00')) | ||||||
|  |         END AS ts | ||||||
| FROM | FROM | ||||||
|     bd_marbasclass m |     bd_marbasclass m | ||||||
|         LEFT JOIN bd_marbasclass p ON m.pk_parent = p.pk_marbasclass |         LEFT JOIN bd_marbasclass p ON m.pk_parent = p.pk_marbasclass | ||||||
|  | @ -45,7 +105,7 @@ WHERE | ||||||
| 
 | 
 | ||||||
| ## 人员 | ## 人员 | ||||||
| ~~~sql | ~~~sql | ||||||
| CREATE  VIEW V_UAPBD_QUERYSYNC_PSNDOC AS | create view V_UAPBD_QUERYSYNC_PSNDOC as | ||||||
| SELECT | SELECT | ||||||
|     p.pk_psndoc, |     p.pk_psndoc, | ||||||
|     p.CODE, |     p.CODE, | ||||||
|  | @ -54,87 +114,114 @@ SELECT | ||||||
|     dept.name AS dept_name, |     dept.name AS dept_name, | ||||||
|     p.ENABLESTATE, |     p.ENABLESTATE, | ||||||
|     org.code as org_code, |     org.code as org_code, | ||||||
|     p.TS AS TS |     CASE | ||||||
|  |         WHEN p.TS IS NULL | ||||||
|  |             AND j.TS IS NULL THEN to_char(TO_DATE(sysdate, 'YYYY-MM-DD HH24:MI:SS')) | ||||||
|  |         ELSE GREATEST( | ||||||
|  |                 COALESCE(p.TS, '2000-01-01 00:00:00'), | ||||||
|  |                 COALESCE(j.TS, '2000-01-01 00:00:00')) | ||||||
|  |         END AS ts | ||||||
| FROM | FROM | ||||||
|     bd_psndoc p |     bd_psndoc p | ||||||
|         LEFT JOIN bd_psnjob j ON p.pk_psndoc = j.pk_psndoc |         LEFT JOIN bd_psnjob j ON p.pk_psndoc = j.pk_psndoc AND (j.enddutydate IS NULL OR TO_DATE(j.enddutydate, 'YYYY-MM-DD HH24:MI:SS') > SYSDATE) | ||||||
|         AND j.ismainjob = 'Y' |         AND j.ismainjob = 'Y' | ||||||
|         AND j.dr = 0 |         AND j.dr = 0 | ||||||
|         LEFT JOIN org_orgs org ON p.pk_org = org.pk_org |         LEFT JOIN org_orgs org ON p.pk_org = org.pk_org | ||||||
|         LEFT JOIN org_dept dept ON j.pk_dept = dept.pk_dept |         LEFT JOIN org_dept dept ON j.pk_dept = dept.pk_dept | ||||||
| WHERE | WHERE | ||||||
|     p.dr = 0; |         p.dr = 0 | ||||||
| ~~~ | ~~~ | ||||||
| 
 | 
 | ||||||
| ## 客户 | ## 客户 | ||||||
| ~~~sql | ~~~sql | ||||||
| CREATE  VIEW V_UAPBD_QUERYSYNC_CUSTOMER AS | create view V_UAPBD_QUERYSYNC_CUSTOMER as | ||||||
| SELECT | SELECT t.PK_CUSTOMER, | ||||||
|     c.pk_customer, |        t.NAME, | ||||||
|     c.name, |        t.CODE, | ||||||
|     c.code, |        t.ENABLESTATE, | ||||||
|     c.enablestate, |        t.SHORTNAME, | ||||||
|     c.shortname, |        t.REAL_ORG_CODE, | ||||||
|     oo.code AS org_code, |        t.ORG_NAME, | ||||||
|     oo.name AS org_name, |        t.GROUP_CODE, | ||||||
|     og.code AS group_code, |        t.GROUP_NAME, | ||||||
|     og.name AS group_name, |        NVL(t.TS, SYSDATE) AS ts, | ||||||
|     GREATEST(c.ts, oo.TS, og.TS) AS TS |        t.RN, | ||||||
| FROM |        CEIL(t.rn / 10000) AS org_code | ||||||
|     bd_customer c | FROM (SELECT c.pk_customer, | ||||||
|         LEFT JOIN org_orgs oo ON c.pk_org = oo.pk_org |              c.name, | ||||||
|         LEFT JOIN org_group og ON c.pk_group = og.pk_group |              c.code, | ||||||
| WHERE |              c.enablestate, | ||||||
|     c.dr = 0; |              c.shortname, | ||||||
|  |              oo.code                                    AS real_org_code, | ||||||
|  |              oo.name                                    AS org_name, | ||||||
|  |              og.code                                    AS group_code, | ||||||
|  |              og.name                                    AS group_name, | ||||||
|  |              c.ts                                       AS TS, | ||||||
|  |              ROW_NUMBER() OVER (ORDER BY c.pk_customer) AS rn | ||||||
|  |       FROM bd_customer c | ||||||
|  |                LEFT JOIN org_orgs oo ON c.pk_org = oo.pk_org | ||||||
|  |                LEFT JOIN org_group og ON c.pk_group = og.pk_group | ||||||
|  |       WHERE c.dr = 0) t | ||||||
| ~~~ | ~~~ | ||||||
| 
 | 
 | ||||||
| ## 供应商 | ## 供应商 | ||||||
| ~~~sql | ~~~sql | ||||||
| CREATE  VIEW V_UAPBD_QUERYSYNC_SUPPLIER AS | create view V_UAPBD_QUERYSYNC_SUPPLIER as | ||||||
| SELECT | SELECT | ||||||
|     s.CODE, |     t."CODE",t."PK_SUPPLIER",t."NAME",t."ENABLESTATE",t."SHORTNAME",t."REAL_ORG_CODE",t."ORG_NAME",t."GROUP_CODE",t."GROUP_NAME",t."TS",t."RN", | ||||||
|     s.PK_SUPPLIER, |     CEIL(t.rn / 10000) AS org_code | ||||||
|     s.NAME, | FROM ( | ||||||
|     s.ENABLESTATE, |          SELECT | ||||||
|     s.shortname, |              s.CODE, | ||||||
|     oo.code AS org_code, |              s.PK_SUPPLIER, | ||||||
|     oo.name AS org_name, |              s.NAME, | ||||||
|     og.code AS group_code, |              s.ENABLESTATE, | ||||||
|     og.name AS group_name, |              s.shortname, | ||||||
|     s.ts AS TS |              oo.code AS real_org_code, | ||||||
| FROM |              oo.name AS org_name, | ||||||
|     bd_supplier s |              og.code AS group_code, | ||||||
|         LEFT JOIN org_orgs oo ON s.pk_org = oo.pk_org |              og.name AS group_name, | ||||||
|         LEFT JOIN org_group og ON s.pk_group = og.pk_group |              s.ts AS TS, | ||||||
| WHERE |              ROW_NUMBER() OVER (ORDER BY s.PK_SUPPLIER) AS rn | ||||||
|     s.dr = 0; |          FROM | ||||||
|  |              bd_supplier s | ||||||
|  |                  LEFT JOIN org_orgs oo ON s.pk_org = oo.pk_org | ||||||
|  |                  LEFT JOIN org_group og ON s.pk_group = og.pk_group | ||||||
|  |          WHERE | ||||||
|  |              s.dr = 0 | ||||||
|  |      ) t | ||||||
| ~~~ | ~~~ | ||||||
| 
 | 
 | ||||||
| ## 部门 | ## 部门 | ||||||
| ~~~sql | ~~~sql | ||||||
|  CREATE VIEW V_UAPBD_QUERYSYNC_DEPT AS | create view V_UAPBD_QUERYSYNC_DEPT as | ||||||
| SELECT | SELECT | ||||||
|     d.CODE, |     d.CODE, | ||||||
|     d.NAME, |     d.NAME, | ||||||
|     d.ENABLESTATE, |     d.ENABLESTATE, | ||||||
| 
 |  | ||||||
|     d.PK_DEPT, |     d.PK_DEPT, | ||||||
|     oo.code AS org_code, |     oo.code AS org_code, | ||||||
|     oo.name AS org_name, |     oo.name AS org_name, | ||||||
|     og.code AS group_code, |     og.code AS group_code, | ||||||
|     og.name AS group_name, |     og.name AS group_name, | ||||||
|     d.ts AS TS |     CASE | ||||||
|  |         WHEN d.TS IS NULL | ||||||
|  |             AND d.MODIFIEDTIME IS NULL THEN to_char(TO_DATE(sysdate, 'YYYY-MM-DD HH24:MI:SS')) | ||||||
|  |         ELSE GREATEST( | ||||||
|  |                 COALESCE(d.TS, '2000-01-01 00:00:00'), | ||||||
|  |                 COALESCE(d.MODIFIEDTIME, '2000-01-01 00:00:00')) | ||||||
|  |         END AS ts | ||||||
| FROM | FROM | ||||||
|     org_dept d |     org_dept d | ||||||
|         LEFT JOIN org_orgs oo ON d.pk_org = oo.pk_org |         LEFT JOIN org_orgs oo ON d.pk_org = oo.pk_org | ||||||
|         LEFT JOIN org_group og ON d.pk_group = og.pk_group |         LEFT JOIN org_group og ON d.pk_group = og.pk_group | ||||||
| WHERE | WHERE | ||||||
|     d.dr = 0; |     d.dr = 0 | ||||||
| ~~~ | ~~~ | ||||||
| 
 | 
 | ||||||
| ## 仓库 | ## 仓库 | ||||||
| ~~~sql | ~~~sql | ||||||
|  CREATE VIEW V_UAPBD_QUERYSYNC_STORDOC AS | create view V_UAPBD_QUERYSYNC_STORDOC as | ||||||
| SELECT | SELECT | ||||||
|     sd.CODE, |     sd.CODE, | ||||||
|     sd.name, |     sd.name, | ||||||
|  | @ -145,11 +232,10 @@ SELECT | ||||||
|     og.code AS group_code, |     og.code AS group_code, | ||||||
|     og.name AS group_name, |     og.name AS group_name, | ||||||
|     sd.ts AS TS |     sd.ts AS TS | ||||||
| 
 |  | ||||||
| FROM | FROM | ||||||
|     bd_stordoc sd |     bd_stordoc sd | ||||||
|         LEFT JOIN org_stockorg so ON sd.pk_org = so.pk_stockorg |         LEFT JOIN org_stockorg so ON sd.pk_org = so.pk_stockorg | ||||||
|         LEFT JOIN org_group og ON sd.pk_group = og.pk_group |         LEFT JOIN org_group og ON sd.pk_group = og.pk_group | ||||||
| WHERE | WHERE | ||||||
|     sd.dr = 0; |     sd.dr = 0 | ||||||
| ~~~ | ~~~ | ||||||
		Loading…
	
		Reference in New Issue