Get current master page number in formcalc/Javascript | Community
Skip to main content
Level 2
May 29, 2020
Solved

Get current master page number in formcalc/Javascript

  • May 29, 2020
  • 2 replies
  • 8018 views

I have two master pages in my Adobeform and i need to get the current master page number to assign that value to the field in subform of bodypage.

i have tried below things to get current master page number and total count of current master page but it is giving page numbers including all the master pages.

$layout.page ( ref ( $ ) )--->giving current page number(including all master pages)

$layout.pageCount()--> total page count(including all master pages)

Kindly provide the logic to get the current master page number and count.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by radzmar

Hi, 

 

so I guess you're trying to get the n-th instance of a master page used as background of a specific form page? In that case you'll need a combination of several scripting methods to find out. 

Given you have a field somewhere in the form, to display the current index the script looks this way: 

 

this.rawValue = xfa.layout.pageContent( xfa.layout.absPage(this).toString(), "pageArea", true).item(0).index + 1;

 

How it works:

Determine the 0-based-page number of the field with xfa.layout.absPage(this) and convert it to a string with toString(). Then get a node list of page areas used for that page with xfa.layout.pageContent( …, "pageArea", true). Now select the first item of that node list by item(0) and return it's 0-based index number and add 1.

 

Simple, isn't it?! 😉

 

2 replies

radzmar
radzmarAccepted solution
Level 10
May 29, 2020

Hi, 

 

so I guess you're trying to get the n-th instance of a master page used as background of a specific form page? In that case you'll need a combination of several scripting methods to find out. 

Given you have a field somewhere in the form, to display the current index the script looks this way: 

 

this.rawValue = xfa.layout.pageContent( xfa.layout.absPage(this).toString(), "pageArea", true).item(0).index + 1;

 

How it works:

Determine the 0-based-page number of the field with xfa.layout.absPage(this) and convert it to a string with toString(). Then get a node list of page areas used for that page with xfa.layout.pageContent( …, "pageArea", true). Now select the first item of that node list by item(0) and return it's 0-based index number and add 1.

 

Simple, isn't it?! 😉

 

Ashok1Author
Level 2
May 29, 2020
thanks radzmar
Ashok1Author
Level 2
June 2, 2020

kindly help me to get the current master count(total number of current master page)