This visual guide is part of a collection of documents created by the One Student One ERP (OSOE) project in collaboration with Institut Mines Telecom, Telecom Bretagne, Dresden University of Technology and the South Westfalia University of Applied Sciences. It can be used to teach modern ERP theory and practice to undergraduate students or professionals.
Copyright: You are free to copy, distribute, display, and perform the work under the following conditions: you must attribute the work in the manner specified by the author or licensor; you may not use this work for any commercial purposes including training, consulting, advertising, self-advertising, publishing, etc.; you may not alter, transform, or build upon this work. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder through a commercial license or an educational license. For more information, contact info@nexedi.com
<span metal:use-macro="container/Zuite_viewTestMacroLibrary/macros/init_test_environment">init</span> | ||
openAndWait | ${base_url}/Zuite_setUpCampaignTest | |
verifyTextPresent | Init Ok | |
<span metal:use-macro="container/Zuite_viewTestMacroLibrary/macros/wait_for_activities"> Wait for activities </span> | ||
<span metal:use-macro="container/Zuite_viewTestMacroLibrary/macros/login_as_functional_test_user">Login As Functional Test User</span> | ||
<tal:block tal:define="click_configuration python: {'text': 'New'}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link" /> </tal:block> |
From the previous presentation, you have had a general idea of the four kinds of Tickets in ERP5 CRM and their workflows. In the following tutorials we will use the VIFIB example to explain how to process the Ticket for a marketing campaign, including the management of the related Events.
In this tutorial you will first learn how to create campaigns with ERP5 CRM, how to edit them and how to open them.
VIFIB director Mr Smets plans to launch a marketing campaign aims to increasing the product awareness of SlapOS the new operation system of VIFIB, in the way of hiring software developers. The main interactions of this campaign is to send mail messages to contacts (customers) of VIFIB, and these emails would be the Related Events of this Campaign Ticket . So they would be listed in the detail page of this Ticket.
Description: the Title is "Beta Developer Program", the Ticket Type is Campaign, the Operations Manager is John Scott Doh, the Quantity is 10 Days, the Begin date is 01/12/2020, the End Date is 01/02/2021.
From the previous introduction of Events and Tickets, we know that a campaign in ERP5 CRM is a Ticket. The principle of a ticket is to gather one or more events in the same place, offering a good follow up for them.
In our VIFIB example, the operations manager John Scott Doh created the Campaign Ticket the "Beta Developer Program" (the right side screen shot) for the VIFIB marketing campaign. In the detail page of this ticket we can see it gathers all the Events which " Follow Up" the Campaign , including reply emails (the left side screen shot) from the contacts and other related documents.
In order to create a campaign, click on the "New" tab on the sidebar of your ERP5 instance Home Page and click on “Campaign” in the CRM Area.
waitForElementPresent | //button[text()="Campaign"] | |
click | //input[@name="editable"] | |
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded"> </tal:block> | ||
click | //button[text()="Campaign"] |
A new Campaign ticket has been created, and can now be edited in the campaign creation page. Here are the Three different areas of a campaign ticket:
The red zone gathers the tabs that will help you access the entire information about the campaign.
The black zone is the editable zone of the campaign, in which you can enter and modify information.
The yellow zone gathers the related events and documents stored in a campaign. Please note that in order for an event to be stored in a campaign, the "Follow up" of this event must be the title of the Campaign.
Here are the different zones of the editable area of a campaign.
1.First, the red zone gathers the information about the Client, eg, the company/person who requested the campaign to be done. It can be either yourself or a client.
2.The black Zone (A) gathers the information about the persons/organisation who will manage the campaign, eg, who will be paid for it. We could say that this is the supplier of the campaign. The black Zone (B) helps you put who will be the operators of the campaign.
3.Finally, the yellow Zone gathers information about the opening and closing dates, the campaign duration and the costs.
In our VIFIB example, we fill in the zones with the information needed as you can see in the above screen shot.
waitForElementPresent | //input[@name="field_my_title"] | |
type | //input[@name="field_my_title"] | ZUITE-TEST-CAMPAIGN-CAMPAIGN-001 |
type | //input[@name="field_my_reference"] | ZUITE-TEST-CAMPAIGN-CAMPAIGN-001 |
type | //input[@name="field_my_source_section_title"] | ZUITE-TEST-CAMPAIGN-ORGANISATION-001 |
type | //input[@name="field_my_source_decision_title"] | ZUITE-TEST-CAMPAIGN-PERSON-SUPERVISOR |
type | //input[@name="field_my_source_title"] | ZUITE-TEST-CAMPAIGN-PERSON-OPERATION-MANAGER |
type | //input[@name="field_my_destination_title"] | ZUITE-TEST-CAMPAIGN-ORGANISATION-001 |
type | //input[@name="field_my_source_trade_title_list"] | ZUITE-TEST-CAMPAIGN-PERSON-OPERATION-MANAGER |
type | //input[@name="field_my_start_date"] | 12032021 |
type | //input[@name="field_my_stop_date"] | 20032021 |
type | //input[@name="field_my_quantity"] | 10.0 |
select | //select[@name="field_my_quantity_unit"] | Time/Day |
type | //input[@name="field_my_price"] | 20.00 |
select | //select[@name="field_my_price_currency"] | EUR |
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/save"> </tal:block> |
In order to open a campaign, click on "Open Ticket" on the sidebar. Note that this action can only be done by the Campaign Manager, or the creator of the Campaign ticket.
<tal:block tal:define="click_configuration python: {'text': 'Open Ticket'}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link"> </tal:block> </tal:block> | ||
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded"> </tal:block> |
In this step, you can add comments, these are the comments that only your team will be able to visit. When you are done, validate the Ticket by clicking the “Open Ticket” button.
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog"> </tal:block> | ||
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded"> </tal:block> |
As you see on the image, the state of the campaign is now Open.
<tal:block tal:define="click_configuration python: {'text': 'View'}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link"> </tal:block> </tal:block> | ||
<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded"> </tal:block> | ||
verifyText | //p[@id="field_my_translated_simulation_state_title"] | Opened |
<span metal:use-macro="container/Zuite_viewTestMacroLibrary/macros/login_as_manager">Login As Manager</span> | ||
openAndWait | ${base_url}/Zuite_tearDownCampaignTest | |
verifyTextPresent | Clean Ok | |
<span metal:use-macro="container/Zuite_viewTestMacroLibrary/macros/wait_for_activities"> Wait for activities </span> |
For more information, please contact Jean-Paul, CEO of Nexedi (+33 629 02 44 25).