Difference between revisions of "Sponsored Development: EDI Import/Export"
From ADempiere
This Wiki is read-only for reference purposes to avoid broken links.
(→Status) |
m (→Status) |
||
Line 30: | Line 30: | ||
* Inbound processing - To be developed. | * Inbound processing - To be developed. | ||
** Develop componenet on JBoss Server which checks for new EDI documents on specified server(FTP). | ** Develop componenet on JBoss Server which checks for new EDI documents on specified server(FTP). | ||
− | ** Develop | + | ** Develop Adempiere class which handle import of EDI document into Adempiere instance. |
===Requirements=== | ===Requirements=== |
Revision as of 09:06, 28 July 2007
Contents
- 1 Project Team
- 2 Requirements
- 2.1 Outbound Processing
- 2.2 Inbound Processing
- 2.3 Create new windows
- 2.4 Add Table: "C_EDI_DocType"
- 2.5 Add to "Document Type" window
- 2.6 Add Table: "C_EDIFormat"
- 2.7 Add Table: "C_EDIFormat_Line"
- 2.8 Add Table: "C_EDIFormat_LineElement"
- 2.9 Add Table: "C_EDIProcessorType"
- 2.10 Add Table: "C_EDIProcessor"
- 2.11 Add Table: "C_BPartner_EDI"
Project Team
Coordinator
Functional Specs
Developers
Testers
Sponsors
Status
- Out band processing - Working with exception of few issues which must be solved.
- Source location - contributions/253b/comxe/_Project-ID-EDI/
- Instructions how to integrate with Adempiere - contributions/253b/comxe/ReadMe.txt
- sf.net Tasks
- Inbound processing - To be developed.
- Develop componenet on JBoss Server which checks for new EDI documents on specified server(FTP).
- Develop Adempiere class which handle import of EDI document into Adempiere instance.
Requirements
Outbound Processing
hit the "Submit EDI" button. "Submit EDI" button is active only after document is Completed.
- Runs process that:
- Look up the DocumentType to see what "Doc Type" to use.
- Look up the BPartner
- Look up right "EDI Format", "EDI Processor" for BPartner and DocType.
- Read the EDI Format and the document lines to construct the EDI document.
- Get the data strings using ColumnID, and use Type to decide which separator to use.
- Order them by position.
- Truncate lengths, validate usage.
- Using the info from C_EDIProcessor submit the EDI document.
- Runs process that:
Inbound Processing
- Use the scheduler to schedule a process that will poll according to the rules configured on C_EDIProcessor
- Look up the Business Partner and EDI_DocType to determine which format to use to parse the file and which document type to create.
As an alternative, C_EDIProcessor could define a JMS queue to post to.
Then we could manage the movement of the data with ServiceMix.
Create new windows
Add Table: "C_EDI_DocType"
- Fields: C_EDI_DocType_ID; Value, Name, Description, Help
- Samples: (850 PO, 810 Invoice)
Add to "Document Type" window
- Field: C_EDIFormat_ID
Add Table: "C_EDIFormat"
- fields: C_EDIFormat_ID, EDI Format Name, Value, C_EDI_DocType_ID, AD_Table_ID, SegmentSeparator, FieldSeparator
Add Table: "C_EDIFormat_Line"
- fields: C_EDIFormat_ID, Position, Value, Name, Comments, Type(Element, Segment)
Add Table: "C_EDIFormat_LineElement"
- fields: C_EDIFormat_LineElement_ID, Position, Value, Name, IsMandatory, ElementType(Constant, Field), ConstValue, MinFieldLength
Add Table: "C_EDIProcessorType"
This table makes flexible addition of new types in future.
- fields: Value(http, ftp, svn, cvs), JavaClass (this is class which is responsible to handle upload of EDI document)
Add Table: "C_EDIProcessor"
- fields: Host, Account, Password Info, C_EDIProcessorType_ID
Add Table: "C_BPartner_EDI"
- fields: C_BPartner_ID, C_EDIFormat_ID, Inbound(Y,N), C_EDIProcessor_ID, C_DocType_ID