¶ DDEC Database DDL Column Mappings for EF Core
Detailed column-by-column analysis of all major tables
Source: CREATE_DDL.sql, ALTER_DDL.sql
- Total Tables: 38+
- Primary Focus Tables: R24NA7US (~432 cols), SDD5UNIT (~208 cols), SDD5HIST (~204 cols), SDD3UNIT (~209 cols), SDD3HIST (~181 cols)
- Database: DDEC (SQL Server)
- Primary Key Strategy: Clustered composite keys with unique constraints
- Foreign Key Management: All CASCADE DELETE (defined in ALTER_DDL.sql)
¶ 1. R24NA7US (Master Configuration Reference - 432 columns)
Purpose: Master reference table for DDEC III/V unit configurations with transmission and sensor settings.
| Column |
Type |
Description |
| RCA71_SERAPPL_DDEC3_CO |
varchar(3) NOT NULL |
DDEC3 code |
| RCA71_APPLICATION_CODE |
varchar(4) NOT NULL |
Application code |
| RCA71_ENGINE_SERIES_CO |
varchar(4) NOT NULL |
Engine series code |
| RCA71_SERAPPL_STATUS_C |
varchar(1) NOT NULL |
Status code |
| RCA71_SERAPPL_MASTER_R |
varchar(3) NOT NULL |
Master record |
¶ Standard/Audit Columns (6)
| Column |
Type |
Description |
| RCA71_LEN |
decimal(4,0) |
Record length |
| RCA71_STD_REC_ID |
varchar(8) |
Record ID |
| RCA71_STD_DTE_LST_UPD |
varchar(8) |
Last update date (YYYYMMDD) |
| RCA71_STD_TIM_LST_UPD |
varchar(6) |
Last update time (HHMMSS) |
| RCA71_STD_TERM_ID_UPD |
varchar(4) |
Terminal ID |
| RCA71_STD_TXN_SEQ_NBR |
decimal(4,0) |
Transaction sequence |
| Column |
Type |
Description |
| RCA71_TRANSMISSION_COD |
varchar(2) |
Transmission code |
| RCA71_TRANSMY3_OUTPUT |
varchar(2) |
Y3 output |
| RCA71_TRANSMX3_OUTPUT |
varchar(2) |
X3 output |
| RCA71_TRANSMW3_OUTPUT |
varchar(2) |
W3 output |
| RCA71_TRANSMT3_OUTPUT |
varchar(2) |
T3 output |
| RCA71_TRANSMS3_OUTPUT |
varchar(2) |
S3 output |
| RCA71_TRANSMF3_OUTPUT |
varchar(2) |
F3 output |
| RCA71_TRANSMA2_OUTPUT |
varchar(2) |
A2 output |
| RCA71_TRANSMA1_OUTPUT |
varchar(2) |
A1 output |
| Column |
Type |
Description |
| RCA71_ACCEPTK3_INPUT_C |
varchar(2) |
K3 input code |
| RCA71_ACCEPTG3_INPUT_C |
varchar(2) |
G3 input code |
| RCA71_ACCEPTK2_INPUT_C |
varchar(2) |
K2 input code |
| RCA71_ACCEPTJ2_INPUT_C |
varchar(2) |
J2 input code |
| RCA71_ACCEPTH2_INPUT_C |
varchar(2) |
H2 input code |
| RCA71_ACCEPTG2_INPUT_C |
varchar(2) |
G2 input code |
| RCA71_ACCEPTF2_INPUT_C |
varchar(2) |
F2 input code |
| RCA71_ACCEPTH1_INPUT_C |
varchar(2) |
H1 input code |
| RCA71_ACCEPTG1_INPUT_C |
varchar(2) |
G1 input code |
| RCA71_ACCEPTF1_INPUT_C |
varchar(2) |
F1 input code |
| RCA71_ACCEPTE1_INPUT_C |
varchar(2) |
E1 input code |
| RCA71_ACCEPTJ1_INPUT_C |
varchar(2) |
J1 input code |
| Column |
Type |
Description |
| RCA71_APPLICATION_TYPE |
decimal(1,0) |
Application type |
| RCA71_VSS_ENABLE |
decimal(1,0) |
VSS enabled |
| RCA71_VSS_ENABLE_FIXED |
varchar(1) |
Fixed flag |
| RCA71_SENSOR_CODE |
varchar(1) |
Sensor code |
| RCA71_VSS_SENSOR_TYPE |
varchar(1) |
Sensor type |
| RCA71_WHEEL_NUM_OF_TE |
decimal(3,0) |
Wheel teeth count |
| RCA71_WHEEL_MIN_NUM_OF |
decimal(3,0) |
Min teeth |
| RCA71_WHEEL_MAX_NUM_OF |
decimal(3,0) |
Max teeth |
| RCA71_WHEEL_NUM_OF_TEE |
varchar(1) |
Fixed flag |
| RCA71_TIRE_REVOLUTION |
decimal(4,0) |
Tire revolutions |
| RCA71_MINIMUM_TIRE_REV |
decimal(4,0) |
Min revolutions |
| RCA71_MAXIMUM_TIRE_REV |
decimal(4,0) |
Max revolutions |
| Column |
Type |
Description |
| RCA71_CRUISE_FUNCTION |
decimal(1,0) |
Cruise enabled |
| RCA71_CRUISE_FUNC_ENAB |
varchar(1) |
Fixed flag |
| RCA71_CRUISE_MAXIMUM_S |
decimal(3,0) |
Max speed |
| RCA71_CRS_MAX_SPD_FIXE |
varchar(1) |
Fixed flag |
| RCA71_CRUISE_MINIMUM_S |
decimal(3,0) |
Min speed |
| RCA71_CRS_MIN_SPD_FIXE |
varchar(1) |
Fixed flag |
| RCA71_CRUISE_MIN_RPM |
decimal(4,0) |
Min RPM |
| RCA71_CRUISE_AUTO_RESU |
decimal(1,0) |
Auto resume |
| RCA71_CRUISE_AUT_RESUM |
varchar(1) |
Fixed flag |
| RCA71_CRUISE_INITIAL_S |
decimal(4,0) |
Initial speed |
| RCA71_CRUISE_INIT_SPEE |
decimal(4,0) |
Init speed variant |
| RCA71_CRS_INIT_SPEED_M |
decimal(4,0) |
Init speed max |
| RCA71_CRS_INIT_SPD_FIX |
varchar(1) |
Fixed flag |
| Column |
Type |
Description |
| RCA71_VSG |
varchar(1) |
VSG enabled |
| RCA71_VSG_DIAGNOSTICS |
varchar(1) |
Diagnostics flag |
| RCA71_VSG_USING_CRUISE |
decimal(1,0) |
Using cruise switch |
| RCA71_VSG_USING_CRS_SW |
varchar(1) |
Fixed flag |
| RCA71_CRS_RPM_INCRMNT |
decimal(4,0) |
RPM increment |
| RCA71_CRS_RPM_INCRT_FI |
varchar(1) |
Fixed flag |
| RCA71_VSG_MINIMUM_RPM |
decimal(4,0) |
Min RPM |
| RCA71_VSG_MIN_RPM_MINI |
decimal(4,0) |
Min of min RPM |
| RCA71_VSG_MIN_RPM_MAXI |
decimal(4,0) |
Max of min RPM |
| RCA71_VSG_MIN_RPM_FIXE |
varchar(1) |
Fixed flag |
| RCA71_VSG_MAXIMUM_RPM |
decimal(4,0) |
Max RPM |
| RCA71_VSG_MAX_RPM_MIN |
decimal(4,0) |
Min of max RPM |
| RCA71_VSG_MAX_RPM_MAX |
decimal(4,0) |
Max of max RPM |
| RCA71_VSG_MAX_RPM_FIXE |
varchar(1) |
Fixed flag |
| RCA71_VSG_IS_PRIMARY |
decimal(1,0) |
Is primary governor |
| RCA71_VSG_IS_PRMRY_FIX |
varchar(1) |
Fixed flag |
| Column |
Type |
Description |
| RCA71_CONFIG_ID_D3 through RCA71_CONFIG_ID_P2 |
decimal(3,0) |
Configuration ID references |
- Engine Brake: 6 columns (cruise/low brake settings + fixed flags)
- Vehicle Speed Limiter: 6 columns (speed limits + overspeed)
- Idle Configuration: 10 columns (hot idle, timer, shutdown)
- Fan/Cooling: 28+ columns (fan type, oil/air/coolant temps, PWM fan control)
- Sensor Configuration: 28+ columns (oil, coolant, crankcase, auxiliary, fuel, turbo)
- Air Compressor: 6 columns (enable, pressure thresholds)
- Pressure Governor: 12 columns (PID gains, speed/pressure increments)
- Shutdown Pressure Points: 12 columns (RPM-specific pressure thresholds)
- Safety/Performance Analysis: 4 columns (MPH/MPG thresholds)
- Digital Output Signals: 32+ columns (function code + polarity invert pairs)
- Analog Inputs: 48+ columns (1K5UP/51KDN/120KUP/300KDN variants + fixed flags)
- Torque/RPM Tables: 16 columns (torque/RPM breakpoints)
- Engine Overspeed Protection: 6 columns (enable/disable speeds)
¶ 2. SDD5UNIT (DDEC V Unit Configuration - 208 columns)
| Column |
Type |
| SDD5UNIT_UNIT_NBR |
varchar(10) NOT NULL |
| Column |
Type |
Description |
| SDD5UNIT_EST_BLD_DATE |
varchar(8) |
Estimated build date (YYYYMMDD) |
| SDD5UNIT_ACT_BLD_DATE |
varchar(8) |
Actual build date |
| SDD5UNIT_HAS_BEEN_SHIPPED_SW |
varchar(1) |
Shipped flag |
| SDD5UNIT_BRDCST_DATE |
varchar(8) |
Broadcast date |
| SDD5UNIT_ORDER_CREATE_DATE |
varchar(8) |
Order creation date |
| SDD5UNIT_APL_HPFAM_CHG_DATE |
varchar(8) |
HP family change date |
| SDD5UNIT_APL_HPFAM_CHG_TIME |
varchar(6) |
HP family change time |
| SDD5UNIT_DATE_LAST_CHG_MF |
varchar(8) |
Last mainframe change date |
| SDD5UNIT_TIME_LAST_CHG_MAINFR |
varchar(6) |
Last mainframe change time |
| SDD5UNIT_DATE_LAST_REPRG |
varchar(8) |
Last reprogram date |
| SDD5UNIT_TIME_LAST_REPRG |
varchar(6) |
Last reprogram time |
| SDD5UNIT_SHIP_DATE |
varchar(8) |
Ship date |
| Column |
Type |
Description |
| SDD5UNIT_MODEL_NBR |
varchar(10) |
Model number |
| SDD5UNIT_CUST_CODE |
varchar(5) |
Customer code |
| SDD5UNIT_ORDER_NBR |
varchar(7) |
Order number |
| SDD5UNIT_DATA_PAGES |
varchar(4) |
Data pages |
| SDD5UNIT_SUM_SHT_FLAG |
varchar(1) |
Summary sheet flag |
| Column |
Type |
Description |
| SDD5UNIT_DWNLD_CNT |
decimal(3,0) |
Download count |
| SDD5UNIT_CHANGE_CNT |
decimal(3,0) |
Change count |
| SDD5UNIT_REPRGM_CNT |
decimal(3,0) |
Reprogram count |
| SDD5UNIT_UPRATE_FLEET_FLAG |
varchar(1) |
Uprate fleet flag |
| SDD5UNIT_TRANS_TYPE |
decimal(2,0) |
Transmission type |
| Column |
Type |
Description |
| SDD5UNIT_VSG_CRUISE_SW |
decimal(1,0) |
Cruise switch |
| SDD5UNIT_VSG_INIT_SPEED |
decimal(4,0) |
Initial speed |
| SDD5UNIT_VSG_DROOP |
decimal(3,0) |
Droop setting |
| SDD5UNIT_VSG_RPM_INCREMENT |
decimal(3,0) |
RPM increment |
| SDD5UNIT_VSG_MAX_RPM |
decimal(4,0) |
Maximum RPM |
| SDD5UNIT_VSG_MIN_RPM |
decimal(4,0) |
Minimum RPM |
| SDD5UNIT_VSG_ALT_MIN_RPM |
decimal(4,0) |
Alternate minimum RPM |
| SDD5UNIT_LSG_DROOP |
decimal(3,0) |
LSG droop |
| Column |
Type |
Description |
| SDD5UNIT_FAN_TYPE |
decimal(1,0) |
Fan type code |
| SDD5UNIT_DYN_FAN_BRAKING |
decimal(1,0) |
Dynamic fan braking |
| SDD5UNIT_FAN_TIMER |
decimal(3,0) |
Fan timer (seconds) |
| Column |
Type |
Description |
| SDD5UNIT_IDLE_SHUTDN_SW |
decimal(1,0) |
Idle shutdown switch |
| SDD5UNIT_IDLE_TIMEOUT |
decimal(2,0) |
Idle timeout (minutes) |
| SDD5UNIT_IDLE_SHUTDN_OPER_ON |
varchar(1) |
Operator override on |
| SDD5UNIT_OVRIDE_IDLE_SHUTDN |
decimal(1,0) |
Override idle shutdown |
| SDD5UNIT_IDLE_SHUTDN_AUTO_OVRD |
decimal(1,0) |
Auto override |
| Column |
Type |
Description |
| SDD5UNIT_SLOW_ON_CLNT_TEMP |
decimal(1,0) |
Slow on coolant temp |
| SDD5UNIT_STOP_ON_CLNT_TEMP |
decimal(1,0) |
Stop on coolant temp |
| SDD5UNIT_SLOW_ON_CLNT_LVL |
decimal(1,0) |
Slow on coolant level |
| SDD5UNIT_STOP_ON_CLNT_LVL |
decimal(1,0) |
Stop on coolant level |
| SDD5UNIT_CLNT_LVL_DSBL |
decimal(1,0) |
Coolant level disable |
| SDD5UNIT_SLOW_ON_CLNT_PRES |
decimal(1,0) |
Slow on coolant pressure |
| SDD5UNIT_STOP_ON_CLNT_PRES |
decimal(1,0) |
Stop on coolant pressure |
| Column |
Type |
Description |
| SDD5UNIT_SLOW_ON_CKCS_PRES |
decimal(1,0) |
Slow on crankcase pressure |
| SDD5UNIT_STOP_ON_CKCS_PRES |
decimal(1,0) |
Stop on crankcase pressure |
| SDD5UNIT_SLOW_ON_OIL_LVL |
decimal(1,0) |
Slow on oil level |
| SDD5UNIT_STOP_ON_OIL_LVL |
decimal(1,0) |
Stop on oil level |
| SDD5UNIT_SLOW_ON_OIL_PRES |
decimal(1,0) |
Slow on oil pressure |
| SDD5UNIT_STOP_ON_OIL_PRES |
decimal(1,0) |
Stop on oil pressure |
| SDD5UNIT_SLOW_ON_OIL_TEMP |
decimal(1,0) |
Slow on oil temp |
| SDD5UNIT_STOP_ON_OIL_TEMP |
decimal(1,0) |
Stop on oil temp |
| Column |
Type |
Description |
| SDD5UNIT_VSS_SWITCH |
decimal(1,0) |
VSS switch |
| SDD5UNIT_VSS_WHL_SNSR_SW |
decimal(1,0) |
Wheel sensor switch |
| SDD5UNIT_VSS_NUM_TEETH |
decimal(3,0) |
Number of teeth |
| SDD5UNIT_VSS_WHL_REVS_MILE |
decimal(4,0) |
Wheel revolutions/mile |
| SDD5UNIT_VSS_AXLE_RATIO |
decimal(4,2) |
Axle ratio |
| SDD5UNIT_VSS_FNL_GEAR_RATIO |
decimal(3,2) |
Final gear ratio |
| SDD5UNIT_VSS_AXLE_RATIO2 |
decimal(4,2) |
Secondary axle ratio |
| Column |
Type |
Description |
| SDD5UNIT_ECM_SERIAL_NO |
varchar(8) |
ECM serial number |
| SDD5UNIT_ECM_SW_VER_MAJ |
decimal(2,0) |
ECM software version major |
| SDD5UNIT_ECM_SW_VER_MIN |
decimal(2,0) |
ECM software version minor |
| SDD5UNIT_ECM_REQ_VERSION |
decimal(2,0) |
Required version |
| SDD5UNIT_TEST_ECM_SW_VER_MAJ |
decimal(2,0) |
Test ECM major version |
| SDD5UNIT_TEST_ECM_SW_VER_MIN |
decimal(2,0) |
Test ECM minor version |
| Column |
Type |
Description |
| SDD5UNIT_INJ_CAL_CYL_1 through _8 |
varchar(2) |
Per-cylinder injector calibration codes |
| Column |
Type |
Description |
| SDD5UNIT_6N4C_APPL_CODE |
decimal(4,0) |
6N4C application code |
| SDD5UNIT_6N4M_GRP |
decimal(4,0) |
6N4M group |
| SDD5UNIT_CURR_6N4D_GRP |
decimal(4,0) |
Current 6N4D group |
- Cruise Control: 5 columns (switch, max/min speed, auto resume)
- Transmission Control: 10 columns (PID gains, pressure, cavitation)
- Vehicle Speed Limiting: 3 columns
- Engine Protection: 9 columns (brake, overspeed, torque limit)
- Pressure Shift: 8 columns (PSS low/hi gear configs)
- Security: 4 columns (max security, rating security, override count)
- Passwords: 3 columns (lockout, rating, customer)
- Analog Inputs: 24+ columns (various voltage configurations)
- Digital Outputs: 14+ columns (function + polarity pairs)
- PWM Configuration: 2 columns
- Fuel Economy: 4 columns
- Air Compressor: 5 columns
¶ 3. SDD5HIST (DDEC V History - 204 columns)
| Column |
Type |
| SDD5HIST_UNIT_NBR |
varchar(10) NOT NULL |
| SDD5HIST_COMPL_CREATE_DATE |
decimal(8,0) NOT NULL |
| SDD5HIST_COMPL_CREATE_TIME |
decimal(8,0) NOT NULL |
| Column |
Type |
Description |
| SDD5HIST_CREATION_DATE |
varchar(8) |
Creation date |
| SDD5HIST_CREATION_TIME |
varchar(8) |
Creation time |
| SDD5HIST_USER_ID |
varchar(8) |
User ID |
| SDD5HIST_CUST_CODE_LVL1 |
varchar(5) |
Customer code level 1 |
| SDD5HIST_CUST_CODE_LVL2 |
varchar(5) |
Customer code level 2 |
| SDD5HIST_CHANGE_TYPE |
varchar(1) |
Change type indicator |
Structure: Mirrors SDD5UNIT columns with composite timestamp key. Each history record is a snapshot of the unit state at the time of change.
¶ Additional History-Only Columns
| Column |
Type |
Description |
| SDD5HIST_VEPS_BUILD_LOC |
varchar(3) |
VEPS build location |
| SDD5HIST_VEPS_VIN |
varchar(17) |
Vehicle identification number |
| SDD5HIST_VEPS_DATE |
varchar(8) |
VEPS date |
| SDD5HIST_VEPS_TIME |
varchar(6) |
VEPS time |
¶ 4. SDD3UNIT (DDEC III Unit Configuration - 209 columns)
| Column |
Type |
| SDD3UNIT_UNIT_NBR |
varchar(10) NOT NULL |
Structure: Nearly identical to SDD5UNIT but for DDEC III engines. Same column categories apply with SDD3UNIT_ prefix instead of SDD5UNIT_.
- Some columns have different data types (varchar vs decimal in specific config IDs)
SDD3UNIT_AIR_COMP_MAX_PRES column present (not in D5)
- Additional config ID columns:
SDD3UNIT_CONFIG_ID_L1_904, SDD3UNIT_CONFIG_ID_D1_510, SDD3UNIT_CONFIG_ID_N1_906
SDD3UNIT_FUEL_TEMP_SNSR_R3 present in some variants
¶ 5. SDD3HIST (DDEC III History - 181 columns)
| Column |
Type |
| SDD3HIST_UNIT_NBR |
varchar(10) NOT NULL |
| SDD3HIST_COMPL_CREATE_DATE |
decimal(8,0) NOT NULL |
| SDD3HIST_COMPL_CREATE_TIME |
decimal(8,0) NOT NULL |
Structure: Mirrors SDD3UNIT with composite timestamp key.
¶ Column Naming Patterns
Appears ~40 times in R24NA7US for each configurable parameter:
RCA71_WHEEL_NUM_OF_TE [decimal](3,0) - Current value
RCA71_WHEEL_MIN_NUM_OF [decimal](3,0) - Minimum allowed
RCA71_WHEEL_MAX_NUM_OF [decimal](3,0) - Maximum allowed
RCA71_WHEEL_NUM_OF_TEE [varchar](1) - Fixed flag (Y=locked, N=configurable)
RCA71_DOUT_LO_V4_FUNC [decimal](2,0) - Function code
RCA71_DOUT_LO_V4_POL_INV [decimal](1,0) - Polarity invert flag
RCA71_DOUT_LO_V4_FIX [varchar](1) - Fixed flag
SDD5UNIT_SLOW_ON_CLNT_TEMP [decimal](1,0) - Slow engine on coolant temp
SDD5UNIT_STOP_ON_CLNT_TEMP [decimal](1,0) - Stop engine on coolant temp
RCA71_OIL_PRESSURE_SEN [decimal](1,0) - Sensor enabled
RCA71_OIL_PRESS_SENSOR [varchar](1) - Fixed flag
¶ Column Suffix Dictionary
| Suffix |
Meaning |
_SW |
Switch/Boolean flag |
_CNT |
Counter |
_CODE |
Code/Classification value |
_NBR |
Number |
_FUNC |
Function assignment |
_POL_INV |
Polarity invert |
_SENSOR |
Sensor assignment |
_FIX / _FIXED |
Configuration lock flag |
_MIN / _MAX |
Range bounds |
_RNG_MIN / _RNG_MAX |
Range minimum/maximum |
_DTE |
Date |
_TIM |
Time |
_RPM |
Revolutions per minute |
_SPD |
Speed (MPH) |
_TEMP |
Temperature |
_PRES |
Pressure |
_GAIN |
PID gain value |
_DROOP |
Governor droop percentage |
_LVL |
Level |
_SNSR |
Sensor |
CMPNTSEG -> MGAPROOT (CASCADE)
CMPATSEG -> CMPNTSEG (CASCADE)
CNOTESEG -> CMPNTSEG (CASCADE)
NOTESEG -> MGAPROOT (CASCADE)
SDCRBASE -> MGAPROOT (CASCADE)
SDBMD3BS -> MGAPROOT (CASCADE)
SDD2UNIT -> SDD2ROOT (CASCADE)
SDD2HIST -> SDD2UNIT (CASCADE)
SDD2PROG -> SDD2UNIT (CASCADE)
SDD3HIST -> SDD3UNIT (CASCADE)
SDD3PROG -> SDD3UNIT (CASCADE)
SDD3FINC -> SDD3UNIT (CASCADE)
SDD3RECV -> SDD3UNIT (CASCADE)
SDD5HIST -> SDD5UNIT (CASCADE)
SDD5PROG -> SDD5UNIT (CASCADE)
SDD5FINC -> SDD5UNIT (CASCADE)
Note: SDD3UNIT and SDD5UNIT are standalone roots (no parent FK).
- MGAPROOT - Root master configuration (35 columns)
- MGAPCNTL - Control parameters (4 columns)
- MGAPINAC - Inactive parameters (4 columns)
- MGAPMISC - Miscellaneous parameters
- MGAPRULE - Business rules
- R24NA2US - Parameter value ranges (~80 cols)
- R24NA3US - Input channel definitions (~20 cols)
- R24NA4US - Output channel definitions (~20 cols)
- R24NA7US - Master series/application config (432 cols)
- R24NA9US - Series/application/transmission matrix (12 cols)
- R24NB0US - Transmission codes (11 cols)
- R24NB3US - Torque curve definitions (17 cols)
- R24NB4US - Sensor block numbers (8 cols)
- R24NB5US - PWM configuration set 1 (11 cols)
- R24NB6US - Input pin configuration (12 cols)
- R24NB7US - Output pin configuration (12 cols)
- R24NB8US - PWM configuration set 2 (11 cols)
- R24OCSEG - OE status codes (3 cols)
- R24SPSEG - Special segment/activity log (10 cols)
- CMPNTSEG - Component segment (17 cols)
- CMPATSEG - Component attributes (9 cols)
- CNOTESEG - Component notes (3 cols)
- NOTESEG - Notes (3 cols)
- SDCRBASE - Calibration base data (3 cols)
- SDBMD3BS - DDEC3 binary master data (3 cols)
- SDBMD5BS - DDEC5 binary master data (3 cols)
- DBPACF01 - User authorization (5 cols)
- CUST01 - Customer hierarchy (2 cols)
- CUST_CODE - Customer code lookup (4 cols, has identity PK)
- SDD2ROOT - Sales order root (~10 cols)
- SDD2UNIT - Unit configuration (~50 cols)
- SDD2HIST - History (~50 cols)
- SDD2PROG - Programming (~30 cols)
- SDD3UNIT - Unit configuration (209 cols)
- SDD3HIST - History (181 cols)
- SDD3PROG - Programming (~80 cols)
- SDD3FINC - Finance/billing (~20 cols)
- SDD3RECV - Received configuration (~40 cols)
- SDD5UNIT - Unit configuration (208 cols)
- SDD5HIST - History (204 cols)
- SDD5PROG - Programming (~100 cols)
- SDD5FINC - Finance/billing (~20 cols)
// R24NA7US - 5-column composite key
modelBuilder.Entity<Ddec3SeriesAppConfig>()
.HasKey(e => new {
e.Ddec3Code,
e.ApplicationCode,
e.EngineSeriesCode,
e.StatusCode,
e.MasterRecord
});
// SDD5HIST - 3-column composite key
modelBuilder.Entity<Ddec5History>()
.HasKey(e => new {
e.UnitNumber,
e.CreateDate,
e.CreateTime
});
// Reusable value object for the VALUE/MIN/MAX/FIXED pattern
[Owned]
public class ConfigurableValue<T>
{
public T Value { get; set; }
public T MinValue { get; set; }
public T MaxValue { get; set; }
public bool IsFixed { get; set; }
}
| SQL Type |
C# Type |
Notes |
| varchar(n) |
string |
Nullable unless NOT NULL |
| decimal(n,0) |
int or int? |
No decimal places = integer |
| decimal(n,m) where m>0 |
decimal or decimal? |
Has decimal places |
| varbinary(max) |
byte[] |
Binary calibration data |
modelBuilder.Entity<Ddec5History>()
.HasOne<Ddec5Unit>()
.WithMany(u => u.History)
.HasForeignKey(h => h.UnitNumber)
.OnDelete(DeleteBehavior.Cascade);