viernes, 25 de octubre de 2013

Indesign combinar datos, unir los resultados en un único frame (DataMerge)

Si se usa la opción de Combinación de datos en Indesign, él automáticamente crea un registro por página, dentro de un cuadro de texto (TextFrame) para cada página.
Como este resultado crea un cuadro de texto por página, para cada registro de nuestra base de datos, puede pasar que queramos unirlo todo en un único cuadro de texto.
Para realizar esto, se debe crear un Script, que fusione todos los cuadros de texto de todas las páginas de nuestro documento combinado. El código del script es el siguiente:

var myDoc = app.activeDocument;
for (var i = 0; myDoc.pages.length > i; i++)
{
    var myPage = myDoc.pages[i];
    var myFrame = myPage.textFrames[0];   
    if (i > 0)
    {
        myFrame.previousTextFrame = myFrameprev;
    }
    var myFrameprev = myFrame;
}

Se debe crear un fichero con extensión .jsx con éste código y copiar en el directorio "C:\Users\'tu nombre de usuario'\AppData\Roaming\Adobe\InDesign\Version 7.0'depende de la versión instalada'\es_ES'depende del idioma'\Scripts\Scripts Panel" en Windows 7.
Después de ejecutar el script quedarán muchas páginas vacias hacia el final del documento, que habrá que borrar.

No hay comentarios: