<?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 Combined key problem in a link table in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Combined-key-problem-in-a-link-table/m-p/399837#M148786</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have three tabels with the following information&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Consultant (consultantid, deskid)-------&amp;gt; consultant-desk (combined key)&lt;/P&gt;&lt;P&gt;Client(clientid, deskid)--------&amp;gt;client-desk(combined key)&lt;/P&gt;&lt;P&gt;timesheet (timesheetid,consultantid, clientid)--------&amp;gt;consultant-client(combined key)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I join them all, they create a loop. So I created a link table as following&lt;/P&gt;&lt;PRE __default_attr="sql" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13474466675571275" jivemacro_uid="_13474466675571275"&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_1347446667555440" jivemacro_uid="_1347446667555440"&gt;&lt;P&gt;[temp link]:&lt;/P&gt;&lt;P&gt;load consultantid, deskid resident consultant;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load clientid, deskid resident client;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load timesheetid,consultantid, clientidresident timesheet;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;link:&lt;/P&gt;&lt;P&gt;load consultantid &amp;amp;'-'&amp;amp; deskid as consultant-desk&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid &amp;amp;'-'&amp;amp; deskid as client-desk&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; consultantid &amp;amp;'-'&amp;amp; clientid as consultant-client&lt;/P&gt;&lt;P&gt;resident &lt;/P&gt;&lt;P&gt;[temp link];&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;drop table [temp link];&lt;/P&gt;&lt;/PRE&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now it does not create any loop and it works fine. Now here is another problem. If a client does not have any desk, we cannot join it with timesheet table even though timesheet and client table have only join based on clientid. However, the combination of all three tables have forced the clients to have deskid otherwise, qlikview will not join client and timesheet table. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;an example is given below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Client table : &lt;/P&gt;&lt;P&gt;Clientid = 126, deskid = null ------combinedkey(126-)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Consultant table:&lt;/P&gt;&lt;P&gt;consultantid = 113, deskid = 167 ------combinedkey(113-167)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;timesheet table:&lt;/P&gt;&lt;P&gt;timsheetid =100 , clientid = 126, consultantid = 113--------combined key (113-126)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_1347445630549314" class="jive_text_macro jive_macro_code   _jivemacro_uid_1347445630549314"&gt;&lt;P&gt;[temp link]:&lt;/P&gt;&lt;P&gt;load consultantid, clientid,timesheetid&amp;nbsp;&amp;nbsp; resident timesheet;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_13474448599257723" class="jive_text_macro jive_macro_code  _jivemacro_uid_13474448599257723"&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load consultantid, deskid resident consultant;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deskid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 167&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;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_13474449290223055" class="jive_text_macro jive_macro_code  _jivemacro_uid_13474449290223055"&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load clientid, deskid resident client;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deskid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 167&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;&amp;nbsp; 100&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;&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;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;as you can see, in the link table, clientid 126 stands seperate from others. Similar can be case with consultant table, if it has a null desk and client has a desk assigned and both consultant and client has combined entry in timesheet .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What are the possibel solutions for this. In a simple scenario, I would join client table with timesheet based on clientid and with consultant table based on deskid. In the link table, I am joining client table with link table on both clientid and desk id, which is creating problems for me&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Arif&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 12 Sep 2012 10:34:53 GMT</pubDate>
    <dc:creator />
    <dc:date>2012-09-12T10:34:53Z</dc:date>
    <item>
      <title>Combined key problem in a link table</title>
      <link>https://community.qlik.com/t5/QlikView/Combined-key-problem-in-a-link-table/m-p/399837#M148786</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have three tabels with the following information&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Consultant (consultantid, deskid)-------&amp;gt; consultant-desk (combined key)&lt;/P&gt;&lt;P&gt;Client(clientid, deskid)--------&amp;gt;client-desk(combined key)&lt;/P&gt;&lt;P&gt;timesheet (timesheetid,consultantid, clientid)--------&amp;gt;consultant-client(combined key)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I join them all, they create a loop. So I created a link table as following&lt;/P&gt;&lt;PRE __default_attr="sql" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13474466675571275" jivemacro_uid="_13474466675571275"&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_1347446667555440" jivemacro_uid="_1347446667555440"&gt;&lt;P&gt;[temp link]:&lt;/P&gt;&lt;P&gt;load consultantid, deskid resident consultant;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load clientid, deskid resident client;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load timesheetid,consultantid, clientidresident timesheet;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;link:&lt;/P&gt;&lt;P&gt;load consultantid &amp;amp;'-'&amp;amp; deskid as consultant-desk&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid &amp;amp;'-'&amp;amp; deskid as client-desk&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; consultantid &amp;amp;'-'&amp;amp; clientid as consultant-client&lt;/P&gt;&lt;P&gt;resident &lt;/P&gt;&lt;P&gt;[temp link];&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;drop table [temp link];&lt;/P&gt;&lt;/PRE&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now it does not create any loop and it works fine. Now here is another problem. If a client does not have any desk, we cannot join it with timesheet table even though timesheet and client table have only join based on clientid. However, the combination of all three tables have forced the clients to have deskid otherwise, qlikview will not join client and timesheet table. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;an example is given below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Client table : &lt;/P&gt;&lt;P&gt;Clientid = 126, deskid = null ------combinedkey(126-)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Consultant table:&lt;/P&gt;&lt;P&gt;consultantid = 113, deskid = 167 ------combinedkey(113-167)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;timesheet table:&lt;/P&gt;&lt;P&gt;timsheetid =100 , clientid = 126, consultantid = 113--------combined key (113-126)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_1347445630549314" class="jive_text_macro jive_macro_code   _jivemacro_uid_1347445630549314"&gt;&lt;P&gt;[temp link]:&lt;/P&gt;&lt;P&gt;load consultantid, clientid,timesheetid&amp;nbsp;&amp;nbsp; resident timesheet;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_13474448599257723" class="jive_text_macro jive_macro_code  _jivemacro_uid_13474448599257723"&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load consultantid, deskid resident consultant;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deskid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 167&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;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE ___default_attr="plain" _jivemacro_uid="_13474449290223055" class="jive_text_macro jive_macro_code  _jivemacro_uid_13474449290223055"&gt;&lt;P&gt;join([temp link])&lt;/P&gt;&lt;P&gt;load clientid, deskid resident client;&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;consultant id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clientid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deskid&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; timesheetid&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; 113&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 167&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;&amp;nbsp; 100&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;&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;&amp;nbsp; 126&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;as you can see, in the link table, clientid 126 stands seperate from others. Similar can be case with consultant table, if it has a null desk and client has a desk assigned and both consultant and client has combined entry in timesheet .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What are the possibel solutions for this. In a simple scenario, I would join client table with timesheet based on clientid and with consultant table based on deskid. In the link table, I am joining client table with link table on both clientid and desk id, which is creating problems for me&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Arif&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Sep 2012 10:34:53 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Combined-key-problem-in-a-link-table/m-p/399837#M148786</guid>
      <dc:creator />
      <dc:date>2012-09-12T10:34:53Z</dc:date>
    </item>
  </channel>
</rss>

