Hello,
I want to publish a mxd file via arcpy. I checked the examples in the documentation - unfortunately it is not working. the code is:
sd_draft = arcpy.mapping.CreateMapSDDraft(map_document, sd_draft_file, service_name, "FROM_CONNECTION_FILE", connection_file, True, None, summary, tags) if sd_draft["errors"] == {}: arcpy.StageService_server(sd_draft_file, sd_file) arcpy.UploadServiceDefinition_server(sd_file, connection_file) at CreateMapSDDraft the following error occurs:
File "c:\program files (x86)\arcgis\desktop10.4\arcpy\arcpy\mapping.py", line 398, in CreateMapSDDraft return convertArcObjectToPythonObject(arcgisscripting._createMapSDDraft(*gp_fixargs([map_document, out_sddraft, service_name, server_type, connection_file_path, copy_data_to_server, folder_name, summary, tags], True, False))) Error Info: The system cannot locate the object specified.
I checked - the paths to the connection file and the mxd file are correct. We are also running on the latest Version. But I cant find any sd files on the server for existing services. Any idea, why I cant find those files?
Any help, very welcome.
How did you define the "map_document" parameter?
map_document = arcpy.mapping.MapDocument("PATH\\TO_MXD_FILE")
CreateMapSDDraft—Help | ArcGIS Desktop
shows
A draft service definition does not contain data. A draft service alone cannot be used to publish a service.
then
The Service Definition Draft can then be converted to a fully consolidated Service Definition (.sd) file using the Stage Service tool. Staging compiles all the necessary information needed to successfully publish the GIS resource. If your data is not registered with the server, the data will be added when the Service Definition Draft is staged. Finally, the Service Definition file can be uploaded and published as a GIS service to a specified GIS server using the Upload Service Definition tool. This step takes the Service Definition file, copies it onto the server, extracts required information, and publishes the GIS resource. For more information, see the overview of the Publishing toolset.
which suggests you aren't done the process
yes - of course. because the script failed before and didn't execute the following steps.
Which are as far as I know: arcpy.StageService_server and arcpy.UploadServiceDefinition_server
To call StageService_server I would need an existing sddraft - so, as long as the function CreateMapSDDraft fails, I am stuck there.
Anna, I think you'll need to add a little more of your code to the question.
My best guess is it cant find one of: 1) input MXD 2) output location for the .SDDRAFT file or 3) the .AGS connection file