🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: adobe.scripting.indesign
Article #19893

Re: Database Driven Catalog - ???

#19893
From: maxdunn
Date: Wed, 13 Nov 2002 22:19
42 lines
2829 bytes
OK, first, open Access and create a new module. In the VBA view, set two references: choose Tools\References and: 
1. Uncheck the ADO reference 
2. Scroll down and check Adobe InDesign Type Library 
3. Scroll down and check Microsoft DAO Object Library (whatever your latest version is, mine is 3.6 and I think that's the last one) 

Make a simple table "MyTable" with fields "MyField1" and "MyField2" and put in some dummy text. 

Then paste the following in the module: 
Public Function Output() 
    Dim db As DAO.Database 
    Dim rs As DAO.Recordset 
    Set db = CurrentDb 
    Set rs = db.OpenRecordset("tblMyTable", dbOpenDynaset) 
    Rem Make Document-level objects 
    Dim myInDesign As InDesign.Application 
    Set myInDesign = CreateObject("InDesign.Application.2.0") 
    Set myDocument = myInDesign.Documents.Add 
    Set myTextFrame = myDocument.Pages.Item(1).TextFrames.Add 
    Rem Get the page width, page height, and margins 
    myPageHeight = myDocument.DocumentPreferences.PageHeight 
    myPageWidth = myDocument.DocumentPreferences.PageWidth 
    myX1 = myDocument.Pages.Item(1).MarginPreferences.MarginLeft 
    myY1 = myDocument.Pages.Item(1).MarginPreferences.MarginTop 
    myY2 = myPageHeight - myDocument.Pages.Item(1).MarginPreferences.MarginBottom 
    myX2 = myPageWidth - myDocument.Pages.Item(1).MarginPreferences.MarginRight 
    Rem Size the text frame to fit the margins 
    myTextFrame.GeometricBounds = Array(myY1, myX1, myY2, myX2) 
    Rem note that you can check overflow conditions 
    Rem and add more pages/textframes as you go 
    Do While Not rs.EOF 
        sBuf1 = rs!MyField1 
        sBuf2 = rs!MyField2 
        myTextFrame.InsertionPoints.Item(-1).TextContents = sBuf1 _ 
            & vbTab & sBuf2 & vbCr 
            Rem vbcrlf = carriage return/linefeed 
            Rem vbcr = carriage return (new para/line) 
            Rem vblf = linefeed (same para new line) 
        rs.MoveNext 
    Loop 
    rs.Close 
    Set rs = Nothing 
End Function
Technical Details
Message-ID: <1de69529.4@WebX.la2eafNXanI>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-06!sn-xit-04!supernews.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!opentransit.net!fr.clara.net!heighliner.fr.clara.net!newsfeed01.sul.t-online.de!t-online.de!WebX
References: <1de69529.-1@WebX.la2eafNXanI>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: f939a,4348409c0a586298
X-Google-Attributes: gidf939a,public
X-Google-ArrivalTime: 2002-11-13 14:50:05 PST
From: maxdunn <maxdunn@siliconpublishing.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-06!sn-xit-04!supernews.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!opentransit.net!fr.clara.net!heighliner.fr.clara.net!newsfeed01.sul.t-online.de!t-online.de!WebX
Newsgroups: adobe.scripting.indesign
Subject: Re: Database Driven Catalog - ???
Message-ID: <1de69529.4@WebX.la2eafNXanI>
Date: Wed, 13 Nov 2002 14:19:10 -0800
References: <1de69529.-1@WebX.la2eafNXanI>
Lines: 47
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit