I need to re-point all sde raster layers in mxds to a new sde instance (we are moving from sde 9.3.1 to 10.1). Many people have also have ODBC connections within their mxds for tabular data from non-spatial databases. The problem is when I run the script it is constantly prompting me for credentials. I could care less about them for this exercise as I do not need to update the ODBC connection. I would like to just suppress them. Can this be done?

import arcpy
import os
import time
path_layer = r"***"
osa_sde_path = r"***"
sde_user = "***"
log = open("log.txt", "w")
for dir_path, dir_names, file_names in os.walk(path_layer):
for file_name in file_names:
if file_name[-3:] == "mxd":
ts = os.path.getmtime(os.path.join(dir_path, file_name))
mod_date = time.strftime('%m/%Y', time.gmtime(ts))
mod_date_list = mod_date.split("/")
if int(mod_date_list[1]) > 2012 and int(mod_date_list[0]) > 4:
mxd = arcpy.mapping.MapDocument(os.path.join(dir_path, file_name))
layers_list = arcpy.mapping.ListLayers(mxd)
print "Updating:\t" + os.path.join(dir_path, file_name)
for layer in layers_list:
if layer.supports("DATASOURCE"):
data_source = layer.dataSource
if data_source.find(sde_user) != -1 and layer.isRasterLayer:
print "\tUpdating:\t" + layer.name
dot_index = data_source.rfind(".")
dataset_name = data_source[dot_index + 1:]
print "\t\tNew Path:\t" + os.path.join(osa_sde_path, sde_user + "." +
dataset_name)
layer.replaceDataSource(osa_sde_path, "SDE_WORKSPACE", sde_user + "." +
dataset_name, False)
if layer.isBroken:
log.write(os.path.join(dir_path, file_name))
print "Data Source Broken"
mxd.save()
log.close()Suggestions?
do you mean like ListRasters ListRasters—Help | ArcGIS for Desktop no mapping, pure arcpy, throw it a path and away you go