Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
By the end of this chapter you will be able to:
Table of Contents |
---|
You will also learn how to use an internal variable, _pipeName.
In this exercise you will produce a single list of updates to customers' Cable TV packages. Customers can update their packages both through a customer care system and in shops. You will bring all these updates together into a single list.
Read in data sets from files
For this exercise you need two files from the zip file you downloaded in 2 Using Excel Templates, step 5. The files contain updates from the two sources: the customer care
...
system and the shop.
<path>\train\inputData\ChannelPackages\CustomerCareUpdates\CustomerCareUpdates.txt
<path>\train\inputData\ChannelPackages\ShopUpdates\ShopUpdates.txt
- Create a new model with the
...
- Name,
Channel Package Check
. - Add a file collector to your model and load the data as follows:
- From the model toolbar, drag a
into the model.Insert excerpt _file_collector _file_collector nopanel true - PhixFlow displays the settings tab for the new file collector. Set the Name to
Customer Care Updates
. - In the model, hover your mouse pointer over the
Channel Package Check
file collector to display the context toolbar and click
.Insert excerpt _upload_file _upload_file nopanel true - Navigate to the directory
<path>\train\inputData\ChannelPackages\CustomerCareUpdates
. - Select the file
CustomerCareUpdates.txt
, click Open, then clickInsert excerpt _upload_
- From the model toolbar, drag a
...
file _upload_
...
.file nopanel true - PhixFlow adds a new
...
- table to the model, called
...
-
CustomerCareUpdates
. - In the model, hover over the new
CustomerCareUpdates
-
...
- table and click
Insert excerpt _run_analysis _run_analysis nopanel true - Check the data is loaded. There should be 8 lines of data, with columns for Customer Ref, Sales Date and Package.
- Now the data is loaded into the
- table and click
...
- table, set the
...
- table to
Insert excerpt _static _static nopanel true
- table to
...
- .
- Add another file collector to your model and repeat the process described
...
- above, this time:
- Set the file collector Name to
Shop Updates
. - Upload
<path>\train\inputData\ChannelPackages\ShopUpdates\ShopUpdates.txt
. - PhixFlow loads 7 rows of data to this
- Set the file collector Name to
...
- table.
- Remember to set the
...
- table to
.Insert excerpt _static _static nopanel true
- table to
...
Screenshot of the Channel Package Check
model so far:
...
Image Added
Combine the data sets
- Create a new
...
- table in your model and populate its attributes
...
- :
- Hover over
CustomerCareUpdates
and click
.Insert excerpt _table_new _table_new nopanel true - In the settings, set the Name to
Combined Updates
. - In the model, show the
- Hover over
...
- table attributes for
CustomerCareUpdates
. - Select all the attributes and drag them into the properties for the
Combined Updates
- table attributes for
...
- table. Drop them into the Attributes section.
- Click
.Insert excerpt _finish _finish nopanel true
- To save your model, in the model toolbar click
.Insert excerpt _save _save nopanel true - Connect the
ShopUpdates
...
- table to the
Combined Updates
...
- table:
- Hover over
ShopUpdates
and click
.Insert excerpt _pipe _pipe nopanel true Click
Combined Updates
to link the pipe to the
- Hover over
...
table.
Info When you connect
...
tables, PhixFlow automatically adds a reference to the input pipe name. This appears in the attribute expression. To merge this data successfully, you must update the attribute expressions to remove the
in.
prefix; see step 4 below.
- Fix all the attribute expressions.
- Double-click on
Combined Updates
to open its settings tab. For each attribute: - In the Attributes section, double-click on an attribute to open its settings.
- In the Basic Settings section, edit the Expression to remove
in.
and clickInsert excerpt _finish _finish nopanel true
- Double-click on
...
Image Added
- In the
Combined Updates
...
- table settings tab, click
to save and close.Insert excerpt _finish _finish nopanel true - In the model, hover your mouse pointer over
Combined Updates
and click
.Insert excerpt _run_analysis _run_analysis nopanel true - When the
...
- table has run, check that the
...
- table has:
- the columns CustomerRef, Sales Date and Package
- 15 rows
- all cells have data.
The
...
- default view:
- default view:
...
- Image Added
Snapshot of the Chanel Package Check model so far:
...
Image Added
Record the source for each update
You will now update your settings to record the source for each update, in the set of combined updates. To do this:
- To update the name of the pipe from the
CustomerCareUpdates
...
- table to the
Combined Updates
...
- table:
- In the model, click on the pipe to open its settings tab.
- Set Name to
CC
. - Click
to save and close the pipe settings.Insert excerpt _finish _finish nopanel true
- Update the name of the pipe from the
ShopUpdates
file collector to theShopUpdates
...
- table.
- In the model, click on the pipe to open its settings tab.
- Set Name to shop
- Click
to save and close pipe settings.Insert excerpt _finish _finish nopanel true
- Double-click the
...
- table
Combined Updates
to open its settings tab. - In the Attributes section, click
add a new attribute and set:Insert excerpt _new _new nopanel true - Name:
Source
. Expression:
Code Block if (_pipeName == "CC", "Customer Care" , "Shop" )
- Click
to save and close the attribute settings.Insert excerpt _finish _finish nopanel true
- Name:
- To make
Source
the first attribute in the
...
- table, drag it to the top of the attributes list.
- Click
to save and close theInsert excerpt _finish _finish nopanel true
...
- table settings.
- Run analysis on
Combined Updates
. - Check the output data set and make sure that the source has been recorded on each record correctly.
Image Modified