# #SLUG DEMO #Data Driven Maps & Python #February 9, 2011 # #******Changing Title Dynamic text and exporting Data Driven Pages as a PDF.**** ############# REFERENCE THE EXISTING MAPDOCUMENT ###################### mxd = arcpy.mapping.MapDocument("CURRENT") ############# Set-up two List for UNIT NUMBER and UNIT TYPE VALUES ########## StakeNumber = [] Unittype = [] ############# CREATE A CURSOR OBJECT, OR DATA ACCESS OBJECT, ON THE STAKE_DISTRICT LAYER TABLE ###### PortCur = arcpy.SearchCursor("Stake_District Boundary", "","","","ORGLONGNAME D") ############# ITERATE THROUGH ALL THE ROWS OF DATA AND APPEND VALUES TO THE ############# StakeNumber and Unittype for row in PortCur: Unitnumber = row.getValue("UNITNO") Orgtype = row.getValue("ORGTYPELONGDESCTXT") StakeNumber.append(Unitnumber) Unittype.append(Orgtype) print StakeNumber ############ REFERENCE THE MAP TITLE OBJECT TO CHANGE IT's TEXT ELEMENT PROPERTY ############ Title = arcpy.mapping.ListLayoutElements(mxd, "TEXT_ELEMENT", "MAPTITLE") [0] ########## START ITERATION THROUGH DATA DRIVEN PAGES AND CHANGE THE TEXT ELEMENT PROPERTY AND ########## EXPORT EACH ONE AS A PDF DOCUMENT for pageNum in range(1, mxd.dataDrivenPages.pageCount +1): mxd.dataDrivenPages.currentPageID = pageNum DescText = Unittype.pop() Title.text = ' ' + DescText + ' ()' arcpy.RefreshActiveView() StkNbr = StakeNumber.pop() print "Exporting page {0} of {1}".format(str(mxd.dataDrivenPages.currentPageID), str(mxd.dataDrivenPages.pageCount)) arcpy.mapping.ExportToPDF(mxd, r"C:\SLUG\Portrait\m_" + str(StkNbr) + ".pdf",resolution=200, image_compression="DEFLATE")