<?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: Exporting PDF Reports in XML from QlikView Server in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893490#M311082</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, you are right - the reports aren't completely integrated in qv and handling them is far away from easy and beautiful. But you could (manually) export and import reports within the report-properties and you could do a copy &amp;amp; paste per macro. Both I have already done and it made really no fun - but should I do it again I would use export/import and use the possibilty of edit the xml-files manually and then adjust it after an import final again manually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here an example which read and copied the most important report-properties:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'###########################################################################################################################################&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sub ReportInfo&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'Routine um Reports per Makro zu kopieren und dabei auch verschiedene Dinge abzuändern, z.B. die ObjektID's der Reportobjekte&lt;/P&gt;&lt;P&gt;'um somit ähnliche Reports einfach reproduzieren zu können&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dim doc, i, j, SourceRep, jRep, iRep, iiRep, arrRep(), arrRepItem(), kRep, arrChangeID, TargetRep&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set doc = ActiveDocument&lt;/P&gt;&lt;P&gt;set SourceRep = doc.GetDocReport("RP15")&lt;/P&gt;&lt;P&gt;set jRep = SourceRep.Pages.Item(0)&lt;/P&gt;&lt;P&gt;set iRep = SourceRep.Pages.Item(0).Items&lt;/P&gt;&lt;P&gt;kRep = SourceRep.PrintOptions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Redim arrRep(8)&lt;/P&gt;&lt;P&gt;arrRep(0) = jRep.Landscape&lt;/P&gt;&lt;P&gt;arrRep(1) = jRep.PageMode&lt;/P&gt;&lt;P&gt;arrRep(2) = jRep.Intro.Height&lt;/P&gt;&lt;P&gt;arrRep(3) = jRep.ScaleMode&lt;/P&gt;&lt;P&gt;arrRep(4) = kRep.MarginTop&lt;/P&gt;&lt;P&gt;arrRep(5) = kRep.MarginBottom&lt;/P&gt;&lt;P&gt;arrRep(6) = kRep.MarginLeft&lt;/P&gt;&lt;P&gt;arrRep(7) = kRep.MarginRight&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Redim arrRepItem(iRep.Count, 12)&lt;/P&gt;&lt;P&gt;for i = 0 to iRep.Count - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set iiRep = iRep.Item(i)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 0) = iiRep.ObjectId&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 1) = iiRep.Rect.Top&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 2) = iiRep.Rect.Left&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 3) = iiRep.Rect.Height&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 4) = iiRep.Rect.Width&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 5) = iiRep.UseFrame&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 6) = iiRep.FrameColor.PrimaryCol&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 7) = iiRep.FrameWidth&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt; = iiRep.Clip&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 9) = iiRep.HorizontalAlign&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 10) = iiRep.VerticalAlign&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 11) = iiRep.KeepFontSize&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set TargetRep = doc.GetApplication.CreateEmptyReport&lt;/P&gt;&lt;P&gt;TargetRep.Name = "CopyPastePerRoutine (4)"&lt;/P&gt;&lt;P&gt;TargetRep.ID = "RP95"&lt;/P&gt;&lt;P&gt;TargetRep.Comment = "change objectid and other things"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kRep = TargetRep.PrintOptions&lt;/P&gt;&lt;P&gt;kRep.MarginTop = arrRep(4)&lt;/P&gt;&lt;P&gt;kRep.MarginBottom = arrRep(5)&lt;/P&gt;&lt;P&gt;kRep.MarginLeft = arrRep(6)&lt;/P&gt;&lt;P&gt;kRep.MarginRight = arrRep(7)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Add&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).Landscape = arrRep(0)&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).PageMode = arrRep(1)&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).Intro.Height = arrRep(2)&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).ScaleMode = arrRep(3)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'first 8 items are original ID and the second 8 items are the changed ID&lt;/P&gt;&lt;P&gt;arrChangeID = array("CH10026", "CH10021", "CH10024", "CH10031", "CH10030", "CH10029", "CH10028", "CH10027", "CH10036", "CH10035", "CH10033", "CH10032", "CH10034", "CH10039", "CH10037", "CH10038")&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for i = 0 to iRep.Count - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Add&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j = 0 to ubound(arrChangeID)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if replace(arrRepItem(i, 0), "Document\", "") = arrChangeID(j) then &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; arrRepItem(i, 0) = arrChangeID(j + &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt;&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; exit for&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; next&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).ObjectId = arrRepItem(i, 0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Top = arrRepItem(i, 1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Left = arrRepItem(i, 2)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Height = arrRepItem(i, 3)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Width = arrRepItem(i, 4)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).UseFrame = arrRepItem(i, 5)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).FrameColor.PrimaryCol = arrRepItem(i, 6)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).FrameWidth = arrRepItem(i, 7)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Clip = arrRepItem(i, &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).HorizontalAlign = arrRepItem(i, 9)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).VerticalAlign = arrRepItem(i, 10)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).KeepFontSize = arrRepItem(i, 11)&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;doc.AddDocReport TargetRep&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end sub&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe within the easter egg are further possibilities, too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 03 Jun 2015 09:20:13 GMT</pubDate>
    <dc:creator>marcus_sommer</dc:creator>
    <dc:date>2015-06-03T09:20:13Z</dc:date>
    <item>
      <title>Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893483#M311075</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everybody,&lt;/P&gt;&lt;P&gt;I was wondering if anybody had ever needed to export some reports created by an user in their Server's workspace to import in the document.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I know it's possible to do so by working with the GUI but I was looking for a straightforward way to do it without user or admin intervention.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The APIs don't seem to have a method to export directly the reports from any document or through the server.&lt;/P&gt;&lt;P&gt;It's possible though to use the documented command:&lt;BR /&gt;&lt;EM&gt;ActiveDocument.ExportLayoutFile "c:\AppLayout.xml"&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;to create an XML file that is comparable to the prj- folder.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This doesn't seem to be working through the server.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any hint or suggestion is welcome.&lt;/P&gt;&lt;P&gt;Francesco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2015 08:39:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893483#M311075</guid>
      <dc:creator>francesco_menin</dc:creator>
      <dc:date>2015-06-02T08:39:51Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893484#M311076</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't believe that it will be directly possible within the server. But you could use the above mentioned macro-statement within the fat-client. Maybe with a loop through your directories and triggered per server-task which runs an app with an execute-statement which runs such a macro-app.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2015 11:44:35 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893484#M311076</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-06-02T11:44:35Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893485#M311077</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It's really too bad, I think that the user created reports are "lost" in the Shared file then...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2015 11:52:28 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893485#M311077</guid>
      <dc:creator>francesco_menin</dc:creator>
      <dc:date>2015-06-02T11:52:28Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893486#M311078</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe the power tools are helpful for you: &lt;A href="https://community.qlik.com/qlik-blogpost/2374"&gt;Power Tools for QlikView now available&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2015 12:02:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893486#M311078</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-06-02T12:02:24Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893487#M311079</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;They're not really "lost". It's just that trying to recover user-generated content is a very tedious process at the moment. It would help a lot if Qlik would provide a method to copy-paste entire sheets - including the objects on 'em - in the GUI interface...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Peter&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2015 12:53:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893487#M311079</guid>
      <dc:creator>Peter_Cammaert</dc:creator>
      <dc:date>2015-06-02T12:53:54Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893488#M311080</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks, I'm going to look into it!!!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jun 2015 08:06:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893488#M311080</guid>
      <dc:creator>francesco_menin</dc:creator>
      <dc:date>2015-06-03T08:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893489#M311081</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;And it looks like the PDF Reports are entirely a different software from Qlik though it's integrated in the GUI, given the fact that there is not an "extended" API support.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jun 2015 08:07:46 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893489#M311081</guid>
      <dc:creator>francesco_menin</dc:creator>
      <dc:date>2015-06-03T08:07:46Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893490#M311082</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, you are right - the reports aren't completely integrated in qv and handling them is far away from easy and beautiful. But you could (manually) export and import reports within the report-properties and you could do a copy &amp;amp; paste per macro. Both I have already done and it made really no fun - but should I do it again I would use export/import and use the possibilty of edit the xml-files manually and then adjust it after an import final again manually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here an example which read and copied the most important report-properties:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'###########################################################################################################################################&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sub ReportInfo&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'Routine um Reports per Makro zu kopieren und dabei auch verschiedene Dinge abzuändern, z.B. die ObjektID's der Reportobjekte&lt;/P&gt;&lt;P&gt;'um somit ähnliche Reports einfach reproduzieren zu können&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dim doc, i, j, SourceRep, jRep, iRep, iiRep, arrRep(), arrRepItem(), kRep, arrChangeID, TargetRep&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set doc = ActiveDocument&lt;/P&gt;&lt;P&gt;set SourceRep = doc.GetDocReport("RP15")&lt;/P&gt;&lt;P&gt;set jRep = SourceRep.Pages.Item(0)&lt;/P&gt;&lt;P&gt;set iRep = SourceRep.Pages.Item(0).Items&lt;/P&gt;&lt;P&gt;kRep = SourceRep.PrintOptions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Redim arrRep(8)&lt;/P&gt;&lt;P&gt;arrRep(0) = jRep.Landscape&lt;/P&gt;&lt;P&gt;arrRep(1) = jRep.PageMode&lt;/P&gt;&lt;P&gt;arrRep(2) = jRep.Intro.Height&lt;/P&gt;&lt;P&gt;arrRep(3) = jRep.ScaleMode&lt;/P&gt;&lt;P&gt;arrRep(4) = kRep.MarginTop&lt;/P&gt;&lt;P&gt;arrRep(5) = kRep.MarginBottom&lt;/P&gt;&lt;P&gt;arrRep(6) = kRep.MarginLeft&lt;/P&gt;&lt;P&gt;arrRep(7) = kRep.MarginRight&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Redim arrRepItem(iRep.Count, 12)&lt;/P&gt;&lt;P&gt;for i = 0 to iRep.Count - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set iiRep = iRep.Item(i)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 0) = iiRep.ObjectId&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 1) = iiRep.Rect.Top&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 2) = iiRep.Rect.Left&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 3) = iiRep.Rect.Height&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 4) = iiRep.Rect.Width&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 5) = iiRep.UseFrame&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 6) = iiRep.FrameColor.PrimaryCol&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 7) = iiRep.FrameWidth&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt; = iiRep.Clip&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 9) = iiRep.HorizontalAlign&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 10) = iiRep.VerticalAlign&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; arrRepItem(i, 11) = iiRep.KeepFontSize&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set TargetRep = doc.GetApplication.CreateEmptyReport&lt;/P&gt;&lt;P&gt;TargetRep.Name = "CopyPastePerRoutine (4)"&lt;/P&gt;&lt;P&gt;TargetRep.ID = "RP95"&lt;/P&gt;&lt;P&gt;TargetRep.Comment = "change objectid and other things"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;kRep = TargetRep.PrintOptions&lt;/P&gt;&lt;P&gt;kRep.MarginTop = arrRep(4)&lt;/P&gt;&lt;P&gt;kRep.MarginBottom = arrRep(5)&lt;/P&gt;&lt;P&gt;kRep.MarginLeft = arrRep(6)&lt;/P&gt;&lt;P&gt;kRep.MarginRight = arrRep(7)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Add&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).Landscape = arrRep(0)&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).PageMode = arrRep(1)&lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).Intro.Height = arrRep(2)&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;TargetRep.Pages.Item(0).ScaleMode = arrRep(3)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'first 8 items are original ID and the second 8 items are the changed ID&lt;/P&gt;&lt;P&gt;arrChangeID = array("CH10026", "CH10021", "CH10024", "CH10031", "CH10030", "CH10029", "CH10028", "CH10027", "CH10036", "CH10035", "CH10033", "CH10032", "CH10034", "CH10039", "CH10037", "CH10038")&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for i = 0 to iRep.Count - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Add&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j = 0 to ubound(arrChangeID)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if replace(arrRepItem(i, 0), "Document\", "") = arrChangeID(j) then &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; arrRepItem(i, 0) = arrChangeID(j + &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt;&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; exit for&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; next&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).ObjectId = arrRepItem(i, 0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Top = arrRepItem(i, 1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Left = arrRepItem(i, 2)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Height = arrRepItem(i, 3)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Rect.Width = arrRepItem(i, 4)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).UseFrame = arrRepItem(i, 5)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).FrameColor.PrimaryCol = arrRepItem(i, 6)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).FrameWidth = arrRepItem(i, 7)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).Clip = arrRepItem(i, &lt;span class="lia-unicode-emoji" title=":smiling_face_with_sunglasses:"&gt;😎&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).HorizontalAlign = arrRepItem(i, 9)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).VerticalAlign = arrRepItem(i, 10)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TargetRep.Pages.Item(0).Items.Item(i).KeepFontSize = arrRepItem(i, 11)&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;doc.AddDocReport TargetRep&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end sub&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;'-------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe within the easter egg are further possibilities, too.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jun 2015 09:20:13 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893490#M311082</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-06-03T09:20:13Z</dc:date>
    </item>
    <item>
      <title>Re: Exporting PDF Reports in XML from QlikView Server</title>
      <link>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893491#M311083</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I went a little bit further in my investigation on this issue and found out a couple of things.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) QlikView stores user created local reports in %appdata%\Roaming\QlikTech\QlikView\Reports\ in an XML file with the QlikView file name and an UUID.&lt;/P&gt;&lt;P&gt;Technically this one could be moved from a PC to another one, given that the UUID is replaced correctly.&lt;/P&gt;&lt;P&gt;The problem eventually would be replacing the ObjectIDs with new IDs of the session of another PC (as you do in the macro), but I suppose it's possible to export the XML of the original objects and recreate it in the other session and then replace the ObjectIDs with these new IDs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) If the user moves the report to the server, the report then is deleted locally and saved in the shared file so it is possible to get the XML only through GUI or Power Tools (SharedFileViewer). Then this report can be shared with any server user but it is impractical to know which user objects were included in the original report and to match the objects manually.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;----&lt;/P&gt;&lt;P&gt;As a side note, I wonder if this is in any way related to the difference between the ActiveDocument.PrintDocReport, &lt;SPAN style="font-size: 13.3333330154419px;"&gt;Active&lt;/SPAN&gt;Document.PrintReport and &lt;SPAN style="font-size: 13.3333330154419px;"&gt;Active&lt;/SPAN&gt;Document.PrintUserReport, API functions as well (maybe another topic actually).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Jun 2015 15:33:58 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Exporting-PDF-Reports-in-XML-from-QlikView-Server/m-p/893491#M311083</guid>
      <dc:creator>francesco_menin</dc:creator>
      <dc:date>2015-06-03T15:33:58Z</dc:date>
    </item>
  </channel>
</rss>

