fix(data-access): correct self-referential SQL in WorkCenter filter
The WHERE clause was comparing Code to itself instead of the aliased table reference, which would always be true.
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
-- MisData Full Query
|
||||
-- Source: CMS (Oracle via DDTek.Oracle)
|
||||
-- Schema: INFODBA
|
||||
-- Destination: MisData
|
||||
-- Schedule: Mass/Daily (Hourly disabled)
|
||||
-- Connection: Config.CMSCS
|
||||
-- Timeout: Extended (1200*50 = 60000 seconds)
|
||||
-- Post Processing: Commons.Process.LotFinderDB.PostProcessMisData
|
||||
|
||||
SELECT DISTINCT
|
||||
mis.P_PART_NUMBER AS ItemNumber,
|
||||
mis.P_OPERATION_NUMBER AS SequenceNumber,
|
||||
item.PITEM_ID AS MISNumber,
|
||||
itemrev.PITEM_REVISION_ID AS RevID,
|
||||
TRIM(mis.P_SITE) AS BranchCode,
|
||||
zim_test_details.P_SEQ_NUMBER AS CharNumber,
|
||||
zim_test_details.P_TEST_DESC AS TestDescription,
|
||||
zim_test_details.P_SAMPL_TYPE AS SamplingType,
|
||||
zim_test_details.P_SAMPL_VALUE AS SamplingValue,
|
||||
zim_test_details.P_TOOLS AS ToolsGauges,
|
||||
zim_test_details.P_WORK_INTR AS WorkInstructions,
|
||||
Status.PNAME AS Status,
|
||||
Status.PDATE_RELEASED AS ReleaseDate
|
||||
FROM INFODBA.PITEM item
|
||||
INNER JOIN INFODBA.PITEMREVISION itemrev ON (item.PUID = itemrev.RITEMS_TAGU)
|
||||
INNER JOIN INFODBA.PRELEASE_STATUS_LIST listing ON (itemrev.PUID = listing.PUID)
|
||||
INNER JOIN INFODBA.PRELEASESTATUS Status ON (listing.PVALU_0 = Status.PUID)
|
||||
INNER JOIN INFODBA.PIMANRELATION imanrel ON (itemrev.PUID = imanrel.RPRIMARY_OBJECTU)
|
||||
INNER JOIN INFODBA.PFORM form ON (imanrel.RSECONDARY_OBJECTU = form.PUID)
|
||||
INNER JOIN INFODBA.PZIMMERMISDETAILS zim_mis ON (form.RDATA_FILEU = zim_mis.PUID)
|
||||
INNER JOIN INFODBA.P_TEST_DETAILS test_details ON (zim_mis.PUID = test_details.PUID)
|
||||
INNER JOIN INFODBA.P_PART_ASSOCIATION ppa ON (ppa.PUID = test_details.PUID)
|
||||
INNER JOIN INFODBA.PMISDATAOBJECT mis ON (mis.PUID = ppa.PVALU_0)
|
||||
INNER JOIN INFODBA.PZIMTESTDETAILS zim_test_details ON (test_details.PVALU_0 = zim_test_details.PUID)
|
||||
WHERE Status.PNAME IN ('Current', 'BackLevel')
|
||||
@@ -0,0 +1,37 @@
|
||||
-- MisData Filtered Query (Incremental)
|
||||
-- Source: CMS (Oracle via DDTek.Oracle)
|
||||
-- Schema: INFODBA
|
||||
-- Destination: MisData
|
||||
-- Schedule: Daily (incremental merge)
|
||||
-- Parameters: :lastUpdateDT (standard DateTime)
|
||||
-- Connection: Config.CMSCS
|
||||
-- Timeout: Extended (1200*50 = 60000 seconds)
|
||||
-- Post Processing: Commons.Process.LotFinderDB.PostProcessMisData
|
||||
|
||||
SELECT DISTINCT
|
||||
mis.P_PART_NUMBER AS ItemNumber,
|
||||
mis.P_OPERATION_NUMBER AS SequenceNumber,
|
||||
item.PITEM_ID AS MISNumber,
|
||||
itemrev.PITEM_REVISION_ID AS RevID,
|
||||
TRIM(mis.P_SITE) AS BranchCode,
|
||||
zim_test_details.P_SEQ_NUMBER AS CharNumber,
|
||||
zim_test_details.P_TEST_DESC AS TestDescription,
|
||||
zim_test_details.P_SAMPL_TYPE AS SamplingType,
|
||||
zim_test_details.P_SAMPL_VALUE AS SamplingValue,
|
||||
zim_test_details.P_TOOLS AS ToolsGauges,
|
||||
zim_test_details.P_WORK_INTR AS WorkInstructions,
|
||||
Status.PNAME AS Status,
|
||||
Status.PDATE_RELEASED AS ReleaseDate
|
||||
FROM INFODBA.PITEM item
|
||||
INNER JOIN INFODBA.PITEMREVISION itemrev ON (item.PUID = itemrev.RITEMS_TAGU)
|
||||
INNER JOIN INFODBA.PRELEASE_STATUS_LIST listing ON (itemrev.PUID = listing.PUID)
|
||||
INNER JOIN INFODBA.PRELEASESTATUS Status ON (listing.PVALU_0 = Status.PUID)
|
||||
INNER JOIN INFODBA.PIMANRELATION imanrel ON (itemrev.PUID = imanrel.RPRIMARY_OBJECTU)
|
||||
INNER JOIN INFODBA.PFORM form ON (imanrel.RSECONDARY_OBJECTU = form.PUID)
|
||||
INNER JOIN INFODBA.PZIMMERMISDETAILS zim_mis ON (form.RDATA_FILEU = zim_mis.PUID)
|
||||
INNER JOIN INFODBA.P_TEST_DETAILS test_details ON (zim_mis.PUID = test_details.PUID)
|
||||
INNER JOIN INFODBA.P_PART_ASSOCIATION ppa ON (ppa.PUID = test_details.PUID)
|
||||
INNER JOIN INFODBA.PMISDATAOBJECT mis ON (mis.PUID = ppa.PVALU_0)
|
||||
INNER JOIN INFODBA.PZIMTESTDETAILS zim_test_details ON (test_details.PVALU_0 = zim_test_details.PUID)
|
||||
WHERE Status.PNAME IN ('Current', 'BackLevel') AND
|
||||
Status.PDATE_RELEASED >= :lastUpdateDT
|
||||
@@ -0,0 +1,587 @@
|
||||
# Data Sync Configuration Report
|
||||
|
||||
This document describes all data synchronization imports from the legacy JDE Scoping Tool (LotFinder) application.
|
||||
|
||||
## Executive Summary
|
||||
|
||||
| Source System | Database Type | Entity Count | Connection |
|
||||
|---------------|---------------|--------------|------------|
|
||||
| JDE | Oracle (Oracle.ManagedDataAccess) | 21 (16 active + 5 archive) | Config.JDECS |
|
||||
| CMS | Oracle (DDTek.Oracle) | 1 | Config.CMSCS |
|
||||
|
||||
*Note: StatusCode sync uses GIW connection (Config.GIWCS via DDTek.Oracle) instead of standard JDE connection.
|
||||
|
||||
**Total Syncs:** 22
|
||||
- **Active Syncs:** 17 (scheduled to run)
|
||||
- **Archive Syncs:** 5 (configured but ALL DISABLED)
|
||||
|
||||
**Cache Files:** All syncs have corresponding cache files in `CACHED_DB_FILES/` (except StatusCode)
|
||||
|
||||
---
|
||||
|
||||
## Schedule Legend
|
||||
|
||||
| Schedule | Interval (min) | Frequency | PrepurgeData | ReIndexData | Sync Type |
|
||||
|----------|----------------|-----------|--------------|-------------|-----------|
|
||||
| Mass | 10080 | Weekly | Yes | Yes | Full Reload |
|
||||
| Daily | 1440 | Daily | No | No | Incremental Merge |
|
||||
| Hourly | 60 | Hourly | No | No | Incremental Merge |
|
||||
|
||||
- **PrepurgeData=true**: Table is truncated before import (full reload)
|
||||
- **PrepurgeData=false**: Records are merged/upserted (incremental)
|
||||
- **Filtered Query**: Uses date/time parameters to fetch only changed records
|
||||
|
||||
---
|
||||
|
||||
## Master Sync Table
|
||||
|
||||
### Active Syncs (17)
|
||||
|
||||
| # | Import Name | Source | Dest Table | Mass | Daily | Hourly | Filter | Cache File | Notes |
|
||||
|---|-------------|--------|------------|------|-------|--------|--------|------------|-------|
|
||||
| 1 | WorkOrder | JDE | WorkOrder_Curr | Yes | Yes | Yes | Yes | `workorder_curr.json.zstd` | |
|
||||
| 2 | LotUsage | JDE | LotUsage_Curr | Yes | Yes | Yes | Yes | `lotusage_curr.json.zstd` | |
|
||||
| 3 | Item | JDE | Item | Yes | Yes | Yes | Yes | `item.json.zstd` | |
|
||||
| 4 | Lot | JDE | Lot | Yes | Yes | Yes | Yes | `lot.json.zstd` | |
|
||||
| 5 | WorkOrderTime | JDE | WorkOrderTime_Curr | Yes | Yes | Yes | Yes | `workordertime_curr.json.zstd` | |
|
||||
| 6 | WorkOrderComponent | JDE | WorkOrderComponent_Curr | Yes | Yes | Yes | Yes | `workordercomponent_curr.json.zstd` | |
|
||||
| 7 | WorkOrderStep | JDE | WorkOrderStep_Curr | Yes | Yes | Yes | Yes | `workorderstep_curr.json.zstd` | |
|
||||
| 8 | WorkOrderRouting | JDE | WorkOrderRouting | Yes | Yes | Yes | Yes | `workorderrouting.json.zstd` | |
|
||||
| 9 | Branch | JDE | Branch | Yes | Yes | Yes | Yes | `branch.json.zstd` | typeCode='BP' |
|
||||
| 10 | ProfitCenter | JDE | ProfitCenter | Yes | Yes | Yes | Yes | `profitcenter.json.zstd` | typeCode='I3' |
|
||||
| 11 | WorkCenter | JDE | WorkCenter | Yes | Yes | Yes | Yes | `workcenter.json.zstd` | typeCode='WC' |
|
||||
| 12 | StatusCode | JDE | StatusCode | Yes | Yes | Yes | Yes | *(none)* | GIW connection |
|
||||
| 13 | JdeUser | JDE | JdeUser | Yes | Yes | Yes | No | `jdeuser.json.zstd` | Same query both |
|
||||
| 14 | OrgHierarchy | JDE | OrgHierarchy | Yes | Yes | Yes | Yes | `orghierarchy.json.zstd` | |
|
||||
| 15 | RouteMaster | JDE | RouteMaster | Yes | Yes | Yes | Yes | `routemaster.json.zstd` | |
|
||||
| 16 | FunctionCode | JDE | FunctionCode | Yes | Yes | Yes | No | `functioncode.json.zstd` | Always full reload |
|
||||
| 17 | MisData | CMS | MisData | Yes | Yes | No | Yes | `misdata.json.zstd` | Hourly disabled |
|
||||
|
||||
### Archive Syncs (5) - ALL DISABLED
|
||||
|
||||
| # | Import Name | Source | Dest Table | Mass | Daily | Hourly | Filter | Cache File | Notes |
|
||||
|---|-------------|--------|------------|------|-------|--------|--------|------------|-------|
|
||||
| 18 | WorkOrder_Archive | JDE | WorkOrder_Hist | No | No | No | No | `workorder_hist.json.zstd` | DISABLED |
|
||||
| 19 | LotUsage_Archive | JDE | LotUsage_Hist | No | No | No | No | `lotusage_hist.json.zstd` | DISABLED |
|
||||
| 20 | WorkOrderTime_Archive | JDE | WorkOrderTime_Hist | No | No | No | No | `workordertime_hist.json.zstd` | DISABLED |
|
||||
| 21 | WorkOrderComponent_Archive | JDE | WorkOrderComponent_Hist | No | No | No | No | `workordercomponent_hist.json.zstd` | DISABLED |
|
||||
| 22 | WorkOrderStep_Archive | JDE | WorkOrderStep_Hist | No | No | No | No | `workorderstep_hist.json.zstd` | DISABLED |
|
||||
|
||||
**Cache File Location:** `CACHED_DB_FILES/`
|
||||
|
||||
---
|
||||
|
||||
## Detailed Entity Configurations
|
||||
|
||||
### 1. WorkOrder
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKORDER |
|
||||
| Destination Table | WorkOrder_Curr |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkOrders |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F4801_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_WORKORDERS.sql`
|
||||
- Filtered: `JDE/SQL_GET_WORKORDERS_FILTERED.sql`
|
||||
- Archive: `JDE_ARCHIVE/SQL_GET_WORKORDERS.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 2. LotUsage
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | LOTUSAGE |
|
||||
| Destination Table | LotUsage_Curr |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetLotUsages |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F4111_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_LOT_USAGES.sql`
|
||||
- Filtered: `JDE/SQL_GET_LOT_USAGES_FILTERED.sql`
|
||||
- Archive: `JDE_ARCHIVE/SQL_GET_LOT_USAGES.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 3. Item
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | ITEM |
|
||||
| Destination Table | Item |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetItems |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F4101_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_ITEMS.sql`
|
||||
- Filtered: `JDE/SQL_GET_ITEMS_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 4. Lot
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | LOT |
|
||||
| Destination Table | Lot |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetLots |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F4108_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_LOTS.sql`
|
||||
- Filtered: `JDE/SQL_GET_LOTS_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 5. WorkOrderTime
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKORDERTIME |
|
||||
| Destination Table | WorkOrderTime_Curr |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkOrderTimes |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F31122_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_WORKORDER_TIMES.sql`
|
||||
- Filtered: `JDE/SQL_GET_WORKORDER_TIMES_FILTERED.sql`
|
||||
- Archive: `JDE_ARCHIVE/SQL_GET_WORKORDER_TIMES.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 6. WorkOrderComponent
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKORDERCOMPONENT |
|
||||
| Destination Table | WorkOrderComponent_Curr |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkOrderComponents |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F3111_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_WORKORDER_COMPONENTS.sql`
|
||||
- Filtered: `JDE/SQL_GET_WORKORDER_COMPONENTS_FILTERED.sql`
|
||||
- Archive: `JDE_ARCHIVE/SQL_GET_WORKORDER_COMPONENTS.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 7. WorkOrderStep
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKORDERSTEP |
|
||||
| Destination Table | WorkOrderStep_Curr |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkOrderSteps |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F3112_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_WORKORDER_STEP.sql`
|
||||
- Filtered: `JDE/SQL_GET_WORKORDER_STEP_FILTERED.sql`
|
||||
- Archive: `JDE_ARCHIVE/SQL_GET_WORKORDER_STEP.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 8. WorkOrderRouting
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKORDERROUTING |
|
||||
| Destination Table | WorkOrderRouting |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkOrderRoutings |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F3112Z1_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_WORKORDER_ROUTING.sql`
|
||||
- Filtered: `JDE/SQL_GET_WORKORDER_ROUTING_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
**Special Processing:** Filters out records with invalid dates (year < 1900 or > 2500)
|
||||
|
||||
---
|
||||
|
||||
### 9. Branch
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | BRANCH |
|
||||
| Destination Table | Branch |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetBranches |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F0006_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_BUSINESS_UNITS.sql`
|
||||
- Filtered: `JDE/SQL_GET_BUSINESS_UNITS_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `typeCode='BP'`, `dateUpdated`, `timeUpdated`
|
||||
|
||||
---
|
||||
|
||||
### 10. ProfitCenter
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | PROFITCENTER |
|
||||
| Destination Table | ProfitCenter |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetProfitCenters |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F0006_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_BUSINESS_UNITS.sql`
|
||||
- Filtered: `JDE/SQL_GET_BUSINESS_UNITS_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `typeCode='I3'`, `dateUpdated`, `timeUpdated`
|
||||
|
||||
---
|
||||
|
||||
### 11. WorkCenter
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | WORKCENTER |
|
||||
| Destination Table | WorkCenter |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetWorkCenters |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F0006_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_BUSINESS_UNITS.sql`
|
||||
- Filtered: `JDE/SQL_GET_BUSINESS_UNITS_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `typeCode='WC'`, `dateUpdated`, `timeUpdated`
|
||||
|
||||
---
|
||||
|
||||
### 12. StatusCode
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | STATUSCODE |
|
||||
| Destination Table | StatusCode |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetStatusCodes |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F0005_VIEW |
|
||||
| **Connection** | **GIW (not JDE)** |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_STATUS_CODES.sql`
|
||||
- Filtered: `JDE/SQL_GET_STATUS_CODES_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated`
|
||||
|
||||
**Note:** This sync uses the GIW connection (Config.GIWCS) via DDTek.Oracle, not the standard JDE connection.
|
||||
|
||||
---
|
||||
|
||||
### 13. JdeUser
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | USER |
|
||||
| Destination Table | JdeUser |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetUsers |
|
||||
| Post Processing | None |
|
||||
| JDE Tables | JDESTAGE.F0101_VIEW, JDESTAGE.F0092_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_USERS.sql`
|
||||
|
||||
**Note:** No filtered query variant exists. The same query is used for both full and incremental syncs (filter parameters are passed but not used in query).
|
||||
|
||||
---
|
||||
|
||||
### 14. OrgHierarchy
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | ORGHIERARCHY |
|
||||
| Destination Table | OrgHierarchy |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetOrgHierarchy |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F30006_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_ORG_HIERARCHY.sql`
|
||||
- Filtered: `JDE/SQL_GET_ORG_HIERARCHY_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 15. RouteMaster
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | ROUTEMASTER |
|
||||
| Destination Table | RouteMaster |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetRouteMasters |
|
||||
| Post Processing | None |
|
||||
| JDE Table | JDESTAGE.F3003_VIEW |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | Yes | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_ROUTE_MASTER.sql`
|
||||
- Filtered: `JDE/SQL_GET_ROUTE_MASTER_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `dateUpdated`, `timeUpdated` (JDE date/time format)
|
||||
|
||||
---
|
||||
|
||||
### 16. FunctionCode
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | JDE |
|
||||
| Source Data | FUNCTIONCODE |
|
||||
| Destination Table | FunctionCode |
|
||||
| Data Fetch Function | Commons.Process.JDE.GetFunctionCodes |
|
||||
| Post Processing | None |
|
||||
| JDE Table | PRODDTA.F00192 (direct table, not view) |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 10080 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | Yes | Yes |
|
||||
| Hourly | Yes | 60 | Yes | Yes |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `JDE/SQL_GET_FUNCTION_CODES.sql`
|
||||
|
||||
**Note:** No filtered query variant. Always performs full reload (PrepurgeData=true for all schedules). Uses aggregation with LISTAGG to combine multi-row descriptions.
|
||||
|
||||
---
|
||||
|
||||
### 17. MisData
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Source System | CMS |
|
||||
| Source Data | MISDATA |
|
||||
| Destination Table | MisData |
|
||||
| Data Fetch Function | Commons.Process.CMS.GetMisData |
|
||||
| Post Processing | Commons.Process.LotFinderDB.PostProcessMisData |
|
||||
| CMS Schema | INFODBA |
|
||||
|
||||
**Schedule Configuration:**
|
||||
| Schedule | Enabled | Interval | Prepurge | ReIndex |
|
||||
|----------|---------|----------|----------|---------|
|
||||
| Mass | Yes | 100800 | Yes | Yes |
|
||||
| Daily | Yes | 1440 | No | No |
|
||||
| Hourly | **No** | 60 | No | No |
|
||||
|
||||
**Query Files:**
|
||||
- Full: `CMS/SQL_GET_MIS_DATA.sql`
|
||||
- Filtered: `CMS/SQL_GET_MIS_DATA_FILTERED.sql`
|
||||
|
||||
**Filter Parameters:** `lastUpdateDT` (standard DateTime)
|
||||
|
||||
**Note:**
|
||||
- Mass interval is 100800 minutes (~10 weeks), much longer than other syncs
|
||||
- Hourly sync is disabled
|
||||
- Has post-processing action for additional data transformation
|
||||
- Query timeout is extended (1200*50 = 60000 seconds)
|
||||
- ReleaseDate is converted to local time after fetch
|
||||
|
||||
---
|
||||
|
||||
## Archive Query Pattern
|
||||
|
||||
Archive syncs (#18-22) fetch historical data using UNION ALL from both current and archived schemas:
|
||||
|
||||
```sql
|
||||
SELECT ... FROM QADTA.F{table}
|
||||
UNION ALL
|
||||
SELECT ... FROM ARCDTAQA.F{table}
|
||||
```
|
||||
|
||||
**Query Files:** Located in `JDE_ARCHIVE/` folder.
|
||||
|
||||
**Note:** Archive syncs have `IsEnabled=true` in dsconfig but all schedule types have `Enabled=false`. They are configured for manual/on-demand execution only.
|
||||
|
||||
---
|
||||
|
||||
## Source Database Reference
|
||||
|
||||
### JDE Oracle Connection (Config.JDECS)
|
||||
- **Driver:** Oracle.ManagedDataAccess.Client
|
||||
- **Schemas Used:**
|
||||
- `JDESTAGE` - Views for current production data
|
||||
- `PRODDTA` - Direct table access (FunctionCode only)
|
||||
- `QADTA` - Current data for archive queries
|
||||
- `ARCDTAQA` - Archived historical data
|
||||
|
||||
### GIW Oracle Connection (Config.GIWCS)
|
||||
- **Driver:** DDTek.Oracle
|
||||
- **Used By:** StatusCode sync only
|
||||
- **Schema:** JDESTAGE
|
||||
|
||||
### CMS Oracle Connection (Config.CMSCS)
|
||||
- **Driver:** DDTek.Oracle
|
||||
- **Schema:** INFODBA
|
||||
- **Tables:** Complex 11-table join for MIS data
|
||||
|
||||
### JDE Date/Time Format
|
||||
JDE uses a special date/time format conversion:
|
||||
- Dates are converted via `ToJDEDate()` helper
|
||||
- Times are converted via `ToJDETime()` helper
|
||||
- Filter conditions use: `(date > :dateUpdated) OR (date = :dateUpdated AND time >= :timeUpdated)`
|
||||
|
||||
---
|
||||
|
||||
## Source Files Reference
|
||||
|
||||
| File Type | Location |
|
||||
|-----------|----------|
|
||||
| dsconfig JSON files | OLD/WorkerService/dsconfig/*.json |
|
||||
| JDE Source Queries | OLD/WorkerService/bin/UPDATER/JdeQueries/*.sql |
|
||||
| JDE Archive Queries | OLD/WorkerService/bin/UPDATER/JdeArchivalQueries/*.sql |
|
||||
| CMS Source Queries | OLD/DataModel/CmsQueries/*.sql |
|
||||
| C# Data Fetch Code | OLD/DataModel/Process/JDE.*.cs, CMS.*.cs |
|
||||
| Configuration | OLD/DataModel/Config.cs |
|
||||
| Query Repository | OLD/DataModel/Process/QueryRepository.cs |
|
||||
@@ -0,0 +1,12 @@
|
||||
-- Business Units Full Query (Branch, ProfitCenter, WorkCenter)
|
||||
-- Source: JDESTAGE.F0006_VIEW
|
||||
-- Destination: Branch (typeCode='BP'), ProfitCenter (typeCode='I3'), WorkCenter (typeCode='WC')
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
-- Parameter: :typeCode ('BP', 'I3', or 'WC')
|
||||
|
||||
SELECT TRIM(wc.COSTCENTER_MCMCU) AS Code,
|
||||
TRIM(wc.DESCRIPTION001_MCDL01) AS Description,
|
||||
wc.DATEUPDATED_MCUPMJ AS DateUpdated,
|
||||
wc.TIMELASTUPDATED_MCUPMT AS TimeUpdated
|
||||
FROM JDESTAGE.F0006_VIEW wc
|
||||
WHERE wc.COSTCENTERTYPE_MCSTYL = :typeCode
|
||||
@@ -0,0 +1,16 @@
|
||||
-- Business Units Filtered Query (Branch, ProfitCenter, WorkCenter)
|
||||
-- Source: JDESTAGE.F0006_VIEW
|
||||
-- Destination: Branch (typeCode='BP'), ProfitCenter (typeCode='I3'), WorkCenter (typeCode='WC')
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :typeCode ('BP', 'I3', or 'WC'), :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT TRIM(wc.COSTCENTER_MCMCU) AS Code,
|
||||
TRIM(wc.DESCRIPTION001_MCDL01) AS Description,
|
||||
wc.DATEUPDATED_MCUPMJ AS DateUpdated,
|
||||
wc.TIMELASTUPDATED_MCUPMT AS TimeUpdated
|
||||
FROM JDESTAGE.F0006_VIEW wc
|
||||
WHERE wc.COSTCENTERTYPE_MCSTYL = :typeCode AND
|
||||
(
|
||||
wc.DATEUPDATED_MCUPMJ > :dateUpdated OR
|
||||
(wc.DATEUPDATED_MCUPMJ = :dateUpdated AND wc.TIMELASTUPDATED_MCUPMT >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,21 @@
|
||||
-- FunctionCode Query (Full only - always full reload)
|
||||
-- Source: PRODDTA.F00192 (direct table, not view)
|
||||
-- Destination: FunctionCode
|
||||
-- Schedule: Mass/Daily/Hourly (all with PrepurgeData=true)
|
||||
-- Note: No filtered variant exists. Always performs full reload.
|
||||
-- Note: Uses LISTAGG to combine multi-row descriptions into single row per code.
|
||||
|
||||
SELECT Code,
|
||||
TRIM(LISTAGG(Description, ' ') WITHIN GROUP(ORDER BY Description) || CASE WHEN MAX(total_lengthb) > 4000 THEN '...' ELSE '' END) Description,
|
||||
SYSDATE AS LastUpdateDT
|
||||
FROM (
|
||||
SELECT TRIM(fc.CFKY) AS Code,
|
||||
TRIM(ASCIISTR(fc.CFDS80)) AS Description,
|
||||
SUM(LENGTHB(TRIM(fc.CFDS80))+1) OVER(PARTITION BY TRIM(fc.CFKY) ORDER BY TRIM(fc.CFDS80)) - 1 cumul_lengthb,
|
||||
SUM(LENGTHB(TRIM(fc.CFDS80))+1) OVER(PARTITION BY TRIM(fc.CFKY)) - 1 total_lengthb,
|
||||
COUNT(*) OVER(PARTITION BY TRIM(fc.CFKY)) num_values
|
||||
FROM PRODDTA.F00192 fc
|
||||
WHERE TRIM(fc.CFKY) IS NOT NULL
|
||||
)
|
||||
WHERE total_lengthb <= 4000 OR cumul_lengthb <= 4000 - length('...')
|
||||
GROUP BY Code
|
||||
@@ -0,0 +1,13 @@
|
||||
-- Item Full Query
|
||||
-- Source: JDESTAGE.F4101_VIEW
|
||||
-- Destination: Item
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT pn.IDENTIFIERSHORTITEM_IMITM AS ShortItemNumber,
|
||||
TRIM(pn.IDENTIFIER2NDITEM_IMLITM) AS ItemNumber,
|
||||
TRIM(pn.DESCRIPTIONLINE1_IMDSC1) AS Description,
|
||||
TRIM(pn.PURCHASINGREPORTCODE4_IMPRP4) AS PlanningFamily,
|
||||
pn.DATEUPDATED_IMUPMJ AS DateUpdated,
|
||||
pn.TIMEOFDAY_IMTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4101_VIEW pn
|
||||
WHERE TRIM(pn.IDENTIFIER2NDITEM_IMLITM) IS NOT NULL
|
||||
@@ -0,0 +1,18 @@
|
||||
-- Item Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F4101_VIEW
|
||||
-- Destination: Item
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT pn.IDENTIFIERSHORTITEM_IMITM AS ShortItemNumber,
|
||||
TRIM(pn.IDENTIFIER2NDITEM_IMLITM) AS ItemNumber,
|
||||
TRIM(pn.DESCRIPTIONLINE1_IMDSC1) AS Description,
|
||||
TRIM(pn.PURCHASINGREPORTCODE4_IMPRP4) AS PlanningFamily,
|
||||
pn.DATEUPDATED_IMUPMJ AS DateUpdated,
|
||||
pn.TIMEOFDAY_IMTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4101_VIEW pn
|
||||
WHERE TRIM(pn.IDENTIFIER2NDITEM_IMLITM) IS NOT NULL AND
|
||||
(
|
||||
pn.DATEUPDATED_IMUPMJ > :dateUpdated OR
|
||||
(pn.DATEUPDATED_IMUPMJ = :dateUpdated AND pn.TIMEOFDAY_IMTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,15 @@
|
||||
-- Lot Full Query
|
||||
-- Source: JDESTAGE.F4108_VIEW
|
||||
-- Destination: Lot
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT TRIM(lot.LOT_IOLOTN) AS LotNumber,
|
||||
TRIM(lot.COSTCENTER_IOMCU) AS BranchCode,
|
||||
lot.IDENTIFIERSHORTITEM_IOITM AS ShortItemNumber,
|
||||
TRIM(lot.IDENTIFIER2NDITEM_IOLITM) AS ItemNumber,
|
||||
lot.PRIMARYLASTVENDORNO_IOVEND AS SupplierCode,
|
||||
lot.DATEUPDATED_IOUPMJ AS DateUpdated,
|
||||
lot.TIMEOFDAY_IOTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4108_VIEW lot
|
||||
WHERE TRIM(lot.LOT_IOLOTN) IS NOT NULL AND
|
||||
TRIM(lot.COSTCENTER_IOMCU) IS NOT NULL
|
||||
@@ -0,0 +1,20 @@
|
||||
-- Lot Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F4108_VIEW
|
||||
-- Destination: Lot
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT TRIM(lot.LOT_IOLOTN) AS LotNumber,
|
||||
TRIM(lot.COSTCENTER_IOMCU) AS BranchCode,
|
||||
lot.IDENTIFIERSHORTITEM_IOITM AS ShortItemNumber,
|
||||
TRIM(lot.IDENTIFIER2NDITEM_IOLITM) AS ItemNumber,
|
||||
lot.PRIMARYLASTVENDORNO_IOVEND AS SupplierCode,
|
||||
lot.DATEUPDATED_IOUPMJ AS DateUpdated,
|
||||
lot.TIMEOFDAY_IOTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4108_VIEW lot
|
||||
WHERE TRIM(lot.LOT_IOLOTN) IS NOT NULL AND
|
||||
TRIM(lot.COSTCENTER_IOMCU) IS NOT NULL AND
|
||||
(
|
||||
lot.DATEUPDATED_IOUPMJ > :dateUpdated OR
|
||||
(lot.DATEUPDATED_IOUPMJ = :dateUpdated AND lot.TIMEOFDAY_IOTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,16 @@
|
||||
-- LotUsage Full Query
|
||||
-- Source: JDESTAGE.F4111_VIEW
|
||||
-- Destination: LotUsage_Curr
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT lu.UNIQUEKEYIDINTERNAL_ILUKID AS UniqueID,
|
||||
lu.DOCUMENTORDERINVOICEE_ILDOCO AS WorkOrderNumber,
|
||||
TRIM(lu.LOT_ILLOTN) AS LotNumber,
|
||||
TRIM(lu.COSTCENTER_ILMCU) AS BranchCode,
|
||||
lu.IDENTIFIERSHORTITEM_ILITM AS ShortItemNumber,
|
||||
lu.QUANTITYTRANSACTION_ILTRQT AS Quantity,
|
||||
lu.DATETRANSACTIONJULIAN_ILTRDJ AS DateUpdated,
|
||||
lu.TIMEOFDAY_ILTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4111_VIEW lu
|
||||
WHERE lu.DOCUMENTTYPE_ILDCT = 'IM' AND
|
||||
TRIM(lu.LOT_ILLOTN) IS NOT NULL
|
||||
@@ -0,0 +1,21 @@
|
||||
-- LotUsage Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F4111_VIEW
|
||||
-- Destination: LotUsage_Curr
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT lu.UNIQUEKEYIDINTERNAL_ILUKID AS UniqueID,
|
||||
lu.DOCUMENTORDERINVOICEE_ILDOCO AS WorkOrderNumber,
|
||||
TRIM(lu.LOT_ILLOTN) AS LotNumber,
|
||||
TRIM(lu.COSTCENTER_ILMCU) AS BranchCode,
|
||||
lu.IDENTIFIERSHORTITEM_ILITM AS ShortItemNumber,
|
||||
lu.QUANTITYTRANSACTION_ILTRQT AS Quantity,
|
||||
lu.DATETRANSACTIONJULIAN_ILTRDJ AS DateUpdated,
|
||||
lu.TIMEOFDAY_ILTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4111_VIEW lu
|
||||
WHERE lu.DOCUMENTTYPE_ILDCT = 'IM' AND
|
||||
TRIM(lu.LOT_ILLOTN) IS NOT NULL AND
|
||||
(
|
||||
lu.DATETRANSACTIONJULIAN_ILTRDJ > :dateUpdated OR
|
||||
(lu.DATETRANSACTIONJULIAN_ILTRDJ = :dateUpdated AND lu.TIMEOFDAY_ILTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,13 @@
|
||||
-- OrgHierarchy Full Query
|
||||
-- Source: JDESTAGE.F30006_VIEW
|
||||
-- Destination: OrgHierarchy
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT TRIM(oh.DISPATCHGROUP_IWMCUW) AS ProfitCenterCode,
|
||||
TRIM(oh.COSTCENTER_IWMCU) AS WorkCenterCode,
|
||||
TRIM(oh.COSTCENTERALT_IWMMCU) AS BranchCode,
|
||||
oh.DATEUPDATED_IWUPMJ AS DateUpdated,
|
||||
oh.TIMEOFDAY_IWTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F30006_VIEW oh
|
||||
WHERE TRIM(oh.COSTCENTER_IWMCU) IS NOT NULL AND
|
||||
TRIM(oh.COSTCENTERALT_IWMMCU) IS NOT NULL
|
||||
@@ -0,0 +1,18 @@
|
||||
-- OrgHierarchy Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F30006_VIEW
|
||||
-- Destination: OrgHierarchy
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT TRIM(oh.DISPATCHGROUP_IWMCUW) AS ProfitCenterCode,
|
||||
TRIM(oh.COSTCENTER_IWMCU) AS WorkCenterCode,
|
||||
TRIM(oh.COSTCENTERALT_IWMMCU) AS BranchCode,
|
||||
oh.DATEUPDATED_IWUPMJ AS DateUpdated,
|
||||
oh.TIMEOFDAY_IWTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F30006_VIEW oh
|
||||
WHERE TRIM(oh.COSTCENTER_IWMCU) IS NOT NULL AND
|
||||
TRIM(oh.COSTCENTERALT_IWMMCU) IS NOT NULL AND
|
||||
(
|
||||
oh.DATEUPDATED_IWUPMJ > :dateUpdated OR
|
||||
(oh.DATEUPDATED_IWUPMJ = :dateUpdated AND oh.TIMEOFDAY_IWTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,17 @@
|
||||
-- RouteMaster Full Query
|
||||
-- Source: JDESTAGE.F3003_VIEW
|
||||
-- Destination: RouteMaster
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT TRIM(route_master.COSTCENTERALT_IRMMCU) AS BranchCode,
|
||||
TRIM(route_master.ITEMNUMBER2NDKIT_IRKITL) AS ItemNumber,
|
||||
TRIM(route_master.TYPEROUTING_IRTRT) AS RoutingType,
|
||||
route_master.SEQUENCENOOPERATIONS_IROPSQ AS SequenceNumber,
|
||||
TRIM(route_master.USERRESERVEDREFERENCE_IRURRF) AS FunctionCode,
|
||||
TRIM(route_master.COSTCENTER_IRMCU) AS WorkCenterCode,
|
||||
route_master.EFFECTIVEFROMDATE_IREFFF AS StartDate,
|
||||
route_master.EFFECTIVETHRUDATE_IREFFT AS EndDate,
|
||||
route_master.DATEUPDATED_IRUPMJ AS DateUpdated,
|
||||
route_master.TIMEOFDAY_IRTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3003_VIEW route_master
|
||||
WHERE TRIM(route_master.ITEMNUMBER2NDKIT_IRKITL) IS NOT NULL
|
||||
@@ -0,0 +1,22 @@
|
||||
-- RouteMaster Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F3003_VIEW
|
||||
-- Destination: RouteMaster
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT TRIM(route_master.COSTCENTERALT_IRMMCU) AS BranchCode,
|
||||
TRIM(route_master.ITEMNUMBER2NDKIT_IRKITL) AS ItemNumber,
|
||||
TRIM(route_master.TYPEROUTING_IRTRT) AS RoutingType,
|
||||
route_master.SEQUENCENOOPERATIONS_IROPSQ AS SequenceNumber,
|
||||
TRIM(route_master.USERRESERVEDREFERENCE_IRURRF) AS FunctionCode,
|
||||
TRIM(route_master.COSTCENTER_IRMCU) AS WorkCenterCode,
|
||||
route_master.EFFECTIVEFROMDATE_IREFFF AS StartDate,
|
||||
route_master.EFFECTIVETHRUDATE_IREFFT AS EndDate,
|
||||
route_master.DATEUPDATED_IRUPMJ AS DateUpdated,
|
||||
route_master.TIMEOFDAY_IRTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3003_VIEW route_master
|
||||
WHERE TRIM(route_master.ITEMNUMBER2NDKIT_IRKITL) IS NOT NULL AND
|
||||
(
|
||||
route_master.DATEUPDATED_IRUPMJ > :dateUpdated OR
|
||||
(route_master.DATEUPDATED_IRUPMJ = :dateUpdated AND route_master.TIMEOFDAY_IRTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,14 @@
|
||||
-- StatusCode Full Query
|
||||
-- Source: JDESTAGE.F0005_VIEW
|
||||
-- Destination: StatusCode
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
-- Note: Uses GIW connection (Config.GIWCS), not JDE connection
|
||||
|
||||
SELECT TRIM(sc.USERDEFINEDCODE_DRKY) AS CODE,
|
||||
TRIM(sc.DESCRIPTION001_DRDL01) AS Description,
|
||||
sc.DATEUPDATED_DRUPMJ AS DateUpdated,
|
||||
sc.TIMELASTUPDATED_DRUPMT AS TimeUpdated
|
||||
FROM JDESTAGE.F0005_VIEW sc
|
||||
WHERE TRIM(sc.PRODUCTCODE_DRSY) = '00' AND
|
||||
sc.USERDEFINEDCODES_DRRT = 'SS' AND
|
||||
TRIM(sc.USERDEFINEDCODE_DRKY) IS NOT NULL
|
||||
@@ -0,0 +1,19 @@
|
||||
-- StatusCode Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F0005_VIEW
|
||||
-- Destination: StatusCode
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated, :timeUpdated
|
||||
-- Note: Uses GIW connection (Config.GIWCS), not JDE connection
|
||||
|
||||
SELECT TRIM(sc.USERDEFINEDCODE_DRKY) AS CODE,
|
||||
TRIM(sc.DESCRIPTION001_DRDL01) AS Description,
|
||||
sc.DATEUPDATED_DRUPMJ AS DateUpdated,
|
||||
sc.TIMELASTUPDATED_DRUPMT AS TimeUpdated
|
||||
FROM JDESTAGE.F0005_VIEW sc
|
||||
WHERE TRIM(sc.PRODUCTCODE_DRSY) = '00' AND
|
||||
sc.USERDEFINEDCODES_DRRT = 'SS' AND
|
||||
TRIM(sc.USERDEFINEDCODE_DRKY) IS NOT NULL AND
|
||||
(
|
||||
sc.DATEUPDATED_DRUPMJ > :dateUpdated OR
|
||||
(sc.DATEUPDATED_DRUPMJ = :dateUpdated AND sc.TIMELASTUPDATED_DRUPMT >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,24 @@
|
||||
-- JdeUser Query (Full only - no filtered variant)
|
||||
-- Source: JDESTAGE.F0101_VIEW, JDESTAGE.F0092_VIEW
|
||||
-- Destination: JdeUser
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
-- Note: Same query used for both full and incremental (filter params passed but not used)
|
||||
|
||||
WITH USER_CTE AS (
|
||||
SELECT ab.ADDRESSNUMBER_ABAN8 AS AddressNumber,
|
||||
TRIM(pro.USERID_ULUSER) AS UserID,
|
||||
TRIM(ab.NAMEALPHA_ABALPH) AS FullName,
|
||||
ab.DATEUPDATED_ABUPMJ AS DateUpdated,
|
||||
ab.TIMELASTUPDATED_ABUPMT AS TimeUpdated,
|
||||
ROW_NUMBER() OVER (PARTITION BY ab.ADDRESSNUMBER_ABAN8 ORDER BY ab.DATEUPDATED_ABUPMJ DESC, ab.TIMELASTUPDATED_ABUPMT DESC) RN
|
||||
FROM JDESTAGE.F0101_VIEW ab LEFT OUTER JOIN
|
||||
JDESTAGE.F0092_VIEW pro ON (ab.ADDRESSNUMBER_ABAN8 = pro.ADDRESSNUMBER_ULAN8)
|
||||
WHERE ab.ADDRESSTYPEEMPLOYEE_ABATE = 'Y'
|
||||
)
|
||||
SELECT AddressNumber,
|
||||
UserID,
|
||||
FullName,
|
||||
DateUpdated,
|
||||
TimeUpdated
|
||||
FROM USER_CTE
|
||||
WHERE RN = 1
|
||||
@@ -0,0 +1,23 @@
|
||||
-- WorkOrder Full Query
|
||||
-- Source: JDESTAGE.F4801_VIEW
|
||||
-- Destination: WorkOrder_Curr
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT wo.DOCUMENTORDERINVOICEE_WADOCO AS WorkOrderNumber,
|
||||
TRIM(wo.COSTCENTERALT_WAMMCU) AS BranchCode,
|
||||
TRIM(wo.LOT_WALOTN) AS LotNumber,
|
||||
TRIM(wo.IDENTIFIER2NDITEM_WALITM) AS ItemNumber,
|
||||
wo.IDENTIFIERSHORTITEM_WAITM AS ShortItemNumber,
|
||||
TRIM(wo.PARENTWONUMBER_WAPARS) AS ParentWorkOrderNumber,
|
||||
wo.UNITSTRANSACTIONQTY_WAUORG AS OrderQuantity,
|
||||
wo.UNITSQUANBACKORHELD_WASOBK AS HeldQuantity,
|
||||
wo.UNITSQUANTITYCANCELED_WASOCN AS ScrappedQuantity,
|
||||
wo.UNITSQUANTITYSHIPPED_WASOQS AS ShippedQuantity,
|
||||
TRIM(wo.STATUSCODEWO_WASRST) AS StatusCode,
|
||||
wo.DATESTATUSCHANGED_WADCG AS StatusCodeUpdateDT,
|
||||
wo.DATETRANSACTIONJULIAN_WATRDJ AS IssueDate,
|
||||
wo.DATESTART_WASTRT AS StartDate,
|
||||
TRIM(wo.TYPEROUTING_WATRT) AS RoutingType,
|
||||
wo.DATEUPDATED_WAUPMJ AS DateUpdated,
|
||||
wo.TIMEOFDAY_WATDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4801_VIEW wo
|
||||
@@ -0,0 +1,28 @@
|
||||
-- WorkOrder Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F4801_VIEW
|
||||
-- Destination: WorkOrder_Curr
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT wo.DOCUMENTORDERINVOICEE_WADOCO AS WorkOrderNumber,
|
||||
TRIM(wo.COSTCENTERALT_WAMMCU) AS BranchCode,
|
||||
TRIM(wo.LOT_WALOTN) AS LotNumber,
|
||||
TRIM(wo.IDENTIFIER2NDITEM_WALITM) AS ItemNumber,
|
||||
wo.IDENTIFIERSHORTITEM_WAITM AS ShortItemNumber,
|
||||
TRIM(wo.PARENTWONUMBER_WAPARS) AS ParentWorkOrderNumber,
|
||||
wo.UNITSTRANSACTIONQTY_WAUORG AS OrderQuantity,
|
||||
wo.UNITSQUANBACKORHELD_WASOBK AS HeldQuantity,
|
||||
wo.UNITSQUANTITYCANCELED_WASOCN AS ScrappedQuantity,
|
||||
wo.UNITSQUANTITYSHIPPED_WASOQS AS ShippedQuantity,
|
||||
TRIM(wo.STATUSCODEWO_WASRST) AS StatusCode,
|
||||
wo.DATESTATUSCHANGED_WADCG AS StatusCodeUpdateDT,
|
||||
wo.DATETRANSACTIONJULIAN_WATRDJ AS IssueDate,
|
||||
wo.DATESTART_WASTRT AS StartDate,
|
||||
TRIM(wo.TYPEROUTING_WATRT) AS RoutingType,
|
||||
wo.DATEUPDATED_WAUPMJ AS DateUpdated,
|
||||
wo.TIMEOFDAY_WATDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F4801_VIEW wo
|
||||
WHERE (
|
||||
wo.DATEUPDATED_WAUPMJ > :dateUpdated OR
|
||||
(wo.DATEUPDATED_WAUPMJ = :dateUpdated AND wo.TIMEOFDAY_WATDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,15 @@
|
||||
-- WorkOrderComponent Full Query
|
||||
-- Source: JDESTAGE.F3111_VIEW
|
||||
-- Destination: WorkOrderComponent_Curr
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT woc.UNIQUEKEYIDINTERNAL_WMUKID AS UniqueID,
|
||||
woc.DOCUMENTORDERINVOICEE_WMDOCO AS WorkOrderNumber,
|
||||
TRIM(woc.LOT_WMLOTN) AS LotNumber,
|
||||
TRIM(woc.BRANCHCOMPONENT_WMCMCU) AS BranchCode,
|
||||
woc.COMPONENTITEMNOSHORT_WMCPIT AS ShortItemNumber,
|
||||
woc.QUANTITYTRANSACTION_WMTRQT AS Quantity,
|
||||
woc.DATEUPDATED_WMUPMJ AS DateUpdated,
|
||||
woc.TIMEOFDAY_WMTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3111_VIEW woc
|
||||
WHERE TRIM(woc.LOT_WMLOTN) IS NOT NULL
|
||||
@@ -0,0 +1,20 @@
|
||||
-- WorkOrderComponent Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F3111_VIEW
|
||||
-- Destination: WorkOrderComponent_Curr
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT woc.UNIQUEKEYIDINTERNAL_WMUKID AS UniqueID,
|
||||
woc.DOCUMENTORDERINVOICEE_WMDOCO AS WorkOrderNumber,
|
||||
TRIM(woc.LOT_WMLOTN) AS LotNumber,
|
||||
TRIM(woc.BRANCHCOMPONENT_WMCMCU) AS BranchCode,
|
||||
woc.COMPONENTITEMNOSHORT_WMCPIT AS ShortItemNumber,
|
||||
woc.QUANTITYTRANSACTION_WMTRQT AS Quantity,
|
||||
woc.DATEUPDATED_WMUPMJ AS DateUpdated,
|
||||
woc.TIMEOFDAY_WMTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3111_VIEW woc
|
||||
WHERE TRIM(woc.LOT_WMLOTN) IS NOT NULL AND
|
||||
(
|
||||
woc.DATEUPDATED_WMUPMJ > :dateUpdated OR
|
||||
(woc.DATEUPDATED_WMUPMJ = :dateUpdated AND woc.TIMEOFDAY_WMTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,24 @@
|
||||
-- WorkOrderRouting Full Query
|
||||
-- Source: JDESTAGE.F3112Z1_VIEW
|
||||
-- Destination: WorkOrderRouting
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT TRIM(woz.EDIUSERID_SZEDUS) AS UserID,
|
||||
TRIM(woz.EDIBATCHNUMBER_SZEDBT) AS BatchNumber,
|
||||
TRIM(woz.EDITRANSACTNUMBER_SZEDTN) AS TransactionNumber,
|
||||
woz.EDILINENUMBER_SZEDLN AS LineNumber,
|
||||
woz.SEQUENCENOOPERATIONS_SZOPSQ AS StepNumber,
|
||||
TRIM(woz.COSTCENTER_SZMCU) AS WorkCenterCode,
|
||||
woz.DOCUMENTORDERINVOICEE_SZDOCO AS WorkOrderNumber,
|
||||
TRIM(woz.TYPEROUTING_SZTRT) AS RoutingType,
|
||||
TRIM(woz.COSTCENTERALT_SZMMCU) AS BranchCode,
|
||||
TRIM(woz.DESCRIPTIONLINE1_SZDSC1) AS StepDescription,
|
||||
TRIM(woz.USERRESERVEDREFERENCE_SZURRF) AS FunctionCode,
|
||||
woz.DATETRANSACTIONJULIAN_SZTRDJ AS TransactionDate,
|
||||
woz.DATEUPDATED_SZUPMJ AS DateUpdated,
|
||||
woz.TIMEOFDAY_SZTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3112Z1_VIEW woz
|
||||
WHERE woz.TYPETRANSACTION_SZTYTN = 'JDERTG' AND
|
||||
woz.DIRECTIONINDICATOR_SZDRIN = '2' AND
|
||||
woz.TRANSACTIONACTION_SZTNAC = '02' AND
|
||||
woz.PROGRAMID_SZPID = 'ER31410'
|
||||
@@ -0,0 +1,29 @@
|
||||
-- WorkOrderRouting Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F3112Z1_VIEW
|
||||
-- Destination: WorkOrderRouting
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT TRIM(woz.EDIUSERID_SZEDUS) AS UserID,
|
||||
TRIM(woz.EDIBATCHNUMBER_SZEDBT) AS BatchNumber,
|
||||
TRIM(woz.EDITRANSACTNUMBER_SZEDTN) AS TransactionNumber,
|
||||
woz.EDILINENUMBER_SZEDLN AS LineNumber,
|
||||
woz.SEQUENCENOOPERATIONS_SZOPSQ AS StepNumber,
|
||||
TRIM(woz.COSTCENTER_SZMCU) AS WorkCenterCode,
|
||||
woz.DOCUMENTORDERINVOICEE_SZDOCO AS WorkOrderNumber,
|
||||
TRIM(woz.TYPEROUTING_SZTRT) AS RoutingType,
|
||||
TRIM(woz.COSTCENTERALT_SZMMCU) AS BranchCode,
|
||||
TRIM(woz.DESCRIPTIONLINE1_SZDSC1) AS StepDescription,
|
||||
TRIM(woz.USERRESERVEDREFERENCE_SZURRF) AS FunctionCode,
|
||||
woz.DATETRANSACTIONJULIAN_SZTRDJ AS TransactionDate,
|
||||
woz.DATEUPDATED_SZUPMJ AS DateUpdated,
|
||||
woz.TIMEOFDAY_SZTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3112Z1_VIEW woz
|
||||
WHERE woz.TYPETRANSACTION_SZTYTN = 'JDERTG' AND
|
||||
woz.DIRECTIONINDICATOR_SZDRIN = '2' AND
|
||||
woz.TRANSACTIONACTION_SZTNAC = '02' AND
|
||||
woz.PROGRAMID_SZPID = 'ER31410' AND
|
||||
(
|
||||
woz.DATEUPDATED_SZUPMJ > :dateUpdated OR
|
||||
(woz.DATEUPDATED_SZUPMJ = :dateUpdated AND woz.TIMEOFDAY_SZTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,19 @@
|
||||
-- WorkOrderStep Full Query
|
||||
-- Source: JDESTAGE.F3112_VIEW, JDESTAGE.F00192_VIEW
|
||||
-- Destination: WorkOrderStep_Curr
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT wos.DOCUMENTORDERINVOICEE_WLDOCO AS WorkOrderNumber,
|
||||
TRIM(wos.COSTCENTERALT_WLMMCU) AS BranchCode,
|
||||
TRIM(wos.COSTCENTER_WLMCU) AS WorkCenterCode,
|
||||
wos.SEQUENCENOOPERATIONS_WLOPSQ AS StepNumber,
|
||||
TRIM(wos.DESCRIPTIONLINE1_WLDSC1) AS StepDescription,
|
||||
TRIM(mes.DESCRIPT80CHARACTERS_CFDS80) AS FunctionOperationDescription,
|
||||
wos.TYPEOPERATIONCODE_WLOPSC AS StepTypeCode,
|
||||
CASE wos.DATESTART_WLSTRT WHEN TO_DATE('1900-01-01', 'yyyy-MM-dd') THEN NULL ELSE wos.DATESTART_WLSTRT END AS StartDT,
|
||||
CASE wos.DATECOMPLETION_WLSTRX WHEN TO_DATE('1900-01-01', 'yyyy-MM-dd') THEN NULL ELSE wos.DATECOMPLETION_WLSTRX END AS EndDT,
|
||||
TRIM(wos.USERRESERVEDREFERENCE_WLURRF) AS FunctionCode,
|
||||
wos.DATEUPDATED_WLUPMJ AS DateUpdated,
|
||||
wos.TIMEOFDAY_WLTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3112_VIEW wos LEFT OUTER JOIN
|
||||
JDESTAGE.F00192_VIEW mes ON (wos.USERRESERVEDREFERENCE_WLURRF = mes.USERDEFINEDCODE_CFKY)
|
||||
@@ -0,0 +1,24 @@
|
||||
-- WorkOrderStep Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F3112_VIEW, JDESTAGE.F00192_VIEW
|
||||
-- Destination: WorkOrderStep_Curr
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT wos.DOCUMENTORDERINVOICEE_WLDOCO AS WorkOrderNumber,
|
||||
TRIM(wos.COSTCENTERALT_WLMMCU) AS BranchCode,
|
||||
TRIM(wos.COSTCENTER_WLMCU) AS WorkCenterCode,
|
||||
wos.SEQUENCENOOPERATIONS_WLOPSQ AS StepNumber,
|
||||
TRIM(wos.DESCRIPTIONLINE1_WLDSC1) AS StepDescription,
|
||||
TRIM(mes.DESCRIPT80CHARACTERS_CFDS80) AS FunctionOperationDescription,
|
||||
wos.TYPEOPERATIONCODE_WLOPSC AS StepTypeCode,
|
||||
CASE wos.DATESTART_WLSTRT WHEN TO_DATE('1900-01-01', 'yyyy-MM-dd') THEN NULL ELSE wos.DATESTART_WLSTRT END AS StartDT,
|
||||
CASE wos.DATECOMPLETION_WLSTRX WHEN TO_DATE('1900-01-01', 'yyyy-MM-dd') THEN NULL ELSE wos.DATECOMPLETION_WLSTRX END AS EndDT,
|
||||
TRIM(wos.USERRESERVEDREFERENCE_WLURRF) AS FunctionCode,
|
||||
wos.DATEUPDATED_WLUPMJ AS DateUpdated,
|
||||
wos.TIMEOFDAY_WLTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F3112_VIEW wos LEFT OUTER JOIN
|
||||
JDESTAGE.F00192_VIEW mes ON (wos.USERRESERVEDREFERENCE_WLURRF = mes.USERDEFINEDCODE_CFKY)
|
||||
WHERE (
|
||||
wos.DATEUPDATED_WLUPMJ > :dateUpdated OR
|
||||
(wos.DATEUPDATED_WLUPMJ = :dateUpdated AND wos.TIMEOFDAY_WLTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,14 @@
|
||||
-- WorkOrderTime Full Query
|
||||
-- Source: JDESTAGE.F31122_VIEW
|
||||
-- Destination: WorkOrderTime_Curr
|
||||
-- Schedule: Mass/Daily/Hourly
|
||||
|
||||
SELECT wot.UNIQUEKEYIDINTERNAL_WTUKID AS UniqueID,
|
||||
TRIM(wot.COSTCENTERALT_WTMMCU) AS BranchCode,
|
||||
wot.DOCUMENTORDERINVOICEE_WTDOCO AS WorkOrderNumber,
|
||||
wot.SEQUENCENOOPERATIONS_WTOPSQ AS StepNumber,
|
||||
wot.ADDRESSNUMBER_WTAN8 AS AddressNumber,
|
||||
wot.DTFORGLANDVOUCH1_WTDGL AS GlDate,
|
||||
wot.DATEUPDATED_WTUPMJ AS DateUpdated,
|
||||
wot.TIMEOFDAY_WTTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F31122_VIEW wot
|
||||
@@ -0,0 +1,19 @@
|
||||
-- WorkOrderTime Filtered Query (Incremental)
|
||||
-- Source: JDESTAGE.F31122_VIEW
|
||||
-- Destination: WorkOrderTime_Curr
|
||||
-- Schedule: Daily/Hourly (incremental merge)
|
||||
-- Parameters: :dateUpdated (JDE date), :timeUpdated (JDE time)
|
||||
|
||||
SELECT wot.UNIQUEKEYIDINTERNAL_WTUKID AS UniqueID,
|
||||
TRIM(wot.COSTCENTERALT_WTMMCU) AS BranchCode,
|
||||
wot.DOCUMENTORDERINVOICEE_WTDOCO AS WorkOrderNumber,
|
||||
wot.SEQUENCENOOPERATIONS_WTOPSQ AS StepNumber,
|
||||
wot.ADDRESSNUMBER_WTAN8 AS AddressNumber,
|
||||
wot.DTFORGLANDVOUCH1_WTDGL AS GlDate,
|
||||
wot.DATEUPDATED_WTUPMJ AS DateUpdated,
|
||||
wot.TIMEOFDAY_WTTDAY AS TimeUpdated
|
||||
FROM JDESTAGE.F31122_VIEW wot
|
||||
WHERE (
|
||||
wot.DATEUPDATED_WTUPMJ > :dateUpdated OR
|
||||
(wot.DATEUPDATED_WTUPMJ = :dateUpdated AND wot.TIMEOFDAY_WTTDAY >= :timeUpdated)
|
||||
)
|
||||
@@ -0,0 +1,30 @@
|
||||
-- LotUsage Archive Query
|
||||
-- Source: QADTA.F4111 (current) + ARCDTAQA.F4111 (archived)
|
||||
-- Used by: GetLotUsagesArchive() - on-demand historical retrieval
|
||||
-- Note: Not scheduled, used for historical lookups
|
||||
|
||||
SELECT lu.ILUKID AS UniqueID,
|
||||
lu.ILDOCO AS WorkOrderNumber,
|
||||
TRIM(lu.ILLOTN) AS LotNumber,
|
||||
TRIM(lu.ILMCU) AS BranchCode,
|
||||
lu.ILITM AS ShortItemNumber,
|
||||
lu.ILTRQT AS Quantity,
|
||||
lu.ILTRDJ AS DateUpdated,
|
||||
lu.ILTDAY AS TimeUpdated
|
||||
FROM QADTA.F4111 lu
|
||||
WHERE lu.ILDCT = 'IM' AND
|
||||
TRIM(lu.ILLOTN) IS NOT NULL
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT lu.ILUKID AS UniqueID,
|
||||
lu.ILDOCO AS WorkOrderNumber,
|
||||
TRIM(lu.ILLOTN) AS LotNumber,
|
||||
TRIM(lu.ILMCU) AS BranchCode,
|
||||
lu.ILITM AS ShortItemNumber,
|
||||
lu.ILTRQT AS Quantity,
|
||||
lu.ILTRDJ AS DateUpdated,
|
||||
lu.ILTDAY AS TimeUpdated
|
||||
FROM ARCDTAQA.F4111 lu
|
||||
WHERE lu.ILDCT = 'IM' AND
|
||||
TRIM(lu.ILLOTN) IS NOT NULL
|
||||
@@ -0,0 +1,44 @@
|
||||
-- WorkOrder Archive Query
|
||||
-- Source: QADTA.F4801 (current) + ARCDTAQA.F4801 (archived)
|
||||
-- Used by: GetWorkOrdersArchive() - on-demand historical retrieval
|
||||
-- Note: Not scheduled, used for historical lookups
|
||||
|
||||
SELECT wo.WADOCO AS WorkOrderNumber,
|
||||
TRIM(wo.WAMMCU) AS BranchCode,
|
||||
TRIM(wo.WALOTN) AS LotNumber,
|
||||
TRIM(wo.WALITM) AS ItemNumber,
|
||||
wo.WAITM AS ShortItemNumber,
|
||||
TRIM(wo.WAPARS) AS ParentWorkOrderNumber,
|
||||
wo.WAUORG AS OrderQuantity,
|
||||
wo.WASOBK AS HeldQuantity,
|
||||
wo.WASOCN AS ScrappedQuantity,
|
||||
wo.WASOQS AS ShippedQuantity,
|
||||
TRIM(wo.WASRST) AS StatusCode,
|
||||
wo.WADCG AS StatusCodeUpdateDT,
|
||||
wo.WATRDJ AS IssueDate,
|
||||
wo.WASTRT AS StartDate,
|
||||
TRIM(wo.WATRT) AS RoutingType,
|
||||
wo.WAUPMJ AS DateUpdated,
|
||||
wo.WATDAY AS TimeUpdated
|
||||
FROM QADTA.F4801 wo
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT wo.WADOCO AS WorkOrderNumber,
|
||||
TRIM(wo.WAMMCU) AS BranchCode,
|
||||
TRIM(wo.WALOTN) AS LotNumber,
|
||||
TRIM(wo.WALITM) AS ItemNumber,
|
||||
wo.WAITM AS ShortItemNumber,
|
||||
TRIM(wo.WAPARS) AS ParentWorkOrderNumber,
|
||||
wo.WAUORG AS OrderQuantity,
|
||||
wo.WASOBK AS HeldQuantity,
|
||||
wo.WASOCN AS ScrappedQuantity,
|
||||
wo.WASOQS AS ShippedQuantity,
|
||||
TRIM(wo.WASRST) AS StatusCode,
|
||||
wo.WADCG AS StatusCodeUpdateDT,
|
||||
wo.WATRDJ AS IssueDate,
|
||||
wo.WASTRT AS StartDate,
|
||||
TRIM(wo.WATRT) AS RoutingType,
|
||||
wo.WAUPMJ AS DateUpdated,
|
||||
wo.WATDAY AS TimeUpdated
|
||||
FROM ARCDTAQA.F4801 wo
|
||||
@@ -0,0 +1,28 @@
|
||||
-- WorkOrderComponent Archive Query
|
||||
-- Source: QADTA.F3111 (current) + ARCDTAQA.F3111 (archived)
|
||||
-- Used by: GetWorkOrderComponentsArchive() - on-demand historical retrieval
|
||||
-- Note: Not scheduled, used for historical lookups
|
||||
|
||||
SELECT woc.WMUKID AS UniqueID,
|
||||
woc.WMDOCO AS WorkOrderNumber,
|
||||
TRIM(woc.WMLOTN) AS LotNumber,
|
||||
TRIM(woc.WMCMCU) AS BranchCode,
|
||||
woc.WMCPIT AS ShortItemNumber,
|
||||
woc.WMTRQT AS Quantity,
|
||||
woc.WMUPMJ AS DateUpdated,
|
||||
woc.WMTDAY AS TimeUpdated
|
||||
FROM QADTA.F3111 woc
|
||||
WHERE TRIM(woc.WMLOTN) IS NOT NULL
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT woc.WMUKID AS UniqueID,
|
||||
woc.WMDOCO AS WorkOrderNumber,
|
||||
TRIM(woc.WMLOTN) AS LotNumber,
|
||||
TRIM(woc.WMCMCU) AS BranchCode,
|
||||
woc.WMCPIT AS ShortItemNumber,
|
||||
woc.WMTRQT AS Quantity,
|
||||
woc.WMUPMJ AS DateUpdated,
|
||||
woc.WMTDAY AS TimeUpdated
|
||||
FROM ARCDTAQA.F3111 woc
|
||||
WHERE TRIM(woc.WMLOTN) IS NOT NULL
|
||||
@@ -0,0 +1,37 @@
|
||||
-- WorkOrderStep Archive Query
|
||||
-- Source: QADTA.F3112 + QADTA.F00192 (current) + ARCDTAQA.F3112 (archived)
|
||||
-- Used by: GetWorkOrderStepsArchive() - on-demand historical retrieval
|
||||
-- Note: Not scheduled, used for historical lookups
|
||||
-- Note: Function code lookup uses QADTA.F00192 for both current and archived data
|
||||
|
||||
SELECT wos.WLDOCO AS WorkOrderNumber,
|
||||
TRIM(wos.WLMMCU) AS BranchCode,
|
||||
TRIM(wos.WLMCU) AS WorkCenterCode,
|
||||
wos.WLOPSQ AS StepNumber,
|
||||
TRIM(wos.WLDSC1) AS StepDescription,
|
||||
TRIM(mes.CFDS80) AS FunctionOperationDescription,
|
||||
wos.WLOPSC AS StepTypeCode,
|
||||
CASE wos.WLSTRT WHEN 0 THEN NULL ELSE wos.WLSTRT END AS StartDT,
|
||||
CASE wos.WLSTRX WHEN 0 THEN NULL ELSE wos.WLSTRX END AS EndDT,
|
||||
TRIM(wos.WLURRF) AS FunctionCode,
|
||||
wos.WLUPMJ AS DateUpdated,
|
||||
wos.WLTDAY AS TimeUpdated
|
||||
FROM QADTA.F3112 wos LEFT OUTER JOIN
|
||||
QADTA.F00192 mes ON (wos.WLURRF = mes.CFKY)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT wos.WLDOCO AS WorkOrderNumber,
|
||||
TRIM(wos.WLMMCU) AS BranchCode,
|
||||
TRIM(wos.WLMCU) AS WorkCenterCode,
|
||||
wos.WLOPSQ AS StepNumber,
|
||||
TRIM(wos.WLDSC1) AS StepDescription,
|
||||
TRIM(mes.CFDS80) AS FunctionOperationDescription,
|
||||
wos.WLOPSC AS StepTypeCode,
|
||||
CASE wos.WLSTRT WHEN 0 THEN NULL ELSE wos.WLSTRT END AS StartDT,
|
||||
CASE wos.WLSTRX WHEN 0 THEN NULL ELSE wos.WLSTRX END AS EndDT,
|
||||
TRIM(wos.WLURRF) AS FunctionCode,
|
||||
wos.WLUPMJ AS DateUpdated,
|
||||
wos.WLTDAY AS TimeUpdated
|
||||
FROM ARCDTAQA.F3112 wos LEFT OUTER JOIN
|
||||
QADTA.F00192 mes ON (wos.WLURRF = mes.CFKY)
|
||||
@@ -0,0 +1,26 @@
|
||||
-- WorkOrderTime Archive Query
|
||||
-- Source: QADTA.F31122 (current) + ARCDTAQA.F31122 (archived)
|
||||
-- Used by: GetWorkOrderTimesArchive() - on-demand historical retrieval
|
||||
-- Note: Not scheduled, used for historical lookups
|
||||
|
||||
SELECT wot.WTUKID AS UniqueID,
|
||||
TRIM(wot.WTMMCU) AS BranchCode,
|
||||
wot.WTDOCO AS WorkOrderNumber,
|
||||
wot.WTOPSQ AS StepNumber,
|
||||
wot.WTAN8 AS AddressNumber,
|
||||
wot.WTDGL AS GlDate,
|
||||
wot.WTUPMJ AS DateUpdated,
|
||||
wot.WTTDAY AS TimeUpdated
|
||||
FROM QADTA.F31122 wot
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT wot.WTUKID AS UniqueID,
|
||||
TRIM(wot.WTMMCU) AS BranchCode,
|
||||
wot.WTDOCO AS WorkOrderNumber,
|
||||
wot.WTOPSQ AS StepNumber,
|
||||
wot.WTAN8 AS AddressNumber,
|
||||
wot.WTDGL AS GlDate,
|
||||
wot.WTUPMJ AS DateUpdated,
|
||||
wot.WTTDAY AS TimeUpdated
|
||||
FROM ARCDTAQA.F31122 wot
|
||||
Reference in New Issue
Block a user