web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics GP (Archived)

Accessing modified forms in another dictionary from Dexterity

(1) ShareShare
ReportReport
Posted on by 727

So far this one has me stumped.

We have a modified PA_Contract_Maintenance form in the Projects module with a couple of added local fields for accept date and close date.  Currently we use VBA to populate and save these fields but we want to move the code to Dexterity.  I've searched the web and mostly get Dave Musgrave's posting on cross dictionary development.  I got the GetWindowValue and SetWindowValue functions but they don't work on those fields.  I'm just curious if this is possible in Dexterity or we should be looking at something other way.

*This post is locked for comments

I have the same question (0)
  • Verified answer
    Josh P Profile Picture
    2,895 on at

    How was the modified form built, Dexterity, Modifier? If it was Dexterity, you would need the source. If not, you could use the assembly generator to build a .dll for the assembly, and use Visual Studio to access / manipulate the fields through an addin.

    You could use Dexterity to re-build the form if you do not have the original, and perform any data access you need to it.

  • bwholl Profile Picture
    727 on at

    Thanks.  VSTools is the answer.  I used DAG to build the Application.ProjectAccounting.ModifiedForms.dll, created a add-in project and got what I needed.  I never got Dexterity to work.  This was so much cleaner that I am now considering removing a couple of core modified forms from my Dexterity code and moving the code to VSTools.  Thanks again.

  • Suggested answer
    David Musgrave MVP GPUG All Star Legend Moderator Profile Picture
    14,095 Most Valuable Professional on at

    Hi Bernie

    Dexterity is unable to "see" modifier added fields. That is why you cannot see the local fields.

    As this is already a third party form, you cannot create an alternate versions (that only works for forms in Dynamics.dic).

    The only way to do this with Dexterity is to move the fields to a parallel window. While it is technically possible to add local fields to a 3rd party window using Dexterity, it means that you have modified a dictionary directly and that is not allowed under the license agreement.

    Basically, as you have already worked out... the best tool for this job is VSTools.

    Don't be afraid to use multiple tools as there are still things that Dexterity can do better.

    David

  • bwholl Profile Picture
    727 on at

    Thanks, we got to this point not long after posting.  VSTools is the answer.  We backed off VSTools for awhile because the word before GP 2013 was that the Web Client would not support VSTools.  We now are working on moving most of our VBA code to VSTools.  I agree on mixed development environment, sometimes Dexterity is the way to go but there are cases where it really is only possible to do it with VSTools.

  • David Musgrave MVP GPUG All Star Legend Moderator Profile Picture
    14,095 Most Valuable Professional on at

    To stay web client compatible, you can use VSTools on Modified windows.

    For new windows, I would use Dexterity.

    Basically, I would do everything in Dexterity, except the bits that can't be done in Dexterity.

    David

    PS: I do have a Dexterity bias, but also known when other tools are better suited to a job.

    PPS: I always say when asked what is the best method: "If a solution works, then it is correct."

  • Almas Mahfooz Profile Picture
    11,009 User Group Leader on at

    <<<<While it is technically possible to add local fields to a 3rd party window using Dexterity, it means that you have modified a dictionary directly and that is not allowed under the license agreement.>>>>

    David I always wanted to know "how is it not allowed under the license agreement?" . When using VSTools we are using the same modified form and then adding our code over it. When merging dictionaries we did the same take the same form and add code over it, without changing anything in core dictionary.

    Why one thing is okey with VSTools and not okey with Dexterity tool?

  • David Musgrave MVP GPUG All Star Legend Moderator Profile Picture
    14,095 Most Valuable Professional on at

    Hi Almas

    When using VBA or VSTools you a created a modified version of the window with Modifier. This modified window is stored in a custom forms dictionary. The original window in the application dictionary is not altered in anyway. This is OK.

    When using Dexterity against Dynamics.dic core dictionary, your modified form becomes an alternate window in your dictionary. Again, the original window in the application dictionary is not altered in anyway. This is OK.

    If you use Dexterity against a third party product (there are unsupported methods to do this). You are actually modifying the original window and have to ship a modified version of the third party dictionary. Shipping a modified version of another developers dictionary is the part that breaks the license agreement.

    David

  • Suggested answer
    Josh P Profile Picture
    2,895 on at

    Hi All,

    David is correct in the methodology is based on your comfort and expertise in .net or Dexterity. Unless something has changed, you can actually use Visual Studio integrations to display custom forms. There is dynamic and custom rendering capabilities for Silverlight forms. The difference I am aware of being having a set list of available controls to use vs needing to handle all the messages and hookups from the addin to the Silverlight form. 

     

    Here is a link on the documentation for it: https://msdn.microsoft.com/en-us/library/dn386081.aspx

  • Almas Mahfooz Profile Picture
    11,009 User Group Leader on at

    thanks David for your reply. That's a quick one and I think it still morning in your part of world and you are explaining and replying my stupid stubborn question ;-)

    You explain very well.And I am sure you are righta nd know more than anyone else about dexterity on this universe.lol

    but

    While merging let say project accounting dictionary we are adding some field on cost category window we are not doing any change in core dictionary code, but adding the functionality.is it just a matter of modified form created as a result of vstools or modifier? Does license agreement insist having modofied dic?

  • David Musgrave MVP GPUG All Star Legend Moderator Profile Picture
    14,095 Most Valuable Professional on at

    Hi Almas

    It is 9pm in Perth.

    The issue is shipping a modified project application dictionary which you would have to do if you used Dexterity. Shipping a form edited with Modifier is fine as it does not change the application dictionary.

    David

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics GP (Archived)

#1
Community Member Profile Picture

Community Member 2

#2
mtabor Profile Picture

mtabor 1

#2
Victoria Yudin Profile Picture

Victoria Yudin 1

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans