<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Outer Join on... Possible? in App Development</title>
    <link>https://community.qlik.com/t5/App-Development/Outer-Join-on-Possible/m-p/1244673#M24817</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Could this be a solution:&lt;/P&gt;&lt;P&gt;//load Customers&lt;/P&gt;&lt;P&gt;Customers:&lt;/P&gt;&lt;P&gt;LOAD CustomerName, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CustomerID, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PhoneNumber, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Address, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegisteredDate&lt;/P&gt;&lt;P&gt;FROM&lt;/P&gt;&lt;P&gt;CustomersCalls.xlsx&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is Customers);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Two temp loads to get the right customer info where it is missing&lt;/P&gt;&lt;P&gt;Phone:&lt;/P&gt;&lt;P&gt;mapping load&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerID,&lt;/P&gt;&lt;P&gt;&amp;nbsp; PhoneNumber&lt;/P&gt;&lt;P&gt;Resident Customers;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CustomerID:&lt;/P&gt;&lt;P&gt;mapping load&lt;/P&gt;&lt;P&gt;&amp;nbsp; PhoneNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerID&lt;/P&gt;&lt;P&gt;Resident Customers;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Load calls together with Customers and with extra info&lt;/P&gt;&lt;P&gt;Calls:&lt;/P&gt;&lt;P&gt;Outer join (Customers)&lt;/P&gt;&lt;P&gt;LOAD ContactID, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CallDate, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(isnull(PhoneNumber),ApplyMap('Phone',CustomerID),PhoneNumber) as PhoneNumber, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(isnull(CustomerID),ApplyMap('CustomerID',PhoneNumber),CustomerID) as CustomerID&lt;/P&gt;&lt;P&gt;FROM&lt;/P&gt;&lt;P&gt;CustomersCalls.xlsx&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is Calls);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Calculation of calls&lt;/P&gt;&lt;P&gt;Calc:&lt;/P&gt;&lt;P&gt;load&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerName,&lt;/P&gt;&lt;P&gt;&amp;nbsp; count(ContactID) as NbrOfCalls&lt;/P&gt;&lt;P&gt;resident Customers&lt;/P&gt;&lt;P&gt;where RegisteredDate&amp;lt;=CallDate&lt;/P&gt;&lt;P&gt;group by CustomerName&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 09 Mar 2017 08:55:21 GMT</pubDate>
    <dc:creator />
    <dc:date>2017-03-09T08:55:21Z</dc:date>
    <item>
      <title>Outer Join on... Possible?</title>
      <link>https://community.qlik.com/t5/App-Development/Outer-Join-on-Possible/m-p/1244672#M24816</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have two tables&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Table1 - Customer&lt;/STRONG&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" style="border: 1px solid rgb(0, 0, 0); width: 100%;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;CustomerName&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;CustomerID&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;PhoneNumber&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;Address&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;RegisteredDate&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;John Doe&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;+465551111&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;Town Nr1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-09-01&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;Jane Doe&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;+465552222&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;Town Nr2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-05-31&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Table2 - Calls&lt;/STRONG&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" style="border: 1px solid rgb(0, 0, 0); width: 100%;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;ContactID&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;CallDate&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;PhoneNumber&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;CustomerID&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-05-01&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;+465552222&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-05-01&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;3&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-06-01&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;+465552222&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;4&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-06-01&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;5&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2016-06-01&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;+465552222&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to be able to distinct count(ContactID)&amp;nbsp; of the calls that&amp;nbsp; where made after the RegisteredDate.&lt;/P&gt;&lt;P&gt;The problem is that sometimes I have the correct CustomerID, somtimes the correct PhoneNumber and sometimes I have both correct.&lt;/P&gt;&lt;P&gt;If this was a SQL question I would do like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a.CustomerName&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ,count(b.ContactID) as NbrOfCalls&lt;/P&gt;&lt;P&gt;FROM Customer as a&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outer join Calls as b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on (a.CustomerID = b.CustomerID or a.PhoneNumber = b.PhoneNumber)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; and a.RegisteredDate &amp;lt;= b.CallDate&lt;/P&gt;&lt;P&gt;GROUP BY CustomerName&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The result in this case should be:&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" style="border: 1px solid rgb(0, 0, 0); width: 100%;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;CustomerName&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;NbrOfCalls&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;John Doe&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;Jane Doe&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;&amp;lt;null&amp;gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How should I solve it in the Qlik script?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Mar 2017 16:19:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/Outer-Join-on-Possible/m-p/1244672#M24816</guid>
      <dc:creator>holynumbers</dc:creator>
      <dc:date>2017-03-07T16:19:00Z</dc:date>
    </item>
    <item>
      <title>Re: Outer Join on... Possible?</title>
      <link>https://community.qlik.com/t5/App-Development/Outer-Join-on-Possible/m-p/1244673#M24817</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Could this be a solution:&lt;/P&gt;&lt;P&gt;//load Customers&lt;/P&gt;&lt;P&gt;Customers:&lt;/P&gt;&lt;P&gt;LOAD CustomerName, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CustomerID, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PhoneNumber, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Address, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegisteredDate&lt;/P&gt;&lt;P&gt;FROM&lt;/P&gt;&lt;P&gt;CustomersCalls.xlsx&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is Customers);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Two temp loads to get the right customer info where it is missing&lt;/P&gt;&lt;P&gt;Phone:&lt;/P&gt;&lt;P&gt;mapping load&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerID,&lt;/P&gt;&lt;P&gt;&amp;nbsp; PhoneNumber&lt;/P&gt;&lt;P&gt;Resident Customers;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CustomerID:&lt;/P&gt;&lt;P&gt;mapping load&lt;/P&gt;&lt;P&gt;&amp;nbsp; PhoneNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerID&lt;/P&gt;&lt;P&gt;Resident Customers;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Load calls together with Customers and with extra info&lt;/P&gt;&lt;P&gt;Calls:&lt;/P&gt;&lt;P&gt;Outer join (Customers)&lt;/P&gt;&lt;P&gt;LOAD ContactID, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CallDate, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(isnull(PhoneNumber),ApplyMap('Phone',CustomerID),PhoneNumber) as PhoneNumber, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(isnull(CustomerID),ApplyMap('CustomerID',PhoneNumber),CustomerID) as CustomerID&lt;/P&gt;&lt;P&gt;FROM&lt;/P&gt;&lt;P&gt;CustomersCalls.xlsx&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is Calls);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//Calculation of calls&lt;/P&gt;&lt;P&gt;Calc:&lt;/P&gt;&lt;P&gt;load&lt;/P&gt;&lt;P&gt;&amp;nbsp; CustomerName,&lt;/P&gt;&lt;P&gt;&amp;nbsp; count(ContactID) as NbrOfCalls&lt;/P&gt;&lt;P&gt;resident Customers&lt;/P&gt;&lt;P&gt;where RegisteredDate&amp;lt;=CallDate&lt;/P&gt;&lt;P&gt;group by CustomerName&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Mar 2017 08:55:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/Outer-Join-on-Possible/m-p/1244673#M24817</guid>
      <dc:creator />
      <dc:date>2017-03-09T08:55:21Z</dc:date>
    </item>
  </channel>
</rss>

