Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 5 Next »

5.4.0

A pass-through API to ServiceScheduling (when configured) which allows the ServiceScheduling's "Book Dependency Group Jobs" API to be called.    

Description

The sp:BookDependencyGroupRequest API method allows dependencies to be defined between pairs of jobs. In most cases, the normal job data for each job (JobID, access hours, etc. - the data supplied in Book Non-Appointment Job API) is supplied along with the dependencies, but it is also possible to supply dependencies between jobs that are already in the ServiceOptimizer database.  

The set of dependencies between pairs of jobs are contained in a sequence of SP_JobDeps:

#define     SP_CostIDSize      10

typedef     char SP_CostID     [SP_CostIDSize  +1];

In this context, the ServiceScheduling "Book Dependency Group Jobs" API is the sp:BookDependencyGroupRequest API.

On this page:

Related pages:

Resource URL Summary

Pass Through Call to ServiceScheduling's "Book Dependency Group Jobs" API

PUT /up/v5/rest/scheduling/BookDependencyGroup

HTTP Headers

This API uses the standard ServiceBroker HTTP Headers.


API Specifics

Pass Through Call to ServiceScheduling's "Book Dependency Group Jobs" API

This RESTified API will perform a pass-through call to the ServiceScheduling sub-system's "Book Dependency Group Jobs" API (when configured).

URL

PUT /up/v5/rest/scheduling/BookDependencyGroup

HTTP Request Body

This request requires a JSON object supplied in the HTTP request body, which defines the parameters that will be passed through to the ServiceScheduling "Book Dependency Group Jobs" APi.

BookDependencyGroupJobs Object Format

BookDependencyGroupJobs JSON
{
    "Id": "DepGroup1306",
    "BookOptions": {
	 	"AllowRebookAll": false,
        "DontCancelCleared": false,
        "DontCancelLoggedOff": false,
		"DontCancelLoggedOn": false
    },
    "DepGroup": {
        "DepId": "Dep-1306",
        "DepTime": "ETA",
        "TargetId": "Dep-1307",
        "TargJobsTime": "ETA",
        "DepEmpType": "none",
        "targJobsTime": "ETA",
        "earliestTime": "30",
        "earliestTimeUnits": "mins",
        "latestTime": "30",
        "latestTimeUnits": "mins",
        "targetTime": "0",
        "targetTimeUnits": "mins",
        "costID": "diff"
    },
    "WorkItems": [
        {
            "Id": "Dep-1306",
            "Priority": "50",
            "WorkType": {
                "Name": "M60",
                "Skills": [
                    {
                        "Id": "SK001",
                        "Comp": "1"
                    },
                    // ...
                ]
            },
            "Location": {
                "Address": {
                    "PostalCode": "DE3 9",
                    "latitude": "46.335395",
                    "Longitude": "5.122205"
                },
                "SiteId": "site 11"
            },
            "Flags": {
                "AllowRebook": true,
                "IsPrimary": "true"
            },
            "BookOptions": {
                "AllowEmpOT": true,
                "SpareIgnVanStock": false,
                "ServAsAccHours": true,
                "FixToEmp": false,
                "CallToFix": false,
                "ReqConfirm": false,
                "NonConsecShift": false,
                "ConsecShift": false,
                "ContigShift": false
            },
            "ExtraDuration": 10,
            "ReqProvider": [
                {
                    "Id": "DE7_4_01",
                    "MPX": "Mandatory"
                }
            ],
            "Booking": {
                "ContractLatest": "2006-03-31T23:59",
                "Offer": {
                    "GroupId": "group2006"
                }
            },
            "ForceOptions": {
                "InTray": false,
                "InTrayWithSkill": false,
                "InTrayAfterAll": true,
                "SpareForceGo": false,
                "Reassign": false,
                "IgnoreCapacity": false,
                "NoTravel": false,
                "NoLocalKnowledge": true
            },
            "ServHoursPreDefPatts": {
                "servHoursPreDef": {
                    "dateRange": {
                        "start": "2006-01-01",
                        "end": "2007-01-01"
                    },
                "servHoursPattID": "1"
            }
        },
	    // ...
    ]
}

BookDependencyGroupJobs Object Properties

PropertyTypeLengthDescriptionReq?Field Mapping: ServiceScheduling
Id

string


SS: 50

Pass through parameter to the ServiceScheduling Book Dependency Group Jobs API. 

Is the identifier (ID) of the dependency group as a whole.  Dependency group IDs have a separate name space from regular job IDs.

Yes

multiJobID

BookOptionsobject

Pass through parameter to the ServiceScheduling Book Dependency Group Jobs API. 

Yessee BookOptions.objects

HTTP Response

Success

On success, a JSON-formatted version of the ServiceScheduling "Book Dependency Group Jobs" API response will be returned.

{
    "Success" : true,
    "Code" : 0,
    "Message" : "OK",
    "Payload" : {
        "result" : {
            "type" : "OK",
            "code" : "0"
        },
        "TravelTime" : "3",
        "WorkItems" : [
            {
                "Id" : "Dep-1306",
                "Tech" : "DE3_9_01",
                "ETA" : "2006-01-03T08:01",
                "IRU" : "EMID_I01",
                "FRU" : "EMIDLAND"
            },
            {
                "Id" : "Dep-1307",
                "Tech" : "DE3_9_01",
                "ETA" : "2006-01-03T09:02",
                "IRU" : "EMID_I01",
                "FRU" : "EMIDLAND"
            }
        ]
    }
}

Error

On error, a JSON-formatted version of the ServiceScheduling "Book Dependency Group Jobs" API response will be returned.

{
    "Success": false,
    "Code": 9,
    "Payload": {
        "returnCode": {
            "type": "Error",
            "code": "SCH Error Code"
        }
    }
}

Return Codes

In addition to the Standard Return Codes, and the general ServiceScheduling Return Codes, the specfic ones for this API are:

 Click here to expand...
  • SP_OK (0)
  • SP_JOBID_INVALID (1)
  • SP_JOBTYPE_INVALID (2)
  • SP_POSTCODE_INVALID (3)
  • SP_LOCATION_INVALID (4)
  • SP_EMPID_INVALID (5)
  • SP_NO_TIME_AVAILABLE (8)
  • SP_DURATION_INVALID (12)
  • SP_DATE_INVALID (14)
  • SP_EMP_UNAVAILABLE (21)
  • SP_JOBID_EXISTS (23)
  • SP_SKILL_INVALID (27)
  • SP_UNIT_INVALID (28)
  • SP_END_NOT_GT_START_TIME (31)
  • SP_SKILLLEVEL_INVALID (32)
  • SP_CANNOT_FORCE_SKILL (33)
  • SP_JOBTYPE_NOT_IN_DATE (49)
  • SP_JOBTYPE_CANNOT_BE_FORCED (51)
  • SP_OUTSIDE_HORIZON (53)
  • SP_EXTRA_DURATION_INVALID (54)
  • SP_REQTYPE_INVALID (74)
  • SP_EMP_NOT_SKILLED (75)
  • SP_UNITTYPE_INVALID (77)
  • SP_OPTIONS_INVALID (80)
  • SP_PRIORITY_INVALID (81)
  • SP_ALLOWREBOOK_INVALID (87)
  • SP_EMPSMAX_EXCEEDED (88)
  • SP_EMPID_DUPLICATED (89)
  • SP_CUSTID_INVALID (95)
  • SP_CUSTNAME_INVALID (96)
  • SP_CUSTADD1_INVALID (97)
  • SP_CUSTADD2_INVALID (98)
  • SP_CUSTADD3_INVALID (99)
  • SP_CUSTADD4_INVALID (100)
  • SP_CONTACTNAME_INVALID (101)
  • SP_CUSTPHONE1_INVALID (102)
  • SP_CUSTPHONE2_INVALID (103)
  • SP_DESC1_INVALID (104)
  • SP_DESC2_INVALID (105)
  • SP_DESC3_INVALID (106)
  • SP_DESC4_INVALID (107)
  • SP_SPAREID_INVALID (111)
  • SP_QUANTITY_INVALID (112)
  • SP_NO_REG_TO_RU_MAPPING (115)
  • SP_EXTRASKILL_DUPLICATED (118)
  • SP_JOBSKILLSMAX_EXCEEDED (119)
  • SP_SPARE_SUBS_EXCEEDED (147)
  • SP_FORCEOPTIONS_INVALID (150)
  • SP_EMP_ZERO_LK (155)
  • SP_NO_SKILL (156)
  • SP_OPTION_COMBINATION_INVALID (159)
  • SP_EMP_NOT_POSTED (178)
  • SP_POSTCODE_NOT_MAPPED (179)
  • SP_EMPID_DOES_NOT_EXIST (231)
  • SP_SPARE_SUB_DUPLICATED (254)
  • SP_IMPORTANCE_INVALID (287)
  • SP_DELIVERY_SIZE_INVALID (333)
  • SP_PICKUP_SIZE_INVALID (334)
  • SP_DESCRIPTION2_INVALID (335)
  • SP_OK_IMPORTANCE_IGNORED (346)
  • SP_OK_ABS_SEARCH_TIMEOUT (369)
  • SP_NTA_ABS_SEARCH_TIMEOUT (370)
  • SP_DST_TIME_INVALID (379)
  • SP_SERVHOURS_DUPLICATED (389)
  • SP_ACCHOURS_DUPLICATED (390)
  • SP_OPEN_ENDED_ACCHOURS_NOT_ALLOWED (391)
  • SP_DOTW_INVALID (394)
  • SP_GRACE_PERIOD_INVALID (395)
  • SP_SERVHOURS_STARTTIME_INVALID (397)
  • SP_SERVHOURS_ENDTIME_INVALID (398)
  • SP_SERVHOURS_OVERLAP (399)
  • SP_SERVHOURS_STARTDATE_INVALID (400)
  • SP_SERVHOURS_ENDDATE_INVALID (401)
  • SP_SERVHOURSPATTSEQ_PATTS_NULL (403)
  • SP_SERVHOURSPREDEFPATTSEQ_PATTS_NULL (405)
  • SP_SERVHOURS_PATTID_INVALID (406)
  • SP_SERVHOURS_PATTID_DOES_NOT_EXIST (407)
  • SP_DAYANDTIMEPERIODSEQ_PERIODS_NULL (410)
  • SP_ACCHOURS_STARTTIME_INVALID (411)
  • SP_ACCHOURS_ENDTIME_INVALID (412)
  • SP_ACCHOURS_OVERLAP (413)
  • SP_ACCHOURS_STARTDATE_INVALID (414)
  • SP_ACCHOURS_ENDDATE_INVALID (415)
  • SP_ACCHOURSPATTSEQ_PATTS_NULL (417)
  • SP_SERVHOURSPATTSEQ_SIZE_INVALID (418)
  • SP_DAYANDTIMEPERIODSEQ_SIZE_INVALID (419)
  • SP_SERVHOURSPREDEFPATTSEQ_SIZE_INVALID (420)
  • SP_ACCHOURSPATTSEQ_SIZE_INVALID (421)
  • SP_SERVHOURSPATTSEQ_NOT_SAME (429)
  • SP_DATETIMERANGESEQ_RANGES_NULL (431)
  • SP_DATETIMERANGESEQ_SIZE_INVALID (432)
  • SP_OPENHOURSOVRTYPE_INVALID (433)
  • SP_OPENACCHOURSOVR_START_INVALID (434)
  • SP_OPENACCHOURSOVR_END_INVALID (435)
  • SP_OPENACCHOURSOVR_END_NOT_GT_START (436)
  • SP_CLOSEDACCHOURSOVR_START_INVALID (437)
  • SP_CLOSEDACCHOURSOVR_END_INVALID (438)
  • SP_CLOSEDACCHOURSOVR_END_NOT_GT_START (439)
  • SP_CONTRACT_EARLIEST_INVALID (441)
  • SP_CONTRACT_LATEST_INVALID (442)
  • SP_NO_ACCHOURS (443)
  • SP_SERVHOURS_DATERANGE_END_NOT_GT_START (444)
  • SP_SERVHOURS_DATERANGE_OVERLAP (446)
  • SP_SERVHOURSPREDEFPATTSEQ_NOT_SAME (448)
  • SP_CLOSEDDATES_SEQ_SIZE_INVALID (460)
  • SP_CLOSEDDATES_SEQ_DATERANGES_NULL (462)
  • SP_CLOSEDDATES_STARTDATE_INVALID (463)
  • SP_CLOSEDDATES_ENDDATE_INVALID (464)
  • SP_ACCHOURS_DATERANGE_END_NOT_GT_START (465)
  • SP_ACCHOURS_DATERANGE_OVERLAP (466)
  • SP_ACCHOURSPATTSEQ_NOT_SAME (468)
  • SP_CLOSEDDATES_END_NOT_GT_START (470)
  • SP_PRIORITY_NO_COST (475)
  • SP_IMPORTANCE_NO_COST (476)
  • SP_SITEID_INVALID (500)
  • SP_GROUPID_INVALID (501)
  • SP_BDGJOBSEQ_SIZE_INVALID (506)
  • SP_BDGJOBSEQ_JOBS_NULL (508)
  • SP_JOBDEPSEQ_SIZE_INVALID (509)
  • SP_JOBDEPSEQ_JOBDEPS_NULL (511)
  • SP_DEPJOBID_INVALID (512)
  • SP_DEPJOBSTIME_INVALID (513)
  • SP_TARGJOBID_INVALID (514)
  • SP_TARGJOBSTIME_INVALID (515)
  • SP_EARLIESTTIMEUNITS_INVALID (516)
  • SP_LATESTTIMEUNITS_INVALID (517)
  • SP_TARGETTIMEUNITS_INVALID (518)
  • SP_COSTID_INVALID (519)
  • SP_COSTID_DOES_NOT_EXIST (520)
  • SP_DEPEMPTYPE_INVALID (521)
  • SP_TARGET_TIME_BEFORE (526)
  • SP_TARGET_TIME_AFTER (527)
  • SP_CYCLIC_DEPENDENCY_TIME (528)
  • SP_DEPENDENCY_CONSTRAINT (529)
  • SP_DEPJOBID_DOES_NOT_EXIST (530)
  • SP_TARGJOBID_DOES_NOT_EXIST (531)
  • SP_CYCLIC_DEPENDENCY_EMP (532)
  • SP_DIFFERENT_FRUS (533)
  • SP_MULTIJOBID_ALREADY_EXISTS (539)
  • SP_DEPJOBID_ALREADY_IN_GROUP (540)
  • SP_TARGJOBID_ALREADY_IN_GROUP (541)
  • SP_BDGRETJOBSSEQ_NULL (542)
  • SP_NO_POSTINGS (545)
  • SP_MULTIJOBID_INVALID (563)
  • SP_BDGJOBSEQ_DUPLICATE_JOBIDS (564)
  • SP_DEPJOBID_SAME_AS_TARGJOBID (565)
  • SP_JOB_NO_DEPENDENCY (566)
  • SP_NO_DEPENDENCIES (567)
  • SP_LATEST_BEFORE_EARLIEST (572)
  • SP_DEPENDENCY_ON_UNRESOURCED_JOB (573)
  • SP_BDGJOBSEQ_NOT_SAME_ITAA (574)
  • SP_ISPRIMARYJOB_INVALID (575)
  • SP_COSTID_NO_TARGET_TIME (576)
  • SP_CAPACITYCATEGORY_NOT_DEFINED (581)
  • SP_JOBDEPSEQ_DUPLICATE_DEPENDENCIES (601)
  • SP_CAPACITYCATEGORY_DOES_NOT_EXIST (602)
  • SP_CAPACITYCATEGORY_INVALID (603)
  • SP_DIFFERENT_DRUS (621)
  • SP_DRU_NO_FRUS (625)
  • SP_JOBID_OUTSIDE_HORIZON (626)
  • SP_VEHICLE_CAPACITY_EXCEEDED (662)
  • SP_LISTREQEMPS_NULL (684)
  • SP_LISTREQEMPS_SIZE_GT_MAX (685)
  • SP_LISTREQEMPS_SIZE_INVALID (686)
  • SP_LISTREQEMPS_COMBINATION_INVALID (689)
  • SP_UDLOC_FAILED_REGION_MAPPING (692)
  • SP_TOO_MANY_MANDATORYORDERED (694)

  • SP_RESTRICTION_REF_DOES_NOT_EXIST (697)

  • SP_DEPENDENCY_ON_APPOINTMENT_JOB (815)
  • SP_VWDL_COMBINATION_INVALID (822)
  • SP_VWDL_LOCATION_INVALID (823)
  • SP_VWDL_TRAVEL_INVALID (824)
  • No labels