Can't figure this one out. I'm trying to replace a layer's datasource based on a user-input parameter (not shown in the code snippet). I know the SDE path that gets created (BasinPath variable) is correct because I've tested it using other try/except statements. Anyone familiar with this tool? I'm using 10.6. The try/except statement beginning on line 13 is the part that isn't working.
<SPAN class="keyword token">def</SPAN> <SPAN class="token function">zoomTo</SPAN><SPAN class="punctuation token">(</SPAN>info<SPAN class="punctuation token">,</SPAN> bas<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
doc <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>MapDocument<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Current"</SPAN><SPAN class="punctuation token">)</SPAN>
dataFrame <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListDataFrames<SPAN class="punctuation token">(</SPAN>doc<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN>
<SPAN class="keyword token">if</SPAN> waterRight<SPAN class="punctuation token">:</SPAN>
MapLayers <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListLayers<SPAN class="punctuation token">(</SPAN>doc<SPAN class="punctuation token">,</SPAN><SPAN class="string token">"statewide_irr"</SPAN><SPAN class="punctuation token">,</SPAN>dataFrame<SPAN class="punctuation token">)</SPAN>
Layer <SPAN class="operator token">=</SPAN> MapLayers<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN>
DNRPrd <SPAN class="operator token">=</SPAN> <SPAN class="string token">"D:\\WID\\WID_SDE.sde"</SPAN>
IRR <SPAN class="operator token">=</SPAN> DNRPrd <SPAN class="operator token">+</SPAN> <SPAN class="string token">"\\"</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">"WID_SDE.Irr"</SPAN>
BasinPath <SPAN class="operator token">=</SPAN> IRR <SPAN class="operator token">+</SPAN> <SPAN class="string token">"\\"</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">"WID_SDE.Irr_"</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>bas<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">for</SPAN> layr <SPAN class="keyword token">in</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListLayers<SPAN class="punctuation token">(</SPAN>dataFrame<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">if</SPAN> layr<SPAN class="punctuation token">.</SPAN>name <SPAN class="operator token">==</SPAN> <SPAN class="string token">"statewide_irr"</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN>BasinPath<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">try</SPAN><SPAN class="punctuation token">:</SPAN>
layr<SPAN class="punctuation token">.</SPAN>replaceDataSource<SPAN class="punctuation token">(</SPAN>BasinPath<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"SDE_WORKSPACE"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"statewide_irr"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="token boolean">True</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">except</SPAN><SPAN class="punctuation token">:</SPAN>
errorMsg <SPAN class="operator token">=</SPAN> <SPAN class="string token">"Error in dataSourceReplace"</SPAN>
pythonaddins<SPAN class="punctuation token">.</SPAN>MessageBox<SPAN class="punctuation token">(</SPAN>errorMsg<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'Shucks!'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">0</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN><SPAN class="punctuation token">(</SPAN>errorMsg<SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>