1

I have a geoprocessing service to create various tasks. So the paarmeters for JTXSteps.ExecuteGPTool are here /addjobcomment /url:"https://xyz/arcgis/rest/services/F2F_Workflow/Task/GPServer/CreateTask/submitJob?job_type_name=drafting&job_name=[JOB:NAME]&description=&owned_by=[JOB:OWNED_BY]&assigned_to=[JOBEX:WSP_TASK.DRAFTING_ROLE]&project_job_id=[JOB:PARENT_JOB]&initiator_job_id=[JOBEX:INITIATOR_JOB_ID]....&f=pjson"

I have a requirement now to pass this string !@#$%^&*()_+/;:"',.?][}{| as job name essentially to capture all possible special characters in other systems for project names. I have noticed '#' breaks the sequence of parameters and with '&' rest of the string for the Job_name gets ignored. The call to submit GP jobs are expected through workflows and parameters are being read from SQL server tables for subsequent tasks.

1 Answer 1

1

Use url encoding. In python 2 that is in the urllib package. Might be able to use parse

https://docs.python.org/2/library/urllib.html

https://docs.python.org/2/library/urlparse.html#module-urlparse

2
  • I tried using urllib but the parameters here are NAME value of JOB table which is the standard job table (sde.JTX_JOBS).
    – Deep
    Oct 6, 2017 at 13:53
  • I don't get what the problem is, urlencode should be able to encode any object, and parse should be able to un-encode it.
    – isamson
    Oct 10, 2017 at 14:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.