Constraints On Dates (feature)

From UG

(Difference between revisions)
Jump to: navigation, search
(Technical Specification)
(Requirements)
 
(45 intermediate revisions not shown)
Line 1: Line 1:
-
[[Category:Ops]]
+
[[Category:Ops Common]]
== Parent Mantis ==
== Parent Mantis ==
-
[http://mantis.jaguarfreight.com/mantis/view.php?id=tbd tbd]
+
[http://mantis.jaguarfreight.com/mantis/view.php?id=1670 1670]
== Business Need ==
== Business Need ==
Line 11: Line 11:
== Requirements ==
== Requirements ==
-
All detailed requirements have been translated into specifications - see below.
+
Original detailed requirements have been translated into specifications - see below [[##Technical_Specification]].
-
== Technical Specification ==
+
Updated detailed requirements which was released to production on 17-Mar-2011, were translated here: [[2413_rfsa]] and [[2413_rfd]]
-
=== Summary ===
+
-
List of constraints on dates:
+
'''These constraints were added to Actual Dates ONLY and were never applicable for Estimated Dates.  Therefore this separate article was created: [[Constraints_on_Estimated_Dates]]'''
-
* [[# Order Constraint Based On Shipment's Path]]
+
== Technical Specification ==
-
* [[# Required Pre-condition Constraint]]
+
-
* [[# Actual Date Can Not Be A Future Date Constraint]]
+
 +
=== Summary ===
-
=== User Interface and Functionality ===
+
Type constraints on dates:
-
There is no UI here except some pop-up messages.
+
*  [[#Chronological Constraint]]
 +
*  [[#Non Empty Prerequisite Constraint]]
 +
*  [[#Contents Constraint]]
 +
*  [[#Actual Date Can Not Be A Future Date Constraint]]
-
==== List of dates in their Natural Order ====
+
=== Chronological Constraint ===
-
'''AIR:'''
+
All dates can be listed in a chronological order. Given date on the list can be equal or be a later date chronologically than any previous date on the list:
-
<pre>
+
cc1 <= cc2 <= ...
-
[no1] [I] [----------------] (      Act) Created on Date
+
If order is incorrect then system must present pop-up:
-
[no2] [I] [----------------] (      Act) Notification Date
+
-
[no3] [I] [----------------] (      Act) Authorized on
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date
+
''In CT#XXX, date <date name> can not be <earlier/later> than date <date name>" [OK].''
-
[no5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure
+
See per MOT lists below.
-
[no6] [M] [----------------] (Est / Act) Trans-shipment Airport
+
====  Chronological Constraint: AIR CT ====
-
[no7] [M] [ARRIVAL EVENT  ] (Est / Act) Airport of Discharge
+
<pre>
-
 
+
[cc1] [I] [----------------] (Act) Created on Date
-
[no8] [I] [----------------] (     Act) Customs Status Date  
+
[cc2] [I] [----------------] (Act) Notification Date
-
[no9] [I] [----------------] (     Act) FDA Status Date  
+
[cc3] [I] [----------------] (Act) Authorized on Date
-
 
+
-
[no10][I] [DELIVERY EVENT  ] (Est / Act) Delivery Date  
+
 +
[cc4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date
 +
[cc5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure Date
 +
[cc6] [M] [ARRIVAL EVENT  ] (Est / Act) Airport of Discharge Date
 +
[cc7] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date
</pre>
</pre>
-
'''FCL:'''
+
==== Chronological Constraint: AIR Master ====
<pre>
<pre>
-
 
+
[cc1] [M] [DEPARTURE EVENT ] (Act) Airport of Departure Date
-
[no1] [I] [----------------] (      Act) Created on Date
+
[cc2] [M] [ARRIVAL EVENT  ] (Act) Airport of Discharge Date
-
[no2] [I] [----------------] (      Act) Notification Date
+
-
[no3] [I] [----------------] (      Act) Authorized on
+
-
 
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date, Container 1
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date, Container 2 (FCL only)
+
-
...
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date, Container N (FCL only)
+
-
 
+
-
[no5] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
+
-
[no6] [M] [--------------- ] (Est / Act) Port Of Loading
+
-
[no7] [M] [----------------] (Est / Act) Port Of Trans-shipment
+
-
[no8] [M] [----------------] (Est / Act) Port Of Discharge
+
-
[no9] [I] [ARRIVAL EVENT  ] (Est / Act) Destination Terminal
+
-
 
+
-
[---] [I] [----------------] (      Act) Customs Status Date  
+
-
[---] [I] [----------------] (      Act) FDA Status Date
+
-
 
+
-
[no10] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date, Container 1
+
-
[no10] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date, Container 2 (FCL only)
+
-
...
+
-
[no10] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date, Container N (FCL only)
+
-
 
+
</pre>
</pre>
-
'''LCL:'''
+
==== Chronological Constraint: OCEAN CT ====
<pre>
<pre>
-
[no1] [I] [----------------] (      Act) Created on Date
+
[cc1] [I] [----------------] (      Act) Created on Date
-
[no2] [I] [----------------] (      Act) Notification Date
+
[cc2] [I] [----------------] (      Act) Notification Date
-
[no3] [I] [----------------] (      Act) Authorized on
+
[cc3] [I] [----------------] (      Act) Authorized on
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date  
+
[cc4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date (for FCL, see Note)
-
[no5] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
+
[cc5] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
-
[no6] [M] [--------------- ] (Est / Act) Port Of Loading
+
[cc6] [M] [--------------- ] (Est / Act) Port Of Loading
-
[no7] [M] [----------------] (Est / Act) Port Of Trans-shipment
+
[cc7] [M] [----------------] (Est / Act) Port Of Discharge
-
[no8] [M] [----------------] (Est / Act) Port Of Discharge
+
[cc8] [I] [ARRIVAL EVENT  ] (Est / Act) Destination Terminal
-
[no9] [I] [ARRIVAL EVENT  ] (Est / Act) Destination Terminal
+
-
[---] [I] [----------------] (      Act) Customs Status Date
+
[cc9] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date (for FCL, see Note)
-
[---] [I] [----------------] (      Act) FDA Status Date
+
-
 
+
-
[no10] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date
+
</pre>
</pre>
-
'''TRUCK-AIR:'''
+
 
 +
==== Chronological Constraint: OCEAN Master ====
<pre>
<pre>
 +
[cc1] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
 +
[cc2] [M] [--------------- ] (Est / Act) Port Of Loading
 +
[cc3] [M] [----------------] (Est / Act) Port Of Discharge
 +
[cc4] [I] [ARRIVAL EVENT  ] (Est / Act) Destination Terminal
 +
</pre>
-
[no1] [I] [----------------] (      Act) Created on Date
+
TBD: what to do with container dates for Master???
-
[no2] [I] [----------------] (      Act) Notification Date
+
-
[no3] [I] [----------------] (      Act) Authorized on
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date
 
-
[no5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure
+
==== Chronological Constraint: TRUCK-OCEAN, TRUCK-DOM, TRUCK-AIR CT ====
-
[no6] [M] [----------------] (Est / Act) Trans-shipment Airport
+
<pre>
-
[no7] [M] [ARRIVAL EVENT  ] (Est / Act) Airport of Discharge
+
[cc1] [I] [----------------] (     Act) Created on Date
 +
[cc2] [I] [----------------] (      Act) Notification Date
 +
[cc3] [I] [----------------] (      Act) Authorized on
-
[no8] [I] [----------------] (     Act) Customs Status Date
+
[cc4] [I] [COLLECTION/DEPARTURE EVENT](Est / Act) Pick-up date (for FCL, see Note)
-
[no9] [I] [----------------] (     Act) FDA Status Date
+
[cc5] [I] [ARRIVAL/DELIVERY EVENT   ](Est / Act) Delivery Date (for FCL, see Note)
-
 
+
-
[no10][I] [DELIVERY EVENT ] (Est / Act) Delivery Date  
+
</pre>
</pre>
-
'''TRUCK-OCN:'''
+
==== Chronological Constraint: TRUCK MASTER ====
-
<pre>
+
TRUCK MASTER has no dates.
-
[no1] [I] [----------------] (      Act) Created on Date
+
==== Note About FCL ====
-
[no2] [I] [----------------] (      Act) Notification Date
+
In case of FCL there are multiple Pick-up and Delivery Dates (per container). No order between them is enforced.
-
[no3] [I] [----------------] (     Act) Authorized on
+
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date
+
=== Non Empty Prerequisite Constraint ===
-
[no5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure
+
There is a natural sequence of pre-requisites (defined per MOT). Field later in the sequence can not be defined until all earlier fields are defined.
-
[no6] [M] [----------------] (Est / Act) Trans-shipment Airport
+
field 1 --> field 2 --> ...
-
[no7] [M] [ARRIVAL EVENT  ] (Est / Act) Airport of Discharge
+
In case of error system must present pop-up:
-
[no8] [I] [----------------] (      Act) Customs Status Date
+
''In CT#XXX, field <field name> must be set before field <field name> is set" [OK].''
-
[no9] [I] [----------------] (      Act) FDA Status Date
+
-
[no10][I] [DELIVERY EVENT  ] (Est / Act) Delivery Date
+
See per MOT definitions below.
-
</pre>
 
-
'''TRUCK-DOM:'''
+
==== Non Empty Prerequisite Constraint: AIR CT ====
<pre>
<pre>
-
[no1] [I] [----------------] (     Act) Created on Date
+
[field 1] [M] [----------------] Master Airway Bill #
-
[no2] [I] [----------------] (     Act) Notification Date
+
[field 2] [M] [DEPARTURE EVENT ] (Act) Airport of Departure Date
-
[no3] [I] [----------------] (     Act) Authorized on
+
[field 3] [M] [ARRIVAL EVENT  ] (Act) Airport of Discharge Date
 +
[field 4] [I] [DELIVERY EVENT  ] (Act) Delivery Date
-
[no4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date
+
</pre>
-
[no5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure
+
==== Non Empty Prerequisite Constraint: OCEAN CT ====
-
 
+
-
[no6] [M] [----------------] (Est / Act) Trans-shipment Airport
+
-
 
+
-
[no7] [M] [ARRIVAL EVENT  ] (Est / Act) Airport of Discharge
+
-
 
+
-
[no8] [I] [----------------] (      Act) Customs Status Date
+
-
[no9] [I] [----------------] (      Act) FDA Status Date
+
-
 
+
-
[no10][I] [DELIVERY EVENT  ] (Est / Act) Delivery Date
+
 +
<pre>
 +
[field 1] [----------------] At least one container#
 +
[field 2] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
 +
[field 3] [I] [ARRIVAL EVENT  ] (Est / Act) Destination Terminal
 +
[field 4] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date (FCL: on any container)
</pre>
</pre>
-
==== Order Constraint Based On Shipment's Path ====
+
=== Contents Constraint ===
-
"On save" check the following order. See [[#List of dates in their Natural Order]].
+
==== Contents Constraint: OCEAN CT and TRUCK OCEAN CT====
-
  no1 <= no2 <= no3 <= ...
+
  All contents must be assigned to containers before "(Act) Delivery Date" is set
-
If order is incorrect the show pop-up:  
+
If it is not true then system must present pop-up:
-
''In CT#XXX, date <date name> can not be <earlier/later> than date <date name>" [OK].''
+
''All contents must be assigned to containers before "(Act) Delivery Date" is set [OK]. ''
-
 
+
-
==== Required Pre-condition Constraint ====
+
-
 
+
-
~
+
-
For ocean shipments:
+
-
 
+
-
We should block the “actual departure date” if there is no “container number”
+
-
 
+
-
We should block the “actual arrival date” if there is no “actual departure date”
+
-
 
+
-
we should block the “delivery date” if there is no “actual arrival date” set.
+
-
~
+
-
 
+
-
~
+
-
For AIR:
+
-
 
+
-
We should block the “actual departure date” if there is no “Master Air Waybill #”
+
-
 
+
-
We should block the “actual arrival date” if there is no “actual departure date”
+
-
 
+
-
we should block the “delivery date” if there is no “actual arrival date” set.
+
-
~
+
-
 
+
-
===== Related Error Messages =====
+
-
 
+
-
Ocean:
+
-
 
+
-
“A container number must be entered before the actual departure date can be confirmed”
+
-
 
+
-
“The actual departure date must be confirmed before the actual arrival date can be confirmed”
+
-
 
+
-
“The actual arrival date must be confirmed before the actual delivery date can be confirmed”
+
-
 
+
-
Air:
+
-
 
+
-
“A MAWB number must be entered before the actual departure date can be confirmed”
+
-
 
+
-
“The actual departure date must be confirmed before the actual arrival date can be confirmed”
+
-
“The actual arrival date must be confirmed before the actual delivery date can be confirmed”
+
===  Actual Date Can Not Be A Future Date Constraint ===
-
==== Actual Date Can Not Be A Future Date Constraint ====
+
If user is trying to set any actual dates (see below) to the future date system must issue pop up:
-
If user is trying to set any actual dates (see below) to the future date system must issue pop up: "Error while saving: <name of the date> can not be in the future [OK]".
+
''Error while saving: <name of the date> can not be in the future [OK].''
===== List of actual dates in the system =====
===== List of actual dates in the system =====
Line 299: Line 233:
* Destination Terminal ATA
* Destination Terminal ATA
-
=== Entities and Attributes ===
+
=== Special case: CTs under Groups and Masters ===
-
=== Special Cases and Misc ===
+
In this case change to one date field can be applied to multiple CTs potentially breaking date constraints on multiple records.
 +
 
 +
In this case system must verify all related records and display error that spells out WHAT dates on WHAT records are breaking WHAT constraint.
 +
 
 +
=== User Interface ===
 +
 
 +
There is no UI here except some pop-up messages.
 +
 
 +
=== Point in Time When Data is Tested against Constraints ===
 +
 
 +
Ideally this should happen real-time any time date is entered. But because of a glitch in a framework (or lack of our knowledge of workaround) we can only test it "on Save".
-
=== Look And Feel ===
 
=== Figures ===
=== Figures ===
==== Figure: XXX ====
==== Figure: XXX ====
 +
 +
== RFC ==
 +
 +
1) Do you clear invalid values after error pop up is generated?
 +
 +
Yes you should clear these values.  Now system does not.
 +
 +
Good idea?
 +
 +
2) Idea: have in Admin option to turn any validation.
 +
 +
Option for what records to turn off.
 +
 +
Good idea? How hard?
 +
 +
3) Non Empty Prerequisite Constraint:
 +
 +
Should we add to d) condition "or commodity table is empty"
 +
 +
4) Should we re-design in terms of "CT consistent/ inconsistent state" because for example if user assign all commodities and then set Actual Deliv date BUT later unassign it gives you "strange message":
 +
 +
"Actual Delivery date can not be assigned - all commodity items must be assigned to containers"
 +
 +
It is better to say like this: "Inconsistent State: Actual Delivery date assigned but at least one commodity item is unassigned."
== History ==
== History ==
-
== Non Critical Bugs and RFC ==
+
 
 +
=== Old spec archived ===
 +
It is [[CT Dates]]
 +
 
 +
=== Spec created ===
 +
--[[User:Alex|Alex]] 20:01, 12 January 2010 (UTC)
 +
 
 +
=== Display error that spells out WHAT dates on WHAT records are breaking WHAT constrain ===
 +
 
 +
* http://mantis.jaguarfreight.com/mantis/view.php?id=1324
 +
 
 +
--[[User:Alex|Alex]] 20:01, 12 January 2010 (UTC)
 +
 
 +
=== Implement major re-design of this component  ===
 +
 
 +
* http://mantis.jaguarfreight.com/mantis/view.php?id=1673
 +
 
 +
--[[User:Alex|Alex]] 18:54, 13 January 2010 (UTC)
 +
 
 +
== Known Non Critical Bugs ==
 +
 
 +
 
bug1) error is not specific to what date in what CT there is a problem
bug1) error is not specific to what date in what CT there is a problem

Current revision as of 20:15, 23 November 2011


Contents

[edit] Parent Mantis

1670

[edit] Business Need

We have a number of constraints / validation rules that we need to enforce for dates.

[edit] Requirements

Original detailed requirements have been translated into specifications - see below ##Technical_Specification.

Updated detailed requirements which was released to production on 17-Mar-2011, were translated here: 2413_rfsa and 2413_rfd

These constraints were added to Actual Dates ONLY and were never applicable for Estimated Dates. Therefore this separate article was created: Constraints_on_Estimated_Dates

[edit] Technical Specification

[edit] Summary

Type constraints on dates:

[edit] Chronological Constraint

All dates can be listed in a chronological order. Given date on the list can be equal or be a later date chronologically than any previous date on the list:

cc1 <= cc2 <= ...

If order is incorrect then system must present pop-up:

In CT#XXX, date <date name> can not be <earlier/later> than date <date name>" [OK].

See per MOT lists below.

[edit] Chronological Constraint: AIR CT

 [cc1] [I] [----------------] (Act) Created on Date
 [cc2] [I] [----------------] (Act) Notification Date
 [cc3] [I] [----------------] (Act) Authorized on Date

 [cc4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date 
 [cc5] [M] [DEPARTURE EVENT ] (Est / Act) Airport of Departure Date
 [cc6] [M] [ARRIVAL EVENT   ] (Est / Act) Airport of Discharge Date
 [cc7] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date 


[edit] Chronological Constraint: AIR Master

[cc1] [M] [DEPARTURE EVENT ] (Act) Airport of Departure Date
[cc2] [M] [ARRIVAL EVENT   ] (Act) Airport of Discharge Date

[edit] Chronological Constraint: OCEAN CT


[cc1] [I] [----------------] (      Act) Created on Date
[cc2] [I] [----------------] (      Act) Notification Date
[cc3] [I] [----------------] (      Act) Authorized on

[cc4] [I] [COLLECTION EVENT] (Est / Act) Pick-up date (for FCL, see Note)

[cc5] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
[cc6] [M] [--------------- ] (Est / Act) Port Of Loading
[cc7] [M] [----------------] (Est / Act) Port Of Discharge
[cc8] [I] [ARRIVAL EVENT   ] (Est / Act) Destination Terminal

[cc9] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date (for FCL, see Note)


[edit] Chronological Constraint: OCEAN Master

[cc1] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
[cc2] [M] [--------------- ] (Est / Act) Port Of Loading
[cc3] [M] [----------------] (Est / Act) Port Of Discharge
[cc4] [I] [ARRIVAL EVENT   ] (Est / Act) Destination Terminal

TBD: what to do with container dates for Master???


[edit] Chronological Constraint: TRUCK-OCEAN, TRUCK-DOM, TRUCK-AIR CT


[cc1] [I] [----------------] (      Act) Created on Date
[cc2] [I] [----------------] (      Act) Notification Date
[cc3] [I] [----------------] (      Act) Authorized on

[cc4] [I] [COLLECTION/DEPARTURE EVENT](Est / Act) Pick-up date (for FCL, see Note)
[cc5] [I] [ARRIVAL/DELIVERY EVENT    ](Est / Act) Delivery Date (for FCL, see Note)

[edit] Chronological Constraint: TRUCK MASTER

TRUCK MASTER has no dates.

[edit] Note About FCL

In case of FCL there are multiple Pick-up and Delivery Dates (per container). No order between them is enforced.

[edit] Non Empty Prerequisite Constraint

There is a natural sequence of pre-requisites (defined per MOT). Field later in the sequence can not be defined until all earlier fields are defined.

field 1 --> field 2 --> ...

In case of error system must present pop-up:

In CT#XXX, field <field name> must be set before field <field name> is set" [OK].

See per MOT definitions below.


[edit] Non Empty Prerequisite Constraint: AIR CT


[field 1] [M] [----------------] Master Airway Bill #
[field 2] [M] [DEPARTURE EVENT ] (Act) Airport of Departure Date
[field 3] [M] [ARRIVAL EVENT   ] (Act) Airport of Discharge Date
[field 4] [I] [DELIVERY EVENT  ] (Act) Delivery Date 

[edit] Non Empty Prerequisite Constraint: OCEAN CT

[field 1] [----------------] At least one container#
[field 2] [I] [DEPARTURE EVENT ] (Est / Act) Origin Terminal
[field 3] [I] [ARRIVAL EVENT   ] (Est / Act) Destination Terminal
[field 4] [I] [DELIVERY EVENT  ] (Est / Act) Delivery Date (FCL: on any container)

[edit] Contents Constraint

[edit] Contents Constraint: OCEAN CT and TRUCK OCEAN CT

All contents must be assigned to containers before "(Act) Delivery Date" is set

If it is not true then system must present pop-up:

All contents must be assigned to containers before "(Act) Delivery Date" is set [OK].

[edit] Actual Date Can Not Be A Future Date Constraint

If user is trying to set any actual dates (see below) to the future date system must issue pop up:

Error while saving: <name of the date> can not be in the future [OK].

[edit] List of actual dates in the system

UNDEF:

  • Gentab.Actual export pickup

Truck-Dom:

  • Gentab.Actual export pickup
  • Gentab.Actual Delivery

Truck-Air:

  • Gentab.Actual export pickup
  • Gentab.Actual Delivery

Truck-Ocn:

  • Conttab.Containers.ContainerX.Actual collection
  • Conttab.Containers.ContainerX.Actual Delivery

AIR:

Gentab:

  • Actual export pickup

Exptab:

  • Airport of Departure. ATD
  • Trans-shipment Airport.ATD
  • Airport Of Destination. ATD

ImpTab:

  • Actual Delivery Date

LCL:

Gentab:

  • Actual export pickup

Exptab:

  • Origin Terminal ATD
  • Port Of Loading ATD
  • Port Of Trans-shipment ATA
  • Port Of Discharge ATA
  • Destination Terminal ATA

ImpTab:

  • Actual Delivery Date


FCL:

Conttab.Containers:

  • ContainerX.Actual collection
  • ContainerX.Actual Delivery

Exptab:

  • Origin Terminal ATD
  • Port Of Loading ATD
  • Port Of Trans-shipment ATA
  • Port Of Discharge ATA
  • Destination Terminal ATA

[edit] Special case: CTs under Groups and Masters

In this case change to one date field can be applied to multiple CTs potentially breaking date constraints on multiple records.

In this case system must verify all related records and display error that spells out WHAT dates on WHAT records are breaking WHAT constraint.

[edit] User Interface

There is no UI here except some pop-up messages.

[edit] Point in Time When Data is Tested against Constraints

Ideally this should happen real-time any time date is entered. But because of a glitch in a framework (or lack of our knowledge of workaround) we can only test it "on Save".


[edit] Figures

[edit] Figure: XXX

[edit] RFC

1) Do you clear invalid values after error pop up is generated?

Yes you should clear these values. Now system does not.

Good idea?

2) Idea: have in Admin option to turn any validation.

Option for what records to turn off.

Good idea? How hard?

3) Non Empty Prerequisite Constraint:

Should we add to d) condition "or commodity table is empty"

4) Should we re-design in terms of "CT consistent/ inconsistent state" because for example if user assign all commodities and then set Actual Deliv date BUT later unassign it gives you "strange message":

"Actual Delivery date can not be assigned - all commodity items must be assigned to containers"

It is better to say like this: "Inconsistent State: Actual Delivery date assigned but at least one commodity item is unassigned."

[edit] History

[edit] Old spec archived

It is CT Dates

[edit] Spec created

--Alex 20:01, 12 January 2010 (UTC)

[edit] Display error that spells out WHAT dates on WHAT records are breaking WHAT constrain

--Alex 20:01, 12 January 2010 (UTC)

[edit] Implement major re-design of this component

--Alex 18:54, 13 January 2010 (UTC)

[edit] Known Non Critical Bugs

bug1) error is not specific to what date in what CT there is a problem

bug2) even if problem with ordering of actual dates system complains about "estimated"

[edit] DB

Personal tools