[ID CC-CC2021] Небольшая заминка с DataMerge

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
DataMerg'ом обновляю название месяца на шаблонных страницах. Однако при генeрации merged Document эти шаблонные элементы оказываются уже не шаблонными, а обычными фреймами на странице. Но это полбеды (месяц, ессно, уже указан). Но если я добавлю новую страницу(ы), то в шаблонном элементе обнаруживается незаполненное DataMerge-поле. Можно ли это обойти? Напр., где-то указать, что надо заполнить элементы и на шаблоне, типа Include Master Pages. Если нет, то вся каша будет заздря.
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 865
Реакции
3 453
Сколько же у вас месяцев, что вы используете DataMerge?
 
  • Спасибо
Реакции: hulk1776

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Но если я добавлю новую страницу(ы), то в шаблонном элементе обнаруживается незаполненное DataMerge-поле. Можно ли это обойти? Напр., где-то указать, что надо заполнить элементы и на шаблоне, типа Include Master Pages. Если нет, то вся каша будет заздря.

вот интересно, а чем оно должно быть заполнено? рандомным значением из данных? ну вручную и пропишите его
 

bossrus

шибка умный, аднака
12 лет на форуме
Сообщения
447
Реакции
74
DataMerg'ом обновляю название месяца на шаблонных страницах.
уже не очень понятно причём тут раздел "Скрипты и плагины"

Однако при генeрации merged Document эти шаблонные элементы оказываются уже не шаблонными, а обычными фреймами на странице.
и он так и должен работать. брать блоки с мастера, и заполнять на страницах.
а если у вас заполняется мастер — то все созданные с ним страницы будут с этим-же заполнением, что очевидно

Но если я добавлю новую страницу(ы), то в шаблонном элементе обнаруживается незаполненное DataMerge-поле.
ибо мердж и не должен менять мастер.

ну а главное — таки правильный вопрос:
Сколько же у вас месяцев, что вы используете DataMerge?
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
Сколько же у вас месяцев, что вы используете DataMerge?
Месяцы ставлю скриптом (в новом документе). Показалось, что Dato'й будет быстрее. Оказалось, что гораздо медленнее + заморочка с потерей содержимого.
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
вот интересно, а чем оно должно быть заполнено? рандомным значением из данных? ну вручную и пропишите его
Ожидается, что будет заполнено тем же содержимым файла, что и на нешаблонной странице. А вручную дописывать на шаблонах (тем более, что их штук 30) - потеряется суть автоматизации.
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
уже не очень понятно причём тут раздел "Скрипты и плагины"
Ну типа такого:
Код:
aD.dataMergeProperties.updateDataSource();
aD.dataMergeProperties.mergeRecords();

ибо мердж и не должен менять мастер.
Вот на этом и погорел)))

ну а главное — таки правильный вопрос: Сколько же у вас месяцев, что вы используете DataMerge?
Менять надо: месяц (на 20 шаблонах), номер выпуска (на 20 шаблонах), его второй номер (на 20 шаблонах), название выпуска (рус/англ), главного редактора (рус/анг). Можно что-то забыть или проглядеть. Ну и долго до невозможности. А скриптом - чик и готово (за 2,5-3 с) с нужными заменами.
А с Data Merge надо сгенерировать сохранить, закрыть и открыть - чтобы шрифты вернулись.
 

Gad

Сообщения
2 975
Реакции
1 408
Вам же еще в предыдущем топике это подсказали, причем сразу же :)

Не по теме:
Видео решает?:)
 

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359
Менять надо: месяц (на 20 шаблонах), номер выпуска (на 20 шаблонах), его второй номер (на 20 шаблонах), название выпуска (рус/англ), главного редактора (рус/анг). Можно что-то забыть или проглядеть. Ну и долго до невозможности. А скриптом - чик и готово (за 2,5-3 с) с нужными заменами.
вам бы рефакторинг шаблонов не помешал... или у вас данные скачут с места на место на разных шаблонах?
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Ожидается, что будет заполнено тем же содержимым файла, что и на нешаблонной странице. А вручную дописывать на шаблонах (тем более, что их штук 30) - потеряется суть автоматизации.
Я не понимаю. Шаблонов 30, данных 100500. Как выбрать?
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Менять надо: месяц (на 20 шаблонах), номер выпуска (на 20 шаблонах), его второй номер (на 20 шаблонах), название выпуска (рус/англ), главного редактора (рус/анг).
Я насчитал 7 (семь) пунктов. Это 7 (семь) переменных типа "пользовательский текст". Каждую проклацать вручную — минута. На всё. Но если даже есть риск из семи переменных какую-то пропустить, можно написать скрипт в виде диалогового окна, в котором будет предложено поработать со всеми необходимыми переменными. Тогда точно ничего не упустить.
 
  • Спасибо
Реакции: ~RA~

Gad

Сообщения
2 975
Реакции
1 408
Каждую проклацать вручную — минута. На всё.
Справедливости ради... я попробовал с переменными. Или я не понял как сделать, чтобы текстовая переменная бралась по умолчанию, или этого сделать нельзя, та что прописана в файле имеет приоритет и менять (импортировать) придется в каждом файле, что уже менее удобно. Ели я правильно понял, что шаблон имеется в виду файл, то это 20 раз...
 
Последнее редактирование:

Gad

Сообщения
2 975
Реакции
1 408
Есть таки способ поменять текстовую переменную во всех файлах сразу. Объединить файлы в книгу, открыть один из файлов, поменять в нем значения и сделать синхронизацию текстовых переменных в книге. В зависимости от задачи, может быть даже удобнее чем линк.
 

hulk1776

Топикстартер
15 лет на форуме
Сообщения
735
Реакции
21
вам бы рефакторинг шаблонов не помешал... или у вас данные скачут с места на место на разных шаблонах?
А что такое рефакторинг? Наведение порядка в шаблонах? Это бы не помешало ((( [а то они не зависят друг от друга, поэтому изменение элемента на одном не меняет его на всех остальных]. Если речь об этом...
 

xenOnn

15 лет на форуме
Сообщения
287
Реакции
45
Вы хоть бы пример скинули...
Сейчас совсем не понятно что именно вам нужно.
Может быть просто шаблоны зависимыми сделать, может использовать переменные, может XML, или cross-references, а может комбинацию из всего перечисленного. Нет одного универсального средства для всего сразу.