New tool! Bulk Delete Launcher
Today, a new tool that allows you to run bulk deletion of records. Indeed, this feature of CRM is not accessible through the user interface but only with SDK.
To use this tool, you must first create a view in the advanced search that will find the items you want to delete.
Then just run the tool, to indicate on which entity (using the logical name of the entity) is the view advanced search and set scheduling options and recurrence (if desired).
You can also request to receive an email from the CRM server when processing is complete. This option is available if the user account you use has an email address saved in the user profile CRM.
To use this tool, you must first create a view in the advanced search that will find the items you want to delete.
Then just run the tool, to indicate on which entity (using the logical name of the entity) is the view advanced search and set scheduling options and recurrence (if desired).
You can also request to receive an email from the CRM server when processing is complete. This option is available if the user account you use has an email address saved in the user profile CRM.
Screenshot:
Download:
Comments
Is there a way to specifiy that the tool should use HTTPS:// to connect to CRM?
Scott.
I will update the code as soon as I can
I'm getting errors when I attempt to set up a job as a single, non-recurring job. -
Additionally, when I receive the email at the completion of a job, the URL points to MOSS as the server - (and not my servername) - is that set in your code or is it retrieving the server name from somewhere else?
I was on holidays past 10 days...
I will check these problems as soon as spossible
You can download again the file...
about your problem with mail content, I can't do anything, the CRM Server generate the mail content.
It is not performed through SDK
Did you have the same issue in your testing with the server name? - I wonder if it was something environment specific for me?
I didn't reproduce the email content problem you had...
The url is well linked to my crm server...
I'll re-test in my environment - and see if I can find where that value is being drawn from.
Perhaps it's a registry setting gone wrong. :(
Have a look at the bulk delete view (Settings\Data Management\Bulk Delete Jobs) to see if there were errors when deleting records.
This tool doesn't delete anything, it just creates a new deletion job for the asynchronous service
For example, I would like to delete queue items so have tried "queue item" with and without quotes but with no joy.
So you should use queueitem instead
I just downloaded your tool. I have problem with it. I have CRM deployment on 80 port. I entered server name and 80 port and program retrived organizations. I have Selected one and pressed connect. Program shown message "Connected". But, when I press OK it hangs up and show me error that it can't connect to my server 5555 port :( Where is the problem? Why it tries to connect 5555 port? May be it is problem with my configuration, or it's program's bug?
Did you change the port of your crm web site recently?
If so, the CRM SDK configuration in database can still point to the port 5555
It should be in DeploymentProperties or something like that...
Look for any 5555 value and replace with 80
Thanks
The Crm server doesn't check if a view name already exists...
I never did benchmark... and currently don't have time to do one...
sorry
The bulk delete processor runs at approximately the same speed as selecting all records on a page and deleting them. (250 at a time.)
Tanguy's utility is very helpful, but it's not a speed shortcut since it engages the CRM API for bulk deletion.
Your performance will vary depending on your server/SQL optimization and the type of entity you are deleting.
(The type of entity matters because if the record is one that potentially has child records, each record's children must be checked before deleting to ensure no records are orphaned.)
HTH
Scott
First off Great Tool, and thank you. I ran a job that deleted 80,000+ fields and they were all removed from the crm tool. However when i check the sql tables that hold the background data the rows still exist but now only have nulls as their data. Does this tool not actually remove the data and just clear the forms in the CRM Module?
Thanks
Gordie
the tool just Mark records as deleted (deletionstatecode = 2).
It works like the manual deletion, the record is not hard deleted. This is the deletion service that hard delete the sql rows. By default, it occurs once per day
Gordie
You can see when it is planned by using the tool ScaleGroupJobEditor (http://code.msdn.microsoft.com/ScaleGroupJobEditor/Release/ProjectReleases.aspx?ReleaseId=3251)
I have set my physical server name and the port. I used the same info I can use to connect to CRM from the physical server. When I do and hit the Get Orgs. button it does pull one one of 2 orgs, the test enviornment which was created before prod but which has a similar name crm-test vs. crm.
When I hit connect, I get an error message that says "Error while initializing the connection: The request failed with HTTP status 401: Unauthorized?
Any help?
When you connect idrectly to your server, you know what URL you will use to access it.
My tools query the CrmDiscoveryService to retrieve the URL to use. If your server is not configured properly, you can get this error. To be sure, connect to MSCRM_CONFIG database, look into DeploymentProperties table. You should have two lines (the second and the third ones) that have the server name and port, be sure it is the name you use habitually.
If IIS is not set for you rCRM website to use port 5555, it looks like a website update. In this case you should have changed also the entries in the deploymentproperties table in the database MSCRM_CONFIG.
Did you look to see wath was the actual values in this table?
Let me clarify my last message:
Your tool can recognize CRM at http://servername:5555
My users are using 3 separate sites depending on the tennant at www.crm.com, www.xrm.com www.customers.com which I had internall DNS names registered. These are all using port 80.
Your saying I should update this port in the MSCRM_CONFIG database. It shows 5555. How did I do this and I suppose I am not seeing any errors because of it?
BTW I sent you a donation yesterday for your help!
In your case, you changed the bindings of CRM website port but doing that didn't change the DeploymentProperties table. You have to update it manually. To do so, just use SQL Management Studio, open this table in edit mode and put 80 instead of 5555, restart IIS. That should do it...
And many thanks for the donation, I appreciate it :)
Are you in this case?
Thanks
I've set up a bulk delete job, but it doesn't display in CRM, even after it says Bulk Job created in the Delete tool. Any suggestions?
The job will not appear if:
- the asynchronous service is stopped
- the job was planned at a future datetime
- you have exrta problems on your server :)
Also, try to look the system jobs. An entry should be there for the job...
Good Tool.
May I know how to Stop this tool when I have Launch With Recurrence.
I Want to Stop it.
please advise.
thanks ^.^
Nico
This job is stored in systemtasks. So you should be able to find it and delete it.
thanks before.
Finally, I Found it:
System/ System Jobs and change view into "Recurring System Jobs" and Find the Schedule Name Click on it and then click Cancel
^.^
Thanks alot Brother for your cooperation.
I have over 70000 System Events in the Async table. Can these records be deleted safely? What are they in relation to?
If you do not have recurring jobs, you can delete them safely...
I do it every week for a customer and there was no problem since 6 months
Is there a way to run a Bulk Delete job daily indefinitely. I see there is an 'interval' that can be set, but I would like to run a schedule bulk delete job daily without having to create one every now and then. Just permanently...
Thanks for the great app
Yes you can. The interval property just define the period between occurence of the job.
So if, you add recurrency, it will works indefinitively until you cancel the system task.
You need to search in system tasks the record that corresponds to your bulkdelete job.
Once you find it, you can cancel it.
Thank you very much.
I think it is the only possibility to have this error message. Can you confirm?
If something goes wrong after, it is only CRM related, my tool is not involved anymore.
And honestly, I never tried to delete queue items and can't tell what's wrong. Maybe you could post a question on the Dynamics CRM forums.
I had to use the concrete entitytype for my query - in my case this was the email type. So I changed my query and the emails were history.
this tool seems great, but when I try to launch a bulk deletion I get the following error :
---------------------------
Error
---------------------------
Error while creating bulk delete job: The date-time format for 2012-02-01 04.58.29 is invalid, or value is outside the supported range.
---------------------------
OK
---------------------------
Help?
Are you connecting to CRM 4.0 server?
I don't get this error when accessing other entities.
It does not work with CRM 2011 but CRM 2011 has a built in bulk delete wizard
Go on a list of entity records, and use the arrow next the delete button to open the bulk delete wizard
Email Blast
First, congrats for the very interesting tool, it's really a nice job.
I would like to consult you about a problem we're having in our company in New Zealand. We tested the tool in out test environment and it worked perfectly. However, when we run it in production, following the same steps, for some reason doesn't work. The deletion task in CRM shows state "Waiting" and stays there until we kill the process (last time it was over 1 week). Besides from that, we get no error message or any indication of an error of any type, and no record is deleted.
Is there any possibility you might know what could be happening?
Thanks in advance,
Luis
So, I would check this service to be sure everything is ok...