• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

change section marker error

Participant ,
Dec 17, 2016 Dec 17, 2016

Copy link to clipboard

Copied

I give a part marker to a page

Then I want to give the part marker back to the same page

I'm getting an error

I can not change current (available) section marker

Error: This page already has another section

var w = new Window("dialog", "Section");

var panel = w.add('panel', undefined, "----");

var grup = panel.add('group', undefined, "");

grup.orientation = "row";

grup.add('statictext', undefined, "Page");

var sayfa = grup.add('edittext', [0, 0, 50, 25], "1")

grup.add('statictext', undefined, "Section Marker");

sayfa.graphics.font = "Tahoma:16";

var kisim_isaretcisi = grup.add('edittext', [0, 0, 50, 25], "A")

kisim_isaretcisi.graphics.font = "Tahoma:16";

kisim_isaretcisi.active = true;

w.add('button', undefined, 'Tamam', {name: 'OK'}).onClick = function() {

w.close(12345);

}

if(w.show() == 12345) { 

var doc = app.activeDocument;  

var ksm = kisim_isaretcisi.text; 

var syf = Number(sayfa.text); 

var addd = doc.sections.add(doc.pages.item(syf-1));

addd.marker = ksm;

}

TOPICS
Scripting

Views

459

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 18, 2016 Dec 18, 2016

Copy link to clipboard

Copied

The message is clear: you can apply a section to a page only once. To apply a section again, first delete the section.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Dec 19, 2016 Dec 19, 2016

Copy link to clipboard

Copied

How to express it is or not part

if(part){  //part code ??

remove

}else{

add

}

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 19, 2016 Dec 19, 2016

Copy link to clipboard

Copied

Sorry, I don't understand what you mean.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Dec 19, 2016 Dec 19, 2016

Copy link to clipboard

Copied

How can I query does it have section starting point in a page?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 20, 2016 Dec 20, 2016

Copy link to clipboard

Copied

LATEST

Hi,

removing a section when found and adding a section with one single change perhaps in the value of the marker property is a bit "brute force" I think.

Nevertheless here a script snippet, that will remove and add a section, if the page of interest is already starting with a section. Adapt it to your needs:

/*

   

    Adds a section to the document beginning with the page of interest

    Removes and adds section if a section starts with the page of interest.

    IMPORTANT NOTES:

    You cannot remove the section that starts on page one of every document.

   

    Removing and adding section is brute force,

    if you only want to change e.g. a marker of an existing section.

   

*/

var doc = app.documents[0];

// The third page in the document:

var pageOfInterest = doc.pages[2];

// Gather all the pages where sections begin:

var pagesWhereSectionsStart = doc.sections.everyItem().pageStart;

var indexesOfPagesWithSection = [];

// Preparing an array to hold the indexes of the sections.

// The array's index however denotes the index of a page.

// indexesOfPagesWithSection[0] holds always value 0

// because doc.sections[0] starts always on page 1 of a document.

// Example:

// If doc.pages[123] is the start of doc.sections[1], the second section in the document,

// the value of indexesOfPagesWithSection[123] is 1

// pagesWhereSectionsStart contains page objects.

// Loop that array:

for(var n=0;n<pagesWhereSectionsStart.length;n++)

{

    var indexOfSection = n;

    var indexOfPageWhereSectionStarts = pagesWhereSectionsStart.documentOffset;

   

    // Feed the array:

    indexesOfPagesWithSection[indexOfPageWhereSectionStarts] = indexOfSection;

};

var indexOfPageOfInterst = pageOfInterest.documentOffset;

if(indexOfPageOfInterst in indexesOfPagesWithSection)

{

    doc.sections[  indexesOfPagesWithSection[ indexOfPageOfInterst ]  ].remove();

};

var newSection = doc.sections.add(pageOfInterest);

Regards,
Uwe

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines