基础数据同步视图修改
This commit is contained in:
parent
545167fa69
commit
2a1400897b
|
@ -1,40 +1,100 @@
|
|||
## 物料编码
|
||||
~~~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
|
||||
SELECT DISTINCT
|
||||
m.PK_MATERIAL,
|
||||
m.CODE,
|
||||
m.NAME,
|
||||
m.MATERIALSPEC,
|
||||
m.PK_MEASDOC,
|
||||
mk.chkfreeflag,
|
||||
m.ENABLESTATE,
|
||||
mk.pk_stordoc,
|
||||
md.materstate,
|
||||
m.PK_ORG,
|
||||
oo.code AS org_code,
|
||||
GREATEST(m.TS, mk.TS, md.TS, oo.TS) AS TS
|
||||
-- TKNCC.V_UAPBD_QUERYSYNC_MATERIAL source
|
||||
create view V_UAPBD_QUERYSYNC_MATERIAL as
|
||||
SELECT
|
||||
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",
|
||||
'C022' AS org_code,
|
||||
t1.materstate,
|
||||
t.PK_MARBASCLASS,
|
||||
CASE
|
||||
WHEN t.mTS IS NULL
|
||||
AND t.mkTS IS NULL
|
||||
AND t1.mdTS IS NULL THEN to_char(TO_DATE(sysdate, 'YYYY-MM-DD HH24:MI:SS'))
|
||||
ELSE GREATEST(
|
||||
COALESCE(t.mTS, '2000-01-01 00:00:00'),
|
||||
COALESCE(t.mkTS, '2000-01-01 00:00:00'),
|
||||
COALESCE(t1.mdTS, '2000-01-01 00:00:00'))
|
||||
END AS ts
|
||||
FROM
|
||||
bd_material m
|
||||
LEFT JOIN bd_materialstock mk ON m.PK_MATERIAL = mk.pk_material
|
||||
LEFT JOIN bd_materialprod md ON m.PK_MATERIAL = md.pk_material
|
||||
LEFT JOIN org_orgs oo ON m.pk_org = oo.pk_org
|
||||
WHERE
|
||||
m.dr = 0;
|
||||
(
|
||||
SELECT
|
||||
m.PK_MATERIAL,
|
||||
m.CODE,
|
||||
m.NAME,
|
||||
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
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_MATERIALCLASS AS
|
||||
create view V_UAPBD_QUERYSYNC_MATCLASS as
|
||||
SELECT
|
||||
m.code,
|
||||
m.name,
|
||||
m.pk_marbasclass ,
|
||||
p.name AS parent_name,
|
||||
p.code AS parent_code,
|
||||
oo.CODE AS org_code,
|
||||
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
|
||||
bd_marbasclass m
|
||||
LEFT JOIN bd_marbasclass p ON m.pk_parent = p.pk_marbasclass
|
||||
|
@ -45,7 +105,7 @@ WHERE
|
|||
|
||||
## 人员
|
||||
~~~sql
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_PSNDOC AS
|
||||
create view V_UAPBD_QUERYSYNC_PSNDOC as
|
||||
SELECT
|
||||
p.pk_psndoc,
|
||||
p.CODE,
|
||||
|
@ -54,87 +114,114 @@ SELECT
|
|||
dept.name AS dept_name,
|
||||
p.ENABLESTATE,
|
||||
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
|
||||
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.dr = 0
|
||||
LEFT JOIN org_orgs org ON p.pk_org = org.pk_org
|
||||
LEFT JOIN org_dept dept ON j.pk_dept = dept.pk_dept
|
||||
WHERE
|
||||
p.dr = 0;
|
||||
p.dr = 0
|
||||
~~~
|
||||
|
||||
## 客户
|
||||
~~~sql
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_CUSTOMER AS
|
||||
SELECT
|
||||
c.pk_customer,
|
||||
c.name,
|
||||
c.code,
|
||||
c.enablestate,
|
||||
c.shortname,
|
||||
oo.code AS org_code,
|
||||
oo.name AS org_name,
|
||||
og.code AS group_code,
|
||||
og.name AS group_name,
|
||||
GREATEST(c.ts, oo.TS, og.TS) AS TS
|
||||
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;
|
||||
create view V_UAPBD_QUERYSYNC_CUSTOMER as
|
||||
SELECT t.PK_CUSTOMER,
|
||||
t.NAME,
|
||||
t.CODE,
|
||||
t.ENABLESTATE,
|
||||
t.SHORTNAME,
|
||||
t.REAL_ORG_CODE,
|
||||
t.ORG_NAME,
|
||||
t.GROUP_CODE,
|
||||
t.GROUP_NAME,
|
||||
NVL(t.TS, SYSDATE) AS ts,
|
||||
t.RN,
|
||||
CEIL(t.rn / 10000) AS org_code
|
||||
FROM (SELECT c.pk_customer,
|
||||
c.name,
|
||||
c.code,
|
||||
c.enablestate,
|
||||
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
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_SUPPLIER AS
|
||||
create view V_UAPBD_QUERYSYNC_SUPPLIER as
|
||||
SELECT
|
||||
s.CODE,
|
||||
s.PK_SUPPLIER,
|
||||
s.NAME,
|
||||
s.ENABLESTATE,
|
||||
s.shortname,
|
||||
oo.code AS org_code,
|
||||
oo.name AS org_name,
|
||||
og.code AS group_code,
|
||||
og.name AS group_name,
|
||||
s.ts AS TS
|
||||
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."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",
|
||||
CEIL(t.rn / 10000) AS org_code
|
||||
FROM (
|
||||
SELECT
|
||||
s.CODE,
|
||||
s.PK_SUPPLIER,
|
||||
s.NAME,
|
||||
s.ENABLESTATE,
|
||||
s.shortname,
|
||||
oo.code AS real_org_code,
|
||||
oo.name AS org_name,
|
||||
og.code AS group_code,
|
||||
og.name AS group_name,
|
||||
s.ts AS TS,
|
||||
ROW_NUMBER() OVER (ORDER BY s.PK_SUPPLIER) AS rn
|
||||
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
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_DEPT AS
|
||||
create view V_UAPBD_QUERYSYNC_DEPT as
|
||||
SELECT
|
||||
d.CODE,
|
||||
d.NAME,
|
||||
d.ENABLESTATE,
|
||||
|
||||
d.PK_DEPT,
|
||||
oo.code AS org_code,
|
||||
oo.name AS org_name,
|
||||
og.code AS group_code,
|
||||
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
|
||||
org_dept d
|
||||
LEFT JOIN org_orgs oo ON d.pk_org = oo.pk_org
|
||||
LEFT JOIN org_group og ON d.pk_group = og.pk_group
|
||||
WHERE
|
||||
d.dr = 0;
|
||||
d.dr = 0
|
||||
~~~
|
||||
|
||||
## 仓库
|
||||
~~~sql
|
||||
CREATE VIEW V_UAPBD_QUERYSYNC_STORDOC AS
|
||||
create view V_UAPBD_QUERYSYNC_STORDOC as
|
||||
SELECT
|
||||
sd.CODE,
|
||||
sd.name,
|
||||
|
@ -145,11 +232,10 @@ SELECT
|
|||
og.code AS group_code,
|
||||
og.name AS group_name,
|
||||
sd.ts AS TS
|
||||
|
||||
FROM
|
||||
bd_stordoc sd
|
||||
LEFT JOIN org_stockorg so ON sd.pk_org = so.pk_stockorg
|
||||
LEFT JOIN org_group og ON sd.pk_group = og.pk_group
|
||||
WHERE
|
||||
sd.dr = 0;
|
||||
sd.dr = 0
|
||||
~~~
|
Loading…
Reference in New Issue