stevetroughton Posted July 18, 2020 Posted July 18, 2020 Hi, I am trying to hide an object on a report other than in the Part 'Body'. All other parts i.e. sub-summarys etc it is to be hidden. I understand how to do this using the function Get(PageNumber) used in the 'Hide Object When' but depending upon the record I am viewing the records within the body can be anything from 7 pages to 60 pages long. I suppose I am after something like Get(ReportPart) ≠ Body. This function doesn't exist however. Please could someone point me in the right direction on how to refer to the Body Part in a report. Steve
Ocean West Posted July 18, 2020 Posted July 18, 2020 Layout body parts can't be conditionally controlled in this manner the only layout part that effectively can be 'hidden' is the sub summary part if do not sort by the break field that part will not appear on the final report. are you referring to Objects on the layout (fields / labels)? that you want to hide depending on which page it appears?
stevetroughton Posted July 18, 2020 Author Posted July 18, 2020 Hi, Yes i'm referring to an object (fields / labels) that I want to hide, not the body part itself. I have a label in the 'header part' that obviously appears on the sub-summary, body etc basically every page when the report is previewed. I only want the label however to appear on the body part. I can't place the label within the body part itself because then it would show up more than once above every record displayed, so it has to be in the header. Anyway I can control the label (that is in the header) to only appear at the top of the page within in the body part when the report is previewed?
Ocean West Posted July 18, 2020 Posted July 18, 2020 Do you mind sharing a screen shot of your layout?
stevetroughton Posted July 18, 2020 Author Posted July 18, 2020 The heading '3.2 Detailed Findings, Costs and Photographic Schedule' in the Header part, I only want this to display on the Body Part when the report is previewed. I tried typing this in the ‘Hide Object When’ for the label but no such function exists. Get(ReportPart) ≠ Body So I want it show like this at the top of every page for the Body part only, but it is showing on every page i.e. the sub-summary parts of the report also.
Ocean West Posted July 18, 2020 Posted July 18, 2020 So if i understand correctly you have the following Title Header ( appears only on the first page ) Header (appears on every page starting at 2 ) A body or sub summary You are trying to hide the text object 3.2 Detail Findings... on a specific page?
stevetroughton Posted July 18, 2020 Author Posted July 18, 2020 Yes that correct. Not so much on a specific page, every page for for the Body Part. Depending upon the record being viewed however the Body part could be 10 pages long, or it could be 80 pages long so I can't function Get(PageNumber) I only want it to show at the top of every page for the Body part. Below is the parts of my report.
Ocean West Posted July 18, 2020 Posted July 18, 2020 I think i kind of get it. However in order for this to work like i think you want it to, you're not going to like the process. In order for FM to know if the page you are on is showing a body part or such you may need to enter preview and pause on each page so that FM can "see" what the preview looks like with said data being displayed. At each interval you would have to set variables, which in turn would evaluate and hide or show objects as desired. However on large reports this pause on each page would take time to run. (minutes)
stevetroughton Posted July 18, 2020 Author Posted July 18, 2020 Ah right thank you, I understand what you mean but no this won't work unfortunately. The idea is that users who are not that familiar with FileMaker will simply be able to click a button and have the option to either print or save as PDF. They won't have the know-how to undertake your process. I will have to think of something else. Thank you for your time and offer of a solution.
Ocean West Posted July 18, 2020 Posted July 18, 2020 if in the data set there was a break field or something possibly where if the record is known to be the first on a page then the value would could be used as a hide condition that would be respected on subsequent pages. The only other option possibly would be a process that builds a virtual list that can scope the data in a way for the rendering to output as desired.
Recommended Posts
This topic is 1587 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now