Page 1 of 3712345678910...20253035...Last »

#GPPT What’s New: Security Activity Tracking and Security Log

David Meego - Click for blog homepageAs GP Power Tools approaches release, it is time to continue the What’s New series and explain another of the new features added to the product.

You can now enable Security Activity Tracking to collect statistical data on the usage of the various resources and security objects within the system.

This tracking can provide accurate data on which users use particular areas of the Microsoft Dynamics GP application and can be used to assist with the creation of Security Tasks and Security Roles when designing your security model.

The feature is enabled from the Administrator Settings window. Once enabled GP Power Tools will track every call to the application level security system and log whether access was granted or denied.

Administrator Settings 1

The information collected is kept on a user & company, user, company and system basis, so you can analyse the data from whichever angle you wish.

The new Security Log window is used to review the captured activity information. You can view the information for any user and/or company you select. The data can be initially sorted by resource or one of the 3 count columns (Total, Granted or Denied), however once the data is displayed you can click on the column headers to change the sorting as desired.

Security Log 

You can select any row in the data and right click or use the Security button to drill down to the Security Information window. You can right click or use the Open button to open a window or report if you want to see which window or report it is. You can also double click to open the Resource Information to that object or resource.

Finally you can use the checkboxes to select individual resources and/or security objects, then use the Security button to create Security Tasks and Security Roles from the selected items.

Security Log Create Task

You can now build your security model based on actual historical usage data from your own system.

Enjoy

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: 2010, 2013, 2013 R2, 2015, 2015 R2, Dynamics, GP, GP Power Tools, Microsoft, Products Tagged: GP 2010, GP 2013, GP 2015, GP Power Tools, GPPT, Security, What’s New

View the original here:
#GPPT What’s New: Security Activity Tracking and Security Log

July 31, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 11

Microsoft Windows 10 is almost here

David Meego - Click for blog homepageIt is already the 29th July 2015 in Australia and Windows 10 is almost here.

I know that because it is already downloading into a hidden C:$Windows.~BT folder onto my machines.

Now one question that many people are asking is “Can I do the free upgrade as a clean install if I have downloaded the ISO image?

The short answer is No.

The long answer is ….

Can I perform a clean install using the Free upgrade?

No, it will require that you are running a previous qualifying version and start the upgrade from within the qualifying version. You can initiate a clean install after completing the Upgrade.

Please be aware that you cannot use the free upgrade offer to perform a clean install on first attempt. You must first upgrade from the qualifying version of Windows 7 or Windows 8/8.1 (whether you do it through Windows Update or using the .ISO file). Ensure the upgrade is completed successfully and then ensure that it is activated. You can then proceed to do a clean install by using recovery media or using the Reset function in Start > Settings > Update & Security > Recovery > Reset this PC (Get Started).

For more information on all your Windows 10 questions, please see the following article:

Enjoy

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: Microsoft, News, Public Service Announcement, Windows Tagged: General, News, Windows, Windows 10

Link:
Microsoft Windows 10 is almost here

July 28, 2015 · WinthropDC · No Comments
Tags: , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 18

#GPPT What’s New: GP Power Tools is faster and easier to navigate

David Meego - Click for blog homepageAs mentioned in recent posts, GP Power Tools is almost ready for release. The user guide manual documentation is now completed… all 256 pages of it. If you want to get the code now, you can already install the public beta and upgrade to the final release later.

This is the first article in a series of What’s New posts for GP Power Tools. The aim of this series is to highlight some of the new features of the tool and flesh out more details than the 21 reasons to upgrade article.

When creating GP Power Tools, one of the first changes (other than rebranding) was to change the data storage from a Debugger.xml setup file to tables in the system database on SQL Server.

Performance

A bit of history …. The Debugger.xml file was originally used to avoid the creation of any SQL objects to allow easy installation and removal of the Support Debugging Tool for its role as a troubleshooting tool. As the functionality of the tool grew and more data was stored in the Debugger.xml, performance slowed as the data was written to and read from the Debugger.xml file. To help with the read performance, ctree tables were used to cache the contents of the Debugger.xml. Also, the additional features added to the tool meant that the Debugger.xml needed to be stored in a shared network location. Finally, because the tool has lots more functionality than the original troubleshooting tool, it was being left installed on systems and the ease of removal was no longer important.

SQL Server

When creating GP Power Tools, one of the first changes (other than rebranding) was to change the data storage to use SQL Server tables. You would think that this would be a simple change, but it took about two weeks to complete. To make the Debugger.xml setup file work as a storage system required a large amount of custom code. The windows would read the Debugger.xml contents into temporary tables and then read and write from the temporary tables. When saving or applying, the data was written back the Debugger.xml file and the cache tables. All this code needed to be removed and replaced with more conventional code to use the SQL tables. To complicate the conversion, on some windows, data needed to be stored temporarily and only saved to the physical tables when applied. This meant that additional code was needed to store data in temporary tables until applied.

The end result is that when saving data, there is no longer a noticeable pause as the data is written. Also there is no requirement for a shared location to store the Debugger.xml file, however a shared location is still useful to centralize storage of log and export files. Finally, having the data stored in SQL Server is more secure than a shared location in the file system.

Navigation

One of the areas of feedback received about the Support Debugging Tool was that it was difficult to find the options / windows. Part of the cause of this is that when new features were added, their navigation options were just added to the bottom of the Standard Mode or Advanced Mode features.

So GP Power Tools resolves this by providing multiple options for navigation as well as grouping the features. You can still find the main GP Power Tools Logging Control window on the Tools menus of the application and individual windows (both menu or ribbon style). The Ctrl-D keyboard shortcut is also still available.

GP Power Tools Menu   GP Power Tools Menu Ribbon   GP Power Tools Menu Window

You can also find the options on the Standard Toolbar and Quick links on the home page.

Toolbar    GP Power Tools Quick Links

From the main GP Power Tools window, you can use the Options button drop list or the GP Power Tools window menu to access other features. Both of these menus are now broken down with sub menus into functional areas:

  • Resources and Security
  • Scripting
  • Export and Import
  • Administration

GP Power Tools Options Menu 2   GP Power Tools Options Menu 3

GP Power Tools Options Menu 4    GP Power Tools Options Menu 5

Also, GP Power Tools has been added to the application level menus as a sub menu under Transactions, Inquiry, Reports, Cards, Setup, Utilities and Routines.

GP Power Tools Transaction Menu

Finally, GP Power Tools has its own Area page from the Navigation buttons: GP Power Tools Area Page Button

GP Power Tools Area Page Navigation

The Area Page means that navigation on the Microsoft Dynamics GP Web Client is now simpler.

Access to the windows is controlled by application level security and the four automatically created security roles:

  • GP POWER TOOLS USER – For Standard Mode (User) features
  • GP POWER TOOLS ADMIN – For Advanced Mode (Administrator) features
  • GP POWER TOOLS PASSWORD – For Administrator Password Setup window only
  • GP POWER TOOLS SERVICES – For GP 2015 (or later) Service Enabled Procedures

Note: Access to Advanced Mode features also requires sysadmin or dbo access at the SQL Server level and the System Password or Administrator Password (if enabled). The option to hide Advanced Mode features using a Dex.ini setting is no longer used.

So now you should have no trouble navigating the various windows of GP Power Tools by whatever method you decide.

Enjoy

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: 2010, 2013, 2013 R2, 2015, 2015 R2, Dynamics, GP, GP Power Tools, Microsoft, Products Tagged: GP 2010, GP 2013, GP 2015, GP Power Tools, GPPT

Originally posted here:
#GPPT What’s New: GP Power Tools is faster and easier to navigate

July 20, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 31

Microsoft Dynamics GP 2015 not showing Service Enabled Procedures

David Meego - Click for blog homepageIt has been a while since I last posted on the blog. I have been working flat out to finalize the GP Power Tools code and documentation. All I can say is that the Microsoft Dynamics GP community will be amazed with some of the new features and will love the improvements above and beyond the Support Debugging Tool. I will be starting a “What’s New” in GP Power Tools series of posts soon.

Anyhow, the subject of today’s post is an issue in Microsoft Dynamics GP 2015 that I discovered while testing the GP Power Tools code.

The Security Task Entry window can be used to add access rights for Service Enabled Procedures in any of the product dictionaries.  Just select the Security Task ID and then select the product, Type as Service Enabled Procedures and the series.

SecurityTaskEntry2Security Task Entry working

All seems working as expected…. until you create a modified forms dictionary for that product, by going into the Modifier. You don’t have to make any changes, the existence of the forms dictionary is all that is needed. Now the Service Enabled Procedures for that product no longer show up.

SecurityTaskEntry1
Security Task Entry no longer showing Service Enabled Procedures

As I have very similar code in the new Script Explorer window in GP Power Tools, I was seeing the same behaviour. This is what sparked the investigation into what was happening.

I tested the code that reads the dictionary and it is able to see the list of global procedures in the dictionary fine, but the check to see if the script is Service Enabled with the Script_GetSystemProperty() function fails to return the any data and so no scripts can be identified as Service Enabled.

I have reported this issue to Microsoft.  In the meantime, if you need to set security to Service Enabled Procedures, temporarily rename the custom forms dictionaries and re-launch Microsoft Dynamics GP.

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: 2015, Dynamics, GP, Microsoft Tagged: Application, Exception, GP 2015

Read more here:
Microsoft Dynamics GP 2015 not showing Service Enabled Procedures

June 30, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 66

Friday Funny: Best Marriage Proposal

David Meego - Click for blog homepageThere have been some amazing marriage proposals posted via social media and YouTube over the last few years, but this has got to be one of the coolest one yet.

Maybe that’s just because it is from an Australian guy ….

Watch below to see Liam Cooper’s proposal to his long time girlfriend, Amy Smith:

Aussie guy proposes to girlfriend in packed cinema. Best wedding proposal EVER! (Direct link)

 

Here is the full music video created for the proposal:

Rude by Magic! (Cover & Music Video for Wedding Proposal!) (Direct link)

 

Here are some other movie trailer proposals (in no particular order):

Enjoy

David

PS: Now, go get a tissue and dry your eyes now.

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: Fun Tagged: Friday Funny, Fun

Excerpt from:
Friday Funny: Best Marriage Proposal

June 19, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 72

Friday Funny: Game of Thrones: The Musical

David Meego - Click for blog homepageIf haven’t been hiding under a rock or burying your head in the sand for the last few years, you would have heard of that small show on HBO called Game of Thrones. Based on George R. R. Martin’s A Song of Ice and Fire book series, the show has a reputation for frequent use of nudity, violence, sex and for killing off lead characters in many varied ways.

You have enjoyed the books and TV show and now thanks to Chris Martin and his British band Coldplay, you should soon be able to enjoy Game of Thrones: The Musical.

To help raise funds for the US Red Nose Day appeal, the Musical will donate its profits to the cause. On the official Coldplay YouTube channel, videos of the work on the show and some of the songs have been published. Watch them below:

Coldplay’s Game of Thrones: The Musical (Full 12-minute version) (direct link)

 

Game of Thrones: The Musical – Peter Dinklage Teaser (direct link)

 

Game of Thrones: The Musical – Emilia Clarke Teaser (direct link)

 

Game of Thrones: The Musical – Nikolaj Coster-Waldau – Closer to Home (direct link)

 

Game of Thrones: The Musical – Red Wedding Teaser (direct link)

 

If you want to donate to Red Nose Day, use the following link:

Enjoy

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: Fun Tagged: Friday Funny, Fun

View the original here:
Friday Funny: Game of Thrones: The Musical

May 29, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 71

Using the Support Debugging Tool to create user accessible SQL Scripts – Part 3

David Meego - Click for blog homepageThis is the third and final article in the series, make sure you look at the previous articles before this one.

The previous articles can be found at:

Today’s article adds the final step by adding a method for a user to execute the code we have written so far without requiring access to any Support Debugging Tool windows.

The Runtime Execute window and SQL Execute windows are Advanced Mode features which makes them only available to users with access to the Administrator features via the security roles AND the system password (if used) AND SQL dbo or SysAdmin privileges. You would not want this sort of access to be given to the average user, so you can use the method in this article to provide access to the scripts we have written from an existing window.

Using the Automatic Debugger Mode we can create a non-logging trigger to call our scripts when an event occurs in the system. The event used can be any of the system events supported by Dexterity, such as opening or closing a window, moving focus in to or out of a field (with or without changing to the field), or clicking on a button. You can also create your own items on the Additional menu to trigger off.

For our example, we are going to use two methods; an additional menu and re-purposing the window print button on the Customer Maintenance window.

Part 3: Exposing the script to any user

The final step is to use Automatic Debugger Mode Setup to call our previously created Runtime Execute script.

  1. Open the Support Debugging Tool main window (Microsoft Dynamics GP >> Tools >> Support Debugging Tool or Ctrl-D).
  2. Open the Support Debugging Tool Setup window (Options >> Setup Automatic Debugger Mode).
  3. Enter the Trigger ID, Trigger Description as desired for menu based trigger.
  4. Check the Start Trigger Automatically on Login, Do not activate Logging Mode and Minimize Debugger Log Entries checkboxes.
  5. Select the Trigger Type: Add Form Menu, Trigger Event: Form Level, and Trigger Attach: After Menu Selected.
  6. On the Resource tab, select Product Name: Microsoft Dynamics GP, Form Name: RM_Customer_Maintenance, Menu Entry: Check and Update Hold, Accelerator Key: U.
    Trigger1
  7. On the Script tab, set Context: Microsoft Dynamics GP and the script to:
    out boolean OUT_Condition;
    local text MBS_Text_Field;
    local integer MBS_Dictionary;
    local integer MBS_Status;
    
    OUT_Condition = false;
    
    if isopen(form RM_Customer_Maintenance) then
    	OUT_Condition = true;
    
    	call with name "MBS_Script_Load_Dex" in dictionary 5261,
    		"DEMO1", MBS_Text_Field, MBS_Dictionary;
    
    	call with name "MBS_Runtime_Execute" in dictionary 5261,
    		MBS_Text_Field, MBS_Dictionary, MBS_Status;
    	if MBS_Status <> OKAY then
    		warning MBS_Text_Field;
    	end if;
    
    end if;
    

    Trigger2

  8. You can use the Helper Button at the bottom of the window to insert Helper Functions at the current cursor location for loading and executing the Dexterity Runtime Execute script. Variables needed will be automatically added to the top of the script.
  9. No changes needed on the Actions and Options tabs
  10. Click Save.
  11. Enter the Trigger ID, Trigger Description as desired for button based trigger.
  12. Check the Start Trigger Automatically on Login, Do not activate Logging Mode and Minimize Debugger Log Entries checkboxes.
  13. Select the Trigger Type: Focus Event, Trigger Event: Field Change, and Trigger Attach: Before Original.
  14. On the Resource tab, select Product Name: Microsoft Dynamics GP, Form Name: RM_Customer_Maintenance, Window: RM_Customer_Maintenance, Field Name: WindowPrint.
    Trigger3
  15. On the Script tab, set Context: Microsoft Dynamics GP and the script to:
    in string IN_OldValue;
    in string IN_NewValue;
    out boolean OUT_Condition;
    
    local text MBS_Text_Field;
    local integer MBS_Dictionary;
    local integer MBS_Status;
    
    OUT_Condition = false;
    
    if isopen(form RM_Customer_Maintenance) then
    	OUT_Condition = true;
    
    	call with name "MBS_Script_Load_Dex" in dictionary 5261,
    		"DEMO1", MBS_Text_Field, MBS_Dictionary;
    
    	call with name "MBS_Runtime_Execute" in dictionary 5261,
    		MBS_Text_Field, MBS_Dictionary, MBS_Status;
    	if MBS_Status <> OKAY then
    		warning MBS_Text_Field;
    	end if;
    
    end if;
    

    Trigger4

  16. You can use the Helper Button at the bottom of the window to insert Helper Functions at the current cursor location for loading and executing the Dexterity Runtime Execute script. Variables needed will be automatically added to the top of the script.
  17. On the Actions tab, check the Issue Reject Script checkbox to prevent the original button script from running after our trigger code finishes.
  18. No changes needed on Options tab.
  19. Click Save.

To automatically enable the triggers, just log in again to the company. To manually enable the triggers, from the Support Debugging Tool main window, select Turn On Automatic Debugger Mode >> Non Logging Automatic Start Only. To disable the triggers, from the Support Debugging Too main window, select Options >> Automatic Debugger Mode Status and then click Unregister >> Non Logging Triggers Only. To disable all triggers, use Unregister >> All Triggers, this is required if you want to open the Setup Automatic Debugger Mode window again.

Notes

  • Use the Automatic Debugger Mode Status window (Options >> Automatic Debugger Mode Status) to confirm that the triggers are registered and active.
  • Note that the target window must be closed and re-opened after the triggers are enabled before they will be active.
  • If re-purposing an existing button, you can use an ask() dialog to ask if you want the original purpose or the new purpose to execute. For the original purpose, exit the script with the variable OUT_Condition equal to false. For the new purpose, perform the desired actions and exit the script with the variable OUT_Condition equal to true and the action Issue Reject Script ticked.
  • If you are having problems getting the code to work, uncheck the Minimize Debugger Log Entries checkbox to get more information recorded in the Debugger__.log file.
  • It is possible to load and execute the SQL Execute scripts directly using the Dexterity trigger code and bypass Step 2 of this series using Runtime Execute, however this makes it harder to test the code as you will need to keep registering and unregistering the trigger.

Below is the Debugger Settings files with all the code for the examples in this series.

Please write feedback and comments below to let me know how you think you could use these methods in your systems.

Hope you found this series useful.

David

This article was originally posted on http://www.winthropdc.com/blog.

Filed under: Development, Dexterity, Dynamics, GP, Microsoft, Products, SQL Server, Support Debugging Tool Tagged: Application, Dexterity, SDT, SQL, Support Debugging Tool

Originally posted here:
Using the Support Debugging Tool to create user accessible SQL Scripts – Part 3

May 18, 2015 · WinthropDC · No Comments
Tags: , , , , , , , , ,  · Posted in: Blogs I Follow Total Views: 83