Sustainability is a buzzword in business today, whether talking about maintaining growth or minimizing environmental impact, and seems to be tacked on to a variety of products from cereal bars to cars. So what do I mean when I talk about sustainable development with Microsoft Dynamics GP?
Now, first, I have to add in my own disclaimer. I am not a developer. So I really would love to hear from others on their experiences. But I have been involved in enough functional and technical design processes over the years, that I have seen some themes emerge around customizations that truly increase satisfaction with the software versus those that seem to limit the software’s capabilities and the customer’s satisfaction.
In my mind, sustainable development is custom development that is approached in a way that:
• Enhances the user’s experience with the system, does not diminish it
• Does not try to replace the need for training and time to adjust to a new system
• Uses supported tools and recognized approaches for solving a problem
• Includes documentation, including foresight regarding upgrading and changes in business requirements
Given the robust toolset that we now have to customize Microsoft Dynamics GP, it is not unusual to have some degree of custom development on even the smallest projects. These minor customizations can often reap big rewards in terms of satisfaction with the system. How do we go about developing these customizations in a “sustainable” way?
I think that there are three key principles to keep in mind when considering custom development, to ensure that you are approaching it in a sustainable way:
1. Ask Why? Why is this needed? Is it to support a business process and requirements? Get to the heart of the need, and address it appropriately—which may not be with development. It may be training, it may be the learning curve that comes with a new system, it may be understanding that business requirements can sometimes be differ from an individual user’s perspective.
2. Document the design. Putting it down on paper can make a world of difference in terms of the thought processes applied—thinking through upgradeability, appropriateness of the selected toolset, and flexibility for future requirements. Plus this gives everyone something to respond to, something concrete to reference and consider.
3. Don’t limit yourself. This is a hard one, because we all rely on the tools we know best. But when something falls outside your comfort level, or you sense that there may be a better approach, ask around. Trying to shoehorn the tools you know to meet a need can create a cell you will be forced to live in for years…and years…and years :)
Of course, I am always interested in hearing your perspectives! Please let me know if you agree/disagree or want to add to the list above.
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
My blog has moved! Please visit the new blog at: https://blog.steveendow.com/ I will no longer be posting to Dynamics GP Land, and all new posts will be at https://blog.steveendow.com Thanks!
Tuesday, June 14, 2011
Monday, June 13, 2011
Select Blogs Where Smartlist Begins With [%]
I ran in to one of those DOH! moments this past week. Simple as this...I needed to search for all payables transactions where the document number begins with a percent sign. Why? Well, this was how the client was identifying certain invoices that needed additional processing.
So, I dutifully built a Payables Transaction SmartList (Microsoft Dynamics GP menu--SmartList--Expand Purchasing--Expand Payables Transactions--Click on Asterisk--Click on Search button) using the following criteria:
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
So, I dutifully built a Payables Transaction SmartList (Microsoft Dynamics GP menu--SmartList--Expand Purchasing--Expand Payables Transactions--Click on Asterisk--Click on Search button) using the following criteria:
So, I am sure you SQL gurus out there already know my dilemma. The smartlist returned ALL records that met the other three criteria, seemingly ignoring the first criteria for document number. Why? Well, because SQL uses the % as a wildcard in a LIKE statement. So in this example, it was essentially looking for everything, since the only parameter was the wildcard. Ugh. But easily fixable once I thought about. If, in SQL, I wanted to use LIKE to find something with an actual percent sign it, I would use brackets around the % sign like this [%]. And, well, it works in SmartList too!
And, again, I am sure the SQL gurus already know this....but this actually returned the correct results. Woohoo. Party On. Excellent.
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Wednesday, June 8, 2011
Performance Issues with Dynamics GP on Terminal Server with Mapped Drives
In the last year, I've had three inquiries regarding extreme performance issues when running Dynamics GP on a Terminal Server. In the three cases, two were using GP 10, and one was using GP 9.
The customers explain that when some users launch GP on a Terminal Server, it can take 5 to 10 minutes for Dynamics GP to launch. But other users on the same Terminal Server don't have any issues or delays launching Dynamics GP. Sometimes a user that has been working fine will suddenly experience the issue, and it will persist for that user going forward.
In all three cases, it seems that the primary culprit was mapped drives on the user's terminal server session.
Two of the customers found that removing the drive mapping option in the user's Active Directory profile solved the problem. The third customer did not have drive mappings in the AD profile, but found that removing the login script, which mapped drives, solved the problem.
What is strange is that not all GP users were affected, even if all users had the same drive mappings. And from what I have learned, only Dynamics GP had performance issues.
Since a ton of customers run Dynamics GP just fine in a Terminal Server environment (presumably many with mapped drives), I assume that there is something else involved other than just mapped drives, but I don't yet have any clues as to what that might be, and why it only affects some users.
Since one of the customers needs mapped drives in user TS sessions, they are planning on submitting a support case to understand why the mapped drives cause the issue. If I learn more, I'll post an update.
The customers explain that when some users launch GP on a Terminal Server, it can take 5 to 10 minutes for Dynamics GP to launch. But other users on the same Terminal Server don't have any issues or delays launching Dynamics GP. Sometimes a user that has been working fine will suddenly experience the issue, and it will persist for that user going forward.
In all three cases, it seems that the primary culprit was mapped drives on the user's terminal server session.
Two of the customers found that removing the drive mapping option in the user's Active Directory profile solved the problem. The third customer did not have drive mappings in the AD profile, but found that removing the login script, which mapped drives, solved the problem.
What is strange is that not all GP users were affected, even if all users had the same drive mappings. And from what I have learned, only Dynamics GP had performance issues.
Since a ton of customers run Dynamics GP just fine in a Terminal Server environment (presumably many with mapped drives), I assume that there is something else involved other than just mapped drives, but I don't yet have any clues as to what that might be, and why it only affects some users.
Since one of the customers needs mapped drives in user TS sessions, they are planning on submitting a support case to understand why the mapped drives cause the issue. If I learn more, I'll post an update.
Monday, June 6, 2011
In Search Of....Creative Management Reporter Solutions
I only have vague memories of the old "In Search Of" series hosted by Leonard Nimoy, although those long forgotten memories also recall a bit of creepiness and more than a couple nightmares prompted by the episodes.
Today, I am not looking for Bigfoot or trying to debunk the myth of the Bermuda Triangle, but I am in search of creative solutions for two Management Reporter dilemmas I have run in to recently. I would love to hear from anyone who has found elegant/not so elegant solutions to the following issues:
Thanks!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Today, I am not looking for Bigfoot or trying to debunk the myth of the Bermuda Triangle, but I am in search of creative solutions for two Management Reporter dilemmas I have run in to recently. I would love to hear from anyone who has found elegant/not so elegant solutions to the following issues:
- Deploying Management Reporter in environments that do not have a domain/Active Directory in place
- Dealing with large volume reporting, and the need to generate reports to the library for viewing as well as printing them for packets
Thanks!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Friday, June 3, 2011
Bank Transfers, Interest Income, What's the Diff?
I ran across a wierdo issue, that I almost can't believe I haven't run across before. So a special shout-out to a fellow BKDer who found this issue in Dynamics GP. Now, maybe some of my fellow bloggers may have an answer/fix to this. But I suspect is it just how GP categories the transactions in Bank Reconciliation.
Let's take the example of a bank transfer (Transactions>>Financial>>Bank Transfer Entry). We record and post a Bank Transfer. Then, let's say we want to report on said transfer in Smartlist (Microsoft Dynamics GP>>Smartlist>>Financial>>Bank Transactions).
Everything looks good until we see the CM Trx Type field. I would expect to see Transfer or something like that, but instead I see Interest Income. This is true for both sides of the transfer. And I know it's a transfer due to the Source Doc Number and Source Document, as well as the fact that I can drilldown on the transaction and it opens up the originating Bank Transfer.
Not a big deal, but definitely odd and something to be aware of. In this case, I told the user to rely more heavily on source document in conjunction with CM Trx Type as well as Source Doc Number.
Anyone else come across this? Anyone know why this happens? I suspect it is something to do with the numbers used in the DB for the different trx type, and GP using two different types with the same number. But if someone knows more details, I would love to hear them!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Let's take the example of a bank transfer (Transactions>>Financial>>Bank Transfer Entry). We record and post a Bank Transfer. Then, let's say we want to report on said transfer in Smartlist (Microsoft Dynamics GP>>Smartlist>>Financial>>Bank Transactions).
Everything looks good until we see the CM Trx Type field. I would expect to see Transfer or something like that, but instead I see Interest Income. This is true for both sides of the transfer. And I know it's a transfer due to the Source Doc Number and Source Document, as well as the fact that I can drilldown on the transaction and it opens up the originating Bank Transfer.
Not a big deal, but definitely odd and something to be aware of. In this case, I told the user to rely more heavily on source document in conjunction with CM Trx Type as well as Source Doc Number.
Anyone else come across this? Anyone know why this happens? I suspect it is something to do with the numbers used in the DB for the different trx type, and GP using two different types with the same number. But if someone knows more details, I would love to hear them!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Wednesday, June 1, 2011
Implementation Trauma, Number Three!
I know you all have been waiting, staying up at night, just hoping that I would finally do a post on the #3 consulting and customer sins regarding software implementation. So here I am, no need to wait any longer! It has been awhile since I did my original post regarding my personal top 5 consulting and customer sins. I should emphasize that I came up with this list through my own personal experience, and my experiences teaching Sure Step to partners. In no way do I want to imply that I am not guilty of these sins (as a consultant and customer bother)! Much of my learning has been the hard way, so my hope is that through these posts I can help someone avoid the mistakes I have made :)
To revisit the list:
Top 5 Consulting Sins-
To revisit the list:
Top 5 Consulting Sins-
- Assuming you are the sole reason for the success/failure of the project
- Forgetting that customer service is important even during the heat of an implementation
- Ignoring risks as a way to avoid difficult conversations and/or to not "rock the boat"
- Forgoing proactive change management for many of the same reasons as #3
- Losing yourself in the "weeds" and forgetting the reasons/goals for the implementation
- Assuming that the consulting team is the sole reason for the success/failure of the project
- Approaching the consulting team as adversaries instead of partners
- Underestimating the organizational change associated with implementing software
- Not placing value on the time spent by employees on an implementation
- Inadequately voicing/sharing your goals, whether due to limited budget, resources, or time (or energy!)
Let's take a closer look at number 3 on the consulting list-- Ignoring risks as a way to avoid difficult conversations and/or to not "rock the boat". Come on now, be honest....who has avoiding an issue or a risk in hopes that it will resolve itself? I find that I procrastinate most on risks that involve people. For example, let's say that you are working with the customer's internal project manager. You really like them, have had lunch with them, shared stories about your kids. But he/she seems buried in work. And, increasingly, the follow through on tasks is delayed and/or sloppy and you find yourself spending more time managing the customer's resources. What do you do? What can do you do? Ignore it, hope that it gets better? Maybe you have tried to gently discuss it with him/her? These are all important questions, but it really comes down to two things--
Is this a risk to the project? YES. Do you (or your project manager) have an obligation to proactively manage this risk? YES. Maybe a more direct conversation with the internal project manager is needed. Maybe involving the customer's project sponsor and/or the project manager's supervisor in a brainstorming session to determine possible solutions to the bottleneck. The key here, in my opinion, is to focus on the proactive, focus on the solutions and causes...not on the details of who did or didn't do what. Sure, the details can be important in focusing the brainstorming, but try to keep it out of the he did/she did territory. In the end, the whole project team (customer and consultants) is in it for the reason- success. So focusing on why we manage risk (to increase the probability of success), can help everyone rise above the overwhelming details.
So what about on the customer side? Number 3 is -- Underestimating the organizational change associated with implementing software. Wow. That is a big one. Seriously. With change comes uncertainty, about roles, about processes, about what this means for the organization. Much like pain management, organization change management is about being ahead of the "pain" of change. Mark works in customer service. He has heard about the new system, but really hasn't been involved in the implementation process. What he does know, though, is that the new system is supposedly more "efficient" than the current one. And with efficiencies, it seems like they might not need as many people working in customer service. Not to mention, he has barely learned how to do his job in the current system after being hired a year ago-- the idea of learning a new system right before the busy season really concerns him. These are all things that the executives, project sponsors, and managers involved in the implementation need to consider. Discussions about what this change means to the organization, and to the people who rely on it for their livelihood, should not be avoided. By opening up communication regarding the changes coming, the implementation becomes a company-wide effort where everyone can share in the success. Maybe there will be less staff in customer service, but all of the new reporting tools means that new sales analyst positions will be available. Finding this balance of the benefit to the organization and to the employees is key along with strong, positive leadership regarding the change.
Well, those are the sins for today. Two more to go. As always, please feel free to share your thoughts. More and more, I am reminded that software functionality is only one part of the equation...the rest of it is filled with the people, processes, and methods that work with it to achieve success.
UPDATED 6/1: I need to update this with a shout out to Mark Polino, whose repost of this article reminded me of something I meant to include. One of my favorite books, that has served me well with gaining the "gumption" to approach difficult topics (see the discussion about proactively managing risk above). Difficult Conversations by Stone, Patton, and Heen. Check it out if you need to up your "gumption" quotient!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Well, those are the sins for today. Two more to go. As always, please feel free to share your thoughts. More and more, I am reminded that software functionality is only one part of the equation...the rest of it is filled with the people, processes, and methods that work with it to achieve success.
UPDATED 6/1: I need to update this with a shout out to Mark Polino, whose repost of this article reminded me of something I meant to include. One of my favorite books, that has served me well with gaining the "gumption" to approach difficult topics (see the discussion about proactively managing risk above). Difficult Conversations by Stone, Patton, and Heen. Check it out if you need to up your "gumption" quotient!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Account Level Security and Advanced Search, Uh-Oh
It still amazes me that although I have been training for over 10 years, I still have students "discover" new "features" in Dynamics GP. I just had a case pop up in class last month, regarding account level security and the advanced search feature in the account lookup window.
But, first, a little background for those of you not familiar with account level security (also referred to as organizational structures). This feature of Microsoft Dynamics GP allows you to assign users and GL accounts to branches of your organization structure, thereby restricting the accounts that a user can access. Companies use this for a variety of reasons including:
Have a great Thursday!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
But, first, a little background for those of you not familiar with account level security (also referred to as organizational structures). This feature of Microsoft Dynamics GP allows you to assign users and GL accounts to branches of your organization structure, thereby restricting the accounts that a user can access. Companies use this for a variety of reasons including:
- Ensuring that users don't post to incorrect accounts
- Securing accounts that users shouldn't be able to view (e.g., balances or other information)
- Simplifying the interface for a user so that they only see the accounts they use
Note that when they use the Accounts lookup to select an account number, the first account listed is 000-6170-04 (the first account in their restricted list, NOT the first account in the complete chart of accounts). This is working as designed, as we only want the payables clerks to see their expense accounts. But....what happens if a user users the Advanced Search feature to locate an account?
So, in this example, I clicked the Advanced Search icon (the binoculars called out in the above screenshot) and chose to search by Account Number begins with 000-1. And, surprisingly, I get back a list of accounts that meet that criteria but are NOT part of the restricted list that I am able to use due to acccount security. If I try to pick one of these accounts, I get the following error:
So, although you can SEE the accounts, you still can't USE them if you don't have access to them. I know you are probably wondering, well, what's the problem then? Well, it is a minor one, but what this means is that users need to know that although the list is secure for posting, reporting, etc. it is NOT secure from viewing the account descriptions. Account descriptions may contain sensitive information like names that users may assume can't be seen if a user doesn't have access to it. But it can be seen. So plan accordingly.
There is a problem report for this, but is a bit old and doesn't seem to be a popular one...so definitely contact your Partner or Microsoft support if you want to be added to the list of customers experiencing this issue. Here are the details:
MBS Great Plains 4799 - ‘Search Accounts’ returns all accounts, not just enabled
Have a great Thursday!
Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.
Subscribe to:
Posts (Atom)





