MscrmTools / MsCrmTools.ScriptsFinder

List all client events defined in Dynamics CRM/365 organization
GNU General Public License v3.0
5 stars 3 forks source link

Enhancement: Bulk Change File #4

Closed daggen closed 4 years ago

daggen commented 6 years ago

Hi, Great tool!

It would be great if it could the next step so that we can perform action in it. The action I've in mind first is the possibility to select a set of lines and click on a button in command bar which gives me a pop-up where I can change the webresource in use.

This would be praticular good when refactoring JavaScript files

MscrmTools commented 4 years ago

I Won't add this enhancement as the tool has not be made for editing purpose. It would need too much effort I can't do now

MscrmTools commented 4 years ago

Ok... you got me... I started working on this feature!

For now, I can bulk edit all form library and form event. Grid event yet to be implemented. Ribbon won’t be as SDK only allows to read values, not edit them.

I will also add the possibility to delete form events and form libraries.

sudmanche commented 4 years ago

This will be excellent, do you need a tester? (i.e. any chance of a preview version).

MscrmTools commented 4 years ago

Of course! I will use the preview version for one of my project next week. If you want to try it, you can use this assembly

small documentation is already on the wiki

sudmanche commented 4 years ago

Thanks, editing entries is fine so far. Adding a new event registration to onload, when others already exists creates a problem, in that the new event cannot be seen by the form editor. I have extracted the xml from the customisations. It looks like a second section is being created rather than reusing the original.

          <events>
            <event name="onload" application="false" active="false">
              <Handlers>
                <Handler functionName="oldEvent1" libraryName="xxx_jsfile" handlerUniqueId="{ba0c78d3-4338-cc91-3a0b-44c1c338322a}" enabled="false" parameters="" passExecutionContext="false" />
                <Handler functionName="oldEvent2" libraryName="xxx_jsfile" handlerUniqueId="{8a30ccb6-3ae6-5896-b110-b163ecc5766e}" enabled="true" parameters="" passExecutionContext="true" />
              </Handlers>
            </event>
            <event name="onload" application="false" active="false">
              <Handlers>
                <Handler functionName="newEvent" libraryName="xxx_jsfile" handlerUniqueId="{91805ce4-fbc9-4a57-9601-f625ac215143}" enabled="true" parameters="" passExecutionContext="true" />
              </Handlers>
            </event>
          </events>

Also, is there a way of changing the event order?

MscrmTools commented 4 years ago

Thanks for the feedback! I will fix this issue right now. As for ordering events, I did not plan to handle it initially but I will see what can be done

MscrmTools commented 4 years ago

Here is the latest version with sort capability MsCrmTools.ScriptsFinder.zip