SI EDI

From UG

(Difference between revisions)
Jump to: navigation, search
(Info)
(SOW 22 Unique POs in N9 segments in the header level)
 
(152 intermediate revisions not shown)
Line 1: Line 1:
-
[[Category:Acc]]
+
[[Category:SI EDI]]
== Info ==
== Info ==
Line 7: Line 7:
'''mantis parent''': 0004242
'''mantis parent''': 0004242
-
'''mantis category:''' Sales Invoices EDI
+
'''mantis project:''' D2L
=== Contacts ===
=== Contacts ===
 +
 +
Jessie:
* Jessie.Falls@ElizabethArden.com - Transportation Manager
* Jessie.Falls@ElizabethArden.com - Transportation Manager
 +
 +
Dawn:
 +
* Dawn.Byrum@data2logistics.com - Global Solutions Analyst
* Dawn.Byrum@data2logistics.com - Global Solutions Analyst
 +
 +
* 12631 Westlinks Dr. Fort Myers, FL 33913-8627
 +
 +
* Phone:  1-706-335-4502
 +
 +
Brandon:
* brandon.heaton@data2logistics.com - EDI Specialist
* brandon.heaton@data2logistics.com - EDI Specialist
-
=== Schedule ===
+
* 6056 Fashion Square Drive, Suite 300 Salt Lake City, UT 84107
 +
 +
* Phone: 1-801-287-8489
 +
 
 +
== Schedule ==
 +
 
 +
=== Phases ===
 +
 
 +
Arden originally agreed to staged approach. We can first convert invoices just for one MOT and or Jag office. And later turn on others. TBC.
 +
 
 +
=== Aug 22 update ===
'''August''':
'''August''':
Line 38: Line 59:
* Th: 5 -  in production; ihelp monitoring
* Th: 5 -  in production; ihelp monitoring
* F: 6 -  in production; ihelp monitoring
* F: 6 -  in production; ihelp monitoring
 +
 +
=== Schedule Sept 2 update ===
 +
 +
'''Sept''':
 +
 +
* M: 2 - Dev/QA
 +
** (US holiday)
 +
* Tu: 3 - Dev/QA;
 +
** demo to Marc
 +
** feedback from Arden on Required Fields List;
 +
** expected approval from d2L reviewers
 +
* W: 4 -  QA
 +
* Th: 5 -  staging
 +
* F: 6 -  staging; Release at 7pm EST
== Definitions ==
== Definitions ==
Line 61: Line 96:
2) '''Additional long term business need''' is to support sending invoices electronically for any Bill To party/Client that requests that. This means ability to integrate with any EDI vendor. Challenge is to support various protocols and data requirements.
2) '''Additional long term business need''' is to support sending invoices electronically for any Bill To party/Client that requests that. This means ability to integrate with any EDI vendor. Challenge is to support various protocols and data requirements.
-
 
-
== Phases ==
 
-
 
-
<strike>Arden agreed to staged approach. We can first convert invoices just for one MOT and or Jag office. And later turn on others.</strike>
 
-
 
-
Sorry, above is not true anymore. First release should cover all MOTs, all Jag offices.
 
-
 
-
== See Also ==
 
-
 
-
* '''Protocol 210''' - pdf attached to parent mantis
 
-
** This Draft Standard for Trial Use contains the format and establishes the data contents of the Motor Carrier Freight Details and Invoice Transaction Set (210) for use within the context of an Electronic Data Interchange (EDI) environment. The transaction set can be used to provide detail information for charges for services rendered by a motor carrier. It is used both as a motor carrier invoice to request payment or as details pertaining to motor freight shipment(s) charges.
 
-
 
-
* [[EDI with Trendset]] and
 
-
* [[UG:Trendset USER GUIDE]]
 
-
** spec and user guide for similar project (EDI with Arden for Sales Invoices through Trendset)
 
-
 
-
* EDI 997 guide: http://www.1edisource.com/learn-about-edi/transaction-sets/tset/997#axzz2cjW09SlE
 
-
 
-
== Technical Requirements from data2solutions ==
 
-
 
-
''data2solutions'' that will accept all EDI messages for Arden communicated these requirements:
 
-
 
-
=== FTP ===
 
-
 
-
* post files on their ftp site
 
-
 
-
Address: freight.data2logistics.com
 
-
Username: JAFR1
 
-
Submission Folder: Inbound
 
-
997 Folder: Outbound
 
-
Password: ***
 
-
 
-
Same site for prod and pre-prod.
 
-
 
-
=== Protocols ===
 
-
 
-
* 110 Air Freight Invoice
 
-
* 210 Motor Carrier Freight Details and Invoice
 
-
* 310 Ocean Freight Invoice
 
-
 
-
See [[#See Also]] sec.
 
-
 
-
=== Items Required ===
 
-
 
-
<pre>
 
-
a. Ultimate Consignee must be captured for International Shipments
 
-
b. Invoice Number
 
-
c. Bill of Lading number
 
-
d. LOAD NUMBER (required for inbound only)
 
-
e. Shipper Acct # (only required for small package carriers)
 
-
f. Shipper info including address (city, state, zip and county code)
 
-
g. Consignee Info including address (city, state, zip and county code)
 
-
h. Port of Entry (only required air / ocean int. shipments)
 
-
i. Port of Departure (only required air / ocean int. shipments)
 
-
j. Delivery Date
 
-
k. Ship Date
 
-
l. Invoice Date
 
-
m. Total # of pieces
 
-
n. Total Weight
 
-
o. Billed Weight
 
-
p. Mileage
 
-
q. Movement Type (Mode and any expedited options)
 
-
r. Container Size (20, 40, 40HC, LCL) (only required air / ocean int. shipments)
 
-
s. Terms / Incoterms
 
-
t. Carrier Name
 
-
u. Pro#
 
-
v. Freight Cost
 
-
w. Accessorial costs
 
-
</pre>
 
-
 
-
* Misc:
 
-
 
-
ISA Qualifier: *ZZ*
 
-
ISA Receiver ID: ELARUS
 
-
GS Receiver ID: ELARUS
 
== Systems Analysis ==  
== Systems Analysis ==  
Line 181: Line 141:
*** XML format or plain text format (Java properties file as an option) stored on the server
*** XML format or plain text format (Java properties file as an option) stored on the server
-
In database:
+
=== DB ===
-
* some related parameters are kept in Invoice table
+
 
-
* add another table to keep:
+
Some related parameters are kept in Invoice table
-
** inv#
+
 
-
** status ()
+
Add another table. Attributes:
-
** EDI vendor (correct?)
+
* inv id
 +
* EDI Vendor id
 +
* EDI Status
 +
* transmit date
 +
* status date
 +
 
 +
Table is named as ''Shipment Invoice Transmission.''
 +
 
 +
===== EDI Status =====
 +
 
 +
This is attribute of the table above.
 +
 
 +
Takes values:
 +
 
 +
* New - until successful transmission
 +
* Transmitted - after successful transmission
 +
* Accepted - accepted by EDI Vendor and forwarded to Bill To party
 +
* Rejected - rejected by EDI vendor
=== Test Messages ===
=== Test Messages ===
Line 206: Line 183:
==== List of parameters for data2logistics ====
==== List of parameters for data2logistics ====
-
===== Admin params =====
+
===== Admin =====
-
* List of Bill To values (these define what invoices are to be sent to given EDI vendor)
+
Some params are defined through Admin section of CT2.
-
** see [[#Transmit From Date]]
+
 
 +
====== Admin params ======
 +
 
 +
* List of ''Bill To for EDI'' (these define what invoices are to be sent to given EDI vendor)
** see also [[#Bill To values list]]
** see also [[#Bill To values list]]
Line 215: Line 195:
* Transmission:
* Transmission:
-
** schedule (for example: transmit M,T,W,Th,F at 8pm EST)
+
** how often
** switch (enable/disable transmission options)
** switch (enable/disable transmission options)
-
====== Transmit From Date ======
+
====== Transmit Older Invoices ======
-
Transmit From Date is a date from which to search/transmit invoices. It is based on Created On Invoice date. After release we would have to transmit some invoices created in the past.
+
Admin should have such panel.
-
User should set this date separately with each Bill To Party.
+
Goal is to be able to transmit invoices issued before release of this module.
 +
 
 +
To do that in admin add 5-10 pairs of Transmit From Date + associated Bill To (or allow user select ho many pairs he wants). Plus "Schedule" button. On submit system would schedule this job to be run on general schedule OR run it right away.
 +
 
 +
* Transmit From Date is a date from which to search/transmit invoices. It is based on Created On Invoice date.
 +
 
 +
====== Regenerate and Resend Rejected Invoices checkbox ======
 +
 
 +
Add "Regenerate&Resend Rejected Invoices next time the process will run" checkbox.
 +
 
 +
Add note: Will be automatically be unchecked after process is finished.
 +
 
 +
When it is checked system will:
 +
 
 +
* re-generate all EDI files for Invoices flagged as Rejected
 +
* will resend them
 +
 
 +
====== Security for Admin ======
 +
 
 +
Implement any of these two options (whichever is faster):
 +
 
 +
option 1) Add access option for D2L Admin under Admin > Security > User Roles
 +
 
 +
option 2) give access only to superusers defined in super.user  list on the server
===== Config file params =====
===== Config file params =====
Line 238: Line 241:
*        EA USA Domestic – Roanoke
*        EA USA Domestic – Roanoke
-
=== Discovering and sending invoices ===
+
=== Creating Invoice ===
-
* Java process will wake up accordingly to defined in [[#Parameters]] schedule (for example once a day) and:
+
User experience of creating invoice that is to be transmitted through EDI would be the same with few exceptions, See below.
-
** a) discover what invoices are subject to transmission to given EDI vendor
+
-
** b) send to required destination using required protocol
+
-
* a and b above using [[#Parameters]]
+
* After user selects "Bill To Party" system will compare it with a list of Bill To parties registered in the CT2 as Bill To Parties for EDI (it is defined by user in [[#Admin]]). If there is a match system will do the following - see 1,2 below.
-
* two types of invoices will be sent:
+
* 1) Will add a prominent note to the Invoice Form (say in red below Inv Date field). It should say:
-
** all newly generated invoices since last transmission
+
Please Note:
-
** all failed invoices
+
* This invoice is identified to be transmitted through EDI
 +
based on selected Bill To Party.
 +
* As a result of this some fields are not editable on this form.
 +
To edit them go to appropriate CT Editor Tab (Gen, Imp, Exp or Com)
-
==== Fields to be sent ====
+
* 2) Make all fields on Invoice Form read-only except:
 +
** File ref#:
 +
** Invoice Comments:
 +
** Bill To
 +
** fields on Table Of Charges (TOC) section
-
Bill To Address:. Editable textarea with Address of Bill To Party:
+
Above is required to:
 +
* make sure that data on template/sales pdf is identical to data on CT Editor/DB 
 +
* to EDI-transmit proper info (can not be transmuted data for some fields such as Airline - it is to be code based not plain text as on template. Same problem with Shipper field, etc)
-
Date:. Text label. Set to current date (date of Invoice generating).
+
=== Translating invoice info into EDI format ===
-
CT ref#:. CT Number.
+
Invoice info is to be translated into EDI formats.
-
Shipper:. Shipper (a.k.a. GenTab.2) from GenTab of CT.
+
''data2solutions'' that will accept all EDI messages for Arden communicated these requirements - see below.
-
Consignee:. Consignee (a.k.a. GenTab.3) from GenTab of CT.
+
==== Protocols ====
-
AIRLINE:. Airline (a.k.a. ExpTab.4) from ExpTab of CT.
+
* 110 Air Freight Invoice
 +
* 210 Motor Carrier Freight Details and Invoice
 +
* 310 Ocean Freight Invoice
-
AIRPORT OF DEPARTURE:. Airport Of Departure (a.k.a. ExpTab.11a) from ExpTab of CT.
+
==== Fields ====
-
Date Of Departure:. Actual Time of Departure (ATD a.k.a. ExpTab.11c) from ExpTab of CT.
+
===== Credit Notes vs Invoices =====
-
AIRPORT OF DESTINATION:. Airport Of Destination (a.k.a. ExpTab.14a) from ExpTab of CT.
+
Credit Notes will be transmitted with the same set of fields as invoices. To distinguish between Invoice and Credit Note:
-
Estimated Date of Arrival:. Estimated Time of Arrival (ETA a.k.a. ExpTab.14b) from ExpTab of CT.
+
* there is indicator in B3 segment
 +
:* nothing for Sales Invoice
 +
:* '''CA''' ''(Cancelled Bill)'' for Credit Note
 +
* and also "-" sign before amount
-
Packages:. Group of totals from Grand Total Table (below Commodity Table) on ContTab of CT:
+
===== Group Logic =====
-
Pallets. Reflects Ttl # of plts.
+
If same vale is used for CT group and Individual CT cases '''then''' value is taken from CT from which invoice is issued.
-
Cartons on Pallets. Reflects Ttl pkgs on plts.
+
Those fields that have different logic for group vs individual CTs will have specific mapping identified in [[#Field Mapping]] section - see below.
-
Cartons (loose). Reflects Loose pkgs.
+
Example:
-
Weight/Volume:. Group of weight totals:
+
<pre>
 +
ISA*00*          *00*          *02*JAFR          *ZZ*ELARUS        *131022*1944*U*00401*000000001*0*T*>~
 +
GS*IM*JAFR*ELARUS3*20131022*194437*108490*X*004010~
 +
 
 +
ST*310*0001~
 +
B3**US46563*CT457078*TP*L*20131018*26480**20131018*035*JAFR***007~
 +
N9*PO*457078~
 +
V1* *  ~
 +
C3*USD~
 +
N1*BT*A BETTER LIFE LTD~
 +
N3*MICHAEL VAN CLARKE~
 +
N4*LONDON**W1G 6DF*GB~
 +
N1*SH*S&G HAMPTON SUN LLC~
 +
N3*50 EMJAY BLVD.~
 +
N4*BRENTWOOD*NY*11717*US~
 +
N1*CN*T. KAWABE & CO.,  LTD~
 +
N3*16-3, YOTSUYA 4-CHOME~
 +
N4*TOKYO**160-8403 *JP~
 +
R4*L***Baffin island~
 +
DTM*370*        ~
 +
R4*D***Naantali~
 +
DTM*372*        ~
 +
LX*1~
 +
N7*CONT*4570781********************20GP~
 +
N7*CONT*4570782********************40RQ~
 +
N7*CONT*4570791********************40HQ~
 +
N7*CONT*4570792********************20OT~
 +
N7*CONT*4570793********************20HQ~
 +
N7*ZZZZ*1231232********************20GP~
 +
L5*1*457078~
 +
L0*1***66213.64*N********673~
 +
L1*1*26.67**16000****301************EUR~
 +
L1*2*10.0**6000****307************USD~
 +
L3*66213.64*B***26480*******L~
 +
SE*31*0001~
 +
 
 +
ST*310*0002~
 +
B3**US46563*CT457079*TP*L*20131018*26480**20131018*035*JAFR***007~
 +
N9*PO*457078~
 +
V1* *  ~
 +
C3*USD~
 +
N1*BT*A BETTER LIFE LTD~
 +
N3*MICHAEL VAN CLARKE~
 +
N4*LONDON**W1G 6DF*GB~
 +
N1*SH*S&G HAMPTON SUN LLC~
 +
N3*50 EMJAY BLVD.~
 +
N4*BRENTWOOD*NY*11717*US~
 +
N1*CN*T. KAWABE & CO.,  LTD~
 +
N3*16-3, YOTSUYA 4-CHOME~
 +
N4*TOKYO**160-8403 *JP~
 +
R4*L***Baffin island~
 +
DTM*370*        ~
 +
R4*D***Naantali~
 +
DTM*372*        ~
 +
LX*1~
 +
N7*CONT*4570781********************20GP~
 +
N7*CONT*4570782********************40RQ~
 +
N7*CONT*4570791********************40HQ~
 +
N7*CONT*4570792********************20OT~
 +
N7*CONT*4570793********************20HQ~
 +
N7*ZZZZ*1231232********************20GP~
 +
L5*1*457078~
 +
L0*1***66213.64*N********673~
 +
L1*1*26.67**16000****301************EUR~
 +
L1*2*10.0**6000****307************USD~
 +
L3*66213.64*B***26480*******L~
 +
SE*31*0002~
 +
 
 +
ST*310*0003~
 +
B3**US46563*CT457080*TP*L*20131018*26480**20131018*035*JAFR***007~
 +
N9*PO*457078~
 +
V1* *  ~
 +
C3*USD~
 +
N1*BT*A BETTER LIFE LTD~
 +
N3*MICHAEL VAN CLARKE~
 +
N4*LONDON**W1G 6DF*GB~
 +
N1*SH*S&G HAMPTON SUN LLC~
 +
N3*50 EMJAY BLVD.~
 +
N4*BRENTWOOD*NY*11717*US~
 +
N1*CN*T. KAWABE & CO.,  LTD~
 +
N3*16-3, YOTSUYA 4-CHOME~
 +
N4*TOKYO**160-8403 *JP~
 +
R4*L***Baffin island~
 +
DTM*370*        ~
 +
R4*D***Naantali~
 +
DTM*372*        ~
 +
LX*1~
 +
N7*CONT*4570781********************20GP~
 +
N7*CONT*4570782********************40RQ~
 +
N7*CONT*4570791********************40HQ~
 +
N7*CONT*4570792********************20OT~
 +
N7*CONT*4570793********************20HQ~
 +
N7*ZZZZ*1231232********************20GP~
 +
L5*1*457078~
 +
L0*1***66213.64*N********673~
 +
L1*1*26.67**16000****301************EUR~
 +
L1*2*10.0**6000****307************USD~
 +
L3*66213.64*B***26480*******L~
 +
SE*31*0003~
 +
 
 +
GE*000003*108490~
 +
IEA*1*000000001~
 +
 
 +
</pre>
 +
 
 +
===== Field Mapping =====
 +
 
 +
See these wikis:
 +
 
 +
* [[Arden 110 Air]]
 +
* [[Arden 210 Truck]]
 +
* [[Arden 310 Ocean]]
 +
 
 +
===== "Elizabeth Arden – Roanoke" case =====
 +
<span style="color: red;">(not implemented yet)</span>
 +
 
 +
* Format for shipments showing “Shipper” '''Elizabeth Arden – Roanoke''' should substitute [[CT_bo#CT_Num| “CT #”]] with [[CT_bo#Customer_Ref| Client Ref #]] (''a.k.a. Gen Tab. C. Customer Ref #:'')
 +
:* EDI message positions: N902, L502.
 +
:* Examples: ''N9*BM*'''CT461423'''~'', ''L5*1*'''461423'''~''.
 +
* Format for all other shipments should remain the same ''(in current format)''.
 +
 
 +
=== Discovering and sending invoices ===
 +
 
 +
* Java process will wake up accordingly to defined in [[#Parameters]] schedule and:
 +
** a) discover what invoices are subject to transmission to given EDI vendor
 +
** b) send to required destination using required protocol
 +
 
 +
* a and b above using [[#Parameters]]
 +
 
 +
 
 +
Failed invoices can only be re-send manually
 +
 
 +
==== FTP ====
 +
 
 +
* post files on their ftp site
 +
 
 +
Address: freight.data2logistics.com
 +
Username: JAFR1
 +
Submission Folder: Inbound
 +
997 Folder: Outbound
 +
Password: ***
 +
 
 +
Same site for prod and pre-prod.
 +
 
 +
=== Archive for outbound files ===
 +
 
 +
We need to keep copy of all outbound files we send.
 +
 
 +
Ideally separate folders for different EDI Vendors.
 +
 
 +
To be cleaned up every X months.
=== Status Updates ===
=== Status Updates ===
Line 287: Line 452:
* System will update status attribute of invoice in DB accordingly
* System will update status attribute of invoice in DB accordingly
 +
 +
* See also [[Arden 997 Status]]
=== Invoice reporting ===
=== Invoice reporting ===
Line 311: Line 478:
** 1st level - standard counter
** 1st level - standard counter
** 2nd level - HTML table (use existing table we have for this rep)
** 2nd level - HTML table (use existing table we have for this rep)
-
** 3rd level - download to xls (use existing)
+
** 3rd level - download to xls
=== Logging ===  
=== Logging ===  
Line 350: Line 517:
If at least one invoice is rejected then group of users defined in [[#Parameters]] should be notified through e-mail.
If at least one invoice is rejected then group of users defined in [[#Parameters]] should be notified through e-mail.
-
== User Guide ==
+
== User Roles and Use Cases ==
-
 
+
-
Will be completed after dev is completed.
+
-
 
+
-
=== Intro ===
+
-
 
+
-
... module
+
-
 
+
-
=== Business Need ===
+
-
 
+
-
See [[#Business Need]].
+
=== User Roles ===
=== User Roles ===
Line 367: Line 524:
* Operator -
* Operator -
 +
** issue Inv or CN
 +
** ! issue credit note only against "Accepted" invoices !
* System process -  
* System process -  
* Accountant -  
* Accountant -  
 +
** track invoices that have been created several transmission periods ago but still in "New" or in "Rejected"
 +
. Report these cases to ihelp.
* Ihelp engineer -
* Ihelp engineer -
Line 388: Line 549:
==== Handling Failed Invoices ====
==== Handling Failed Invoices ====
-
=== Figures ===
+
== Ver 1.0 ==
-
 
+
-
[[File:Admin.png | 700px]]
+
-
 
+
-
 
+
-
 
+
-
[[File:Report.png | 700px]]
+
-
 
+
-
 
+
-
 
+
-
[[File:Report2.png | 700px]]
+
-
 
+
-
 
+
-
 
+
-
 
+
-
[[File:Log.png | 800px]]
+
-
 
+
-
== Initial SOWs ==
+
=== SOW 1 Create test message ===
=== SOW 1 Create test message ===
Line 425: Line 569:
'''spec''': see [[#Parameters]]
'''spec''': see [[#Parameters]]
-
=== SOW 4  Translating invoice info into 210 EDI format  ===
+
=== SOW 4  Translating invoice info into EDI format  ===
'''mantis''':  4257
'''mantis''':  4257
-
'''spec''':  see [[#Technical Requirements from data2solutions]]
+
'''spec''':  see [[#Translating invoice info into EDI format]]
=== SOW  5  Discovering and sending invoices ===
=== SOW  5  Discovering and sending invoices ===
Line 455: Line 599:
'''spec''': [[#Logging]] and [[#Email Notifications]]
'''spec''': [[#Logging]] and [[#Email Notifications]]
-
== SOWs After UAT and QA started ==
+
=== SOWs After UAT and QA started ===
=== SOW  9 Admin ===
=== SOW  9 Admin ===
Line 469: Line 613:
3) Add "Data2logistics Admin" to  "CT2 Main Menu > Acc > Sales Invoices EDI"
3) Add "Data2logistics Admin" to  "CT2 Main Menu > Acc > Sales Invoices EDI"
-
4) Create Admin page to manage:  [[#Admin params]] under "Data2logistics Admin" (see above)
+
4) Create [[#Admin]] page to manage:  [[#Admin params]] under "Data2logistics Admin" (see above)
-
 
+
-
5) see [[#Transmit From Date]]
+
 +
5) see [[#Transmit Older Invoices]]
=== SOW 10 Dashboard ===
=== SOW 10 Dashboard ===
Line 485: Line 628:
=== SOW 11 Changes to Issue New Invoice Form ===
=== SOW 11 Changes to Issue New Invoice Form ===
-
'''mantis''':   
+
'''mantis''': 4274
 +
 
 +
'''spec''': see [[#Creating Invoice]]
 +
 
 +
=== SOW 12 Add EDI status column to Invoice table on Inv Tab ===
 +
 
 +
'''mantis''': 4275
'''spec''':
'''spec''':
 +
 +
Add new column:
 +
 +
* column is [[#EDI Status]]
 +
* Add to Sales inv / Credit Notes table on Inv Tab
 +
* add on both CT Editor and CT Viewer
 +
* add to the right of column "Currency"
 +
 +
=== SOW 13 Add validations to Invoice Form ===
 +
 +
'''mantis''':  0004276
 +
 +
'''spec''':
 +
 +
* MOT Air:
 +
** fields list: [[Arden_110]]  '''(all required CT fields are defined now!)'''
 +
**add CC valid: 1101 must be present (hold OFF on this one - to be confirmed!!! )
 +
 +
* MOT Ocean
 +
** fields list:  [[Arden 310]]  '''(all required CT fields are defined now!)'''
 +
** add CC valid: 1301 or 1401 must be present (hold OFF on this one - to be confirmed!!! )
 +
 +
* MOT Truck
 +
** fields list: [[Arden 210]]  '''(all required CT fields are defined now except possibly ONE!)'''
 +
** add CC validation: at least one of these 3 codes must be present: 1501, 1503, 1505 (hold OFF on this one - to be confirmed!!! )
 +
 +
* UI (option 1):
 +
** System would display say red star next to missing fields and NOTE would have additional bullet saying: Fields marked * are required. Please go back to CT Tabs to fill in required fields.  Or any alternative design.
 +
 +
* UI (option 2) SIMPLER! WE DO NOT HAVE TIME!:
 +
** just display list of missing required fields in pop-up with [OK] button
 +
 +
=== SOW 14 Add charge rate ===
 +
 +
'''mantis''':  4286
 +
 +
'''spec''':
 +
 +
Transmit additional field:
 +
 +
* [[Arden_110#Charge_Rate]]
 +
* [[Arden_210#Charge_Rate]]
 +
* [[Arden_310#Charge_Rate]]
 +
 +
=== SOW 15 ===
 +
 +
==== Logic for one vs multiple currency and main currency  ====
 +
 +
'''mantis''':
 +
 +
'''spec''': 0004299
 +
 +
In Admin we need:
 +
 +
* main currency defined
 +
 +
To have a choice:
 +
 +
* a) allow multiple currencies
 +
* b) do not allow multiple currencies
 +
 +
When creating invoice with Bill To linked to Data2Logistics system will:
 +
* default currency in TOC line items and total to "main currency" defined in Admin
 +
* validate that total is always in main currency
 +
* validate that no other currencies are used for CC lines in case option "b" is selected above
 +
 +
=== SOW 16  Change mapping for Ship and Delivery dates ===
 +
 +
'''mantis''':  004298
 +
 +
'''spec''':
 +
 +
1) CT mappings for these 2 dates has changed. Instead of Doors we will send Ports. This is because we do not always handle Doors. But from port to port always.
 +
 +
See spec below:
 +
 +
* [[Arden_110#Delivery_Date]] and [[Arden_110#Ship_Date]]
 +
* [[Arden_210#Delivery_Date]] and [[Arden_210#Ship_Date]]
 +
* [[Arden_310#Delivery_Date]] and [[Arden_310#Ship_Date]]
 +
 +
Note that I updated wiki named "CT" so all mappings are correct and detailed (per MOT). Read it!
 +
 +
2) Change Invoice Form validations accordingly!
 +
 +
=== SOW 17 Fix Weight Qualifier and Weight value ===
 +
 +
'''mantis''':  4308
 +
 +
'''spec''':
 +
 +
* Set proper Weight Qualifier
 +
* set non zero value for Weight for all 3 modes
 +
 +
see how in specs updated below:
 +
 +
* [[Arden_110#Total_Weight]]
 +
* [[Arden_110#Billed_Weight]]
 +
 +
* [[Arden_210#Total_Weight]]
 +
* [[Arden_210#Billed_Weight]]
 +
 +
* [[Arden_310#Total_Weight]]
 +
* [[Arden_310#Billed_Weight]]
 +
 +
=== SOW 18 Fix Container info ===
 +
 +
'''mantis''': 4314
 +
 +
'''spec''' below
 +
 +
'''Requirement''':
 +
 +
D2L needs container size/type info be sent using D2L codes -  see [[File:Container Codes.xls]] (two tabs!)
 +
 +
'''Solution''':
 +
 +
1) Send '''D2L container code''' for each container on invoice:
 +
* see [[Arden_310#Container_Info]]
 +
 +
2) Add ability to manage '''D2L container codes''' in the system:
 +
* ability to set code for existing and new size/type combinations
 +
 +
Redesign this UI:
 +
* see Admin > Transportation > Container Sizes
 +
* see Admin > Transportation > Container Types
 +
 +
New UI:
 +
* on Add or Edit Cont Size or Type add ability to set codes for corresponding size/type combinations.
 +
 +
Code format (add validation):
 +
* Alphanumeric, at least one char, up to 4 chars
 +
 +
Field name in Admin: D2L Code
 +
 +
Tech Note
 +
---------
 +
New DB table will be added with attributes:
 +
- Cont size id
 +
- Cont type id
 +
- D2L container code
 +
 +
=== SOW 19 Post all L1 elements in one LX segment ===
 +
 +
'''mantis''':  4330
 +
 +
'''spec''' below
 +
 +
Post all L1 elements in one LX segment. Example 1a below is how we do it now. Example 1b is how it should be.
 +
 +
Example 1a.
 +
----------
 +
LX*1
 +
N7*TRLU*6503571********************40GP
 +
L5*1*TCIX1305LA25
 +
L0*1***8373.82*N********0
 +
L1*1*0.0**95000****701************USD
 +
LX*2
 +
L1*2*0.0**66300****704************USD
 +
LX*3
 +
L1*3*0.0**12300****315************USD
 +
LX*4
 +
L1*4*0.0**3500****604************USD
 +
LX*5
 +
L1*5*0.0**860000****503************USD
 +
L3*8373.82*B***1037100*******L
 +
 +
Example 1b.
 +
----------
 +
LX*1
 +
N7*TRLU*6503571********************40GP
 +
L5*1*TCIX1305LA25
 +
L0*1***8373.82*N********0
 +
L1*1*0.0**95000****701************USD
 +
L1*2*0.0**66300****704************USD
 +
L1*3*0.0**12300****315************USD
 +
L1*4*0.0**3500****604************USD
 +
L1*5*0.0**860000****503************USD
 +
L3*8373.82*B***1037100*******L
 +
 +
=== SOW 20 Security for Admin ===
 +
 +
mantis: 4341
 +
 +
spec: [[#Security for Admin]]
 +
 +
=== SOW 21 Create two separated "formats" ===
 +
 +
mantis: 4425 <span style="color: red;">(not implemented yet)</span>
 +
 +
spec: [[#"Elizabeth Arden – Roanoke" case]]
 +
 +
 +
=== SOW 22 Unique POs in N9 segments in the header level ===
 +
 +
mantis: 4745
 +
 +
'''spec''' below
 +
 +
'''Requirement''':
 +
 +
When Invoice UK19157 was rejected, it contained over 100 N9 segments in the header level and 100 was the max for receiving on D2Lside.<br/ >Also it was noticed multiple N9 segments with the same one PO coming through multiple times.<br/ >''For example,'' the PO #3829814 coming through 27 times and PO #3829731 coming through 75 times.
 +
 +
'''Solution''':
 +
 +
D2L advised that don't need to send a repeated PO # that many times, so we decided to include only unique POs in EDI form of sending Invoices.
 +
Example '''before''' implementation:
 +
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829814~
 +
N9*PO*3829811~
 +
N9*PO*3829811~
 +
N9*PO*3829731~
 +
N9*PO*3829731~
 +
N9*PO*3829731~
 +
N9*PO*3829731~
 +
N9*PO*3829731~
 +
 +
Example '''after''' implementation:
 +
 +
N9*PO*3829814~
 +
N9*PO*3829811~
 +
N9*PO*3829731~

Current revision as of 14:31, 12 February 2015


Contents

[edit] Info

[edit] Mantis

mantis parent: 0004242

mantis project: D2L

[edit] Contacts

Jessie:

  • Jessie.Falls@ElizabethArden.com - Transportation Manager

Dawn:

  • Dawn.Byrum@data2logistics.com - Global Solutions Analyst
  • 12631 Westlinks Dr. Fort Myers, FL 33913-8627
  • Phone: 1-706-335-4502

Brandon:

  • brandon.heaton@data2logistics.com - EDI Specialist
  • 6056 Fashion Square Drive, Suite 300 Salt Lake City, UT 84107
  • Phone: 1-801-287-8489

[edit] Schedule

[edit] Phases

Arden originally agreed to staged approach. We can first convert invoices just for one MOT and or Jag office. And later turn on others. TBC.

[edit] Aug 22 update

August:

  • M: 19 - Dev phase; tests with vendor
  • Tu: 20 - Dev phase; tests with vendor
  • W: 21 - Dev phase; tests with vendor
  • Th: 22 - Dev phase; tests with vendor
  • Fri: 23 - All dev completed; QA/bugfix started; UAT demo;
  • M: 26 (Ukr holiday); SIT; UAT(Marc)
  • Tu: 27 - QA/changes/bugfix/tests with vendor; SIT;UAT(Marc)
  • W: 28 - QA/changes/bugfix/tests with vendor; SIT/User Guide/training
  • Th: 29 - QA/changes/bugfix/tests with vendor; SIT/User Guide/training
  • F: 30 - staging; User Guide/training

Sept:

  • M: 2 (US holiday) - staging
  • Tu: 3 - staging; Release at 7pm EST
  • W: 4 - in production; ihelp monitoring
  • Th: 5 - in production; ihelp monitoring
  • F: 6 - in production; ihelp monitoring

[edit] Schedule Sept 2 update

Sept:

  • M: 2 - Dev/QA
    • (US holiday)
  • Tu: 3 - Dev/QA;
    • demo to Marc
    • feedback from Arden on Required Fields List;
    • expected approval from d2L reviewers
  • W: 4 - QA
  • Th: 5 - staging
  • F: 6 - staging; Release at 7pm EST

[edit] Definitions

  • EDI - Electronic Data Interface
  • EDI partner - vendor that receives invoices electronically , validates them and then posts them into company's information system

[edit] Business Need

1) Immediate business need is to respond to Elizabeth Arden's request to start sending most invoices electronically (through EDI).

This would cover:

  • all MOTs and
  • all Jaguar offices

Exceptions:

  • invoices for Maintenance, Web Portal and Administration fees would still be send through regular mail

Arden has a new EDI partner company to support this: data2logistics.

Arden discontinued similar EDI with previous EDI partner Trendset permanently about 1 month ago.

2) Additional long term business need is to support sending invoices electronically for any Bill To party/Client that requests that. This means ability to integrate with any EDI vendor. Challenge is to support various protocols and data requirements.

[edit] Systems Analysis

[edit] Parameters in general

Number of parameters needs to be defined for each possible case of EDI integration for the purpose of sending sales invoices electronically.

Each case is defined by the following:

  • typical case is when one company that Jaguar is invoicing have contracted only one vendor for these types of transmissions
  • more complex case is when several companies are contracted
  • each case is also defined by:
    • list of Bill To parties (Invoice parameter)
    • possibly list of MOTs supported
    • possibly other parameters

Other parameters:

  • Case id. Values = {1,2,3,....}
  • Vendor. Values = {data2logistics, ... }
  • Content Protocol. Values = {XML, EDI, ...}
  • Transport.
    • protocol. Values = {FTP, ...}
    • connection credentials for inbound / outbound


[edit] Solution

[edit] Architecture

Since many Jaguar client companies would start/stop sending invoices through various EDI providers it would be nice to create generic solution to accommodate that.

Per discussion with Kostya, Misha, Alex solution should satisfy principles below.

  • create set of java interfaces that will cover different future scenarios:
    • different message protocols (XML, EDI, etc)
    • different transport protocols (FTP, etc)
    • different Bill To Company requirements
  • configuration/parameters:
    • should not be kept in DB
    • should be managed through both
      • UI based admin
      • XML format or plain text format (Java properties file as an option) stored on the server

[edit] DB

Some related parameters are kept in Invoice table

Add another table. Attributes:

  • inv id
  • EDI Vendor id
  • EDI Status
  • transmit date
  • status date

Table is named as Shipment Invoice Transmission.

[edit] EDI Status

This is attribute of the table above.

Takes values:

  • New - until successful transmission
  • Transmitted - after successful transmission
  • Accepted - accepted by EDI Vendor and forwarded to Bill To party
  • Rejected - rejected by EDI vendor

[edit] Test Messages

  • Create and send several test EDI files to data2logistics.
  • Write by hand some examples first and email to vendor. Later produce examples as they are generated by CT2 code.
  • Send through e-mail first and later again post to FTP defined by vendor.
  • Samples should be of recent 2013 invoices.
  • Provide one for each mode: air, ocean, trucking.

[edit] Parameters

How to store them - see #Architecture.

[edit] List of parameters for data2logistics

[edit] Admin

Some params are defined through Admin section of CT2.

[edit] Admin params
  • List of Bill To for EDI (these define what invoices are to be sent to given EDI vendor)
  • Email notifications list
  • Transmission:
    • how often
    • switch (enable/disable transmission options)
[edit] Transmit Older Invoices

Admin should have such panel.

Goal is to be able to transmit invoices issued before release of this module.

To do that in admin add 5-10 pairs of Transmit From Date + associated Bill To (or allow user select ho many pairs he wants). Plus "Schedule" button. On submit system would schedule this job to be run on general schedule OR run it right away.

  • Transmit From Date is a date from which to search/transmit invoices. It is based on Created On Invoice date.
[edit] Regenerate and Resend Rejected Invoices checkbox

Add "Regenerate&Resend Rejected Invoices next time the process will run" checkbox.

Add note: Will be automatically be unchecked after process is finished.

When it is checked system will:

  • re-generate all EDI files for Invoices flagged as Rejected
  • will resend them
[edit] Security for Admin

Implement any of these two options (whichever is faster):

option 1) Add access option for D2L Admin under Admin > Security > User Roles

option 2) give access only to superusers defined in super.user list on the server

[edit] Config file params
  • Inbound folder credentials (address, login, pwd)
  • Outbound folder credentials (address, login, pwd)
[edit] Bill To values list

Per Marc initial list is this:

  • EA Domestic Portal – Roanoke
  • Elizabeth Arden – Roanoke
  • Elizabeth Arden Int'l Sarl C/O 4 Pole SA – Cointrin-Geneva
  • EA USA Domestic – Roanoke

[edit] Creating Invoice

User experience of creating invoice that is to be transmitted through EDI would be the same with few exceptions, See below.

  • After user selects "Bill To Party" system will compare it with a list of Bill To parties registered in the CT2 as Bill To Parties for EDI (it is defined by user in #Admin). If there is a match system will do the following - see 1,2 below.
  • 1) Will add a prominent note to the Invoice Form (say in red below Inv Date field). It should say:
Please Note: 
* This invoice is identified to be transmitted through EDI 
based on selected Bill To Party.
* As a result of this some fields are not editable on this form. 
To edit them go to appropriate CT Editor Tab (Gen, Imp, Exp or Com)
  • 2) Make all fields on Invoice Form read-only except:
    • File ref#:
    • Invoice Comments:
    • Bill To
    • fields on Table Of Charges (TOC) section

Above is required to:

  • make sure that data on template/sales pdf is identical to data on CT Editor/DB
  • to EDI-transmit proper info (can not be transmuted data for some fields such as Airline - it is to be code based not plain text as on template. Same problem with Shipper field, etc)

[edit] Translating invoice info into EDI format

Invoice info is to be translated into EDI formats.

data2solutions that will accept all EDI messages for Arden communicated these requirements - see below.

[edit] Protocols

  • 110 Air Freight Invoice
  • 210 Motor Carrier Freight Details and Invoice
  • 310 Ocean Freight Invoice

[edit] Fields

[edit] Credit Notes vs Invoices

Credit Notes will be transmitted with the same set of fields as invoices. To distinguish between Invoice and Credit Note:

  • there is indicator in B3 segment
  • nothing for Sales Invoice
  • CA (Cancelled Bill) for Credit Note
  • and also "-" sign before amount
[edit] Group Logic

If same vale is used for CT group and Individual CT cases then value is taken from CT from which invoice is issued.

Those fields that have different logic for group vs individual CTs will have specific mapping identified in #Field Mapping section - see below.

Example:

ISA*00*          *00*          *02*JAFR           *ZZ*ELARUS         *131022*1944*U*00401*000000001*0*T*>~
GS*IM*JAFR*ELARUS3*20131022*194437*108490*X*004010~

ST*310*0001~
B3**US46563*CT457078*TP*L*20131018*26480**20131018*035*JAFR***007~
N9*PO*457078~
V1* *  ~
C3*USD~
N1*BT*A BETTER LIFE LTD~
N3*MICHAEL VAN CLARKE~
N4*LONDON**W1G 6DF*GB~
N1*SH*S&G HAMPTON SUN LLC~
N3*50 EMJAY BLVD.~
N4*BRENTWOOD*NY*11717*US~
N1*CN*T. KAWABE & CO.,  LTD~
N3*16-3, YOTSUYA 4-CHOME~
N4*TOKYO**160-8403 *JP~
R4*L***Baffin island~
DTM*370*        ~
R4*D***Naantali~
DTM*372*        ~
LX*1~
N7*CONT*4570781********************20GP~
N7*CONT*4570782********************40RQ~
N7*CONT*4570791********************40HQ~
N7*CONT*4570792********************20OT~
N7*CONT*4570793********************20HQ~
N7*ZZZZ*1231232********************20GP~
L5*1*457078~
L0*1***66213.64*N********673~
L1*1*26.67**16000****301************EUR~
L1*2*10.0**6000****307************USD~
L3*66213.64*B***26480*******L~
SE*31*0001~

ST*310*0002~
B3**US46563*CT457079*TP*L*20131018*26480**20131018*035*JAFR***007~
N9*PO*457078~
V1* *  ~
C3*USD~
N1*BT*A BETTER LIFE LTD~
N3*MICHAEL VAN CLARKE~
N4*LONDON**W1G 6DF*GB~
N1*SH*S&G HAMPTON SUN LLC~
N3*50 EMJAY BLVD.~
N4*BRENTWOOD*NY*11717*US~
N1*CN*T. KAWABE & CO.,  LTD~
N3*16-3, YOTSUYA 4-CHOME~
N4*TOKYO**160-8403 *JP~
R4*L***Baffin island~
DTM*370*        ~
R4*D***Naantali~
DTM*372*        ~
LX*1~
N7*CONT*4570781********************20GP~
N7*CONT*4570782********************40RQ~
N7*CONT*4570791********************40HQ~
N7*CONT*4570792********************20OT~
N7*CONT*4570793********************20HQ~
N7*ZZZZ*1231232********************20GP~
L5*1*457078~
L0*1***66213.64*N********673~
L1*1*26.67**16000****301************EUR~
L1*2*10.0**6000****307************USD~
L3*66213.64*B***26480*******L~
SE*31*0002~

ST*310*0003~
B3**US46563*CT457080*TP*L*20131018*26480**20131018*035*JAFR***007~
N9*PO*457078~
V1* *  ~
C3*USD~
N1*BT*A BETTER LIFE LTD~
N3*MICHAEL VAN CLARKE~
N4*LONDON**W1G 6DF*GB~
N1*SH*S&G HAMPTON SUN LLC~
N3*50 EMJAY BLVD.~
N4*BRENTWOOD*NY*11717*US~
N1*CN*T. KAWABE & CO.,  LTD~
N3*16-3, YOTSUYA 4-CHOME~
N4*TOKYO**160-8403 *JP~
R4*L***Baffin island~
DTM*370*        ~
R4*D***Naantali~
DTM*372*        ~
LX*1~
N7*CONT*4570781********************20GP~
N7*CONT*4570782********************40RQ~
N7*CONT*4570791********************40HQ~
N7*CONT*4570792********************20OT~
N7*CONT*4570793********************20HQ~
N7*ZZZZ*1231232********************20GP~
L5*1*457078~
L0*1***66213.64*N********673~
L1*1*26.67**16000****301************EUR~
L1*2*10.0**6000****307************USD~
L3*66213.64*B***26480*******L~
SE*31*0003~

GE*000003*108490~
IEA*1*000000001~

[edit] Field Mapping

See these wikis:

[edit] "Elizabeth Arden – Roanoke" case

(not implemented yet)

  • Format for shipments showing “Shipper” Elizabeth Arden – Roanoke should substitute “CT #” with Client Ref # (a.k.a. Gen Tab. C. Customer Ref #:)
  • EDI message positions: N902, L502.
  • Examples: N9*BM*CT461423~, L5*1*461423~.
  • Format for all other shipments should remain the same (in current format).

[edit] Discovering and sending invoices

  • Java process will wake up accordingly to defined in #Parameters schedule and:
    • a) discover what invoices are subject to transmission to given EDI vendor
    • b) send to required destination using required protocol


Failed invoices can only be re-send manually

[edit] FTP

  • post files on their ftp site
Address: freight.data2logistics.com
Username: JAFR1
Submission Folder: Inbound 
997 Folder: Outbound
Password: ***

Same site for prod and pre-prod.

[edit] Archive for outbound files

We need to keep copy of all outbound files we send.

Ideally separate folders for different EDI Vendors.

To be cleaned up every X months.

[edit] Status Updates

  • Rejected invoices will be handled automatically via the 997 (or the ‘functional acknowledgment’) that will be placed in the outbound folder of the FTP for Jaguar to retrieve
  • System will update status attribute of invoice in DB accordingly

[edit] Invoice reporting

Add to Search Invoices Report the below.

Filters:

  • EDI Vendor (name of the company that receives given invoice through EDI)
  • EDI status (accepted vs rejected)
  • date invoice was transmitted
  • date EDI status was received

Output fields:

  • EDI status (accepted vs rejected)
  • date invoice was transmitted
  • date EDI status was received

[edit] Dashboard

  • add option to Search Invoices Report to be a "dashboard report"
    • managed through Scheduled Reports Menu
    • 1st level - standard counter
    • 2nd level - HTML table (use existing table we have for this rep)
    • 3rd level - download to xls

[edit] Logging

Post into Log component.

Add "Sales Inv EDI" category

Post events related to:

For a/ create one entry

  • that summarizes under "Description" log field:
    • when process run
    • how many invoices/cr notes were discovered and sent
    • list of inv numbers
  • other log fields:
    • "User / Office" = Inv EDI process
    • "Operation" = sending

For b/ create one entry

  • that summarizes under "Description" log field:
    • when update was discovered
    • how many invoices/cr notes were received with success and how many with failed status
    • list of inv numbers with success and list with failed status
  • other log fields:
    • "User / Office" = Inv EDI process
    • "Operation" = updates

[edit] Log for Admin

Add standard logging for #Admin params.

[edit] Email Notifications

If at least one invoice is rejected then group of users defined in #Parameters should be notified through e-mail.

[edit] User Roles and Use Cases

[edit] User Roles

  • Admin -
  • Operator -
    • issue Inv or CN
    •  ! issue credit note only against "Accepted" invoices !
  • System process -
  • Accountant -
    • track invoices that have been created several transmission periods ago but still in "New" or in "Rejected"

. Report these cases to ihelp.

  • Ihelp engineer -

[edit] Use Cases

[edit] Initial Set Up

[edit] Changing parameters

[edit] Creating Invoice

[edit] Sending Invoice

[edit] Monitoring

[edit] Handling Failed Invoices

[edit] Ver 1.0

[edit] SOW 1 Create test message

mantis: 4249

spec: #Test Messages

[edit] SOW 2 Create Architecture

mantis: 4251

spec: #Architecture

[edit] SOW 3 Defining and editing all parameters

mantis: 0004262

spec: see #Parameters

[edit] SOW 4 Translating invoice info into EDI format

mantis: 4257

spec: see #Translating invoice info into EDI format

[edit] SOW 5 Discovering and sending invoices

mantis: 4258

spec: #Discovering and sending invoices

[edit] SOW 6 Receiving Status updates

mantis: 4259

spec: #Status Updates

[edit] SOW 7 Invoice reporting through Search Inv Report

mantis: 4260

spec: #Invoice reporting

[edit] SOW 8 Logging and Email Notifications

mantis: 4261

spec: #Logging and #Email Notifications

[edit] SOWs After UAT and QA started

[edit] SOW 9 Admin

mantis: 4742

spec:

1) Add "Sales Invoices EDI" item to "CT2 Main Menu > Acc"

2) Move "CT2 Main Menu > Admin > Acc > Trendset Admin" to "CT2 Main Menu > Acc > Sales Invoices EDI"

3) Add "Data2logistics Admin" to "CT2 Main Menu > Acc > Sales Invoices EDI"

4) Create #Admin page to manage: #Admin params under "Data2logistics Admin" (see above)

5) see #Transmit Older Invoices

[edit] SOW 10 Dashboard

mantis: 4273

spec:

[edit] SOW 11 Changes to Issue New Invoice Form

mantis: 4274

spec: see #Creating Invoice

[edit] SOW 12 Add EDI status column to Invoice table on Inv Tab

mantis: 4275

spec:

Add new column:

  • column is #EDI Status
  • Add to Sales inv / Credit Notes table on Inv Tab
  • add on both CT Editor and CT Viewer
  • add to the right of column "Currency"

[edit] SOW 13 Add validations to Invoice Form

mantis: 0004276

spec:

  • MOT Air:
    • fields list: Arden_110 (all required CT fields are defined now!)
    • add CC valid: 1101 must be present (hold OFF on this one - to be confirmed!!! )
  • MOT Ocean
    • fields list: Arden 310 (all required CT fields are defined now!)
    • add CC valid: 1301 or 1401 must be present (hold OFF on this one - to be confirmed!!! )
  • MOT Truck
    • fields list: Arden 210 (all required CT fields are defined now except possibly ONE!)
    • add CC validation: at least one of these 3 codes must be present: 1501, 1503, 1505 (hold OFF on this one - to be confirmed!!! )
  • UI (option 1):
    • System would display say red star next to missing fields and NOTE would have additional bullet saying: Fields marked * are required. Please go back to CT Tabs to fill in required fields. Or any alternative design.
  • UI (option 2) SIMPLER! WE DO NOT HAVE TIME!:
    • just display list of missing required fields in pop-up with [OK] button

[edit] SOW 14 Add charge rate

mantis: 4286

spec:

Transmit additional field:

[edit] SOW 15

[edit] Logic for one vs multiple currency and main currency

mantis:

spec: 0004299

In Admin we need:

  • main currency defined

To have a choice:

  • a) allow multiple currencies
  • b) do not allow multiple currencies

When creating invoice with Bill To linked to Data2Logistics system will:

  • default currency in TOC line items and total to "main currency" defined in Admin
  • validate that total is always in main currency
  • validate that no other currencies are used for CC lines in case option "b" is selected above

[edit] SOW 16 Change mapping for Ship and Delivery dates

mantis: 004298

spec:

1) CT mappings for these 2 dates has changed. Instead of Doors we will send Ports. This is because we do not always handle Doors. But from port to port always.

See spec below:

Note that I updated wiki named "CT" so all mappings are correct and detailed (per MOT). Read it!

2) Change Invoice Form validations accordingly!

[edit] SOW 17 Fix Weight Qualifier and Weight value

mantis: 4308

spec:

  • Set proper Weight Qualifier
  • set non zero value for Weight for all 3 modes

see how in specs updated below:

[edit] SOW 18 Fix Container info

mantis: 4314

spec below

Requirement:

D2L needs container size/type info be sent using D2L codes - see File:Container Codes.xls (two tabs!)

Solution:

1) Send D2L container code for each container on invoice:

2) Add ability to manage D2L container codes in the system:

  • ability to set code for existing and new size/type combinations

Redesign this UI:

  • see Admin > Transportation > Container Sizes
  • see Admin > Transportation > Container Types

New UI:

  • on Add or Edit Cont Size or Type add ability to set codes for corresponding size/type combinations.

Code format (add validation):

  • Alphanumeric, at least one char, up to 4 chars

Field name in Admin: D2L Code

Tech Note
---------
New DB table will be added with attributes:
- Cont size id
- Cont type id
- D2L container code

[edit] SOW 19 Post all L1 elements in one LX segment

mantis: 4330

spec below

Post all L1 elements in one LX segment. Example 1a below is how we do it now. Example 1b is how it should be.

Example 1a.
----------
LX*1
N7*TRLU*6503571********************40GP
L5*1*TCIX1305LA25
L0*1***8373.82*N********0
L1*1*0.0**95000****701************USD
LX*2
L1*2*0.0**66300****704************USD
LX*3
L1*3*0.0**12300****315************USD
LX*4
L1*4*0.0**3500****604************USD
LX*5
L1*5*0.0**860000****503************USD
L3*8373.82*B***1037100*******L
Example 1b.
----------
LX*1
N7*TRLU*6503571********************40GP
L5*1*TCIX1305LA25
L0*1***8373.82*N********0
L1*1*0.0**95000****701************USD
L1*2*0.0**66300****704************USD
L1*3*0.0**12300****315************USD
L1*4*0.0**3500****604************USD
L1*5*0.0**860000****503************USD
L3*8373.82*B***1037100*******L

[edit] SOW 20 Security for Admin

mantis: 4341

spec: #Security for Admin

[edit] SOW 21 Create two separated "formats"

mantis: 4425 (not implemented yet)

spec: #"Elizabeth Arden – Roanoke" case


[edit] SOW 22 Unique POs in N9 segments in the header level

mantis: 4745

spec below

Requirement:

When Invoice UK19157 was rejected, it contained over 100 N9 segments in the header level and 100 was the max for receiving on D2Lside.
Also it was noticed multiple N9 segments with the same one PO coming through multiple times.
For example, the PO #3829814 coming through 27 times and PO #3829731 coming through 75 times.

Solution:

D2L advised that don't need to send a repeated PO # that many times, so we decided to include only unique POs in EDI form of sending Invoices.

Example before implementation:

N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829814~
N9*PO*3829811~
N9*PO*3829811~
N9*PO*3829731~
N9*PO*3829731~
N9*PO*3829731~
N9*PO*3829731~
N9*PO*3829731~ 
Example after implementation:

N9*PO*3829814~
N9*PO*3829811~
N9*PO*3829731~
Personal tools