<?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 Why do I get a synthetic key? in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170806#M41075</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have the following script:&lt;BR /&gt;&lt;BR /&gt;Pre_Order_Head:&lt;BR /&gt;LOAD&lt;BR /&gt; FOKID,&lt;BR /&gt; FTGID,&lt;BR /&gt; KundNr,&lt;BR /&gt; Faktureringssätt,&lt;BR /&gt; OrderNrIn,&lt;BR /&gt; OrderNrKvar,&lt;BR /&gt; OrdersättBenämning,&lt;BR /&gt; Order_OrdersättKod,&lt;BR /&gt; Order_Orderstopp,&lt;BR /&gt; Order_OrderstoppKod,&lt;BR /&gt; Ordertyp&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Order.qvd (qvd);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOCONCATENATE load&lt;BR /&gt; *&lt;BR /&gt;resident Pre_Order_Head&lt;BR /&gt;ORDER BY OrderNrIn;&lt;/P&gt;&lt;P&gt;store * from Pre_Order_Head into ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd;&lt;BR /&gt;drop table Pre_Order_Head;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Pre_Order_Head_2:&lt;BR /&gt;LOAD&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FOKID) as FOKID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FTGID) as FTGID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), KundNr) as KundNr,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Faktureringssätt) as Faktureringssätt,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrIn) as OrderNrIn,&lt;BR /&gt;// If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrKvar) as OrderNrKvar,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrdersättBenämning) as OrdersättBenämning,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrdersättKod) as Order_OrdersättKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_Orderstopp) as Order_Orderstopp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrderstoppKod) as Order_OrderstoppKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Ordertyp) as Ordertyp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), 1) as Order_Head_Counter&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd (qvd);&lt;BR /&gt;&lt;/P&gt;&lt;BR /&gt;&lt;BR /&gt; &lt;P&gt;When it is done I get a synthetic key between Pre_Order_Head_2 and Pre_Order_Head-1.&lt;/P&gt;&lt;P&gt;Anyone have any idea as to why?&lt;/P&gt;&lt;P&gt;For some reason the "drop table Pre_Order_Head;" removes the table but it seems it is still there.&lt;/P&gt;&lt;P&gt;If I create a new application and move the second part there, i.e.&lt;/P&gt;&lt;P&gt;Pre_Order_Head_2:&lt;BR /&gt;LOAD&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FOKID) as FOKID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FTGID) as FTGID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), KundNr) as KundNr,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Faktureringssätt) as Faktureringssätt,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrIn) as OrderNrIn,&lt;BR /&gt;// If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrKvar) as OrderNrKvar,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrdersättBenämning) as OrdersättBenämning,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrdersättKod) as Order_OrdersättKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_Orderstopp) as Order_Orderstopp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrderstoppKod) as Order_OrderstoppKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Ordertyp) as Ordertyp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), 1) as Order_Head_Counter&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd (qvd);&lt;/P&gt;&lt;P&gt;then there are no synthetic keys.&lt;/P&gt;&lt;P&gt;Anyone know why?&lt;/P&gt;&lt;P&gt;br&lt;/P&gt;&lt;P&gt;Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 15 Jan 2011 00:29:38 GMT</pubDate>
    <dc:creator />
    <dc:date>2011-01-15T00:29:38Z</dc:date>
    <item>
      <title>Why do I get a synthetic key?</title>
      <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170806#M41075</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have the following script:&lt;BR /&gt;&lt;BR /&gt;Pre_Order_Head:&lt;BR /&gt;LOAD&lt;BR /&gt; FOKID,&lt;BR /&gt; FTGID,&lt;BR /&gt; KundNr,&lt;BR /&gt; Faktureringssätt,&lt;BR /&gt; OrderNrIn,&lt;BR /&gt; OrderNrKvar,&lt;BR /&gt; OrdersättBenämning,&lt;BR /&gt; Order_OrdersättKod,&lt;BR /&gt; Order_Orderstopp,&lt;BR /&gt; Order_OrderstoppKod,&lt;BR /&gt; Ordertyp&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Order.qvd (qvd);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOCONCATENATE load&lt;BR /&gt; *&lt;BR /&gt;resident Pre_Order_Head&lt;BR /&gt;ORDER BY OrderNrIn;&lt;/P&gt;&lt;P&gt;store * from Pre_Order_Head into ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd;&lt;BR /&gt;drop table Pre_Order_Head;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Pre_Order_Head_2:&lt;BR /&gt;LOAD&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FOKID) as FOKID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FTGID) as FTGID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), KundNr) as KundNr,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Faktureringssätt) as Faktureringssätt,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrIn) as OrderNrIn,&lt;BR /&gt;// If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrKvar) as OrderNrKvar,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrdersättBenämning) as OrdersättBenämning,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrdersättKod) as Order_OrdersättKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_Orderstopp) as Order_Orderstopp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrderstoppKod) as Order_OrderstoppKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Ordertyp) as Ordertyp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), 1) as Order_Head_Counter&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd (qvd);&lt;BR /&gt;&lt;/P&gt;&lt;BR /&gt;&lt;BR /&gt; &lt;P&gt;When it is done I get a synthetic key between Pre_Order_Head_2 and Pre_Order_Head-1.&lt;/P&gt;&lt;P&gt;Anyone have any idea as to why?&lt;/P&gt;&lt;P&gt;For some reason the "drop table Pre_Order_Head;" removes the table but it seems it is still there.&lt;/P&gt;&lt;P&gt;If I create a new application and move the second part there, i.e.&lt;/P&gt;&lt;P&gt;Pre_Order_Head_2:&lt;BR /&gt;LOAD&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FOKID) as FOKID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), FTGID) as FTGID,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), KundNr) as KundNr,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Faktureringssätt) as Faktureringssätt,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrIn) as OrderNrIn,&lt;BR /&gt;// If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrderNrKvar) as OrderNrKvar,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), OrdersättBenämning) as OrdersättBenämning,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrdersättKod) as Order_OrdersättKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_Orderstopp) as Order_Orderstopp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Order_OrderstoppKod) as Order_OrderstoppKod,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), Ordertyp) as Ordertyp,&lt;BR /&gt; If(rowno() = 1 OR OrderNrIn &amp;gt; previous(OrderNrIn), 1) as Order_Head_Counter&lt;BR /&gt;FROM ..\..\QVD\PCD\ExportQVD\2_Transform\Pre_Order_Head.qvd (qvd);&lt;/P&gt;&lt;P&gt;then there are no synthetic keys.&lt;/P&gt;&lt;P&gt;Anyone know why?&lt;/P&gt;&lt;P&gt;br&lt;/P&gt;&lt;P&gt;Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Jan 2011 00:29:38 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170806#M41075</guid>
      <dc:creator />
      <dc:date>2011-01-15T00:29:38Z</dc:date>
    </item>
    <item>
      <title>Why do I get a synthetic key?</title>
      <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170807#M41076</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When you told it to noconcatenate load, it did exactly what you told it to do - create a NEW table, and don't concatenate onto the old table. You didn't give this new table a name, so it decided to name it Pre_Order_Head-1 to distinguish it from the original table. Then you dropped Pre_Order_Head. It did, but that left a sorted copy of it still out there under the Pre_Order_Head-1 name. After your next load, it had two tables sharing a lot of fields, so it built a synthetic key.&lt;/P&gt;&lt;P&gt;In the second load, you didn't have that original table to connect up to, so no synthetic key.&lt;/P&gt;&lt;P&gt;I assume what you wanted to do was to sort Pre_Order_Head, and store the sorted copy. If you can't do an order by during the load (I don't remember if you can), then give the second table an explicit name, store IT to the new QVD, and drop BOTH tables when you're done. THEN load Pre_Order_Head_2.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Jan 2011 01:03:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170807#M41076</guid>
      <dc:creator>johnw</dc:creator>
      <dc:date>2011-01-15T01:03:24Z</dc:date>
    </item>
    <item>
      <title>Why do I get a synthetic key?</title>
      <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170808#M41077</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your reply, I will try it tonight but I'm sure that it will work.&lt;/P&gt;&lt;P&gt;One question though, if QV creates a new table why can I not use "drop table Pre_Order_Head-1" to get rid of it?&lt;/P&gt;&lt;P&gt;When I do this QV replies that the table does not exist.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;br&lt;/P&gt;&lt;P&gt;Martin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Jan 2011 14:27:22 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170808#M41077</guid>
      <dc:creator />
      <dc:date>2011-01-15T14:27:22Z</dc:date>
    </item>
    <item>
      <title>Why do I get a synthetic key?</title>
      <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170809#M41078</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="jive_text_macro jive_macro_quote" jivemacro="quote"&gt;&lt;BR /&gt;martnorm wrote: One question though, if QV creates a new table why can I not use "drop table Pre_Order_Head-1" to get rid of it?&lt;BR /&gt;When I do this QV replies that the table does not exist.&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt; &lt;P&gt;I don't know. I would have expected that to work. On the other hand, I never have any tables created "accidentally" and all of my tables always have explicit names. So I've never even tried to drop a table that QlikView named for me. I can't imagine why it wouldn't let you drop it anyway, but maybe there's some strange internal restriction, or just some bug.&lt;/P&gt;&lt;P&gt;Hmmm, just tried it, and it worked fine for me. One possible problem is that you'd need to put the table name in brackets or double quotes due to the "-" character, though that causes a different error message, so probably isn't your problem. Here's the bit of working example I used:&lt;/P&gt;&lt;P&gt;NOCONCATENATE LOAD *&lt;BR /&gt;RESIDENT BudgetAndSales;&lt;BR /&gt;DROP TABLE [BudgetAndSales-1];&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Jan 2011 18:40:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170809#M41078</guid>
      <dc:creator>johnw</dc:creator>
      <dc:date>2011-01-17T18:40:44Z</dc:date>
    </item>
    <item>
      <title>Why do I get a synthetic key?</title>
      <link>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170810#M41079</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;From what I have seen, the DROP TABLE command only works on explicit names. I assume these are stored in different system type formats. In the end, we use them the same way.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Jan 2011 23:30:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Why-do-I-get-a-synthetic-key/m-p/170810#M41079</guid>
      <dc:creator />
      <dc:date>2011-01-17T23:30:06Z</dc:date>
    </item>
  </channel>
</rss>

