SWS UpdateRentRateV2 Method
Lets you change the rent rate for a unit. Multiple units can be individually processed with a new rate. Letters can also be scheduled to be sent when updating the rent rates on active rentals. This method allows you to choose if the letter will be centralized mail or local mail.
Parameters
Name | DataType | Is Required |
---|---|---|
AcctID | Long | Optional |
Description | The account’s ID number. This is returned when you use the CreateNewAccount method or can be retrieved with the SearchBy method. Only required when sending a letter. | |
EffectiveDate | DateTime | Required |
Description | The date the future rate will go into effect. | |
LetterDate | DateTime | Optional |
Description | The date the letter is to be sent. Only required when SendLetter is “True”. | |
NewRate | Decimal | Required |
Description | The new rent rate for the rental item. | |
OrgID | Long | Required |
Description | The organization’s ID number. | |
RentalID | Long | Optional |
Description | The rental item’s ID number. This is returned when using the MakeReservation method or can be searched for using the SearchBy method. Only required if SendLetter is “True”. | |
SendLetter | Boolean | Optional |
Description | Indicates if the system is to generate a rate change letter (“True”) or not (“False”). | |
SiteID | Long | Required |
Description | The site’s ID number. This can be found using the GetSiteList method. | |
UnitID | Long | Required |
Description | This is returned when you use any of the GetSiteUnitData calls. | |
UnitVersion | Decimal | Required |
Description | The unit’s version number which serves to prevent duplicate use of the unit. | |
MailLocal | Boolean | Required |
Description | Indicates if the letter should be printed and mailed through the site (“True”) or through centralized mailing (“False”). |
Returned Parameters
Name | DataType |
---|---|
ErrorMessage | String |
Description | If “Succeeded” is “False” this will give additional information as to what failed. |
Succeeded | Boolean |
Description | Indicates if the rate change was completed successfully (“True”) of not (“False”). |
UnitID | Long |
Description | The unit’s ID number where the rate was updated. This is maintained through rentals. |
Example
As with every method we need to pass in credentials. We do this with the LookupUser request object.
We will assume you have a web reference, let us name it SWS, in your Visual Studio project. At this point we need to define our objects. We will need the standard service object, an UpdateRentRateV2 request object, and an UpdateRentRateV2 response object. We will also need a RentRateReqDataV2 array we can pass to the request. We can define and create those like this:
// Create a request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.UpdateRentRateV2_Request request = new SWS.UpdateRentRateV2_Request();
SWS.UpdateRentRateV2_Response response;
SWS.RentRateReqDataV2[] reqRentRate = new SWS.RentRateReqDataV2[1];
Here is a sample code of the request object:
// UpdateRentRate Request
reqRentRate[0].OrgID = 123456;
reqRentRate[0].SiteID = 123456;
reqRentRate[0].AcctId = 123456;
reqRentRate[0].UnitID = 123456;
reqRentRate[0].UnitVersion = 23;
reqRentRate[0].RentalId = 123456;
reqRentRate[0].NewRate = 55.25m;
reqRentRate[0].EffectiveDate = new DateTime(2017, 9,1);
reqRentRate[0].SendLetter = true;
reqRentRate[0].MailLocal = true;
reqRentRate[0].LetterDate = new DateTime(2017, 8, 1);
Finally we can call the method and pass across the login object and the request object to retrieve our requested information. It’s a good idea to do this in a Try Catch block.
// Call the method that will load the response object
try
{
response = service.UpdateRentRateV2(user_request, request);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Note that if something goes wrong the service will respond with an exception. You will want to capture the message in the exception so it can be debugged.
For a full list of methods see SWS Methods.