I am working on implementing a timed RecordType change in salesforce. I have an object that when created needs to change its RecordType after a certain number of days. The only catch is that if a particular field on the object is filled out then the change should not happen. I am just wondering what would be the best way to go about implementing this. There could potentially be 100,000 of these objects in a worst case scenario and possibly larger.
My initial reaction was to look into the scheduled workflow that would change the record type X number of days after but I am unsure if this workflow will turn off when the criteria changes. My second thought was to use scheduled apex and have a segment of code run every night and change the RecordTypes but I am worried about the scalability of this with large volumes of records.
Does anyone have a recommendation of an apporach to tackle this problem? I would appreciate any input or advice on a direction to take. Thanks
Best Answer
Time based workflow is perfect for this. The workflow turns off automatically when the criteria changes. Scheduled Apex will also work, but isn't needed. Batch Apex would ensure you can scale to large data volumes.
From Help & Training