delegateas/Daxif

When adding multiple custom APIs with same request/response parameter names it only registers the request/response parameters for one custom API

Closed this issue · 5 comments

Describe the bug
When you have multiple Custom APIs and use the same request & response parameter names. It will only register the request & response parameters of one Custom API instead of all.

To Reproduce
See screenshots :)

Expected behavior
That all custom APIs have request & response parameters.

Screenshots
image
image

Very simplified example of the situation. In this case, only on our first (Async) the request parameters are added. on the other one, no request parameters are added.

Environment

  • CRM/D365/CDS version: 9.x
  • Tool version: 5.5.1

Additional context
I think the error is in the compare:

/// Compares a custom API requestparameter from CRM with one in source code

There is also a "TODO" compare more :) I think the "More" should be that it also compares on the "Custom API" the request/response parameter is linked to.

I've tested the pull request, the code builds and still works on my project, however, it still only sync one of the request and response parameter. So I'm missing something but I don't have any idea how I can debug the code while running so I can try to figure out what I'm missing.

Figured it out together with a colleague, it is now working! :) (see pull request)

This should be fixed already.

The fix was merged in #62 (specifically in this commit).

We thought it was released as part of Delegate.Daxif version 5.0.0, but on closer inspection all relevant changes were made to CustomAPI.cs which isn't released as part of that package. Instead it is released as part of Delegate.Daxif.Scripts, but no new version of this has been released since the update was made.

For now I recommend that you manually download or copy the contents of CustomApi.cs to ensure you have the newest most updated version of the file.

Thanks @skovlund , there are indeed some changes between the new and our CustomApi.cs file and will check in 2 weeks if this works on our project as well :)

This works with the correct files and can be closed. Thanks!