Projects:Outbound Email/Specifications
Contents |
Outbound Email - Functional Specifications
Overview
The Outbound Email Integration module allows you to initiate an outbound email flow from Openbravo ERP and to send copies of documents, such as sales orders, purchase orders, or invoices to your business partners.
In conjunction with the Interaction History module, this integration allows you to preserve an history of emails that were sent to a business partner.
It has been improved the document generation in order to include the document's customization capability depending on the Organization.
Purpose
The main purposes of this project are:
- Being able to customize the documents depending on the Organization.
- Being able to send documents via email to customers.
- Being able to archive the documents sent to have an historic of the sent documents that can be retrieved.
Scope
This project will include:
- Create a window to being able to configure a Point of Contact for each Organization.
- Create a window to being able to configure different report templates for each Document Type.
- Create a window to being able to configure different email templates for each Document Type and different languages.
- Being able to Send via email the generated document.
- Being able to Archive the generated document as an attachment and register it.
This feature can only be applied to documents defined as Jasper Reports (jrxml).
References
The print module uses a different approach to report creation than the normal Openbravo ERP print process.
The report manager uses the Document type configuration to retrieve the correct Jasper Report file. When generating the report, this file will always receive a DOCUMENT_ID parameter and the query to generate the report should be embedded in the report. This makes the code flexible, the query is not in the code but is in the report itself. This makes it possible to create different reports (order/invoice/shipment) with the the same code. (See the code, method processReport in the class ReportManager)
Design Considerations
As Printing a document is quite different to sending it via email, a new button to send the document via email will be created.
Assumptions
Dependencies
Constraints
Glossary
- POC (Point of Contact): Definition of the SMTP server used to send the emails in each Organization.
Functional Requirements
User roles & profiles
Only the Administrator could configure the PoC and the Document Templates.
Any user with enough privileges to view the document will be able to print it or send it via email.
Business process definition
- Configure a Point of Contact for each Organization.
- Configure different Report Templates for each Document Type.
- Configure different Emails Templates for each Report Template and different languages.
- Generate a document taking into account the report template Organization.
- Send via email the generated document taking into account the email templates for this document.
- Archive the generated document as an attachment and register it.
User stories
Mary is in charge of the finances of the Malako company. Malako company includes three different organizations: Ma, La and Ko. She needs to print invoices for each of the Organizations with different logos and addresses.
Also, she would like to being able to send the invoices via email to some of her clients: it would be faster and cheaper for the company. It would improve the productivity and the benefits for the company. She would need to be able to preview the document before sending it. Also it is possible to have more than one document template for the same business partner and organization, so she should be able to select the correct template in each moment.
It would be nice if she could attach another documents to the same email that could be of the interest of the customer. These attachments should not be archived.
Functional requirements based on business processes
To achieve the desired functionalities the following elements needs to be added.
Num | Requirement | Importance | Status |
1.1 | Create a window to being able to configure a Point of Contact for each Organization | Must have | Done |
1.2 | Create a window to being able to configure different report templates for each Document Type | Must have | Done |
1.3 | Create a window to being able to configure different emails templates for each Document Type and different languages | Nice to have | Done |
1.4 | Generate a document taking in account the report template Organization | Must have | Done |
1.5 | Being able to Send via email the generated document | Must have | Done |
1.6 | Being able to Preview the document to be sent before sending it via email | Nice to have | To be done |
1.7 | Availability to have a drop down to choose between the different available templates for the current document | Nice to have | Done |
1.8 | Being able to attach more documents to the email | Done | Done |
1.9 | Being able to Archive the generated document as an attachment and register it | Nice to have | Done |
User Interface Mockups
- Print document window
- Print document window
Technical Requirements
Non-Functional Requirements
Open Discussion Items
--Morten 18:34, 6 October 2008 (CEST) We will be changing the current configuration code. Currently the default email subject and body are defined for a Client. This is not flexible enough.
We will therefor change this functionality:
A default email subject and body can be defined per document type and per language. This means that the default email information can be different for an order and an invoice and also different for each language.