internal long?CreateIntegrationJob(CreateIntegrationJobRequest request) { var gfs = new List <GenericField> { // always default status to in-progress when creating a job RightNowServiceBaseObjectBuilder.CreateGenericField("JobStatus", DataTypeEnum.NAMED_ID, RightNowServiceBaseObjectBuilder.CreateNamedID((int)IntegrationJobStatus.InProgress)), RightNowServiceBaseObjectBuilder.CreateGenericField("JobType", DataTypeEnum.NAMED_ID, RightNowServiceBaseObjectBuilder.CreateNamedID((int)request.JobType)), RightNowServiceBaseObjectBuilder.CreateGenericField("FileName", DataTypeEnum.STRING, request.FileName), RightNowServiceBaseObjectBuilder.CreateGenericField("HostName", DataTypeEnum.STRING, request.HostName), }; var package = new RNObject[] { new GenericObject { ObjectType = new RNObjectType { Namespace = "IJ", TypeName = "Job" }, GenericFields = gfs.ToArray() } }; GlobalContext.Log("Creating an Integration Job in RightNow for tracking purposes", true); var result = _serviceWrapper.CreateObjects(package); if (result.Successful && result.CreatedObjects.Any()) { return(result.CreatedObjects.First().ID.id); } return(null); }
internal void CreateNoFilesToProcessIntegrationJob(IntegrationJobType jobType) { var gfs = new List <GenericField> { RightNowServiceBaseObjectBuilder.CreateGenericField("JobStatus", DataTypeEnum.NAMED_ID, RightNowServiceBaseObjectBuilder.CreateNamedID((int)IntegrationJobStatus.Completed)), RightNowServiceBaseObjectBuilder.CreateGenericField("JobType", DataTypeEnum.NAMED_ID, RightNowServiceBaseObjectBuilder.CreateNamedID((int)jobType)), RightNowServiceBaseObjectBuilder.CreateGenericField("Detail", DataTypeEnum.STRING, "No files were available to process") }; var package = new RNObject[] { new GenericObject { ObjectType = new RNObjectType { Namespace = "IJ", TypeName = "Job" }, GenericFields = gfs.ToArray(), } }; GlobalContext.Log("Creating an Integration Job showing that no files were available to process", true); _serviceWrapper.CreateObjects(package); }
internal void UpdateIntegrationJob(UpdateIntegrationJobRequest request, bool updateJobStatus) { IntegrationJobStatus jobStatus = request.RecordsFailed > 0 ? IntegrationJobStatus.CompletedWithErrors : IntegrationJobStatus.Completed; var gfs = new List <GenericField> { RightNowServiceBaseObjectBuilder.CreateGenericField("CountOfRowsInFile", DataTypeEnum.INTEGER, request.RecordsTotal), RightNowServiceBaseObjectBuilder.CreateGenericField("CountOfUniqueRowsInFile", DataTypeEnum.INTEGER, request.RecordsTotalUnique), RightNowServiceBaseObjectBuilder.CreateGenericField("CountOfSuccess", DataTypeEnum.INTEGER, request.RecordsSuccessful), RightNowServiceBaseObjectBuilder.CreateGenericField("CountOfFailure", DataTypeEnum.INTEGER, request.RecordsFailed) }; if (updateJobStatus) { gfs.Add(RightNowServiceBaseObjectBuilder.CreateGenericField("JobStatus", DataTypeEnum.NAMED_ID, RightNowServiceBaseObjectBuilder.CreateNamedID((int)jobStatus))); } if (request.AttachmentData != null) { gfs.Add(RightNowServiceBaseObjectBuilder.CreateAttachmentText(request.AttachmentData)); } if (!string.IsNullOrEmpty(request.Detail)) { gfs.Add(RightNowServiceBaseObjectBuilder.CreateGenericField("Detail", DataTypeEnum.STRING, request.Detail)); } var package = new RNObject[] { new GenericObject { ObjectType = new RNObjectType { Namespace = "IJ", TypeName = "Job" }, GenericFields = gfs.ToArray(), ID = new ID { id = request.ID, idSpecified = true }, } }; GlobalContext.Log("Updating the Integration Job with results", true); _serviceWrapper.UpdateObjects(package); }
internal static TypedAddress[] UpdateTypedAddress(string street, string city, int stateOrProvinceID, string postalCode, int countryID, int addressTypeID) { return(RightNowServiceBaseObjectBuilder.ProcessTypedAddress(street, city, stateOrProvinceID, postalCode, countryID, addressTypeID, ActionEnum.update)); }
internal static Phone UpdateSinglePhone(string phone, int phoneType) { return(RightNowServiceBaseObjectBuilder.ProcessSinglePhone(phone, phoneType, ActionEnum.update)); }
internal static Phone[] CreatePhone(string phone, int phoneType) { return(RightNowServiceBaseObjectBuilder.ProcessPhone(phone, phoneType, ActionEnum.add)); }
internal static Email[] UpdateEmail(string emailAddress) { return(RightNowServiceBaseObjectBuilder.ProcessEmail(emailAddress, ActionEnum.update)); }