<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re:  How can I execute the custom Toolbox model that contains a script file? in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/how-can-i-execute-the-custom-toolbox-model-that/m-p/205595#M5369</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Unless I am missing something important you don't need to connect to the toolbox and call the model that is running the script. As you have provided us with what the script is doing I see all that it is doing is calling the standard &lt;SPAN style="background-color: #ffffff;"&gt;TableToExcel_conversion tool.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can call geo-processing tools directly within ArcObjects. Below is some example code using another tool, but you can see how it is called and if you follow that pattern it will work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Notice that the tool is called as Select_analysis, this is the&lt;EM&gt; select&lt;/EM&gt; tool and &lt;EM&gt;analysis&lt;/EM&gt; is the toolbox alias.&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;' Initialise Geoprocessor
Dim pGP As IGeoProcessor
pGP &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; New &lt;SPAN class="token class-name"&gt;GeoProcessor&lt;/SPAN&gt;
With pGP
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;AddOutputsToMap &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; False
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;LogHistory &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; False
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;OverwriteOutput &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; True
End With

' Load parameters
Dim pVariantArray As IVariantArray
pVariantArray &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; New &lt;SPAN class="token class-name"&gt;VarArray&lt;/SPAN&gt;
With pVariantArray
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;m_pFeatureLayer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;FeatureClass&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;outFC&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;sSQL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
End With

' Execute tool
Dim pGeoProcessorResult As IGeoProcessorResult
pGeoProcessorResult &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; pGP&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Execute&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Select_analysis"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pVariantArray&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; Nothing&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
If pGeoProcessorResult&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Status &lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; ESRI&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ArcGIS&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriSystem&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriJobStatus&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriJobSucceeded Then
 ' Error&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;do&lt;/SPAN&gt; something
Else
 ' ran without issue to something &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt;
End If‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 10:10:56 GMT</pubDate>
    <dc:creator>DuncanHornby</dc:creator>
    <dc:date>2021-12-11T10:10:56Z</dc:date>
    <item>
      <title>How can I execute the custom Toolbox model that contains a script file?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/how-can-i-execute-the-custom-toolbox-model-that/m-p/205594#M5368</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;I want to execute&amp;nbsp; the Toolbox ("&lt;SPAN&gt;Toolbox.tbx"&lt;/SPAN&gt;) model ("&lt;SPAN&gt;ModelScript"&lt;/SPAN&gt;) that contains a script ("TableToExcel.py") file but gives exception. I want to copy table values to excel from model .I run correct&amp;nbsp;from arcmap open ModelScript model and run , but programaticly not .I'm using ArcObject sdk for .net . How Can I solve this problem?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Here is the arcobjects code below:&lt;/STRONG&gt;&lt;BR /&gt; IGeoProcessorResult result;&lt;BR /&gt; IGeoProcessor2 gp = new GeoProcessorClass();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;gp.AddToolbox(@"C:\Users\.....\Desktop\Bolge\TEST.gdb\Toolbox.tbx");&lt;STRONG&gt;&amp;nbsp; //Toolbox&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;gp.OverwriteOutput = true;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IVariantArray parameters = new VarArrayClass();&lt;BR /&gt; parameters.Add(@"C:\Users\.....\Desktop\Bolge\TEST.gdb\table");&amp;nbsp;&lt;STRONG&gt; //Parameter&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;object sev = null;&lt;BR /&gt; try {&lt;/P&gt;&lt;P&gt;result = gp.Execute("ModelScript", parameters, null);&amp;nbsp; &lt;STRONG&gt;&amp;nbsp;//Model&amp;nbsp;&lt;/STRONG&gt; &amp;nbsp;}&lt;/P&gt;&lt;P&gt;catch (Exception ex){MessageBox.Show(gp.GetMessages(ref sev)); }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Here is the "&lt;SPAN style="font-weight: 400;"&gt;&lt;STRONG&gt;TableToExcel.py"&lt;/STRONG&gt;&amp;nbsp;&lt;/SPAN&gt;code below:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;# Name: TableToExcel_2.py&lt;/P&gt;&lt;P&gt;import arcpy&lt;/P&gt;&lt;P&gt;# Set environment settings&lt;BR /&gt;arcpy.env.workspace = "C:\Users\.....\Desktop\Bolge"&lt;/P&gt;&lt;P&gt;# Set local variables&lt;BR /&gt;in_table = "TEST.gdb/table"&lt;BR /&gt;out_xls = "addresses.xls"&lt;/P&gt;&lt;P&gt;# Execute TableToExcel&lt;BR /&gt;arcpy.TableToExcel_conversion(in_table, out_xls)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Here is prictures of model in ArcMap :&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;IMG __jive_id="487222" alt="toolbox" class="image-2 jive-image j-img-original" src="https://community.esri.com/legacyfs/online/487222_toolbox.png" /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="487221" alt="model" class="jive-emoji image-1 jive-image j-img-original" src="https://community.esri.com/legacyfs/online/487221_model.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Here is te error from ArcObject .net :&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Error HRESULT E_FAIL has been returned from a call to a COM component.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component.&lt;BR /&gt; at ESRI.ArcGIS.Geoprocessing.GeoProcessorClass.IGeoProcessor2_Execute(String Name, IVariantArray ipValues, ITrackCancel pTrackCancel)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 02 Apr 2020 12:15:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/how-can-i-execute-the-custom-toolbox-model-that/m-p/205594#M5368</guid>
      <dc:creator>tanerkoka</dc:creator>
      <dc:date>2020-04-02T12:15:38Z</dc:date>
    </item>
    <item>
      <title>Re:  How can I execute the custom Toolbox model that contains a script file?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/how-can-i-execute-the-custom-toolbox-model-that/m-p/205595#M5369</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Unless I am missing something important you don't need to connect to the toolbox and call the model that is running the script. As you have provided us with what the script is doing I see all that it is doing is calling the standard &lt;SPAN style="background-color: #ffffff;"&gt;TableToExcel_conversion tool.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can call geo-processing tools directly within ArcObjects. Below is some example code using another tool, but you can see how it is called and if you follow that pattern it will work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Notice that the tool is called as Select_analysis, this is the&lt;EM&gt; select&lt;/EM&gt; tool and &lt;EM&gt;analysis&lt;/EM&gt; is the toolbox alias.&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;' Initialise Geoprocessor
Dim pGP As IGeoProcessor
pGP &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; New &lt;SPAN class="token class-name"&gt;GeoProcessor&lt;/SPAN&gt;
With pGP
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;AddOutputsToMap &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; False
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;LogHistory &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; False
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;OverwriteOutput &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; True
End With

' Load parameters
Dim pVariantArray As IVariantArray
pVariantArray &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; New &lt;SPAN class="token class-name"&gt;VarArray&lt;/SPAN&gt;
With pVariantArray
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;m_pFeatureLayer&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;FeatureClass&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;outFC&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;sSQL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
End With

' Execute tool
Dim pGeoProcessorResult As IGeoProcessorResult
pGeoProcessorResult &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; pGP&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;Execute&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Select_analysis"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; pVariantArray&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; Nothing&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
If pGeoProcessorResult&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;Status &lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; ESRI&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;ArcGIS&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriSystem&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriJobStatus&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;esriJobSucceeded Then
 ' Error&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;do&lt;/SPAN&gt; something
Else
 ' ran without issue to something &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt;
End If‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 10:10:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/how-can-i-execute-the-custom-toolbox-model-that/m-p/205595#M5369</guid>
      <dc:creator>DuncanHornby</dc:creator>
      <dc:date>2021-12-11T10:10:56Z</dc:date>
    </item>
  </channel>
</rss>

