February 26, 2010

GPTip42day - In which order should I run the Reconcile Utilities in GP?


The is the prescribed order for running Reconcile

(Tools>Utilities>xxxmodule>Reconcile) -

1.  Sales Order Processing
2.  Purchase Order Processing
3.  Inventory
4.  Project Accounting (if used)
5.  Field Service (if used)

Running Reconcile in this order is important because of the interaction between the modules  affecting Item Quantities.  Running Reconcile in a different order can result in incorrect Item Allocation Quantities.

February 22, 2010

GPTip42day - Adding a non-depreciating asset


From the GP forums this morning comes the question 'How do I capitalize an asset without depreciating it?'  The poster had received some fixed assets as gifts and didn't want to depreciate them.  Here's how you do it - very simple.

In the Asset Book window, select No Depreciation as the Depreciation Method.

* click image to enlarge


February 16, 2010

GPtip42day - Track User Inactivity


I generally don't get into the technical side of GP in the Tip42day but this is just too good not to share. 

A user on the https://community.dynamics.com/forums/32.aspx forum posed the following question -

Is there any column that will show the last activity time for a user? I would like to be able to send email alerts to users who are logged in but haven't been active for 1 hour.

This is a great idea but I'm not aware of any field in any table in GP that stores this info.  However, I didn't think about pulling this directly from SQL.  Fortunately, there are people much smarter than I am out there who did.  Here's the solution - 

SELECT CASE WHEN S.session_id IS NULL THEN 'Missing DEX_SESSION'


ELSE ''


END MISSING_SESSION,


CASE WHEN DATEDIFF(mi, P.last_batch, GETDATE()) > 1


THEN 'Idle for ' + LTRIM(RTRIM(STR(DATEDIFF(mi, P.last_batch, GETDATE())))) + ' minutes.'


ELSE ''


END AS IDLE_TIME_DESC,


CASE WHEN DATEDIFF(mi, P.last_batch, GETDATE()) > 1


THEN DATEDIFF(mi, P.last_batch, GETDATE())


ELSE 0


END AS IDLE_TIME,


A.USERID,


A.CMPNYNAM COMPANY_NAME,


INTERID COMPANY_ID,


LOGINDAT + LOGINTIM LOGIN_DATE_TIME,


SQLSESID SQL_SESSIONID,


P.login_time SQL_LOGINTIME,


P.last_batch SQL_LAST_BATCH,


DATEDIFF(mi, P.last_batch, GETDATE()) TIME_SINCE_LAST_ACTION,


S.session_id SQLSERVER_SESSIONID,


S.sqlsvr_spid SQLSERVER_PROCESSID,


P.spid PROCESSID,


P.status PROCESS_STATUS,


P.net_address NET_ADDRESS,


P.dbid DATABASE_ID,


P.hostname HOSTNAME


FROM DYNAMICS..ACTIVITY A


LEFT JOIN DYNAMICS..SY01400 U ON A.USERID = U.USERID


LEFT JOIN DYNAMICS..SY01500 C ON A.CMPNYNAM = C.CMPNYNAM


LEFT JOIN tempdb..DEX_SESSION S ON A.SQLSESID = S.session_id


LEFT JOIN master..sysprocesses P ON S.sqlsvr_spid = P.spid


AND ecid = 0


LEFT JOIN master..sysdatabases D ON P.dbid = D.dbid

This script creates a column called 'IDLE_TIME' and stores the idle time in minutes, which can be used to determine which users to send the email to via SQL Mail.

Thanks to Ron Wilson and Sivakumar Venkataraman for this great tip!

February 9, 2010

GPtip42day - Why does one Item show different costs on the same receipt?


Occasionally, or maybe more often, you process a receiving transaction for a multiple of an Item at an Extended Cost that isn't evenly divisible by the quantity.  Take a look at the screenshot below, for example.

* click image to enlarge

This is a snapshot of a modified Purchase Receipts report.  Note that for RCT1607, there are two receipt lines, the first with a quantity of 4 @ $6,314.60 and the second a quantity of 1 @ $6,314.59.  Why is this?  Because the receipt was entered for a total quantity of 5 and an Extended Cost of $31,572.99.  GP can't divide the cost evenly across 5 pieces because the Item's Currency Decimal setting is 2 decimals.  Therefore, it posts the receipt in two lines as seen above.

This same scenario can occur in a multicurrency environment when the Originating and Functional Currency rates result in an exchange difference than can't be apportioned evenly across the quantity received.

February 8, 2010

GPtip42day - Size of Note field


I'll bet everyone has been wondering what the maximum note size is that can be entered into a note field.  From our friend and GP developer extraordinaire, Mr. David Musgrave, the maximum number of characters a note field will hold is 32,000. 

Now, if we just had a character counter on that note field David!

February 3, 2010

GPtip42day - Are hotfixes cumulative?


This question was posed on one of the forums yesterday.  The answer is yes - hotfixes are cumulative - meaning they include all previous hotfix and service pack modifications to-date.

From Microsoft PartnerSource - 'All service packs, hotfixes, tax updates and year end updates are cumulative and the version information is incremented with each patch release.'

February 2, 2010

GPtip42day - Printing Multiple Sales Invoices


In GP10, you can print multiple sales invoices in one step.  Select the Sales tile in the Navigation Pane, then select Receivables Transactions.  Filter the resulting list for the type(s) of documents you want to print, date range, etc.  When you have the list filtered, place checkmarks next to the documents you want to print and click Print Documents.  All documents will be printed to the destination you select in the Print Destination window.

* click image to enlarge