How to perform aggregation in tablueu - aggregate

I have a pretty simple use case,but do not know how shall I do it in Tableau 10.
I have following column as a dimension
Emails
gmail
gmail
hotmail
Hotmail
GMAIL
HOTMAIL
I just want to count no. of occurances of emails.
gmail 3
hotmail 3
I also need to convert all the text to lowercase and then count no of occurances.
Any help will be appreciated.

Convert to lowercase
Create a calculated field(Analysis->Create Calculated Field),I'm going to call it "lowercase_email", and use the function LOWER to convert the emails text to lowecase:
LOWER([Emails])
Drag this new calculated field, "lowercase email", into the rows shelf and it will automatically group the emails by the unique names, add the measure of number of records, and it will count the number per email.

Related

Send email from Tableau: how to split email's body into multiple lines?

Hello Stack Overflow community,
I am trying to send an email from Tableau, but I can't figure it out how to split the body of the email into multiple rows.
I have three fields: , and .
The email must be structured in this way:
with $ in total revenue in the last 7 days
with $ in total revenue in the last 7 days
with $ in total revenue in the last 7 days
I've created the following URL action : mailto:XYZ?Business&body= with total <SUM(Revenue)> revenue in the last 7 days
When selecting multiple sellers at the same time, I get this:
"Seller A-Seller B-Seller C - with total $15 946-$3 412-$31 505 PD-PD-PA revenue in the last 7 days".
Do you know how (if possible) to split that text in multiple lines?
And if so, how can I send the email automatically, without having to manually click on the seller's name?
Sorry for the silly question, I am relatively new to Tableau.
Many thanks!
It used to be possible to send a formatted email from Tableau. However, I believe this was made not possible as a security precaution back in 2020.
I haven't tried in later versions of Tableau to know if it's possible again.

Email Saved Search based on conditional field

I am looking to send an email from netsuite using the "Recipients from Results"
I already have a saved search that emails based on field "salesrep", however I want to send a 2nd report to "TAMS" (Territory adoption managers) but only if the TAM is not the same as the sales rep. I am not sure if I will need a workflow to do the comparison or if I need to just add a formula.
Any suggestions ??
None
How about a separate saved search that includes all of your original criteria and additional criteria that would leverage a formula field to say sales rep not equal to TAMS and then email the tams from results?
Formula definitely! DECODE({salesrep},<Yours TAMS field ID>,'Ignore','Email')

Grouping By with missing data

Image of Data and desired result:
I'm trying to aggregate volunteer hours from a Google spreadsheet a non-profit I volunteer for. We collect volunteer e-mail information and the time that each volunteer has contributed. Each volunteer only puts in their e-mail the first time. I've found examples online on how to send e-mails, but I'm having trouble aggregating the data. I think the trouble might be that not every row has an e-mail address associated with it.
I've been able to get the sum of hours worked by volunteer using QUERY(data, "select A, sum(C) Group By A", ) but can't figure out how to get the e-mail associated with each individual.
Thanks for the advice! The VLOOKUP and ArrayFormula functions were new to me. Here's how I solved it:
QUERY(data, "select A, B where B <>'' ", -1)
This allowed me to get the Key-Value pair (Name, Email) for each volunteer (solving the problem of people who volunteered multiple times, but only left their e-mail once). From there, I was able to generate the 'Name:Hours Worked' table off to the right with:
QUERY(data, "select A, sum(C) Group By A", ).
Then, I used VLOOKUP to query my Name-Email table to get the desired result of:
Name-Email-aggregatedHours
Thanks!
You can't achieve this with query. But you could apply vlookup to sorted table:
=ArrayFormula(VLOOKUP(UNIQUE(FILTER(A2:A,A2:A<>"")),SORT(A2:B,2,0),2,0))
and get email list for unique names.
First, clean up your data. You shoud be certain that at least one column has no typos an that this column appropiate identify which data corresponds to each volunteer. This is called key value. This also could be done by, but not limited to, filling up the missing values for each row. If this will be hard, then
Create a volunteer list without missing data.
Calculate the time contributed by each volunteer. If you was able to fill up the missing values, then you could use QUERY, I this case the QUERY formula should have to group by name and email, if not, then use SUMIF

How to use one filter on two separate fields at the same time

I am working on a Tableau visualisation of network data, showing trends in user behaviour.
I have a table with users (USERS) and a table with network messages (MESSAGES): Each message has a sender and a receiver from the list of users.
I have two worksheets, one showing trends of outgoing messages and one showing incoming messages. The two worksheets are placed in the same dashboard.
How can I create a filter dropdown containing all users from USERS that filters senders in one worksheet and receivers in the second worksheet?
I have tried to duplicate the MESSAGES data source and blend USERS with two different fields, but the performance is not acceptable. Any ideas are welcome.
Thanks in advance
Create a new parameter:
data type string
allowable values set to list
add from field - user field
Quick filter on user-sending
select condition tab, By formula
[user.sending]=[user.parameter]
Repeat for user-receiving sheet.
Lastly, right-click user.parameter and select 'add to sheet' (or add it to you dashboard).
You can do so by selecting the 'use all' option rather than using a range or a list. This works very well for dates especially as it shows a calendar and then you can pick the date you want to see.

Automated email sender using excel data

I would like an automated email sender for birthdays. This is what I would like to accomplish:
Check Today's Date
Find match in Column 'DOB'
If true, get data from corresponding columns 'Name' and 'Email' (Might have to use for each)
Create Outlook Email with Subject 'Happy Birthday'
Message text – Dear $Name, Happy Birthday!
Send Email
After a bit of research I understand I will have to use the Spreadsheet::WriteExcel and one of the Outlook modules (not sure which one).
get today's date with the help of system.getDate() after that fetch date of birth from database match both the date if matched send sms. for sending sms use mail.cs function and write body of mail.