Solved! Go to Solution.
 
					
				
		
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program
import arcpy, os, sys
#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = string.split(arcpy.GetParameterAsText(0), ";")
dir = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)
for mapDoc in mxdList:
    arcpy.mapping.MapDocument(mapDoc)
    for lyr in m.ListLayers(mxd):
        if lyr.supports('DATASOURCE'):
            if lyr.dataSource == fc_path:
                max_list = []
                rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
                for row in rows:
                    max_list.append(row.Sheet_ID)
                pdf_count = max(max_list)
                arcpy.AddMessage('Sheet count:  %s'%pdf_count)
            else:
                arcpy.AddError('No layers in %s match data source'%mapDoc)
pdfDoc = arcpy.mapping.PDFDocumentOpen(path) print pdfDoc.pageCount
 
					
				
		
 
					
				
		
The pdfs are created from the one mxd. For example: Abilene has 11 sheets (data driven pages) so when that tool makes the PDFs it makes 11 PDFS. One for each sheet or Data driven page.
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program
import arcpy, os, sys
from os import path as p
from arcpy import mapping as m
#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)
report = {}
for mapDoc in mxdList:
    arcpy.mapping.MapDocument(mapDoc)
    for lyr in m.ListLayers(mxd):
        if lyr.supports('DATASOURCE'):
            if lyr.dataSource == fc_path:
                max_list = []
                rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
                for row in rows:
                    max_list.append(row.Sheet_ID)
                pdf_count = max(max_list)
                arcpy.AddMessage('Sheet count:  %s'%pdf_count)
            else:
                arcpy.AddError('No layers in %s match data source'%mapDoc)
                
    # List all PDF's in the pdf_path folder
    arcpy.env.workspace = ws = pdf_path
    for pdf_doc in arcpy.ListFiles('*.pdf'):
        if ''.join([a for a in pdf_doc.split('.')[0] if a.isalpha()]) == mapDoc.replace('_',''):
            pdf = p.join(ws, pdf_doc)
            pdf_object = arcpy.mapping.PDFDocumentOpen(pdf)
            page_count = pdf_object.pageCount
            if page_count == pdf_count:
                arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
            else:
                report[mapDoc] = pdf_doc
# Report maps that do not match up
if len(report > 0):
    f = open(p.join(ws,'Page_Report.txt'))
    for k,v in report.iteritems():
        f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
    f.close()
    arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
    arcpy.AddMessage('All PDF\'s have the correct amount of pages')
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		 
					
				
		
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program
import arcpy, os, sys
from os import path as p
from arcpy import mapping as m
#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)
report = {}
page_list = []
for mapDoc in mxdList:
    arcpy.mapping.MapDocument(mapDoc)
    for lyr in m.ListLayers(mxd):
        if lyr.supports('DATASOURCE'):
            if lyr.dataSource == fc_path:
                max_list = []
                rows = arcpy.SearchCursor(fc_path, "Sheet_ID")
                for row in rows:
                    max_list.append(row.Sheet_ID)
                sheet_count = max(max_list)
                arcpy.AddMessage('Sheet count:  {0}'.format(sheet_count))
            else:
                arcpy.AddError('No layers in %s match data source'%mapDoc)
                
    # List all PDF's in the pdf_path folder
    arcpy.env.workspace = ws = pdf_path
    for pdf_doc in arcpy.ListFiles('%s*.pdf' %mapDoc):
        page_list.append(''.join([i for i in pdf_doc.split('.')[0] if i.isdigit()]))
    page_count = max(page_list)
    if page_count == sheet_count:
        arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
    else:
        report[mapDoc] = pdf_doc
# Report maps that do not match up
if len(report > 0):
    f = open(p.join(ws,'Page_Report.txt'))
    for k,v in report.iteritems():
        f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
    f.close()
    arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
    arcpy.AddMessage('All PDF\'s have the correct amount of pages')
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		 
					
				
		
#Purpose: Compares SheeID field to the toal PDFs created from Data Driven Pages Program
import arcpy, os, sys
from os import path as p
from arcpy import mapping as m
#Make parameters for people to choose mxd and folder of PDFs to compare
mxdList = arcpy.GetParameterAsText(0).split(';')
pdf_path = arcpy.GetParameterAsText(1)
fc_path = arcpy.GetParameterAsText(2)
report = {}
page_list = []
for mapDoc in mxdList:
    arcpy.AddMessage(mapDoc)
    mxd = arcpy.mapping.MapDocument(mapDoc)
    for lyr in m.ListLayers(mxd):
        if lyr.supports('DATASOURCE'):
            if lyr.dataSource == fc_path:
                max_list = []
                rows = arcpy.SearchCursor(lyr)
                for row in rows:
                    max_list.append(row.Sheet_ID)
                sheet_count = max(max_list)
                arcpy.AddMessage('Sheet count:  %s'%sheet_count)
            else:
                arcpy.AddError('No layers in %s match data source'%mapDoc)
                
    # List all PDF's in the pdf_path folder
    arcpy.env.workspace = ws = pdf_path
    for pdf_doc in arcpy.ListFiles('*.pdf'):
        page_list.append(int(''.join([i for i in pdf_doc.split('.')[0] if i.isdigit()])))
    page_count = max(page_list)
    if page_count == sheet_count:
        arcpy.AddMessage('%s Sheet Count matches number of pages in %s' %(mapDoc,pdf_doc))
    else:
        report[mapDoc] = pdf_doc
# Report maps that do not match up
if len(report) > 0:
    f = open(p.join(ws,'Page_Report.txt'))
    for k,v in report.iteritems():
        f.write('%s Sheet Count does not match number of pages in %s\n\n' %(k,v))
    f.close()
    arcpy.AddMessage('Created report for map documents and PDF\'s')
else:
    arcpy.AddMessage('All PDF\'s have the correct amount of pages')
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		