{"id":170,"date":"2007-10-03T07:44:00","date_gmt":"2007-10-03T07:44:00","guid":{"rendered":"\/lisa\/post\/2007\/10\/03\/Regarding-PDFListener-and-SP2.aspx"},"modified":"2021-08-30T12:59:57","modified_gmt":"2021-08-30T19:59:57","slug":"regarding-pdflistener-and-sp2","status":"publish","type":"post","link":"https:\/\/spacefold.com\/lisa\/2007\/10\/03\/regarding-pdflistener-and-sp2\/","title":{"rendered":"Regarding PDFListener and SP2"},"content":{"rendered":"<p>A small clarification is obviously in order, because a couple of people have asked me when I&#8217;m &#8220;releasing&#8221; the SP2 version of PDFListener, to go with <a title=\"SP2 changes to RunReports method\" href=\"\/lisa\/2007\/09\/11\/A-small-present-for-Ludek-RunReports-revision\/\">the changes I&#8217;ve made in RunReports<\/a>.<\/p>\n<p>The answer is: there is nothing I need to release. The code in PDFListener.PRG looks like this:<\/p>\n<p class=\"code\">#<span style=\"color: #0000ff;\">DEFINE <\/span>FFC_HOME\u00a0<span style=\"color: #0000ff;\">ADDBS<\/span>(<span style=\"color: #0000ff;\">HOME<\/span>() + &#8220;FFC&#8221;)<\/p>\n<p>#<span style=\"color: #0000ff;\">DEFINE <\/span>PDFLISTENER_SUPERCLASSLIB\u00a0;<br \/>\nFFC_HOME + &#8220;_reportlistener.vcx&#8221;<\/p>\n<p>#<span style=\"color: #0000ff;\">DEFINE CLASS <\/span><span style=\"color: #000000;\">PDFListener\u00a0<\/span><span style=\"color: #0000ff;\">AS <\/span><span style=\"color: #000000;\">utilityReportListener ;<br \/>\n<\/span><span style=\"color: #0000ff;\">OF <\/span><span style=\"color: #000000;\">PDFLISTENER_SUPERCLASSLIB<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&#8230; If you re-compile PDFListener.PRG with an SP2 copy of _reportlistener.vcx, you get the SP2 improvements.<\/p>\n<p class=\"NB\">The latest version of the PDFListener source is here: <a href=\"\/downloads-index\/\">http:\/\/spacefold.com\/downloads<\/a>, but I haven\u2019t changed anything in that source zip except for adding a non-VFP 9 version of the facility (PDFClass.PRG), <a title=\"Blog post on PDF Power article posting\" href=\"\/lisa\/2007\/08\/05\/PDF-Power-Redux-Redacted-and-Reduced\/\">as I explained<\/a> when I posted the article (<a href=\"\/articles\">http:\/\/spacefold.com\/articles<\/a>).<\/p>\n<p>PDFClass\u00a0does not descend from any reportlistener class, and\u00a0it is the\u00a0code I used in earlier versions of FoxPro. In fact, I have\u00a0used similar code, all the way back to FoxPro DOS. (I think I refactored the code for OOP around VFP 5.)<\/p>\n<p>I have not made the equivalent changes in PDFClass.PRG to improve its exposure of page numbers because PDFClass does not even have a pages array. I suppose I could add one, but there isn&#8217;t much point. By definition, PDFClass doesn&#8217;t need to consider a report run with mixed old-style and new-style syntax, or chained reports.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A small clarification is obviously in order, because a couple of people have asked me when I&#8217;m &#8220;releasing&#8221; the SP2 version of PDFListener, to go with the changes I&#8217;ve made in RunReports. The answer is: there is nothing I need to release. The code in PDFListener.PRG looks like this: #DEFINE FFC_HOME\u00a0ADDBS(HOME() + &#8220;FFC&#8221;) #DEFINE PDFLISTENER_SUPERCLASSLIB\u00a0;<a class=\"more-link\" href=\"https:\/\/spacefold.com\/lisa\/2007\/10\/03\/regarding-pdflistener-and-sp2\/\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-170","post","type-post","status-publish","format-standard","hentry","category-visual-foxpro"],"_links":{"self":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts\/170","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/comments?post=170"}],"version-history":[{"count":2,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts\/170\/revisions"}],"predecessor-version":[{"id":385,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/posts\/170\/revisions\/385"}],"wp:attachment":[{"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/media?parent=170"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/categories?post=170"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/spacefold.com\/lisa\/wp-json\/wp\/v2\/tags?post=170"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}