Version 9.0 Customer Release Notes

9.0.572.059 (2018-10-?)

IMPORTANT: Avalara Users
Formatting configurations within the Avalara import files for certain states may require manual updates to Sales Tax Authorities/Groups following the update. Please contact your support rep before running Start Sales Tax Update (Avalara). Note that new releases of Version 9.1 support the Avalara Web Service (which does not have these import issues). Upgrading to Version 9.1 also provides preprocessing information on anomalies in the Avalara import files which may need to be corrected.  

Click to go to Recent Updates.

WARNING:

DO NOT UPGRADE any QuoteMaster system without checking / correcting the data first; this MUST be done by a Data-Basics Support Rep.  Failure to do so may result in failure of the conversion and the loss of the database.  See the 9.0 Upgrade Notes for detailed information.

1  System

1.1 System Registries

1.1.0  Registry Viewer

 Due to the need to maintain certain Registry records in a specific order the Registry's lower pane is no longer sorted automatically when it is saved. Instead, the new Sort Lines button allows the user to resort individual registry entries alphabetically.

To do so:

1. Complete any needed changes to the Registry record.

2. Save (or Add) the Registry record.

3. Click the Sort Lines button.

4. Save the record again to retain the new Sort Order.

Important: The Registry viewer does NOT warn the user about losing unsaved changes if all the user did to a record is push the new SortLines button.  

1.1.1 Pending Changes Handling

By default in this release, if user A changes a field and then tabs out of it, a Pending Changes flag is set in the Record Change Log. The following registry should be used to change the pending changes message (see Customer Note 1.3.2) from an error to a warning, or to disable it altogether if record lock issues are encountered.

Registry Id: sys-ffv-global-settings

Setting Key: NotifyPendingChanges    Setting Value: warning OR none (default error)

If this entry is absent or set to error, if user B attempts to change a record currently being changed by user A, he will be prevented from doing so, and a message will be displayed.

If the Setting Value of warning is selected, and user B accesses/changes a record which user A has started to edit, the following message will be displayed, but user B will be allowed to make changes:

WARNING: this record is currently being changed by another user.
User userid started making changes to this record at date - time.

If the Setting Value of none is selected, the Pending Changes flag is never written to the Record Change Log, and this functionality is completely disabled.

1.1.2 Required and Disabled Fields Options Support Multiple Lines

The RequiredFields and DisabledFields registries did not allow some of our users tag enough fields as required or disabled due to long field names and the character limit of the Setting Value. This release extends multiple registry line support to the RequiredFieldsParent, RequiredFieldschild, DisabledFieldsParent, and DisabledFieldschild Setting Keys.

Example:Client Site

Id: sys-viewer-vclntste

Setting Key: RequiredFieldsParent  Setting Value: jb.lcl: txathrty.id,rteschdle.id

Setting Key: RequiredFieldsParent  Setting Value: jb.gl-ar: glaccnt.id

…. And additional lines as needed

1.1.3 Disabled Fields Registry for First Field

In this release, if the first tab order field is disabled, the caret will be positioned in the next field, and the disabled field will correctly display as disabled.

1.1.4 Default Email Sender Registry

If a From address cannot be determined, an Email cannot be sent. Especially in the case of emailing as a PDF, the XML will contain a blank emailFrom tag and the email will fail silently in the xmlToPdf_Failed folder. This release provides several enhancements to prevent Emails from attempting to send without a from address.

Id: sys-email

Setting Key: DefaultEmailSender  Setting Value: validemailaddress

If a 'From' email address cannot be determined from the User's Contact Record (for reports) or the Notification Category (for Scheduled Events), this email address will be used instead.

Reports:

1. When clicking the email button on a report (if UseOutlook=false), the Sender field is now required on the SAMPro Email screen. If the Email address is not completed in the User's Contact record, the Sender field will default from the sys-email registry's DefaultEmailSender option.

2. The Email From field in the Schedule Report screen is now required. If the Email address is not completed in the User's Contact record, the Email From field will default from the sys-mail registry's DefaultEmailSender option.

Scheduled Events: If the email-from is not set by the Scheduled Event Manager, the default email sender from  the sys-email registry will be used.

Dispatch Board: When UseOutlook is enabled via registry, clicking the Email button launches the Outlook form and sets the Email To field with the Tech’s Email Address 2.

1.1.5 Security Overrides Global Restrictions

This registry allows the user to set restrictions for a security(ies) to be hidden as a global registry. User specific registries (sys-security-overrides-branchid-userid or sys-security-overrides--userid) would then be enabled (without the block or sql options) to allow specific users access to the blocked security(ies).

Id: sys-security-overrides

Setting Key: blocked  Setting Value: List of Security Id's that cannot be accessed

Example: To Block Records with Security Id 01 and 02:

Setting Key: blocked    Setting Value: 01,02

OR

Id: sys-security-overrides

Setting Key: sql   Setting Value: sql snippet

This option incorporates a standard sql snippet into the standard security filtering. Only column names from the Security (scrty) table may be referenced.

Example: Records with Security Id's that begin with 0 cannot be accessed:

Setting Key: sql   Setting Value: scrty_id not like '0%'

1.2 Reports

Most Report Range fields have been expanded from 999 to 1999 characters.

Corrects an error in recent versions which occurred when the 'Hold Open' button was not selected when running a Drilldown report.

Performance enhancement when overwriting an existing report file when it is auto-saved.

1.2.1 Printer Registries (sys-printer-reportid)

Previously, if a 'sys-printer-XXX' entry existed for a report function (e.g., setting the COP Invoice to Portrait), the report always printed to the user's default printer. In this release, the printer dialog box will appear unless the appropriate 'defaultprinter' option exists in the registry.

1.2.1a Default Printer

This release corrects an issue where the defaultprinter option in the sys-printer-functionid registry was ignored. If this registry is enabled the report will once again be sent directly to the specified printer without a dialog box being displayed.

1.2.2 DBR Report Files and Bitmaps

Although deprecated, the 'at' and 'size' attributes are still implemented by some users in their report registry entries. This release restores this functionality inadvertently removed in v 9.0.572.037e.

This release enhances the logic used to find a bitmap logo to display on a saved SAMPro (.dbr format) report if the bitmap is not found in the original location (e.g., after a server move).

Any time a DBR is saved, it stores the registry values in the DBR file itself. Namely, the bitmap directory. When that DBR file is opened in SAMPro, it will recall the old bitmap directory to go out and find the logo to print to screen.
In the event of a server move, that bitmap folder may no longer exist. Especially in the case of using UNC file paths (Ex. \\SERVER1\Share\ -> \\SERVER2\Share\ -OR- \\SERVER1\Share\ -> S:\).

SAMPro will now use the following steps to find a bitmap logo to display on the report:
1) Look in the DBR file for the old bitmaps directory.
-- If not found --
2) Look in the sys-report-*** registry for a 'bitmaps' setting.
-- If not found --
3) Look in the \bitmaps directory in the SAMPro root folder

\bitmaps or \Bitmaps will work. The filename it is looking for here is the filename stored in the bitmaps setting

Example:  S:\docs\bitmaps\quotes\quote1.bmp -> S:\SAMPro\bitmaps\quote1.bmp

1.2.3 Registry to Skip Printer Prompt and Always Print to User's Default Printer

The following registry may be implemented to save the user time and clicks by eliminating the printer prompt and always selecting the user's default printer.

Important: This registry should be implemented with caution as users will NOT have the option of selecting a different printer when running the report. It is most appropriate for reports which will only be displayed or always be printed to the user's default printer.

Id: sys-report-reportfunctionid  (if the report does not require a starter function)

Id: sys-start-ssrvcebllngwrksht  (to implement for the service billing worksheet)

Setting Key: UseDefaultPrinter   Setting Value: true  (default is false)

Note that this setting trumps a similar registry in the 'old dialog' setting.

See Customer Note 16.1.15 for a registry to also skip the Service Billing Worksheet's checklist.

1.2.4 Emailing Reports

This release corrects a Runtime error when UseOutlook and CopyAll are both enabled in the sys-email registry AND the user sends a report as a .cvs or .txt file from Outlook.

The Email viewer which appears when e-mailing a report from SAMPro now supports an expanded Message field of 1200 characters. This allows the entire contents of a Common phase to be included in the Message.  

1.2.5 Scheduled Reports

Previously, installing a revised report record for a scheduled report could result in prompting messages and 'key is missing' errors; it was sometimes necessary to recreate the schedule report. These issues are now corrected so that the revised scheduled report runs properly.

1.2.6 Global Registry to Enable Windows Printer Dialog

Id: sys-ffv-global-settings

Setting Key: OldPrinterDialog    Setting Value: true    (default false)

Enabling this setting will display the Windows (OldPrinterDialog screen instead of SAMPro's Printer List when printing a report. This allows the use to select a different paper tray and other functions not supported on the SAMPro printer list.

This may be disabled on a function by function basis by the following:

Id: sys-printer-dialog-funtionid

Setting Key: olddialog   Setting Value: false

The system handles existing local report registry oldDialog='' as oldDialog = true to preserve old-style registry settings turning on this functionality.

Note:
When OldPrinterDialog/Olddialog is enabled, the From - To Pages settings in the Report viewer are NOT carried  to the Second Windows printer box where it must be set. To print only a few pages of a report, the page number must be entered in the Windows Dialog.

1.2.7 Generic Text Printer File: Start Move Generic Documents (new function)

Some users 'print' to a generic text printer; this may generate a file with NO FILENNAME EXTENSION instead of paper. In some cases, the file is written to the directory containing the SAMPro executable which clutters up the folder.  In this function, 'generic document' refers to these files, not SAMPro Document records.  In this function, 'generic document' refers to these files, not SAMPro Document records.

If the following registry entry exists, this new function will move all files with no filename extension from the SAMPro base directory to the DestinationDirectory specified in the registry. If this registry does not exist, running the function will have no impact on your files. This function designed to be run 'headless' so that it can be scheduled to run as a scheduled event.

If there is an exception list of files in the registry these files will not be moved. If the file already exists in the DestinationDirectory then a count will be added to the file name before it is stored. Special Characters in File names will be replaced by UnderScore before file is moved.

Id: sys-start-smvegnrcdcmnts

Specify the Destination Directory

Setting Key: DestinationDirectory   Setting Value: PathToDestinationDirectory

The Setting Value should provide the full path an existing directory. Start Move Generic Documents will move files with no Filename Extention from the base SAMPro directory to the folder define in this option.

Specify Files to Excluded from the Move (required)

Setting Key: FileExceptions   Setting Value: ListOfFilesToIgnore

Some files with no filename extension are used by SAMPro and should be excluded from the move. At this point, LabelRemap and inetlog should be excluded. It is possible that other should also be excluded.

Example:

Setting Key: FileExceptions   Setting Value: LabelRemap,inetlog

1.3 Viewers (General)

This release corrects sporadic errors encountered when clicking the End key and then editing an Id field that already contains the maximum number of characters.

The Notes button displays the blank Note icon if only Obsoleted notes (or no notes) are attached.

Windows Time Formats: Corrects a sporadic error which occurred if the user's PC has the Long Date Format set to H:mm:ss.

1.3.1 Status Pane / Custom Field Labels

The ability to rename Field Labels is a good thing, but the user and/or support may need to see the Standard Label.  The Standard Label has been added to the Status Pane display (at the bottom of the window) to the left of the internal field name and database name; it will be displayed the field is clicked on or hovered over.

1.3.2 Pending Changes

In previous versions, if two users were in the same record/journal, the first one to click the Save button had their changes saved, while the second one to Save would get the frustrating message that 'another user has updated the record and you must hit refresh.'

By default in this release, if user A changes a field and then tabs out of it, a Pending Changes flag is set in the Record Change Log. If user B accesses or starts to change the record, the system displays a message that

Changes to this record are not allowed at this time.
This record is currently being edited by another user.

User userid started making changes to this record at date - time.

Changes made from the Dispatch Board also support the pending changes functionality; if user B attempts to change a work order which user A has started to edit, the pending changes message (see above) will displayed.

See Customer Release Note 1.1.1 for a registry to change the pending changes message from an error to a warning, or to disable it altogether.

1.3.3 Company Name on Title Pane

Previously, the title pane of SAMPro windows used the companyname registry to display the Company Name. In this release, the new Company records are taken into account during user login as follows:

1. If a Company record exists that has a Security Id that matches that of the User logging in, then the Company Name (if not blank) comes from the 'matching' Company record.

2. If there is no match found in step #1 but the database contains exactly ONE Company record, then the Company Name (if not blank) comes from the single Company record.

3. Use the 'companyname' registry setting as documented in help.

1.3.4 Scrolling in Textbox Fields

The mouse's scroll wheel is supported in 'textbox' fields (e.g. the Work Order's Work Requested field). To use:

Select the field on the screen
Position the mouse cursor over the field
Scroll with the mouse wheel

1.3.5 Record List Panes

This release provides a performance enhancement when lists of records are accessed and resorted.

1.3.6 Id Lookup Lists

This release provides improved performance when an Id-lookup list is initially opened (by double-clicking on an Id field or clicking the Lookup button ) and also when the user selects a different sort order in an Id-lookup list

1.3.7 Keystrokes

In previous releases, Shift-Tab was treated like Ctrl+G (Go) in Viewers, Tabs and Reports. This could result in users inadvertently telling a function to Go (start) before they were ready. In this release, Shift+Tab moves the caret back one field.

Ctrl+G also acts like Shift+Tab in records viewers, reports and starter function.  Ctrl+G retains its 'Go' functionality only in the Viewer, Reports and Starter menus.

1.4 New Startme.exe File

A new Startme.exe file is required for Version 9.0 images. It is included in the zip file along with the image, and must be used or an error will be displayed on login.

1.5 Branch Viewer

The following phone extension fields have been expanded to 7 digits:

Branch Contact 1 Extension:
Branch Contact 2 Extension:

1.6  Common Phrases

New Field: Obsolete
If the Obsolete field is flagged, the Common Phase will be ignored when invoked in text boxes in SAMPro and in remote applications (TechAnywhere).

New Field: Remote Field Restrictions
This field can be used to restrict the list of fields for which a specific Common Phrase is applicable in remote applications (currently TechAnywhere). If this field is blank, there are no restrictions to Common Phrase’s use in TechAnywhere. There are four TechAnywhere fields that can use common phrases: Work Performed, Work Requested (new Work Orders), Recommendations and Quotes.

If this field is completed, the Common Phrase will only be available to the TechAnywhere fields that it references. The following fields are supported in TechAnywhere Android 3.3.051.001.

TA.WP - Work Performed
TA.WR - Work Requested (New Work Order)
TA.Quote - Quotes
TA.Rec - Recommendations

Example:
To limit a Common Phrase's TechAnywhere use to Work Performed and Recommendations, you would enter the following in the Remote Field Restrictions Field:  TA.WP,TA.Rec

1.7  Notes Viewer

The Tickle Date has been added to the Notes List view and as a filterable Range.

This release corrects a display issue when clicking ‘Find Data’ from the Notes viewer.

1.8  User Viewer

PM Filtering Range:
This range now provides full support of the various options available on a typical range screen, include sql= specifications.

Changed Button: Export Profile
Clicking this button exports the User's Profile to the DashboardProfiles folder in the main SAMPro directory.  This folder will be created if it does not exist.  

 

Registry Tab

Changed Field - Value:
This field has been expanded from 100 to 256 characters. This will accommodate Google Calendar settings required for the new CRMAnywhere Calendar functionality and other needs.

1.8.1 Additional Profiles Enhancement

In previous releases, the User's Additional Profiles tab only supported one line per Security Id. In this release, multiple lines may be entered per Security Id to support access to multiple User Groups then the user switch to the specified Security.

NOTE: Additional Group Tab Support
In addition to the User Groups specified on the Additional Profiles tab, the system will continue to grant the same access specified on the Additional Groups tab for Additional Profile Security as the Security specified on the User header.

Example:

User Header:

Security: A   User Group: Service

User Additional Groups: Inventory

User Additional Profiles:

Security: B  -  User Group: Service
Security: B  - User Group: Purchasing
Security C: - User Group:  Purchasing

When the user is logged on as:

Security A they can access: Service, Inventory
Security B they can access: Service, Inventory, Purchasing
Security C they can access: Purchasing, Inventory

1.8.2 Disabling User Terminates Active Sessions

In previous releases, a User Account could be disabled while active sessions were running for the User; Active Sessions could be terminated from View Logon History but this required additional steps. In this release, disabling a User will terminate any active sessions.

Changed Field: Disabled
If this field is flagged and the AND the User Account being disabled has active sessions a warning that  'Active Sessions for this User will be terminated' will be displayed. The system will terminate all active sessions when a User Account is disabled and the record is saved.  

Note: If the user being disabled has unsaved changes it may be difficult for them to exit SAMPro; we recommend that you contact the user and instruct them to exit SAMPro. The UserLogonSummary tab should be used to determine if the selected User is active.

1.8.3 New Tab: UserLogonSummary

This tab summarizes the SAMPro versions this User logged onto and if they are actively using the software.

VersionNo:
The SAMPro Version Number which was/is being used.

Important Note: A User must log off and back on SAMPro to be running the currently installed version. If this user has not done so, they may be running a session using an older version of the software which can lead to inconsistent results.

First Used - Last Used:
The first and last date a session for the SAMPro version was active.

Active Sessions:
The number of currently active sessions for this version.

Successful Logins - Failed Logins:
This tab lists when number of successful and failed logins by SAMPro version.

1.8.4 Switching Security

This release corrects a 'Key is Missing' error when the user switches security where the Group Id is blank on the Additional Profiles tab of the User record.

1.9 Accounting Period Viewer

When an Accounting Period record is saved, the user is now warned if there is no Accounting Period flagged as Default.  

1.9.1 Accounting Period List View

A new sort order, AccountingPeriodByYear, allows Accounting Periods to be sorted by the Fiscal Year field. The following field are displayed: Year - Accounting Period Id - Name - Status

Tip:
To sort periods with the most recent year first, click the Year column header.

1.10 Document Management

1.10.1 Scan Document Wizard

This release corrects a sporadic document locking issue.

1.10.2 QuickAttach

The Client Site Equipment, Job Cost Code, and Job Billing Item records now support Quick Attach. Special programming was required for these dual-key record.

1.10.2a Quick Attach Reference Enhancements

AR Cash Receipts: Quick Attachments also attach to the WorkOrder (via the Service Invoice) per detail line.

Inventory Receipt Journal: Quick Attachments also attach to the Job and Work Order per detail line

Inventory Adjustment Journal - Quick Attachments also attach to the WorkOrder per detail line; same approach as is done for Job.

Purchase Order - Quick Attachments also attach to Job & WorkOrders referenced on PO Details lines.  Previously, only the header Job/Work Order were use.  

1.10.3 Start Document Archive Maintenance

When Force Archive and Convert to PDF are both flagged, the archived .dbr file is now converted to a PDF. In previous releases, the file extension was changed but the file remained in .dbr format.

The DBR to PDF function uses the report's internal bitmap path to set the pdf graphics if available.

Converted DBRs:
This function now puts convertedDBRs in the root of the document\archive\convertedDBRs with subfoldering (YYYY-MM) if UseSubdirectories is enabled in the sys-document-archives registry.

New Field: Days Past to Check PDF Archives
This field controls a new phase which has been added to this function to look for documents which failed to be converted from XML to PDF's; if any are found, the system will convert them to PDF's.  

When this function is run, the system subtracts the NumberOfPastDaysToCheckPDFArchives in the registry from today's date to check all documents created after that date; if the archive file is a PDF file then it checks if it exists. If it doesn't then it checks if there is an XML document for that archive, and if there is it converts it to the PDF Archive.

By default, this field is set to 7: documents created within the last 7 days will be checked to see if  they need to be converted to PDF's.  If this field is set to 0, no Documents will be checked to set if they are XML files which need to be converted to PDF.  The following registry allows the default value of the Days Past to Check PDF Archives field to be adjusted.

Registry Entry to Provide Default Days Past to Check PDF Archives

Id: sys-start-sdcmntarchvemntnnce

Setting Key: NumberOfPastDaysToCheckPDFArchives   Setting Value: numberofdays (default is 7)

This registry entry provides the default value for this field for the manual Start Document Archive Maintenance function and the Start Document Archive Maintenance (Automated) function.

1.10.4 Document Viewer

This release corrects a 'Runtime Error: “isOkToRecord” not understood ' and the '"Archive File Location Does Not Exist" error' experienced by some users.

This release corrects a sporadic 'Runtime error: index: 1 is outside of collection bounds' which showed up in Windows 10 (fresh install) when trying to show an image in a Document record.

This release corrects a display issue with double-keyed records (e.g., Site Equipment) so that the Reference Name always defaults from the specified record.

Validation now requires that the Document File Location actually exists (in Add mode).  In Change mode, the system checks that either the Document File Location or the Archive Location exists.

This release disables the requirement that Java is installed when viewing a PDF from SAMPro.

This release resolves file sharing error encountered by users when attempting to Save an existing Document record while the archives document file is displayed. In this release, the user is warned that the Archive File (filename) is in use. Closing the file will allow the Save to be completed.

This release also improves the management of data entry on the References child tab.

1. Previously, entering a Reference Id before specifying a table resulted in a 'Key is Missing' error. In this release, the user is warned that a Valid Table Name must be entered.

2. Validation of Table Names is no longer case-sensitive: entering 'Job' or  'job' is acceptable.

3. In this release, if the Table Name is changed, the Reference Id is cleared.

1.10.4a  File Location Supports Web Addresses

Some users employ the Document Viewer to store web addresses instead of actual files. The File Location validation applied in earlier releases case caused this functionality to fail. In this release, the system ignores the location validation if the Location field begins with 'http://', 'https://' or "www.'.

If a web address is stored in the File Location field, clicking the View Document button launches a web browser pointing to the web address.

1.10.5 Enhanced DocumentReferences Registry

The DocumentReferences key allows the user to specify other tables for attachment during archiving button. In previous releases, the DocumentReferences registry was only supported for fields located in the parent record when attaching via the Attach button (paperclip) and Scan button. This registry option now also supports the attachment of records referenced in child records (for example, the Job and Work Orders referenced in the Inventory Adjustment Journal).  

1.10.6 Document Management - Journal Viewers

This release refines the code used by Journals so that only documents attached to the selected journal entry and it's 'tack' versions (e.g., 1549, 1549-01, 1549-02 etc.) will be displayed. It corrects a problem in previous releases where too many documents might be displayed in the list of attachments for a journal entry.  For example, if a user was in PO 1549 (note this is a 4 digit ID) the attachment list would also find 5 digit PO's (with the first 4 digits 1549) in an attempt to locate any possible documents attached to the base journal plus it's edited (tack) Id's.

1.11 Scheduled Report Processing

When emailing section key scheduled reports, the system now correctly saves them to the XmlToPdf folders within the dbreportfiles' registry path. Previously, they were saved to the root SAMPro directory.

1.12 Intercompany Processing

1.12.1 Posting to Job History

Corrects setting of Security in Job Cost History when Intercompany is enabled and posting is generated from the Labor Journal, Work Order, PR Journal  and PR Checks.

1.13 Book

1.13.1 Main Tab

Changed Field - Book Id:
The following characters are not allowed in Windows' folder names: \ / : * ? “ < > |. The system now denies these restricted characters when entering the Book Id so that SAMPro will be able to successfully create the Folder for the Book using the Book Id.

1.14 Windows Date Localization

This version provides additional support of Windows localization settings YYYY-MM-DD or = 'DD-MM-YYYY' for Canadian users. This version also works for dates formatted like "12\1\2014" or "12/01/2014".

1.15  Use Outlook Enhancements / Revised xmlToPdf.jar

When UseOutlook is enabled in the sys-email registry, this release handles setting the 'To' field for multiple addresses. For example, when emailing from the Collection viewer, the Client's Collections Email containing 0, 1 or 2 addresses (delimited with a comma or a semi-colon) will be inserted in the Outlook form's Email To field.

This release also supports setting Outlook's email 'To' field as well as defaulting pdf'd attachments The revised xmlToPdf.jar file (dated 2017/12/29 or later) is also required.

1.15.1 Default and Java 8 XmlToPdf.jar Files

The default XmlToPdf.jar file included in this release will support both Java 7 and 8; it is dated 2017-12-29. It supports the revised W-2 reporting format and corrects a file 'cannot find this file' error when running with UseOutlook enabled.

Enhanced Java 8 Functionality: The newest XmlToPdf.jar file (included as XmlToPdf [2018-06-29].jar) requires Java 8. Java 8 must be installed on ALL machines that will do emailing, including one that runs scheduled events.  This file supports enhanced error handling to give a number of different status codes based on where the error was encountered and what type of error it was. It logs the error to a new XmlToPdf.log file in the root SAMPro directory. To use this functionality:

Change the name of the default XmlToPdf.jar file to XmlToPdfOUT.jar and then

Copy the XmlToPdf [2018-06-29].jar and change the name of the copy to XmlToPdf.jar

1.16 Desktop Setup

The Users & Functions viewer also includes entries on the Additional Groups tab in the User record when generating the Desktop selection list.

1.17 Positive Pay

1.17.1 Positive Pay (Dollar Bank)

This release supports Positive Pay for Dollar Bank. If your checks are run against multiple GL Account/Entity combinations, a registry entry should be created for each one for which positive pay reporting is desired. The following registry settings are required:

Id: sys-positive-pay

Setting Key: Format  Setting Value: DollarBank

Setting Key: AccountNo  Setting Value: as provided by the bank

The filename registry is optional, If you do not use this option, the system will prompt you to select a name and directory for this file. Typically, this option would be used if multiple branches run this report. Typically, the extension is set to txt. The file will be created in the working directory where the SAM Pro executable v.exe is running.

Setting Key: filename Setting Value: yourfilename^date^^time^.txt

1.17.2 Positive Pay (Anchor Bank)

This release supports Positive Pay for Anchor Bank. If your checks are run against multiple GL Account/Entity combinations, a registry entry should be created for each one for which positive pay reporting is desired. The following registry settings are required:

Id: sys-positive-pay  

Setting Key: Format  Setting Value: AnchorBank

Setting Key: AccountNo  Setting Value: as provided by the bank

The filename registry is optional, If you do not use this option, the system will prompt you to select a name and directory for this file. Typically, this option would be used if multiple branches run this report. Typically, the extension is set to txt. The file will be created in the working directory where the SAM Pro executable v.exe is running.

Setting Key: filename Setting Value: yourfilename^date^^time^.ext

1.17.3 Positive Pay (BoA)

This release supports Bank Of America Positive Pay Reporting w/ Payee Information. This functionality is enabled via the following registry:

Id: sys-positive-pay

Setting Key: Format  Setting Value: BankOfAmericaPayee

The AccountNo and BatchId registry options are also required when this Format is specified.

1.17.4 Positive Pay Reporting for RBC

This release adds Positive Pay reporting for RBC (Royal Bank of Canada). The Check Reference Name is included in the Positive Pay file. The following registry entries are required:

Id:   sys-positive-pay-glaccount-glentity

If more than one report will be produced, the Id must include the GL Account (and, optionally, the GL Entity combination) this file will be created for. Note that even if you do not specify an entity, a dash must follow the GL Account Id.

Setting Key: Format  Setting Value: RBC

This registry is required for RBC positive pay. The following additional registry options are required for positive pay reporting with Royal Bank of Canada.

Setting Key: RID Setting Value: TransitBatchNo

Enter the Transit/Batch Numbers as specified by your bank. This field defines the Transit/Batch Number (Referenced in Batch Header Record, Transaction Record, Batch Trailer Record).

Setting Key: BatchId Setting Value: ClientNumber

Your Client Number as specified by RBC (Referenced in File Header Record).

Setting Key: AccountNo  Setting Value: AccountNumber

Where AccountNumber is replaced by the number of the bank account at your financial institution. This field is referenced in the Batch Header Record, Transaction Record and Batch Trailer Record.

Setting Key: TestFileHeader Setting Value: StringForTestHeader

Enter the StringForTestHeader exactly as specified by RBC in the Setting Value. The system will use the TestFileHeader if the Test box on Report Positive Pay is checked.

Setting Key:  ProdFileHeader Setting Value: StringForProdHeader

Enter the StringForProdHeader exactly as specified by RBC in the Setting Value. The system will use the ProdFileHeader setting if the Test box on Report Positive Pay is clear.

1.18 Start Field Label Remapping

In previous releases, a customization was required to change a label not directly associated with a field. An example is on the Site's parent Contact tab: the Site Contact 1: label over the contact information block. In this release, access to these labels has been added to the Start Field Label Remapping function.

When this function run, it will create or update a dictionary file called 'LabelRemap' that contains the field label replacements that you specify. This file should live in the same directory as the Data-Basics executable, v.exe. 'LabelRemap' is loaded on startup of the Data-Basics software. This file should only be edited by running the Start Field Label Remapping function, and should be backed up on a regular basis.

Example: Customizing the Site Contact 1: label

1. Run 'Start Field Label Remapping', the system will display an Open File dialog box, which should already should point to the LabelRemap file in the directory containing the SAMPro executable. Select Open.

2. The Initial Screen will display a Field Label filter which enables you to filter down which labels will be presented for possible renaming. For example, if you wanted to relabel the Site Contact 1: you could enter Site Contact 1: in the Field Label and then click Go.

3. A List will appear:

Field Label:
This display-only field lists the standard field label used within the software.

Field Label Replacement:
If this field is blank, the standard label (displayed on the left) will be used by the system. To replace the standard label, simply enter it as you want it displayed on the screen. To avoid screen layout difficulties, the length of the replacement label should not greatly exceed that of the standard label.

4. Click Go to complete the function and save the edited dictionary back to disk. Reopen the Site view to see the changes to the label.

Tip:
To undo a label remapping to use the default label, simply clear the remapping field, and the system will start using the original.

1.19 Record Cloning

When the auto-sequencing of Id's is in effect for a record, it is impossible to 'clone' a record by changing its Id and then tabbing out of the field since entering a non-existent Id is prohibited. This prevented users from 'cloning' an Employee record when auto-sequencing is turned on.

In this release, a new option, Clone, has been added to the Record menu of most records in SAMPro. When the Clone option is selected for an eligible record, its Id will be cleared, and the Add button enabled.  In the case of the Employee record, all fields on the Main, Direct Deposit and Events tabs will also be cleared. When the user has finished editing the record, it can be Added as usual.

Cloning validation requires that the record being cloned does not have any unsaved changes. The Record > Cloning functionality is specifically denied for the following records:

Journals
Check
Client Order - Client Order Pick List - Client Order to Ship
Invoice Master
Project Manager Workbench
Job Progress
Physical Count
Purchase Order
Quote - Quote Manager - Quote Scope
Shop Order - Shop Order Pick List
Vendor Invoice
Web Log

1.20 External Applications

By default, SAMPro now consults the Windows registry for the correct program to use when opening application files. However if the sys-openapp-commmands exists it overrides the Windows registry.   

1.21 Canadian Installations

Vendor Record: A new standard label, 1099 Required: has been added to the left of the 1099-MISC? check box in the CA customization, and CA-based customizations. Because a standard label is in place, the Custom Fields functionality may now be used to relabel 1099 Required: to an appropriate value for Canadian companies. A new customization is required to see the change. Note that the 1099-MISC? text to the right of the check box cannot be changed in the current framework.

1.22 View User Group Enhancements

View User Groups has been enhanced to simplify the process of enabling access to SAMPro functions, reports and analytics as an alternative to the older View User Group and Functions which listed all functions, reports on the same child tab. Tabs have been added for Viewers, Reports, Processes (Starter functions) and Analytics. This will make it easier to locate items to enable/disable.

This release corrects a problem where 'cloning' a User Group (by changing the Id and tabbing out of the field) cleared all checked viewers, processes, report, analytics. In this release, the settings in the original User Group record are retained in the newly created one.

New Tabs

Viewers Tab

Function Name:
The name of the viewer; this display-only field is maintained by the system.

Access?
If this field is checked, members of this group will have access to this function and can view all the information available on the record.  If this box is blank, members of this group will not have access to the records in the function.  However, users will be granted access to the LIST views. 

Add
If the Access and the Add boxes are checked, members of this user group will be able to add these records.

Change
If the Access and the Change boxes are checked, members of this user group will be able to change these records.

Delete
If the Access and the Delete boxes are checked, members of this user group will be able to delete these records providing a) the record has no associated references and b) programming logic does not disallow it.  

Export
To disable printing and saving of a viewer list (as a report or csv file), clear the Export box. The csv and table report buttons will be grayed out in a record viewer it the Export box has been cleared.

Reports Tab:

This tab allows reports to be enabled / disabled for this User Group.

ALL:
If this field is set to Yes, members of this user group will be able to run this report. Clicking a line toggles the setting between Yes and No.  The Check All button sets all Report lines to Yes; the Clear All button sets all Report lines to No.

Function Name:  Function Id:
The Name and Id of the SAMPro Report, or the Function associated with the User Defined report.

Type:  
This tab lists both system reports (Type SAMPro Report) and the user-defined functions associated with reports that are imported into your database (Type UDR Class: User Report).  

Processes Tab:

This tab allows processes (e.g., SAMPro Starter functions)  to be enabled / disabled for this User Group.

Allow Access:
If this field is set to Yes, members of this user group will be able to run this function. Clicking a line toggles the setting between Yes and No.  The Check All button sets all Process lines to Yes; the Clear All button sets all Process lines to No.

Function Name: Function Id:
The Name and Id of the Function.

 

Analytics Tab:

This tab allows Analytics (KPI's) to be enabled / disabled for this User Group.

Allow Access:
This field is set to Yes, members of this user group will be able to run this Analytic. Clicking a line toggles the setting between Yes and No.  The Check All button sets all Analytic lines to Yes; the Clear All button sets all Analytic lines to No.

KPI Category: KPI Name:  KPI Type: Description:
Displays information about the KPI.

Function Type:  Function Id:
The Type and Id of the User-Defined Function associated with the Analytic (KPI).

1.23 Saved Range Processing (Viewers and Reports)

In previous releases, a custom range filter could be deleted by double-clicking on it in the Filter Ranges pane. The system then displayed a confirmation box; clicking Yes or pressing Enter removed the range. This resulted in users accidentally removing ranges unintentionally.

In this release, when the user right-clicks a saved Range, they will be prompted to Delete or Clone the Range for use by another User.  

If Delete is selected, the range will be deleted if allowed: users may delete their own ranges. Notes Administrators may also delete Global ranges created by other Users.

If Clone is selected, the User Id field must be completed with the User the range should be given to (if the User already has a range of this name, a warning will be displayed). This User will 'own' their copy of the Range and may deleted if desired.

1.24 Login

1.24.1 Sybase 11

This release corrects login issues experienced by Sybase 11 users.

1.24.2 SQL 2008

Corrects a 'failed to set read permissions for user' error logging in with an SQL 2008 database.

1.24.3 Switch Security Identity:

Switching Security from the File>Switch Security Id menu no longer terminates the User's Web sessions.

1.25 Start Dashboard Post

This new function may be run as a Scheduled Event as an alternative to running Start Dashboard Event Manager as a service. Contact your support representative for details.

1.26  MS SQL Server Conversion: Nonclustered to Clustered Primary Keys

During our work to improved SAMPro database indexes, we have found that by changing the main primary key index (RN column) from a NONCLUSTERED to a CLUSTERED index, it boosts the overall performance of the SAMPro database. This change has been implemented as part of the SAMPro upgrade.

Normally SAMPro looks to see which tables need to be changed for the upgrade, and then processes just those tables. With this release, it will also check to see which indexes need to be switched to clustered. Since all tables with need their primary index to be changed to clustered, ALL tables must be updated, resulting in a longer conversion time.  After database has been upgraded with this code, it should never need to be ran again, so subsequent upgrades will go back to “normal”. The end result is that every table will have a clustered primary key index.

1.26.1 To Reclaim Space After an Upgrade

After an upgrade, support will be able to shrink the database to reclaim the extra disk space left after this work. Otherwise the database container will remain the same size until the data fills back up to that level. In some cases, we are seeing 20-30GB of reclaimed space which would take a long time to get back to that level.

12.26.2 Upgrade Processing - Additional Pre-Conversion Checks for SQL Server

For SQL Service database users, SAMPro will check for database table change rights and uncommitted transactions to ensure a successful database conversion.

1.27 Event  Managers

The Dashboard, Point Of Sale, Reports, Scheduled Events and TechAnywhere Events Managers better handle recurring events that have been interrupted and need re-scheduled.

1.28 Licensing

This release closes a loophole which allowed more Full User and TechAnywhere (Technician) records to be created than allowed by the Data-Basics license. If the maximum has been exceeded, the User/Technician records cannot be edited except to disable them. If this occurs:

User Record: Flag the Disabled flag on any Full User record not in service.

Technician Record: Active Techs not currently using TechAnywhere should have the Remote Device Type set to None so they will not be included in the TechAnywhere license count. These Technicians will not have access to TechAnywhere.

 

If additional Full User and/or Technician licenses are still required after disabling unused records, contact your SAMPro account manager.

1.29 CrystalViewer Web 4.0

This program written by Data-Basics Inc. allows SAMPro users to view Crystal Reports on their workstations. This program is only for viewing existing Crystal Reports and not for any type of report development. See the CrystalViewerWeb 4.0 SAMPro.pdf file (available from Support) for installation details.

1.30 PDFJoiner.jar Enhancements

The revised PDFJoiner.jar file dated 2018-03-14 now supports joining secured pdf's, such as invoices received from Vendors. When the Make PDF button is clicked (or other functionality involving a PDF merge is invoked), pdf's that do not require a password to open will be merged. PDF's that do require a password to open will be skipped.  

2 Client, Site and Equipment

 

2.1 Registry Entries

 

2.2. Reports

2.3 Client Site Equipment

2.3.1 Service Tab

New Field - Bar Code
This field may be used to specify a unique barcode value for this piece of equipment. It will be used with TechAnywhere for easier lookup of the Equipment record via barcode scanning.

2.3.2 Client Site Equipment Components Tab

The unused Substitute Part # field has been removed from this tab.

2.3.3 Client Site Equipment RefTracking Tab

Clicking the RefTracking tab displays the Refrigerant Tracking history for this Equipment.

2.3.4 Client Site Equipment List

New Sort Order: ClientSiteEquipmentByIdByBarcode

2.3.5 Client Site Equipment Range Screen

New Field Range: Bar Code

2.3,6 Main Tab

The Equipment Type Id is no longer cleared when the PCR Table Id is updated. This corrects a problem in TechAnywhere and in manual changes to the Site Equipment record.

2.4 Client

The following phone extension fields were expanded to 7 digits:

Client Contact Extension
Client AP Contact Extension

2.4.1 Client Collections Viewer

When this new button is clicked, a customer statement report will be launched with the Client Id completed. By default, Report Customer Statements (RCUSTSTMNT) will be launched, but the following registry option allows a different report to be launched instead.

Id: sys-viewer-vclnt

Setting Key: StatementReportId   Setting Value: report function id

2.5 Client Site

2.5.1 Contacts Tab

The following phone extension fields have been expanded to 7 digits in this release:

Site Contact 1 Extension
Site Contact 2 Extension

2.5.2 Main Tab

 New Button: Map It

If the Latitude and Longitude fields are completed, clicking this button launches GoogleMaps with the coordinates completed.

2.5.3 Client Site List

The new Sort Order ClientSitesByIdByRn lets the user sort by the Client Site Rn column. This allows the list to be sorted by the newest/oldest record added.  

2.6 Start Merge Client Site

Purpose:

This function may be used to merge jobs and equipment associated with one Site to another Site.  This would typically be done if a new Site was created in error when it already existed in the database.

Access to this function should be limited to supervisory personnel.

Important: Entries on the Site's PM Billing tab will also be merged.  Caution should be observed if both Sites reference manual PM Billing or Master Contract records.

Usage:

The Client specified on the Merge From and Merge To Site's COP Tabs must match; an error will be displayed if this is not the case.

The Equipment Id's on the Merge From and Merge To Sites must not include any duplicates. You must edit the Equipment Ids so they are unique before you can merge the Sites.

When this function is run, Site Id references to the Merge From Client Site will be changed to the Merge To Client Site in the Client Order, Work Order, Equipment, Opportunity, Web Log, Job and Master Contract records.

Once the function has been run successfully, the Merge From Site will be deleted.

Important Fields:

Merge From Site:
This is the Site that you want to merge from; all Equipment, Client Orders, Jobs, Opportunities, Web Logs, Master Contracts and Quotes which previously pointed to this Site will be updated to point to the Merge To Site. The Merge From Site will be deleted when this function is completed.

Merge To Site:
This is the Site you want to merge to and retain.

Important Buttons:

Click the Go button to run this function.

3 Accounts Payable

3.1 Accounts Payable Registries

3.1.1 Canadian AFT AP

Now supports TD Bank in addition to RBC.  The Format option should be set to blank so that zeros are written to detail records positions 254-264:  

Id: sys-aftap-
Setting Key: Format   Setting Value:  

3.1.1a Canadian AFT Processing (TD Bank EFT 80 Byte File Format)

Id: sys-aftAP-

  Setting Key: Format    Setting Value: TD80

See Help for additional required fields AFT processing. Make sure that the edOriginatorName field is a max of 15 characters.

3.1.1b Canadian AFT Processing (AP Link Reporting for RBC)

This release supports AFT/AP Link Reporting For RBC (Royal Bank of Canada).

Registry to Enable:

Id: sys-aftap-glbankaccountid-

Setting Key: Format    Setting Value: RBCAPLink

Setting Key: eol Setting Value: crlf

Note: See Help for Registry AFT AP (Canadian) for additional required entries.

3.1.2 Report AP Check

In this release, the AP registry format sys-report-rapchck-GLACCOUNTID-GLENTITY also picks up the bitmap options. Previously, only the MICR options were supported.

3.1.2a Registry to Protect Dollar Amount in Canadian AP Checks

By default, Canadian AP checks are set up to show the check amounts as unprotected (no asterisks preceding the dollar amount). The following registry may be enabled to protect the amount with leading asterisks on both the stub and actual check.  This registry entry will only affect Canadian AP checks.

Id: sys-report-rapchck

Setting Key: ShowCACheckAmountProtected  Setting Value: true

Important: The registry setting PrintDollarSign should be disabled if the registry setting ShowCACheckAmountProtected is invoked

3.1.3 Registry To Skip Report Attachment in Start Create EOM Unvouchered AP GL Entries

This release includes performance enhancements to the generation of the View Summary and View Detail report when this function is run. However, if performance is still an issue, the following registry allows the generation / attachment of one or both of these reports to be skipped when the function is run.

Registry Id: sys-start-seomunvchrdap

Setting Key: AttachSummaryDocument   Setting Value: false  (default is true)

Setting Key: AttachDetailDocument   Setting Value:  false   (default is true)

3.1.4 Registry To Include Only Open POs in Start Create EOM Unvouchered AP GL Entries

A new registry setting is available for defaulting the Date Closed range field to the appropriate 'sql=' string so that only open PO's will be considered.

Id: sys-start-seomunvchrdap

Setting Key: OpenPOsOnly   Setting Value: true

For example, if this registry is enabled, the following sql statement will generated in the Closed range when the User selects the October 31, 2016 accounting period:

sql=(prchseordr_dte_clsd = '1900-01-01' or prchseordr_dte_clsd > '2016-10-31')

3.1.5 Start Create EOM Unvouchered AP GL Entries

When IntercompanyEnabled global registry is set to true, then Balance Sheet GL Entities are universally required. Previously, Start Create EOM Unvouchered AP GL Entries required the following registry to determine a "credit-side" GL Entity. In this release, Credit Side Entities will be specified if EITHER of the following registries is enabled:

Id: sys-start-seomunvchrdap

Setting Key: CreditsByEntity  Setting Value: true

-or-

Id: sys-ffv-global-settings  

Setting Key: IntercompanyEnabled  Setting Value: true

3.1.6 Registry to Sort AP Vendor Date-to-Pay List

A new registry entry has been added which can be used to control the sort order for the function. For example, this can be used to sort invoices by due date rather than invoice number.

Id: sys-viewer-sapdtetopylst

Setting Key:  OrderBy  Setting Value: field1,field2,...

Any columns in the Vendor or Vendor Invoice tables should be eligible to be included in the  registry entry.  (NOTE: default Order By is vndr_alpha, vndr_id, vndrinvce_invce_nmbr)

Example: Sort checklist by Vendor Alpha, Id and Vendor Invoice Payment Date

Id: sys-viewer-sapdtetopylst

Setting Key:  OrderBy  Setting Value: vndr_alpha,vndr_id,vndrinvce_nxt_pymnt_dte

3.1.7 Registry to Display Error or Warning if AP Journal Effective Date Precedes Last PO Receipt

This registry may be enabled to prevent or warn the user if the PO's Voucher Effective dates would precede the PO Receipt date. This registry impact AP Journal entries for Purchase Orders with Inventory or General lines.  Credit PO's and dollar-based PO's (with detail added on the Subcontractor tab) are not impacted.

Id: sys-viewer-vapjrnl

Setting Key:  EvaluatePOReceiptDates   Setting Value: warning or error

If this registry is not present, the user will not be notified if the Last PO Receipt Date precedes the AP Journal's Effective Date.

If a Setting Value of warning is specified, the user will be Warned on adding/saving the entry if the AP Journal's Effective Date precedes the Last PO Receipt date. If the entry is in Add mode, the user will be given the opportunity to change the Effective Date before adding the entry:

WARNING: Effective Date should not precede PO Last Receipt Date
Select YES to use the date or
Select No to correct the date before saving.

If a Setting Value of error is specified, the user will be not be allowed to add the entry until the Effective Date is corrected. If the entry was previously saved, the user will be allowed to edit it as long as the Effective Date is not changed to a value preceding the Last PO Receipt.

Note: AP Journal's Last PO Receipt Date
This display field displays the most recent receipt date of the selected PO.

If the AP Journal is in Add mode and the User has selected from a list of IRJ transactions, this field displays the IRJ's Date Received. NOTE: this refinement ONLY applies during ADD mode because the selected IRJ is not saved with the APJ entry. For edits of existing transactions, the overall last Date Received of all Inventory Receipts will be used.

If items were received on the PO itself, the PO's Release Date will be displayed.

3.1.7a AP Journal Registry to Use Default Service Job in the Equipment record for all but PM WO’s

Registry Id: sys-viewer-vapjrnl

Setting Key: DefaultJobByEquipmentId Setting Value: true

By default, the system uses the Job in the Work Order header as the default job for entering WO-related detail in the AP Journal. This release supports the above registry setting to alter this behavior. If this registry entry is enabled (and the referenced WO is NOT preventative maintenance), the system will check to see if there is a default service job in the Equipment header. If so, the Job, Cost Code and Billing item to the from the Equipment will be defaulted instead of from the WO header. If the job info is blank in the equipment record, the system uses the job info in the work order header.

For Preventive Maintenance Work Orders, Job information defaults from the WO header, regardless of whether or not this registry entry is enabled.

3.2 Accounts Payable Reports

3.2.1 Report AP Check

This release locks out AP Check generation when the Vendor Invoice is "in use" by the AP Date To Pay Function to prevent inadvertent double payments by resetting the Next Net and Net Gross Pay Amounts.

This release corrects sporadic locking issues when various users attempted to print AP Checks for different securities at the same time.

The system now prevents the user from running the check report if the Checklist screen is open but the Check Report screen has been closed.  

EFT/AFT check images now indicate 'Direct Deposit Advice' and 'Void' like they do for Payroll EFT's.

3.2.2 Canadian T5018 Forms

This release includes changes to support the two vendor per page format (previously was three vendors per page). This system report is part of the software and does not need to be imported into your database.

3.2.3  Report AP Check Reconciliation (RCKRECN-AP)

This new report, dated 2015-08-19, excludes PR checks. Only AP and PRMD checks will be listed.

3.2.4 AP Sales Tax Summary by State by Group

A new option, Show Authority Names, has been added to the revised version of the RAPSLSTXSMMRY-TXHSTRY.rpt dated 2016-02-16. When this option is enabled, the Authority Name will be printed below each detail line.

New Ranges allow filtering by the Sales Tax Group's City and County. In addition, the Sales Tax Group name will be listed to the right of the Sales Tax Group Id.

3.2.4 Report Unvouchered AP Summary (RUNVCHRDAP3)

Report revised 2016-06-15 adds ending date header and corrections to page header.

3.2.5 Report Vendor Payment History

The Report Vendor Payment History (VNDRPYMNTS.rpt) dated 2017-01-26 was revised to display the 1099 Category of each Vendor.  You may also filter on the 1099 Category in this report. This report is designed to help with the completion of the Vendor 1096 report.

3.2.6 Report EFT Accounts Payable

This release corrects the landscape formatting of the printed Electronic Payment Register report generated when Report EFT Accounts Payable is run to produce the electronic file for direct deposit.

3.2.7 Report AFT Accounts Payable

This release corrects the landscape formatting of the printed Electronic Payment Register report generated when Report AFT Accounts Payable is run to produce the electronic file for direct deposit.

3.2.8 Report AP Canadian Electronic T5018s

This new function creates the files that is used to submit the T5018s electronically to the CRA (Canadian Revenue Agency).

Important Vendor Record Notes:
The following fields must be set correctly in order to ensure that the T5018s are generated correctly for your individual and corporate Vendors.

Vendor T5018 Tab (may be labeled 1099)

Federal Tax Id:
If this field is set to 9 digits (the Vendor's SIN) the Vendor will be handled as an individual for the report.  If this field is 10 digits or more, the Vendor will be handled as a corporation for the report.

T5018 Name(s) (may be labeled 1099 Name(s))
For Vendors who are individuals, the first Name field should be the last name. The second Name field should be the individual's first name.

For Vendors who are corporations, the first Name field should be the legal corporation name. The Name field should be the corporation's DBA name.

Report Range Screen:

Start Date: End Date:
Defines the range of the effective (check) dates of payments to include on this report.

T5018 Limit:
Enter a dollar value to limit the T5018’s to only those Vendors you have paid at least in the time period specified by  the Start and End Dates.

Report Type Code:
Enter O for Original or A for Amended.

Submission Reference Id:
This field is user-defined.  For example, the submission date may be specified.

When you click Go, the system will display an Audit Report which may be printed for review. Leave the report viewer open.

 If all is in order, click the Save button.  When you do so, the electronic file to be submitted, T5018E.xml, will be written to the directory defined by the dbreportfiles registry's directory option.

Required Registry:

Registry Id: sys-report-rT5018E  

Registry Name: Report AP Canadian Electronic T5018s

The following settings define the contact information to be included in the electronic file.

Setting Key: T5018AreaCode  Setting Value: 3 digit code

Setting Key: T5018Telephone  Setting Value: nnn-nnnn

Setting Key: T5018Extension  Setting Value: up to 5 digit extension

The Extension registry may be omitted if it is not needed.

Setting Key: T5018ContactEmail   Setting Value: valid email address

Setting Key: T5018ContactPerson  Setting Value: Firstname Lastname

The following settings specify your company information which will be included in the electronic file.

Setting Key: T5018PayerAddress1 Setting Value: street address

Setting Key: T5018PayerAddress2  Setting Value: suite number

The Address2 setting may be omitted if it is not needed.

Setting Key: T5018PayerCity  Setting Value: city

Setting Key: T5018PayerPostalCode  Setting Value: postal code

Setting Key: T5018PayerProvince   Setting Value: 2 character province code

Setting Key: T5018TransmitterNumber  Setting Value: as specified by the CRA

3.2.8 Report AP Check Register

The revised report (RAPCHEKv72b001.rpt) dated 2017-08-15 includes a new range filter, Check Number, to allow the user to print the register for a specific check or range of check/eft numbers.

3.2.9 Report AP 1099 (also titled Report Vendor 1099's)

The revised Report AP 1099 (rap1099.rpt) dated 2018-01-09 supports a new registry entry which will set the State EIN. Note that this report may also be titled Report Vendor 1099's.

Id: sys-report-rap1099

Setting Key: EINState   Setting Value: company's state ein

3.2.10 Report AP 1099 Electronic Files

This new report function creates the files that is used to submit 1099 files electronically. The report RAP1099EF.rpt must be imported into your data and assigned to the appropriate User Groups and the required registry entries (listed below) implemented.

Usage / Setup:

The following potential issues existing when running  the electronic 1099’s:

There is currently no way to process multiple Payer Type ‘A’ records

There is a TIN type field in the Payee Type ‘B’ records which should be set to ‘1’ for an EIN number and ‘2’ for a SSN. This is currently handled by checking the Federal Tax Id field on Vendor's 1099 tab.  If the Id has a dash in the 3rd position it is processed as an EIN; otherwise it is considered to be an SSN.

Report Range Screen:

1099 Year:
Defines the year of the effective (check) dates of payments to include on this report.

Prior Year:
Check this box if this report is for the Prior Year.   

Test File:
Check this box if this is a Test file.  

1099 Limit:
Enter a dollar value to limit the 1099’s to only those Vendors you have paid at least in the time period specified by 1099 Year. This field is also used for prior year reporting.

When you click Go, the system will display a raw dump of the report  Leave the report viewer open.

 If all is in order, click the Save button and save the report as a Text file. When you do so, the electronic file to be submitted will be written to the directory defined by the dbreportfiles registry's directory option.

Required Registries:

Registry Id: sys-report-rap1099ef

Name: Report AP 1099 Electronic File

Setting Key: TextFileFixedWidth  Setting Value: 750

This registry defines the width of the output file. It is required.

Registry Id: sys-1099-ef

Name: 1099 Electronic Filing

  The following settings define the contact information to be included in the electronic file.

Setting Key: TransmitterName   Setting Value:  Firstname Lastname

Setting Key: CompanyName  Setting Value:  Your Company's Name

Setting Key: CompanyAddress   Setting Value:  Street Address

Setting Key: CompanyCity  Setting Value:  City

Setting Key: CompanyState  Setting Value: 2 Character State

Setting Key: CompanyZip  Setting Value:  5 digit zip

Setting Key: CompanyPhone  Setting Value:  10 numeric digits, no spaces

Setting Key: ContactName  Setting Value:  Firstname Lastname

Setting Key: ContactPhone  Setting Value: 10 numeric digits, no spaces

Setting Key: ContactEmail  Setting Value: Contact's Email

The following entries specify the software vendor generating the electronic file and should be entered as shown below:

Setting Key: VendorName  Setting Value:  Data-Basics Inc

Setting Key: VendorAddress  Setting Value: 600 Broadway Avenue

Setting Key: VendorCity  Setting Value: Bedford

Setting Key: VendorState  Setting Value: OH

Setting Key: VendorZip  Setting Value: 44146

Setting Key: VendorContactName   Setting Value: Support

Setting Key: VendorContactPhone  Setting Value:  2166635600

The following IRS codes are also required:

Setting Key: TCC  Setting Value: Transmitter Control Code Assigned by IRS

Setting Key:  AmountCodes  Setting Value: 12345678ABCDE

Enter the Setting Value for the AmountCodes exactly as shown above.  

3.2.11 New Report: Report AP Vendor Payment History

The new Report AP Vendor Payment history (RVNDRPYMNTHSTRY.rpt dated 2/15/2018) will show the total amount paid by select vendors based on a beginning and ending date range that is specified by the user when running the report. These two dates correlate with the AP history effective date. The report detail includes the vendor ID, vendor name, city, state, and total amount paid to that vendor.

3.2.12 Expired Insurance Certificate Notice Report

The Expired Insurance Notice Report (REXPIRDINSRNCE.rpt) dated 2018-05-08 has been updated to provide for bitmap placement (by specifying the new Lines adjustment field on the report range) as well as cosmetic work on the font and alignment. This report also has the functionality to automatically email vendors when their insurance on file has expired.  

3.3 AP Journal

Corrects an error -143 from the previous release when a Credit Purchase Order is selected.

Job Cost Categories are not needed if a Job/Work Order is not specified. When loading an APJ entry into the viewer, the Job Cost Category will be cleared if a Job is NOT specified on a detail line.

This release corrects the calculation of Tax Cost on subsequent AP entries where the PO had previously been partially vouchered.

This release closes a loophole which allowed users to voucher Credit PO's multiple times. Detail lines which have previously been vouchered will no longer load from the Credit PO when the user enters the PO ID for a new AP Journal entry.

This release refines the allocation of line item Tax Cost credit amounts to Tax Authorities. A Tax Authority only qualifies for inclusion in the allocation when EITHER of the two conditions noted below is true:

1. The APJ line's Tax Type is Use.

2. The Group Tax Authority line's Job Cost flag is True.

The Show Invoice button is now disabled when the AP Journal is in Add mode.

If any changes have been made to the Vendor Invoice since the AP Journal was last saved, the user will be warned and must refresh the record before continuing.

Corrects row lock issues in recent releases.

This release validates that the Effective Date falls within the specified Accounting Period when deleting an entry.

3.3.1 AP Journal Main Tab

New Field: Last PO Receipt
This display field displays the most recent receipt date of the selected PO.

If the AP Journal is in Add mode and the User has selected from a list of IRJ transactions, this field will be displayed based on the IRJ's Date Received. WARNING: this refinement ONLY applies during ADD mode because the selected IRJ is not saved with the APJ entry. For edits of existing transactions, the overall last Date Received of all Inventory Receipts will be used.

If items were received on the PO itself, the PO's Release Date will be displayed.

See Customer Note 3.1.7 for a registry to display an Error or Warning when selecting a PO whose Last PO Receipt date precedes the AP Journal's Effecting Date.

GL Entity Id:
AP Manual Checks: Bank Account GL Account Id
In this release, postings to the Bank Account ONLY use the GL Entity specified in the AP Journal header when InterCompany is enabled via registry. If Inter-Company is NOT enabled, the GL Entity is not used for Manual Check / EFT / CC posting and Check records.

Changed Button - Add Taxes:
The Add Taxes buttons now splits taxes correctly between the GL Accounts referenced in the Tax Group's Authorities.

New Field - Lien Waiver Req'd?
This display-only field defaults from the Job / Work Order referenced in the PO's header. The user will be warned when creating an AP Journal entry referencing a Job that requires a Lien Waiver.

New Field -  Use Tax Total:
This display-only field provides a running total of the Use Tax Cost entered on the Inventory, General and Subcontractor lines, excluding lines which have been copied for edit.

3.3.2 AP Journal Taxes Tab

The system now uses the Sales Tax Authority's default GL Expense Account (when available) for sales tax paid.

3.3.3 AP Journal General Tab

This release corrects an issue where the Equipment Id was not defaulted. This only occurred if a PO was not specified on the AP entry but a Work Order Id was enters on the General tab.

Reversing General lines are now flagged as No Discount to avoid discount calculation issues when the Date Effective is edited.

In previous releases, if a General line was added for a Job/WO related entry, the Tax Type was not evaluated correctly if the Cost Category defaulted in from an Other Rate.  Defaulting the Cost Category now correctly triggers the field validation so that the Tax Cost and the Tax Type Id are set properly.  

3.3.4  Multiple Inventory Receipt Journal Entry Enhancement  

In previous releases, the AP Journal Viewer always auto-filled its child tabs when a PO number was entered: if there were multiple Inventory Receipts Journal entries for the PO, all were loaded.

In this release, the system checks to see if multiple IRJ entries are present. If so, it displays a list so that the user may choose to load  choose All or a specify IRJ entry. If the user chooses a specific Id, only the quantities received in that entry will be loaded.

If multiple receipts are NOT present or receipts were only made on the PO, the selection box will not be display, and received items will be autoloaded as before.

Previously received IRJ transactions will NOT be removed from the list.  It is hoped that this limitation will be corrected in a future version.  If you select a previously selected receipt, the system will load the quantity specified on that receipt if they have not already been load.  Validation prevents the AP Quantity from exceeding the quantity received in the IRJ or PO.

If items are received on both the PO and the IRJ for the same PO (not recommended!), All must be selected to pull in the stragglers received on the PO.

3.4 Vendor Viewer

3.4.1 Contacts Tab

The following phone extension fields have been expanded to 7 digits in this release:

Vendor Contact 1 Extension
Vendor Contact 2 Extension

3.4.2 Additional Contacts Tab

The following phone extension fields have been expanded to 7 digits in this release:

Vendor Additional Contacts Tab Ext.

3.4.3 Vendor 'No Inventory' implementation

Vendor Viewer Defaults Tab New Field

No Inventory?
If this field is checked, users are prevented from selecting this Vendor for Inventory Parts in the following records:

Purchase Order Inventory Tab
Work Order Required Resources Tab
Quote Inventory Tab
COP Dropship Wizard

This field may not be checked if the Vendor is referenced on any Inventory Item record's Purchasing tab. If the user attempts to do so, an error will be displayed and, a workspace opened listing the Inventory Items referencing the Vendor.

Inventory Item Purchasing Tab

Vendor Id:
The Vendor Id may not be set if the Vendor is flagged as "No Inventory".

3.4.5 Vendor Viewer Defaults Tab

New Field: 1 Invoice Per Check?
If this field is flagged, when AP Checks/EFT's are generated for this Vendor, one Check  will be printed for each Vendor Invoice.

Important Note on Credit Memos:
Vendor credit memos are separate invoices and an AP Check can't be negative.  To process a Credit Memo, temporarily uncheck the I Invoice Per Check field and apply the credit memo to an outstanding invoice or 2, or 3.

3.4.6 Vendor Viewer Open Invoices Tab

AP Retainage is now included in the calculation of the AmountOwed column.

3.5 Start Create EOM Unvouchered AP GL Entries

JCH Cost analysis is only 'necessary' for lines where PO Qty Ordered <> PO Job Quantity Ordered. This function has been enhanced to not care about JCH except when necessary.  This should eliminate the PO-GEN line issue caused by editing WO-Other Descriptions because a PO-GEN line's quantity is either all or nothing to a job.

GEN lines from Credit POs are completely ignored unless the line's Receipted-to-JCH flag is true.

This function now posts the Job reference to GL History for Credit type PO's and the Work Order reference to GL History for all POs.

This release includes performance enhancements to the generation of the View Summary and View Detail report when this function is run. If the registry entry to disable these reports (Customer Release Note 3.1.3) was enabled, you may be able to turn it off in this release.

The Work Order and Job Id's (if available) are now included in the 'View Details' report.

3.6 Start Release Recurring AP Journal

This release includes security and branch override logic so that the AP Journals generated by this function have their Security and or Branch set correctly.  

3.7 Start AP Payment Approved

This function now classifies AP Retainage properly. This corrects an issue where the Vendor Invoice: TotalOwed went negative while the Retainage remained positive.

3.7 Start AP Payment Approved PM

This function now classifies AP Retainage properly. This corrects an issue where the Vendor Invoice: TotalOwed went negative while the Retainage remained positive.

3.8 Start Select Invoices for Payment (Date to Pay)

This release locks out AP Check generation when the Vendor Invoice is "in use" by the AP Date To Pay Function to prevent inadvertent double payments by resetting the Next Net and Net Gross Pay Amounts.

This release implements special handling for 'over paid' invoices so that the overpayment is NOT erroneously defaulted to the Discount and Retainage fields.

The Next Pay Amount field is now completed appropriately when the Next Pay Day is blank (01/01/1900).

4 Purchasing

4.1 Purchasing Registries

4.1.1 Start Generate Recurring PO Shipping Address

This function now support the setting key sqlshipToStockLocation which allows the user to fine-tune the ship-to address on the purchase order.

Registry Id: sys-start-sgnrteprchseordrs

Setting Key: sqlshipToStockLocation   Setting Value: SQL Select List

The SQL Select List defines which fields from the Location will be inserted into the corresponding fields in the Purchase Order Ship To address. The select list MUST include all seven columns necessary to construct the ship-to address as follows:

    1. street address line 1
    2. street address line 2
    3. street address line 3
    4. street address line 4
    5. city
    6. state
    7. zip code

If you will not be using all of the address lines, you may include a blank ‘ ‘ in the select list. Token replacement for ^companyname^ is also supported.  ^companyname^ will be replaced by the contents of the companyname registry when the shipping address is defaulted.

Example:

This example uses the ^companyname^ token replacement to set the first line of the address, and skips the fourth line of the street address by specifying a blank ‘ ‘.

sqlShipToStockLocation='^companyname^', lctn_addrss_shp_addrss_strt, lctn_addrss_shp_addrss_strt_2, ' ', lctn_addrss_shp_addrss_cty, lctn_addrss_shp_addrss_stte, lctn_addrss_shp_addrss_zp

4.1.2 Registry to Default the PO Tax Group from the Job

This release enhances the functionality of the existing DefaultPOTaxGroupFromJob registry option.  Previously, if the registry was in effect, but the Vendor was entered AFTER the Job or Work Order, the Vendor's Tax Group was always overwriting whatever defaulted from the Work Order / Job - even if it was blank in the Vendor.  

In this release, if this registry is enabled, entering the Vendor after the Job/Work Order has been set will only update the PO's Tax Group from the Vendor Record if is was blank in the PO. This ensures that the  Vendor's Tax Group will not override the Job's Tax Group.

This release adds support for the DefaultPOTaxGroupFromJob registry for Purchase Orders created via the Dispatch Board's Create PO button.

Registry Id: sys-viewer-vprchseordrlst  

Setting Key: DefaultPOTaxGroupFromJob  Setting Value: true (default is false)

4.1.3 Enhancement to Global Registry InventoryCostIcludesTax Option

If the InventoryCostIncludesTax is set to true is enabled in the global registry, and appropriate 'job cost' tax authority/tax group is set in the Vendor record, prepaid tax cost is calculated as inventory is added to the PO. In previous releases, if the tax group was NOT specified in the Vendor record, but instead manually specified in the PO before adding inventory lines, the tax cost was not added to the inventory items so that it could be included in the inventoried cost. This release includes the following corrections to this functionality:

Taxes are calculated based on the 'job cost' Tax Group in the PO Header, NOT the Vendor record.

Changing the Tax Group on a PO detail line recomputes the sales tax on that line

In addition, the Inventory Receipts Journal now calculates Sales Tax received based on the PO's Sales Tax Group.

4.1.4 Adjust Date or Accounting Period for Subcontractor POs Generated in New Call

By default, if a Subcontractor PO is auto-generated in New Call, there is no validation as to the Release Date and the Accounting period; today's date and the default Accounting Period are always used on the auto-generated PO unless trumped by the sys-newcall registry option AutoPOPeriodID.

In this release, the following registry entry allows either the Date or Accounting Period to be adjusted to keep them in sync for Purchase Orders generated from New Call only.  If this registry is not enabled, the default Accounting Period and today's date will continue to be used. Note: this setting will also be trumped by the sys-newcall registry option AutoPOPeriodID if enabled.

Id: sys-viewer-vprchseordrlst

When the defaulted Release Date and Accounting Period are NOT out-of-sync, NO adjustments are made to the defaulted values when a PO is generated from New Call.  The rules noted below are used only when an adjustment is necessary.

Setting Key: AdjustDefaultDateOrPeriod   

Setting Value: period
The Accounting Period table is queried for eligible Accounting Periods.  To qualify, the period must be Active and its date range must include the defaulted Release Date.  When multiple periods are eligible, the one with the smallest Period Id is chosen to become the new Accounting Period for the current transaction.  If no eligible period is found, nothing is changed.

Setting Value: date
The Release Date is adjusted to be either the Start Date or the End Date of the defaulted Accounting Period.  The Start Date is chosen when the current date is less than the Start Date.  The End Date is chosen when the current date is greater than the End Date.

4.1.4a Registry to Use Default Service Job in the Equipment record for all but PM WO’s

Registry Id: sys-viewer-vprchseordrlst

Setting Key: DefaultJobByEquipmentId Setting Value: true

Note that this registry is also applied to PO's posted from TechAnywhere.

By default, the system uses the Job in the Work Order header as the default job for entering WO-related detail in the Labor, Purchase Order and AP Journal. This release supports the above registry settings to alter this behavior. If this registry entry is enabled (and the referenced WO is NOT preventative maintenance), the system will check to see if there is a default service job in the equipment header. If so, the Job, Cost Code and Billing item to the from the Equipment will be defaulted instead of from the WO header. If the job info is blank in the equipment record, the system uses the job info in the work order header.

For Preventive Maintenance Work Orders, Job information defaults from the WO header, regardless of whether or not this registry entry is enabled.

Note: a registry option to provide this functionality in the Work Order itself is already supported in sys-viewer-vwrkordr.

Note: registry options to provide this functionality are also available in the Work Order, AP Journal and Labor Journal registries.

4.1.5 Start Create EOM Unvouchered AP GL Entries

When IntercompanyEnabled global registry is set to true, then Balance Sheet GL Entities are universally required. Previously, Start Create EOM Unvouchered AP GL Entries required the following registry to determine a "credit-side" GL Entity. In this release, Credit Side Entities will be specified if EITHER of the following registries is enabled:

Id: sys-start-seomunvchrdap

Setting Key: CreditsByEntity  Setting Value: true

-or-

Id: sys-ffv-global-settings  

Setting Key: IntercompanyEnabled  Setting Value: true

4.2 Purchasing Reports

 

4.3. Purchase Order Viewer

This release eliminates a sporadic “Runtime Error: system primitive failed” experienced when saving a PO when the Unvouchered A/P box is flagged in the Accounting Period and receipts are made directly on the PO.  

When a PO record is loaded or saved, the Job Cost Category will be cleared if a Job is NOT specified on a detail line. This release also tightens Job Cost Category / Job validation.

A new PO may be created by clicking the Create PO button on the Job or Work Order viewer. If the BranchOverrideFrom global option is set to 'job'  the Branch is correctly reset from the Job's Branch when the Vendor is entered.

 Order Id filled in before the Vendor is selected.

Corrects spurious Tab Mismatch errors encountered when a PO is created or edited for a foreign currency Vendor (Currency Id set in Vendor record).  

This release corrects a recent issue where the Add button was enabled when the Vendor was changed on an existing PO.  Also improves the 'blocked purchases' validation.

If a PO is started by clicking New, the Ship To address defaults using the sqlshipToStockLocation registry option. Previously, it was ignored if the Location defaulted as a sticky field.

Corrects a problem generating PO's from Quotes or WO's when the user switches security.

Corrects the posting of Credit POs costed to Work Orders/Jobs.

4.3.1 Purchase Order Main Tab

New Field: Payments Blocked:
If this display field is checked, the Vendor’s required Insurance is currently expired, and payments will be blocked in AP. Today’s date is compared with the Start and End Dates on the Vendor's Insurance tab to determine if the Insurance is expired.

Purchase Order: New Field - Lien Waiver Req'd?
This display-only field defaults from the Job / Work Order referenced in the PO's header. The user will be warned when creating a PO for a Job that requires a Lien Waiver.

The Lien Waiver warning message is silenced when PO Orders referencing a Lien Waiver Job are generated via the Quote and Quote Manager Approval Wizards.

4.3.2 Purchase Order Inventory Tab

Changed Field: Use Tax
Use Tax is now recalculated when the Inventory Item Id is changed. Previously, it was set when the Item was first entered, and when its quantity or cost changed.   

Changed Field: Unit Cost
The Vendor's last cost (from the Item's Vendor tab) now defaults if the Item is entered by using the Vendor Part Id.

4.3.3 Purchase Orders from Quote / Quote Manager

Previously, the system disallowed changing the Vendor on PO's generated from a Quote. This restriction has been relaxed so that the Vendor can be changed if no receipts have been performed on the PO and it is NOT a Subcontractor PO.  

4.3.4 Subcontractor Tab 

Changed Fields: Tax Cost  - Tax Group Id
If a Tax Group flagged as Job Cost is specified on the Purchase Order header, it will now be used to calculate the Tax Cost on the Subcontractor tab: the committed cost will include the tax.  When the AP journal is recorded, the tax shown in the Subcontractor will be job costed on top of the value, and would debit the expense account and credit the tax payable account. In previous releases, this functionality was only supported on the Inventory and General tabs, and the PO header Job's (or Work Order's Job) Tax Group was incorrectly referenced on the Subcontractor tab.

Use Tax is now recalculated when the Amount fields are changed.

Changed Fields:  Earned %:  Amount Earned:
Validation now prevents the amount earned from being reduced below the threshold of what have already been vouchered in A/P.

4.3.5  Blocked Purchases Handling in the Purchase Order

In previous releases, if a Vendor's Purchases were blocked due to expired insurance, the Purchase Order could be created with an Unreleased status.  This led to problems with Vendors being given a PO Id when the Unreleased PO was created. In this version, if the

Vendor is marked as Insurance Required = 'Y'  AND
Vendor Insurance End Date < today AND
Block Purchases = 'Y'

the user will be alerted and the PO will NOT be created.

This release also corrects an issue where a Purchase Order could not be created if the Vendor's Payments were blocked but Purchases were not.

4.3.6 Purchase Order List

The PO's "ordered by" field has been added to the sort option PurchaseOrderByVendorAlphaByIdByDescription after the status column. 

4.4 Start Generate Purchase Orders

4.4.1 Blocked Purchases Handling

This function now checks to see if any PO's are for Vendors that are Blocked Purchase as of today. If they are, the user is alerted and the system displays a workspace with the list of blocked purchase Vendors. The function will continue to process Vendors that are not 'Blocked Purchase' as of today.

4.5 Start Close Open POs

This release corrects a problem where this function did not always apply Security to the history reversals lines generated by this function.

5 Inventory

5.1 Inventory Registries

5.1.1  Registry to Limit Writing to Inventory Vendor Tab to Purchasing Agents

Registry  Id: sys-viewer-vinvntryitm

Setting Key: AllowPriceChangesOnlyByPurchaseAgents

Setting Value: true   (default false)

When the above registry is enabled, the following changes to default behavior will be in effect:

 Inventory Item Viewer Vendors Tab

Only Users flagged as Purchasing Agents are allowed to directly alter the Price field. When a change is made, a secure note will be created, and the Change Date and User Id on the Detail view will be update

Users NOT flagged as Purchasing Agents are not allowed to delete lines, add lines, or insert with copy.  They are allowed to update the Description filed.

Purchase Order Viewer

When this registry is enabled, the Purchase Order will no longer update the Price field on existing line on the Inventory Item's Vendors Tab. When buying an Item from a Vendor for the first time, the PO viewer allows the creation of a new line on the Inventory Item Vendor tab, including the Price field.

This functionality is supported for PO's created from the Purchase Order viewer, Quotemaster / Quote Manager, Start Generate Purchase Orders, and TechAnywhere.

AP Journal Viewer

When this registry is enabled, the AP Journal will no longer update the Price field on the Inventory Item's Vendors Tab.

5.1.2 Compute Corporate Metrics Registry to Refine Turns Calculation

The following registry may be used to refine the Compute Corporate Metrics logic so that so that if an item’s on-hand quantity is <=0 AND the transaction will reduce the quantity on hand further, the transaction is NOT used in the turns calculation. This change is incorporated in both the Inventory and Inventory By Location computations.

Id: sys-corporate-metrics

Setting Key:  Turns-IncludePositiveOnHandOnly   Setting Value: Yes  (default No)

Any value beginning with 'Y' or 'T' (upper or lower case) will turn this option on.

5.1.3 Registry to Create Warnings for Exceeding Quantity / Unit Cost Thresholds in Inventory Adjustments.

Id: sys-viewer-vinvntryadjstmnt  

Setting Key: QuantityNotToExceed   Setting Value: threshold quantity

When this option is set and the quantity entered exceeds the value,  a warning will display: 'Warning: Quantity entered exceeds limit entered in Registry'

Setting Key: UnitCostNotToExceed   Setting Value: threshold cost

When this option is set and the unit cost manually entered exceeds the threshold cost value a warning will display: 'Warning: Unit Cost entered exceeds limit entered in Registry.'

5.2 Inventory Reports

5.2.1 Report Inventory Audit (RINVNTRYADT.rpt)

The revised report dated 2015/05/22 has been modified to remove detail lines which have zero quantity and zero cost.

5.2.2 Stock Status Report

This release corrects a minor rounding problem resulting in the sum of individual Location Totals not adding up to All Reported Locations Total.

5.3  Inventory Item Record

5.3.1 Inventory Item Main Tab

New Field - Bar Code
This field may be used to specify a unique barcode value for this inventory item. It will be used with TechAnywhere for easier lookup/entry of the Inventory record via barcode scanning.

5.3.2 Inventory Item Other Tab

Changed Field - Superceded By: Inventory Item Id
Validation now checks that the Inventory Item entered in this field exists. The user is allowed to clear the Superceded By field. However, clearing the field does not clear the Inactive flag which may have been set manually or via registry

5.3.3 Inventory Item Pricing/Costing Tab

Use Unit Prices? has been changed to Use Price Levels?
The label change was made to more clearly describe the use of the field when the new revenue calculation functionality is in effect (see Customer Note 8.7).

5.3.4 Inventory Item Average Unit Cost Calculations

In sporadic cases, receiving a quantity of an item at one price, and then vouchering it at a much lower price produced an adjustment (quantity * price adjustment) which could leave the quantity on hand with a negative value. In this release, the Cost on Hand is prevented from going negative.

5.4 Inventory Receipts Journal

Un-receipted lines are no longer displayed in existing journal entries to prevent the user from re-receipting in the same entry. This enforces the requirement to create a new Inventory Receipt entry to re-receipt the items. A registry entry (NOT recommended) is available to disable this behavior; contact your support rep.  

This release corrects a sporadic problem where clicking the "Auto Set Qty Rec'd" button did not always complete the Location fields. Additional validation requires the Location field to be set when the Inventory Receipt is added or changed.

Sales Tax received is calculated based on the PO's Sales Tax Group. The PO's Sales Tax Group is now displayed correctly the Main tab (previously the Vendor's Sales Tax Group).

Changed Field - Job Qty Received:
This field is now display-only. It is maintained by the system based on the Job Quantity ordered in the PO, and the Quantity Received.  If the user wishes to change it, the Job Quantity Ordered must be changed in the originating PO.

5.4.1 New Tab: Summary

PO Id:  Vendor Id:  Tax Group Id:
These display-only fields default from the Purchase Order's Main tab. Note that the Tax Group Id will only be completed if it is completed in the Purchase Order's Main tab.

Subtotal:
This field displays the expected Vendor Invoice cost total based on this Inventory Receipt.

Tax:
This field displays the tax anticipated to be assessed on vendor's invoice from this Inventory Receipt. This field will ONLY be completed if a Sales Tax Group with "job costed" authorities exists on the Purchase Order Main Tab.  If a Tax Group is not specified on the PO Main Tab, or if one is specified but it is NOT "job costed", this field will NOT display the calculated tax.

Total:
Displays the Subtotal + anticipate Tax (if calculated),

5.4.2 Registry to Disable Summary Tab

This tab may be disabled via the following registry if the cost summary should not be displayed for security reasons. When this registry is in place, the Main tab will be displayed, but the Summary tab will not.

Id: sys-viewer-vinvntryrcpt

Setting Key: ParentTabs  Setting Value: Main

5.4.3 Re-Receiving a Serialized Item

In previous releases, if a serialized item was received and then unreceived, its serial number could not be reused. In this release, the following procedure may be employed to re-receive a serialized item:

1. Access the View Lot Master record for the serialized item to be re-received.

Verify that the Quantity on Hand = 0.

Change the Lot Status to Reuse S/N.

Save the record.

2. Create a new Inventory Receipt entry to re-receive the item. You will be warned that the serial number already existed but you will be allowed to save the Inventory Receipt.

5.5 Start Inventory Item Cost Update

Previously, the confirmation box included box a Yes and a No button. This has been changed to a confirmation box with just an OK button to avoid confusion.

5.6  Inventory Physical Count Processing

The Inventory module must be enabled in order to access View Inventory Physical Count.  

Security is assigned to Inventory History records when Intercompany is enabled. This ensures that Fill Backorders finds the correct parts when running under Intercompany.

The Inventory Physical Count Excel export now includes the Unit of Measure. This change does not effect the import process, so that spreadsheets created before this version may still be imported successfully.

5.7 Inventory Adjustments Journal

This release corrects a rounding issue that caused the amount expensed/relieved from inventory to differ from Intercompany transactions.

This release tightens Job Cost Category / Job validation for Direct, Indirect, or blank Jobs.

This function now supports the 'creation' of serialized item records (via an Adjustment entry) by Intercompany users. Previously, a spurious "GL Entity is required on From line' message prevented this functionality.  

When Location to Location adjustments are entered, the GL Account and Entity default from the Inventory Item's Group. In this release, the GL Account / Entity is also updated when the user changes the Inventory Id after entering the Locations.

This function now posts the WO reference (when available) to Inventory History. Previously, only the Job Id was posted for Job-Location and Location-Job entries.

This release corrects a key is missing error when the Fill Lines Wizard is run with a Job or Work Order specified.

5.7.1 Inventory Tab

New Field - UOM:
Displays the Unit of Measure from the Inventory record.

5.7  Inventory Restock List Viewer

This function now sets the Inventory History Security for Intercompany databases. Validation also prevents To and From Locations from being in different Companies. 

This release corrects an error when using the List Sort Order RestockListByToByFrom.

This release corrects 'receiver is not a boolean' error which occurred when accessing an existing Inventory Restock record and immediately clicking the Print Pick Ticket button. The Tab order has also been improved.

Item Tab - New Fields

Stocked:
This display field will be checked if the Item is flagged as a Stocked Item.

Reorder Level:  Order Up To:
These fields display the current Reorder Level and Order Up To quantities in the Restock To Location.

Inventory Item Name:
This display-only field has been added to help users confirm their stocking list.

5.7.1 Inventory Restock Pick List Report

This report is now ordered by the Bin/Location and then the Inventory Id.

The Transaction Id and Date printed appear on the report header.

5.8 Inventory Restock Pick List Entry Viewe

Security is now set as needed to support Intercompany processing.

Lower Section - New Field

Inventory Item Name:
This display-only field has been added to help users confirm their Pick List entry.

5.9 Inventory Item Stock Status

Changed Field: Unit Cost (was Average Cost)
The Cost displayed has always been based on the Item's Cost Method. The label has been changed to the generic Unit Cost to better reflect this.

5.10 Start Import IM Adjustments

Purpose:

Used to import Inventory Adjustment entries from a Database table or a csv file. The import file can be created by a custom barcode program that writes to a database table or manually entered in a spreadsheet.  

Usage:

When this function is run, the date effective (from the .cvs file or database table) is used to get a valid Accounting Period which includes that date. If no valid Accounting Period is found,  an error message 'Effective date has no valid Accounting Period' is displayed and the adjustment will be rejected.

Range Screen:

Import From: Database - Text CSV File

Choose whether you will be importing from a database table or a csv file.

If you choose to import from a table, the checklist will appear with available (unposted) transactions.

If you choose to import from a csv file, you will browse and choose the file and the checklist will appear.

Select the transactions to be posted and hit Go.

A message will display when the import is complete.  

If there are failed transactions, a file containing those transactions will be created and the location of the file will be displayed in a message box.  The Email-to address define in the registry will also receive an email.  A user needs to go to that file and fix the errors which will be noted in the file.

The user should then run the manual function selecting the csv file, and browse to and choose the fixed file.

Start Import IM Adjustments (Automated) may be used to run this function as a scheduled event:  

Spreadsheet Format:

The import expects a header row; the file must be comma delimited. The specifications are as follows:

Date - date(10) (if blank today's date) format (YYYY-MM-DD)

Transaction Type  - char(10) values Loc-to-Loc, Loc-to-Job, Job-to-Job, Job-to-Loc

Inventory Item    - char(30)

Serial Number    - char(30) (If the use serialized inventory)

Quantity          - decimal (12,6)

Unit Cost        - decimal (10,3) (ill default from sampro if empty

From-Workorder    - char(10)

From-Job          - char(15)

From-JobCostCode  - char(30)

From-JobBillItem  - char(15)

From-CostCategory - char(15)

From-Location    - char(10)

To-Workorder      - char(10)

To-Job            - char(15)

To-JobCostCode    - char(30)

To-JobBillItem    - char(15)

To-CostCategory  - char(15)

To-Location      - char(10)

Database Table Format:

If the import is from a database table, see your Support Rep for assistance.

Registry:

Id: sys-start-simprtimadjstmnt

This registry is used by both Start Import IM Adjustments and Start Import IM Adjustments (Automated).

Importing from a Database Table:

Setting Key: UseDataBase   Setting Value: true (default is false)  

Use this if you will be importing the entries from a database table.

Importing from a Spreadsheet:

Setting Key: csvfile   Setting Value: filename

Specifies the filename to import. This option is required for Start Import IM Adjustments (Automated).

Setting Key: importDirectory   Setting Value: directory with import file

Specifies the default directory containing the import file. If an import fails, the system will also use this directory to deposit the failed entry information. This option is required for Start Import IM Adjustments (Automated) and recommended for Start Import IM Adjustments.

Email Failed Records:

Setting Key: email-to   Setting Value: email address

Setting Value: email-from  Setting Value: email address

The system will automatically email failed record information to the email-to address if the above options are set. Note that both the email-to and email-from entries must be set.

6 Client Orders (COP)

6.1 Registry

6.1.1 Display Sales Tax Authorities on COP Portrait Invoice (Canadian Sales Tax)

When this option is enabled, up to 2 Sales Tax Authorities (derived from the Sales Tab Group) will be displayed on the COP Invoice. In addition, the name of the sales tax authority will print instead of simply 'SALES TAX'. This is currently implemented for the Portrait mode only.

The following registry entry is required to enable this functionality.

Registry Id: sys-report-rcopinvce  

Setting Key: MultipleSalesTaxLines    Setting Value: Yes

6.1.2 COP Portrait Invoices Only

A recent internal change caused the portrait orientation option of the COP Invoice to be ignored in sys-printer-rcopinvce unless a default printer is specified.  Add this option  to the following registry to correct.

Registry Id: sys-printer-dialog-rcopinvce

Setting Key: orientation   Setting Value: 1

6.1.3 Specify AR Control Account for COP Invoice

If more than a single AR Control GL Account exists in your database, will not be automatically filled in when Report COP Invoice is run.  This registry allows the user to default in the correct AR Control GL Account for COP Invoices.

Id:  sys-viewer-clntordr

Setting Key: ARControlAccount   Setting Value: a valid AR Control GL Account Id

6.2 Reports

6.2.1 COP Invoices

This release corrects a spurious Runtime error that appeared when launching Report COP Invoice in a database which contained only a single AR Control GL Account.

6.3 Client Order Viewer

6.3.1 Client Order Item Tab

Price Codes Using Margins

The Client Order Item tab now supports Price Codes that specify a Margin. If the selected Site has a Price Code, the system checks to see if it matches one in the Inventory Item Pricing tab.  If there is a match, the COP module will insert the appropriate Margin based on the Price Level specified in the Site when the Inventory Item is selected. When the user enters and tabs out of the Quantity field, the margin will be converted to the appropriate Unit Price based on the cost. If no Price Code is specified in the Inventory Item and/or the Site, the system will use the Unit Prices on the Inventory Item Pricing /Costing header tab instead.

7 Accounts Receivable

 

7.1 Accounts Receivable Registries

 

7.2 Accounts Receivable Reports

7.2.1 Report AR Aging

The DARAGE report (drill down aging) currently uses the Branch specified in the Client Site (of the COP order) for filtering COP orders. The revised report date 2017-09-19 uses the branch specified in the COP order itself and if blank steps defers to the Branch specified in the Site.

The revised report dated 2017-09-18 now includes logic to get the customer's PO# from the Job if PO is blank in Invoice Master or on the Work Order. This corrects a problem where the PO# was not always shown for RININV3 Invoices.

The revised Report AR Aging (DARAGE.rpt) dated 2016-04-05 now gets the PO from the Work Order if the PO is blank in the invoice. It also supports the following enhancements:

New Option: Show Collection Notes

New Option: Age By - Invoice Date - Date Due
Previously, this report always aged by the Invoice Date.  The user may now select the option to age by the Date Due instead.

New Range: GL Entity Id
This range allows the user to filter within AR Control Accounts

7.2.2 Report Customer Statement  (RCUSTSTMNTv80b048.rpt)

New Field: Print Statements With Balance Over
The revised report dated 2017-11-15 replaces the Print Zero Balance Statements option with a Print Statements With Balance Over option. By default, this field is blank (zero) so that only positive balance statements will be generated. If a user wants to include zero balance statements they would enter $.01- in the Print Statements with Balance Order field. If a user wants to include credit balance statements they would enter $99999.99- (or some negative value) in the new input field.

7.2.2a Include PDF'd Invoices

The report dated 2016-04-21 and later supports an option to include the PDF'd invoices referenced on the statement as part the PDF version of the statement report. Both job/service based invoices (document category INVOICE) and COP Invoices (document category COPINVOICE) will be included.

If invoices were not originally saved as PDF's, the Start Document Archive Maintenance function may be used to convert these document types to PDF.

Important:  Only the PDF'd Statement Includes the Attachments
The .dbr version of the Customer Statement will not display the attached invoices; it will however include a list of attached files. Only the PDF'd version of this report will include the 'package' of invoice attachments.

Required File:

A whitesquare.bmp file (available from support) should be added to the directory where your bitmap graphics are stored.

Required Registry:

Id: sys-report-rcuststmnt  

Setting Key: IncludeInvoiceDocuments   Setting Value: Y    (default N)

This option is required to implement the new ' invoice package' functionality.

Setting Key: sectionbackerbitmap   Setting Value: Pathname\whitesquare.bmp

This registry is recommended to prevent the invoice bitmap from 'stepping on' the attached documents. The bitmap may be obtained from support. Note that ONLY the bmp version of this file should be installed.

Additional Registries:

These reports support auto emailing.  The appropriate registry entries should be made to implement this functionality if invoice documents are included:

Setting Key: emailbysection  Setting Value: true

Setting Key: autoemail  Setting Value: true  

7.2.2b Zero Balance Statements

There is a registry associated with this report that controls the text that appears when a zero balance statement shows on the report. By default, 'Zero Dollar Statement' will appear. The following registry overrides this default.

Id: sys-report-RCUSTSTMNT

Setting Key: ZeroBalanceText

Setting Value: Text to appear on report    (100 Character Maximum)

7.2.2c  Print Consolidated Invoice Description

The revised Report Customer Statement (RCUSTSTMNTv80b048.rpt) dated 2017-10-06 prints consolidated invoice description (if one exists) for consolidated invoices. In the absence of a description, the default text is "consolidated invoice."

7.2.3 Report Customer Statements 2 (RCUSTSTMNT2.rpt)

The revised report dated 2016-08-15 includes the following new features:

New Field: Print Zero Balance Statements?
Flagging this field enables the user to print a zero balance statement for the selected client or clients on this report.  Clients with a total outstanding dollar balance in AR History equal to zero will be included on the report, subject to the setting of the other ranges.

New Range: Client Status
This field defaults to Active so to limit this reports to Client with an Active status. It is recommended that this range remains set to Active if the Print Zero Balance Statements? field is flagged. Setting the Range to Active,Credit Hold will include both Active Customers and those on Credit Hold on the report.

There is a registry associated with this report that controls the text that appears when a zero balance statement shows on the report. By default, 'Zero Dollar Statement' will appear. The following registry overrides this default.

Id: sys-report-RCUSTSTMNT2

Setting Key: ZeroBalanceText

Setting Value: Text to appear on report    (100 Character Maximum)

7.2.4 Report Credit Card Expiration for OpenEdge Users

This new report (RCCEXPRTN.rpt) dated 2016-10-10 is designed to alert users to upcoming Credit Card expiration dates in the Client Site for payment processing. The report lists the the Site Id and Name, Contact Name and Phone Number, Masked Credit Number and Expiration Date for each Site with an expired Credit Card.

Start Date:   End Date:
At least one of this fields must be completed.

If the Credit Card Expiration Date falls on or after the Start Date, the Site will be included on the report.  

If the Credit Card Expiration Date falls on or before the End Date, the Site will be included on the report.

Client Site Id:  Account Manager:
These ranges permit Sites to be filtered by the Site Id or Account Manager.

7.2.5 Report Credit Card Expiration for Master Contract

This report  (RCCEXPRTNMSTR.rpt) is designed to alert users to upcoming Credit Card expiration dates in the Master Contract for payment processing. The report lists the Master Contract Id and Description and the associated Masked Credit Number and Expiration Date for each Master Contract with a Credit Card Payment Alias.

Start Date:   End Date:
At least one of these fields must be completed.

If the Credit Card Expiration Date falls on or after the Start Date, the Master Contract will be included on the report.  

If the Credit Card Expiration Date falls on or before the End Date, the Master Contract will be included on the report.

Master Contract Id:  Account Manager:
These ranges permit Sites to be filtered by the Master Contract Id or Account Manager.

7.2.6 Report AR Sales Journal Post Summary

The revised Report AR Sales Journal Post Summary (RARSLSJRNLPSTNG.rpt) dated 2016-09-26 supports Report Totals Debit Amounts exceeding $9,999,999.

7.3 AR Cash Receipts

This release tightens Job Cost Category / Job validation for Direct, Indirect, or blank Jobs.

The 'Receipts Entered' field is correctly updated when lines on the Other Tab are added or deleted.

Tab Mismatch functionality has been added to this journal to prevent double posting. This could occur in previous releases if a Share Violation was encountered when Quick Attaching files allowing the journal to be saved twice.

This journal checks to see if an entry has been deposited when determining if it can be edited. Validation now supports a recent enhancement where edited Bank Deposit transactions are saved with a tack number appended to their Transaction Id. if a previously selected Cash Receipt is cleared when a Bank Deposit Journal is edited, the cleared Cash Receipt entry may be changed. In this release, the update from the Cash Receipt is applied selectively so that previously changed Bank Deposit lines are not changed.

Previously, when applying a cash receipt amount less than invoiced the system displayed the message 'Applied Payment exceeds the Amount Owed.' This spurious message has been eliminated.  

7.3.1 Unapplied Deposits

When an Unapplied Deposit is entered in the AR Cash Receipts journal, the following Invoice Master fields are now set as follows:

Effective Date: Defaults from the Cash Receipt's Effective Date; this field was previously blank.

Entry Type: Now set to Credit Memo; it was previously set to Unknown

Status: This is now set to Posted; it was previously set to New,

7.3.2 AR Cash Receipts Open Invoice List

The new PO# column displays the customer's Purchase Order specified in the Work Order's PO# field.

7.4 OpenEdge/Xcharge Credit Card Processing (APT)

7.4.1 Xcharge Transaction Id

The Xcharge Transaction Id is now written to the following fields when credit cards are processed in SAMPro, TechAnywhere, or in the POS module (when available).

Work Order COD Tab
New Field: CC Trx Id
(click the Magnify button)
This field is completed when a Credit Card Payment is processed on this tab.

AR Cash Receipts Main Tab
New Field: CC Trx Id

This field is completed when a Credit Card Payment is processed from within in the AR Cash Receipts viewer.  

Master Contract Site List Tab:
New Field: CC Trx Id
(click the Magnify button)
This field is completed when a Credit Card Payment Alias is processed on this tab.

Client Site Main Tab:
New Field: CC Trx Id

This field is completed when a Credit Card Payment Alias is processed on this tab.
AR Sales:
The Masked Account Number, CC Transaction Id and Expiration Date fields were added to the AR Sales table so the POS app can make AR Sales Journal Credit Memo-type transactions for returned items.  These transactions may involve issuing credits to a customer's credit card.  These fields do NOT yet appear on the AR Sales Journal screen.

AR History:
The Masked Account Number, CC Transaction Id, Expiration Date and Payment Type fields were added to AR History for use with the POS app.  These fields do NOT yet appear on the AR History viewer.

7.4.2 Open Edge - Create PM Billing

The Create New Billing Schedule and Renew Service Contract functions clear payment processing fields (alias, approval and decline codes) when creating Client Site Billing schedule records.

When a payment is declined (during the generation of the Cash Receipt Journal), the system will display a message and adds a Note to WorkOrder.

When a payment is processed the following information is now included in the message sent to XCharge.

User Id = SAMPro User ID  
User Def 1 = Client ID
User Def 2 = WO ID
User Def 3 = Site ID

7.4.3 XCharge - WO COD Tab

The OpenEdge (xcharge) Transaction Id is now referenced in the Work Order COD, AR Cash Receipts, and AR History records, when posting COD Service Invoices (where the alias is set) to the AR Cash Receipts Journal.

When a payment is processed via the Work Order's COD Tab, the Client, Client Site, Work Order and Job Id are now included in the message sent to XCharge.

7.4.4 XCharge - Client Site

Validation now prevents assigning a Payment Alias if the Site Id is blank.

7.4.5 Cash Receipts Journal

In this release, the SAMPro User ID is written to the column "User ID" of the export.  The User Def 1 column is set to the Client ID.

7.4.5a OpenEdge / Xcharge Credit Refunds

Credit refunds may now be processed via Open Edge / XCharge in the Cash Receipts Journal. To do so:

1. Select a Credit Memo in the AR Cash Receipts Journal, and enter the Total Receipt as a negative number.

2. Verify that the customer has their credit card ready, and then click the Process Payment button.

3. Click through the usual messages; when the x-web portal opens, enter the customer's credit card number (without spaces or dashes) and expiration date and click Submit.

4. If the card is approved, the web portal will display "Approval" in red and the customer's card will be credited with the refund.  If it is not approved, check the number and expiration date and try submitting it again.

7.5 Compute Finance Charges

This function now uses the AR Terms from the Invoice Master when available to enable the computation of Finance Charges against converted A/R invoices.  The Client Id displayed on the Checklist is also displayed for converted invoices.

If this function is run for multiple clients, the AR Control Account selected by the customer is correctly debited in GL History.

7.6 AR Sales Journal

This release tightens Job Cost Category / Job validation for Direct, Indirect, or blank Jobs.

7.7 Electronic Payments Credit Card Processing

7.7.1 Electronic Payments Setup

SAMPro now supports Electronic Payments credit card processing as well as OpenEdge. Data-Basics works with USAePay as the middleman to Electronic Payment (the company that SAMPro users would sign up with).

1. To enable this functionality in SAMPro, you must first set up an account with Electronic Payments. Once you have done an API Key and PIN number must be generated for when you set up your SAMPro registries.

Instructions for generating an API PIN/Key:

Log into EP's customer merchant console (Vault Gateway).
Under Settings, click API Keys (If API Keys option is missing, contact EPI support).
Click Add API Key on upper right.
Name = Databasics
PIN = any random 4 digit key you feel like typing (remember this for registry)
Click Save on lower right. After saving, it will auto-generate an API Key. Use this for the registry.

2.  SamproSecureCommunication.war must be installed in Glassfish to enable this functionality. If your firm does not already have a Glassfish server installed (for DBAnalytics or TechAnywhere) contact your support representative to set this up.

3. It is recommended that you create a new Payment Type record with the Id set to EPCreditCard and the GL Bank Account set to the appropriate bank or sweep account for Electronic Payments. This will be used for recurring payment processing.

4. Complete the registry entries listed below.

5. We recommend testing this functionality in your sandbox first. When you go life with this functionality, test with a company credit card before using for customers.

7.7.2  Registries to Enable Electronic Payments Credit Card Processing

Registry to Specify Electronic Payments as the Payment Processor

Registry ID: sys-ffv-global-settings

Setting Key: DefaultPaymentProcessor  Setting Value: EP

This registry is required to specify Electronic Payments as the payment processor, If this registry is absent, Open Edge (OE) is assumed to be the default processor.

Registry to Configure Electronic Payments Processing

Registry Id: sys-payment-processor-ep

Glassfish Settings

Setting Key: Server  Setting Value: FILL IN SERVER NAME HERE

This registry specifies your Glassfish server.

Setting Key: Port  Setting Value: FILL IN GLASSFISH PORT

Address for Sandbox or Live Electronic Payments URL (only enable one)

Sandbox:

Setting Key: URL  Setting Value: https://sandbox.usaepay.com/api/v2/transactions

Live:

Setting Key: URL  Setting Value: https://usaepay.com/api/v2/transactions

Additional Required Settings

Setting Key: APIPin  Setting Value: enter pin provided by EP

Enter the API Pin provided specified for your firm in Electronic Payments (see Electronic Payments Setup above).

Setting Key: APIKey   Setting Value: enter key provided by EP

Enter the API Key provided for your firm by Electronic Payments .

Setting Key: content-type  Setting Value: application/json

This entry is required and must be entered as shown above.

Setting Key: PaymentProcessor  Setting Value: SamproSecureCommunication/SSL

This entry is required and must be entered as shown above.

Setting Key: Directory  Setting Value: paymentProcessing

This entry specifies a subdirectory the base SAMPro directory that is used to for Electronic Payment logs.

Setting Key: PMPaymentBillingCode Setting Value: enter a valid payment type id

This registry defines the Payment Type to use with EP credit card processing. This Payment Type must specify the G/L Bank Account to use for auto pay PM Billings (e.g, EPCreditCard).

7.7.3 Client Site Viewer - Generating a Payment Alias for PM Work Orders

This button establishes a Payment Alias with OpenEdge or Electronic Payments if this functionality is implemented in your system.   This Alias will be used when PM Invoices are generated to automatically bill the customer's credit card. The system will post successfully paid billings to the Sales Journal as paid and generate the appropriate AR Cash Receipts Journal Entry. The Alias may be set in the Client Site record or the Master Contract Site List tab.

Electronic Payments

1.Verify that the customer has their credit card ready, and then click this button to enter the customer's credit card information.

2. SAMPro will open a 'Please Enter Credit Card Information' prompter box.  Enter the customer's credit card number (without spaces or dashes), expiration date and CVC security code. The Pre Auth Amount field will be set to $1.00 to ensure that the credit card is valid. Click OK to continue.

3. A progress bar will appear as the pre-authorization is processed. If the card is not approved, an error with the reason will be displayed (e.g, "Credit Card has expired). Check the number and expiration date and try submitting it again.

4. When the card is approved, the system will write the Alias back to the Payment Alias field, and complete the CC Masked Account and Expiration Date fields for future reference. A secure note detailing the transaction will be attached to the Master Contract record.

5. Save the Client Site.

Payment Alias:
This field is completed by the system when a Payment Alias is successfully generated by OpenEdge or Electronic Payments via the Payment Alias button. The Payment Alias may be cleared by manually by blanking the field. This would be done if the client changed their mind and did not wish to have their recurring PM's paid via credit card. Validation also prevents the user from manually changing this field to a non-blank value; this field may only be set via the Payment Alias button.

CC Masked Account (first four and last four digits of the credit card)
CC Expiration Date  CC Trx Id:

These display fields are completed when an Alias is successfully generated by the credit card processor. Note that Electronic Payments list the first four and last four digits; Open Edge lists only the last four.

7.7.4 Master Contract Site List Tab

The Payment Alias button in the Magnify view of the Site List tab supports Electronic Payment processing as described in the Client Site above.

7.7.5 AR Cash Receipts Electronic Payments Credit Card Processing

If you have established an account with Electronic Payments and enabled the appropriate registries, you may process a credit card payment or refund in the AR Cash Receipts Journal.

Processing Receipts with Electronic Payments

1. If you use a different sweep account for Electronic Payments receipts, change the Bank Account on the GL tab.

2. On the Main tab, select Invoice or Invoices that the customer wishes to pay for.

3. Enter the Discount (if any) and Total Receipt; this is the amount that will be processed on the credit card.

4. Verify that the customer has their credit card ready, and then click the Process Payment button.

5. SAMPro will open a 'Please Enter Credit Card Information' prompter box.  Enter the customer's credit card number (without spaces or dashes), expiration date and CVC security code and click OK.

6 A progress bar will appear as the payment is processed. If the card is not approved,an error with the reason will be displayed (e.g, "Credit Card has expired).  . Check the number and expiration date and try submitting it again.

7. When the payment is approved, the system will write the Approval Code back to the Check Number field, and complete the CC Masked Account field for future reference. A secure note will be added to the journal entry detailing the transaction.

8. When preparing to enter the next Cash Receipt, remember to set the GL Bank Account to the appropriate value.

Note: For Cash Receipt Transactions, SAMPro will also send the SAMPro user ID to column "User ID" of export, and sent the User Def 1 to the Client Id.

Processing Credit Refunds

Electronic Payment Returns:
By default, Electronic Payments does NOT process returns. In order to do so, the Return option must be enabled in the Merchant Console.

1. Select a Credit Memo in the AR Cash Receipts Journal, and enter the Total Receipt as a negative number.

2. Verify that the customer has their credit card ready, and then click the Process Payment button.

3. When the 'Please Enter Credit Card Information' prompter box appears, enter the customer's credit card number (without spaces or dashes), expiration date and CVC security code and click OK.

4. If the card is approved, the customer's card will be credited with the refund.  If it is not approved, check the number and expiration date and try submitting it again.

8 Invoicing

8.1 Registries

8.1.1 Flat Rate Import from Profit Strategies

The following registry setting allows a fourth level of flat rate pricing imports to be enabled.  Data will be imported from Third-party developer Profit Strategies files using the Start Kimmons1 File Import function.

Id: sys-viewer-vfltrte

Setting Key: UseKimmonsFileLayout2   Setting Value: true   (default is false)

8.1.2 Service Billing Registry to Skip Printing of Zero Dollar Invoices

The following registry option enables the users to skip the physical printing of zero dollar service invoices. If this registry is enabled:

Zero dollar invoices will still be processed and 'posted' along with the batch.
No paper forms should be printed.
Auto-saving should still happen.

NOTE: This functionality also requires the revised Service Invoice serviceinvoicev90b028.rpt dated 2016/02/16 or later.

Id: sys-start-ssrvcebllngcmpte

Setting Key:  SkipPrintZeroInvoices   Setting Value: true  (default is false)

8.1.3 Service Billing Registry to Skip Printing of Zero Due Invoices

The revised Report Service Invoice dated 2017-04-14 (SERVICEINVOICEv90b028.rpt) supports a registry option to skip print $0 DUE invoices (e.g., COD Invoices). Note that $0 Dues includes will still be attached as documents when the print in confirmed; they simply will not be physically printed.

Id: sys-start-ssrvcebllngcmpte

Setting Key: SkipPrintZeroDueInvoices    Setting Value: true   (default false)

8.1.4 Record Billing Adjustments - Restart Function After Save

The following registry automatically restarts Record Billing Adjustments when a record is saved.

Id: sys-viewer-srcrdbllngadjstmt

Setting Key: ReopenViewerWhenRecordWritten    Setting Value: true   (default is false)

If this option is enabled, clicking the red X on the Job Id input screen closes Record Billing Adjustments so that is does not reopen.

8.2 Reports

8.2.1 Enhanced Report Progress Invoice Template 3

The revised report (RINIVNV3.rpt) dated 2017-08-013 adds the Site Address to the right-hand side of the CANADA header format. The box around the header information has been removed for a sleeker appearance.

The revised report dated 2016-05-12 was enhanced to show billed retainage as a positive number with the label 'Billed Retainage'.  In previous versions of this report, billed retainage was shown as a negative value, with the label 'Less Retainage'.

This report also supports a registry option to override the 'Billed Retainage' label.

Id: sys-report-rininv3

Setting Key: lbl_billedretainage   Setting Value: text

This could be implemented to implement the Holdbacks terminology preferred in Canada:

Setting Key: lbl_billedretainage   Setting Value: Billed Holdbacks

8.2.1a Specify Report Progress Invoice Template 2 Bitmap Override by Job

The revised Progress Invoice (RININV3.rpt) dated 2018-05-14 supports the new bitmap override by Job functionality.

Registry Id: sys-report-rininv3

Setting Key:  BitmapOverrideBasedOn   Setting Value: job

This registry entry defines that this override is based on a user field in the invoice's Job record.

Setting Key: BitmapOverrideField  Setting Value: job user database field

This registry entry specifies exactly Job User field will provide the override; the database field name must be specified. For example, the following specifies the Job's User 3 field:

Setting Key: BitmapOverrideField  Setting Value: jb_usr3

Setting Key: Job~string   Setting Value: path\bitmap.bmp

This entry provide the override bitmap file that will be used if the Job record's User field defined above contains the string specified.  Notice that a tilde (~) separates Job from the string. As many of these entries may be made as needed to support the various bitmaps.

Example:

Suppose that we have a bitmap file named 010101_invoice.bmp that should be used on invoices associated with Job's having the following text string 010101 in Job User 3 fields.

Setting Key: Job~010101  Setting Value: path\010101_invoice.bmp

Tip: Include the part of the bitmap name as the text string for clarity.

Tip: Including the appropriate values in your job templates will ensure that new jobs are created properly. In addition, using the Custom Fields functionality to specify the allowed values will prevent inappropriate values from being entered.

8.2.2 Service Invoice

Revised Report: Service Invoice
Added PO Id to AR Summary section  (SERVICEINVOICEv90b028.rpt revised 2016-04-05).

When Show Equipment Detail is flagged, all 3000 characters of the Equipment Work Requested and Performed are printed (first in SERVICEINVOICEv90_b002.rpt revised 2015-12-19). Previously, only the first 1200 characters were printed.

The revised Service Invoice Report (first in serviceinvoicev90b002.rpt dated 12/17/2014) supports the use of the WO COD tab's new Effective Date field to determine if a COD Payment should be included on an invoice. If the Invoice's Bill Thru Date equals or exceeds the WO COD tab's Effective Date the COD Payment will be applied to the Invoice.  

See Customer Release Note 16.3.9 for details on the new field.

8.2.2a Service Invoice - Enhancement to Attach TechAnywhere Receipts and Other Documents to Emailed Invoices and to Skip Print Emailed Invoices

This release adds the ability to append TechAnywhere receipts or other documents to the PDF'd version of Service Invoices. This allows an Invoice Package to be automatically emailed to customers configured to receive Service Invoices via email. Supported document attachment file types include: .bmp, .jpg, .gif, .png,  and .pdf. This functionality is suitable for scenarios where a Work Order is only invoiced once.

Important:  Only the PDF'd Invoice Includes the Attachments
The .dbr version of the Service Invoice will not display the attached documents; it will however include a list of attached files. Only the PDF'd version of this document will include the 'package' of document attachments.

To enable this functionality:

1. The revised Service Invoice serviceinvoicev90b028.rpt dated 2017/02/28 or later must be installed in your database. This report also supports logic to process archive file locations when compiling an invoice with attached TechAnywhere Receipts or other files.  

2. The Client Site Email Invoices field (a-clntste: clntste.eml-invce) must contain a list of the Document Categories which should be included in the Invoice Package. The included documents must be attached to the Work Order being invoiced prior to the generation of the invoice. Any documents attached to the Work Order after an invoice is generated will not be included in this package.

For example, to include TechAnywhere Receipts in the Invoice Package for a particular Site, you would enter Receipt in its Email Invoices field.

3. Verify that the xmlToPdf.jar file (located in the same directory as your SAMPro executable) is dated 2015/07/08 or later.

4. Implement the following registry entries:

Id: sys-start-ssrvcebllngcmpte:

Setting Key: IncludeInvoiceDocuments   Setting Value: true    (default false)

This option is required to implement the new 'package' functionality.

Setting Key: SkipPrintEmailedInvoices   Setting Value: true

Implementing this registry allows emailed invoices to be 'skipped' in the print run.  Processing will proceed as usual: the Invoices will be displayed and sent to the printer; the user must then confirm that the invoices have printed and post them. However, only those invoices that were not emailed will actually be printed.

Id: sys-report-serviceinvoice:

Setting Key: sectionbackerbitmap   Setting Value: Pathname\whitesquare.bmp

This registry is recommended to prevent the invoice bitmap from 'stepping on' the attached documents. The bitmap may be obtained from support.

Setting Key: ShowDocumentDescription  Setting Value: Y

This option should be enabled to display the Document Description of the attached graphic document on the upper left-hand corner of the page. Note that the attachments themselves (along with the Description) are only shown when the invoice is PDF'd.

8.2.2b Service Invoice - Skip Print and or Email of Negative Invoices

The revised Service Invoice Report (SERVICEINVOICEv90b028) dated 2016-11-11 and this release support registries to skip printing and/or emailing service invoices with a negative total.

Registry to Skip Emailing Negative Invoices

Id: sys-report-serviceinvoice

Setting Key:  SkipEmailNegativeInvoice  Setting Value:  Y (default is N) 

Registry to Skip Printing Negative Invoices

Id:  sys-start-ssrvcebllngcmpte

Setting Key:  SkipPrintNegativeInvoices   Setting Value:  true (default is false)

8.2.2c Service Invoice - Skip Printing of Zero Due Invoices

The revised Report Service Invoice dated 2017-04-14 (SERVICEINVOICEv90b028.rpt) supports a registry option to skip print $0 DUE invoices (e.g., COD Invoices). Note that $0 Dues includes will still be attached as documents when the print in confirmed; they simply will not be physically printed.

Id: sys-start-ssrvcebllngcmpte

Setting Key: SkipPrintZeroDueInvoices    Setting Value: true   (default false)

8.2.2d  Service Invoice - Print Both Billing and Email Address on Emailed Invoices

Revised report dated 2017-09-06 extends support of  this registry option to the CANADA header format.

The new Report Service Invoice (SERVICEINVOICEv90b028.rpt) dated 2017-05-16 supports a new registry setting which will allow both Billing Address and Email To information to print on the invoice header.

When this registry setting is enabled AND autoemailwhenprinted is also set to true, the physical address will display so that it will appear in the envelope window should it need to be mailed; the email address will appear below the physical address.

When this registry setting is enabled but autoemailwhenprinted is NOT set to true, only the physical address will display.

Registry Id: sys-report-serviceinvoice

Setting Key: ShowBillAddressAndEmailAddress   Setting Value: true   (default false)

8.2.2e Customize Service Invoice Email Message with Token Replacements

The Service Invoice (SERVICEINVOICEv90b028.rpt) dated 2018-01-16 and this release supports the ability to include custom text in the email message that the Service Invoice is attached to.

A Common Phrase entry must be made which contains the new email message. Tokens in Common Phrases are now supported for this functionality. Token replacements can done with fields from the following tables:

clnt, clntste, invcemstr, jb, wrkordr

Fields should be referenced using database field names 
(i.e. invcemstr_id, wrkordr_dte_opnd, clnt_nme)

The following registry setting must be created to invoke this functionality:

Registry Id: sys-report-serviceinvoice

Setting Key: EmailMessageId   Setting Value: commonphraseid

In the absence of the registry, "Emailed Report Attached" will be included in the email body.

8.2.2f Service Invoice Token Replacement for Email Subject

The new functionality is enabled in this version with the revised Report Service Invoice (SERVICEINVOICEv90b028.rpt) dated 2018-01-16. The following registry is required:

Id: sys-report-serviceinvoice

Setting Key: EmailSubject  Setting Value: Text string which supports token replacement

Token replacements can done with fields from the following tables:

clnt, clntste, invcemstr, jb, wrkordr

Fields should be referenced using database field names 
(i.e. invcemstr_id, wrkordr_dte_opnd, clnt_nme)

Example:

Setting Key: EmailSubject   Setting Value: Invoice ^invcemstr_id^ for ^clnt_id^

8.2.2g Specify Service Invoice Bitmap Override by Job

The revised Service Invoice (SERVICEINVOICEv90b028.rpt) dated 2018-05-14 supports the new bitmap override by Job functionality.

Registry Id: sys-report-serviceinvoice

Setting Key:  BitmapOverrideBasedOn   Setting Value: job

This registry entry defines that this override is based on a user field in the invoice's Job record.

Setting Key: BitmapOverrideField  Setting Value: job user database field

This registry entry specifies exactly Job User field will provide the override; the database field name must be specified. For example, the following specifies the Job's User 3 field:

Setting Key: BitmapOverrideField  Setting Value: jb_usr3

Setting Key: Job~string   Setting Value: path\bitmap.bmp

This entry provide the override bitmap file that will be used if the Job record's User field defined above contains the string specified.  Notice that a tilde (~) separates Job from the string. As many of these entries may be made as needed to support the various bitmaps.

Example:

Suppose that we have a bitmap file named 010101_invoice.bmp that should be used on invoices associated with Job's having the following text string 010101 in Job User 3 fields.

Setting Key: Job~010101  Setting Value: path\010101_invoice.bmp

Tip: Include the part of the bitmap name as the text string for clarity.

Tip: Including the appropriate values in your job templates will ensure that new jobs are created properly. In addition, using the Custom Fields functionality to specify the allowed values will prevent inappropriate values from being entered.

8.2.3 Sales Tax Summary by State by Group

A new option, Show Authority Names, has been added to the revised version of the RSLSTXSMMRY-TXHSTRY.rpt dated 2016-02-16. When this option is enable, the Authority Name will be printed below each detail line.

New Ranges allow filtering by the Sales Tax Group's City and County. In addition, the Sales Tax Group name will be listed to the right of the Sales Tax Group Id.

8.2.4 Report Commissions by Amount Invoiced

The Report Commissions by Amount Invoices (RCMMSSNRPT5.rpt) dated 2018-02-20 has been updated to include logic for discounts upon receipt. This report requires that total received must match total invoiced to qualify; to prevent qualifying an invoice for commission prior to the complete payment. This version corrects an issue where invoices were missing on the report if a discount was applied. This version shows such invoices as well as the computation for the amount received.

8.2.5 New Report: Consolidated Invoice Report

The new Consolidated Invoice Report (RCNSLDTDINVCE.rpt) is used to combine multiple invoices for a client within a specified date range. The consolidated invoice includes such details as the AR Invoice ID, purchase number, client site name, invoice subtotal amount, tax amount, and total invoice amount for each invoice being consolidated. The total line on this report corresponds to the consolidated invoice subtotal, tax, and total amount. The consolidated invoice report also includes a list of the invoice associated work orders and the consolidated invoice description. The registry for this report includes bitmap placement and auto emailing functionality.

8.3 Other Rate record

Changed Field: Unit of Measure
Expanded from 5 to 10 characters.

8.4 Avalara Sales Tax Integration

IMPORTANT: Avalara Users
Formatting configurations within the Avalara import files for certain states may require manual updates to Sales Tax Authorities/Groups following the update. Please contact your support rep before running Start Sales Tax Update (Avalara). Note that new releases of Version 9.1 support the Avalara Web Service (which does not have these import issues). Upgrading to Version 9.1 also provide preprocessing information on anomalies in the Avalara files which may need to be corrected.  

8.4.0 Recent Updates

This release corrects a sporadic issue where the Sales Tax Authority information was too large to fit in the Tax Info fields on the detail lines of the AP Journal; Inventory Adjustments Journal; Inventory Receipts Journal; Purchase Order; and Work Order viewers. This issue emerged when updated Tax Group included zero rate Authorities.

In previous releases, updating existing Sales Tax Authorities / Groups from Alavara ignored updates where the Sales Rate was changed to zero because zero tax rate Authorities were ignored.  In this release, zero tax rates updates are properly accounted for when Tax Group records are updated. However, as a result of this change, updated and newly processed Tax Groups will include Tax Authority records with zero tax rates if applicable.

WARNING: Do Not Filter the Avalara Update
If you filter your Avalara update to a specific Zip Code, only that Sales Tax Group would have its Sales Tax Group Rate recalculated. If the update to that Group included changes to rates also impacting other Group (e.g., the State Rate rate), the applicable Tax Authority would be updated, but the other Tax Groups referencing it would not have their Group Tax Rates reset. This is a particular problem since TechAnywhere uses the Group Tax Rate. For this reason, we strongly recommend that you allow your Avalara updates to run wide open so that all applicable Sales Tax Groups will be properly updated.

8.4.1 Overview

Avalara provides Sale Tax information which may be imported to populate SAMPro's Sales Tax Groups and Authorities. Executing the Import process reads properly formatted data from a text file into the new SAMPro Avalara Sales Tax table.  It will create new records and update existing records.

The Tax Group Id is based on the Zip Code for imported data.  However, since a single zip code may encompass more than one Sales Tax Group (which specifies the State, County and Municipal / Other Authorities), the Sales Tax Group Id of records generated by running the Start Sales Tax Update will be composed of the Zip Code optionally followed by a .### extension. For example, the Sales Tax Authority with the name "ARVADA JEFFERSON CO COLORADO 80002" is assigned the Id 80002.002 to distinguish it from "DENVER JEFFERSON CO COLORADO 80002" with Id 80002.004. In addition, Use Tax and non Use Tax groups are created.

The Site's City, State and Zip have been added to the Job record to make it easier to select the correct Sales Tax Group.

8.4.2a Registry for Start Sales Tax Update (Avalara)

Id: sys-start-sslstxupdte

Set the Labor Tax Selection by State

The following registry setting can be used to set state-specific rules for Labor. This registry setting trumps the user input in the Labor Tax Selection field of the starter function.

Setting Key: stateid~TaxLaborSelect   Setting Value:  Tax Labor or Use AvalaraRule

If there is no registry entry (or if the Setting Value is Use AvalaraRule) the system will use the Avalara Rules to determine if Labor is taxable when the Tax Group is generated.

If the Setting Value of Tax Labor is implemented, the Tax Labor flag will be set in the Sales Tax Group. Note that there is a space between Sales and Tax in the Setting Value.

If there is a registry setting that has the setting value of ANYTHING other than "Tax Labor" or "Use AvalaraRule", it will NOT set the Tax Labor on the Group.

Specify Tax Rules by State

The following settings may be used to specify the tax rules by state for Tax Groups generated by Avalara.  These registry settings trump the input options on the start function.

Setting Key: stateid~TaxSubcontract   Setting Value:  Y or  N

Setting Key: stateid~TaxMaterial   Setting Value:  Y or  N

Setting Key: stateid~TaxOther   Setting Value:  Y or  N

Example: (for California)
Setting Key: CA~TaxSubcontract   Setting Value: Y

Specify GL Account by State

This setting allows you to specify the Tax Authority's sales tax liability account to be credited.

Setting Key: stateid~GLAccount   Setting Value: GL Account Id

Example (for California)
Setting Key:  CA~GLAccount   Setting Value: 5100

8.4.2b Registry for Sales Tax Authorities

This registry may be used to warn or prevent a user from changing/deleting an imported Sales Tax Authority.

Id: sys-viewer-vslstxathrty

Setting Key: EditImportedRecords    Setting Value:  error OR warning

If error is selected, imported Sales Tax Authorities cannot be manually edited or deleted.  If warning is selected, a user is warned when editing or deleted an imported Sales Tax Authority.

8.4.2c Registry for Sales Tax Groups

This registry may be used to warn or prevent a user from changing/deleting an imported Sales Tax Group.

Id: sys-viewer-vslstxgrp

Setting Key: EditImportedRecords    Setting Value:  error OR warning

If error is selected, imported Sales Tax Groups cannot be manually edited or deleted.  If warning is selected, a user is warned when editing or deleted an imported Sales Tax Group.

8.4.3 New Viewer: Avalara Sales Tax Data

This viewer displays the Sales Tax Data imported via the Start Sales Tax Update (Avalara) function.  

8.4.4 Start Sales Tax Update (Avalara)

Purpose:

This function enables the user to create and update SAMPro Sales Tax Groups and Authorities from Avalara's database as delivered in a text file. Note that the Tax Flags will be set in the Sales Tax Group records, NOT the Sales Tax Authorities.  The Authority Rules flags are not set in the Sales Tax Authorities.

Usage:
To Import an Avalara File:

1. Click the Import Sales Tax CSV button. When you do so, a browse window will open.  Browse to the location your Avalara CSV or TXT files are stored.

2. Select a file to import.  When you do so, the data will be imported.  This may take a few minutes. When the Import is complete,  A workspace will open with a log file of your import results; this may be closed or saved.

To Create / Update Sales Tax Authorities/Groups

Importing the Avalara data does NOT generate / update the Sales Tax Authority and Groups in SAM Pro.  To do so, complete the appropriate fields and then click the Go button.

Last Updated:
Avalara provides a 'Last Updated' date for each row in the import files they provide. When the starter function is run to update the Groups and Authorities, Avalara records whose Last Update Date is less than this field will be skipped.  To that ensure all Groups and Authorities are updated leave this field blank.

GL Account Id:
This field specifies the GL Account to be used in Tax Authority records created from Avalara data. This field will be overridden by the stateid~GLAccount registry option if implemented.

Tax Material?
This fields controls how the Tax Material? field in the Sales Tax Groups will be set.  This field will be overridden by the stateid~TaxMaterial registry option if implemented.

Tax Other?
This fields controls how the Tax Other? field in the Sales Tax Groups updated by this function will be set.  This field will be overridden by the stateid~TaxOther registry option if implemented.

Tax Subcontract?
This fields controls how the Tax Subcontract? field will be set in Sales Tax Groups updated by this function.  This field will be overridden by the stateid~TaxSubcontract registry option if implemented.

Labor Tax Selection: o Use Avalara Rule  o Tax Labor  o Don't Tax Labor
This field controls whether or not Labor will be flagged as Taxable in Sales Tax Groups updated by this function.

State:  
We recommend completing the State range (with the appropriate 2-character State code); running the function wide open can take considerable time.

Zip Code:  County Name:  City Name:
Enter one or more of these ranges to limit the update to the specified Avalara data only if you are sure the authorities updated are limited to the ranges specified.

WARNING: Do Not Filter the Avalara Update
If you filter your Avalara update to a specific Zip Code, only that Sales Tax Group would have its Sales Tax Group Rate recalculated. If the update to that Group included changes to rates also impacting other Group (e.g., the State Rate rate), the applicable Tax Authority would be updated, but the other Tax Groups referencing it would not have their Group Tax Rates reset. This is a particular problem since TechAnywhere uses the Group Tax Rate. For this reason, we strongly recommend that you allow your Avalara updates to run wide open so that all applicable Sales Tax Groups will be properly updated.

Always Create Separate Use Tax Groups?
Flag this box if separate Sales and Use Tax groups should be always be generated, even if the Sales and Use Tax rates are the same.  The Use Tax groups will specify (Use Tax) at the end of the Sales Tax Group Name.

Job Cost Use Tax Group Authorities?
Flag this field if the Job Cost? box should be flagged for all Authorities in each Use Tax Group. If this box is flagged, the system will assume that Always Create Use Tax Groups is also flagged to avoid undesirable results.

 Click the Go button to create/update Sale Tax Authority and Group records in SAMPro from the current Avalara Sales Tax data.

8.5 Sales Tax Authority

8.5.1 Main Tab

New Field: GL Expense Account
This field specifies the Expense Account for sales taxes paid. If completed, it will be debited in the AP Journal for sales taxes paid.  If this field is not completed, the system will continue to use the Sale Tax Authority's GL Account (Liability) to post a debit to the associated account. This will preserve prior installations where 2 authorities would be set up (one for Sales taxes collected and one specific for AP for sales taxes paid).  These users could migrate to the new design with little or no impact.

New Fields: Imported From:  Last Updated:  Signature Code:
These display field will be completed if this Sales Tax Authority was imported/updated; currently Avalara imports are supported.  The Last Update date specifies when the Avalara file was lasted updated for this Sales Tax Authority. The Signature Code is from the Avalara import file; in most cases, it will be the same as the Sale Tax Authority Id.

8.5.2 Sales Tax Authority GL Entities

The system now incorporates Sales Tax Authority GL Entities into credit-side tax cost processing when the GL Entity is not set from other sources.

Purchase Order Inventory and General lines:
Now uses GL Entity from the PO parent when available, otherwise from Tax Authority. Previously, only the PO parent's GL Entity was considered.

AP Journal: All child lines
Now uses GL Entity from the AP parent when available, otherwise from Tax Authority. Previously, only the AP parent's GL Entity was considered.

Inventory Adjustment Journal:
Now uses GL Entity from the parent when available, otherwise from Tax Authority. Previously, tax costs from To/From used the associated Company Balance Sheet GL Entity.  

Work Order Inventory / Other Lines
The system now uses the GL Entity from the Tax Authority when not supplied by other defaults (e.g., Company Balance Sheet GL Entity).

Work Order Entry
The system now uses the GL Entity from the Tax Authority when not supplied by other defaults (e.g., Company Balance Sheet GL Entity).

Inventory Receipt Journal
The system now uses the GL Entity from the Tax Authority when not supplied by other defaults.

8.6 Sales Tax Group

8.6.1 Tax Authorities Tab

A new index has been added to this table to require that a specific Sales Tax Authority can appear no more that once in the same Sales Tax Group. The system will display a 'Child Row Update Failed' error if a user attempts of add the same Sales Tax Authority more than once in the Group.  This error will also appear doing a data import.

8.6.2 Parent Screen

New Fields: Imported From:  Last Updated:  Group Signature:
These display field will be completed if this Sales Tax Group was generated from imported data; currently Avalara imports are supported.  The Last Update date specifies when the Avalara file was lasted updated for this Sales Tax Group. The Group Signature identifies the Zip Code plus municipal Authority included in this Group.

8.7 Material Revenue Calculations (all viewers)

Version 9.0 implements a refinement to the methodology for computing a revenue rate markup based on unit cost; it also implements options for 'margin' and 'multiplier' calculations.

IMPORTANT: Contractual Rates
While the new default calculates provide more refined revenue calculations, this change may cause issues Client-specific material markup rates that are contractual are specified. In this case, maintaining the previous methodology (via registry) may be advisable.

8.7.1 Material Rate Table - Aggregate Level Markup

In previous versions, materials markup always calculated as the cost plus markup without considering any lower cost levels. However, this could result in pricing inconsistencies. For example, suppose a $5 item is marked up 700%.  The charge to the customer would be the cost of $5.00 plus a $35 mark-up or $40. But suppose that an item that costs $6.00 has a 400% mark-up.  In this case, the price would be the cost of $6.00 plus a $24 mark-up resulting in a price of $30 (or $5.00 less than the cheaper item).

In Version 9.0, the default code used to calculate the price has been refined to take the previous level into account when doing the calculation resulting in a graduated price structure. Under the new methodology, a $6.00 item would be marked up as follows:

First level (700% rate up to 5.00 level): $5.00 plus a $35 markup = $40.00

Second level (400% rate above 5.00 & up to 10.00 level): $1.00 plus a $4.00 markup =$5.00

Total graduated price: $40.00 (for the first level) + $5.00 (for the second level) = $45.00

Two new display-only columns,  Unit Price Min and Unit Price Max have been added to the Material Rate Table. The following illustration shows the new methodology where the Unit Price Min on the second line is forced to the Unit Price Max from the previous line in the new, aggregated approach.  


Under the OLD Methodology (now enabled via registry) notice that the Unit Price Max of the first line exceeds the Unit Price Min of the second line - leading to inconsistencies in pricing near the price break.

 

The following illustration provides a real-life example of the old and new methods:

8.7.2 Registry To Default to Non-Aggregate Markup

The new methodology is the default in version 9.0.  To return to the old methodology, the following registry entry is required. Note that this registry also impacts how the Material Rate Types of Margin and Multiplier are handled.

Registry Id: sys-ffv-global-settings

Setting Key: MaterialMarkupMethod     Setting Value: old

8.7.3  New Material Rate Types of Margin or Multiplier

New Field:  Material Rate Type:  Margin - Multiplier

In previous releases, the Material Rate Table only supported Markups (cost plus markup). In Version 9.0, Material Rate Tables converted from version 8.2 (and before) will be assigned the Material Rate Type of Markup to support previous behavior.  

The following types are also available:

Selecting Margin enables the user to set the desired profit margin ((Unit Price - Unit )/Unit Price) for this item in the Rate field (entered as a percentage).  Validation ensures that the Rate must be less than 100 for tables with the Material Rate Type set to Margin. The following shows the Margin equivalent of the previous Markup table (using the new methodology).

If you select Multiplier, the system will multiply the Rate X Unit Cost to obtain the Unit Price. For example, a multiplier of 1.2 applied to a cost of $100 would yield a unit price of $120.

Note that both Margin and Multiplier are also 'smoothed' so that the Unit Price Max of the first line is forced to equal the Unit Price Min of the second line unless the sys-ffv-global-settings MaterialMarkupMethod option is set to old.

8.7.4 All Viewers with Inventory/Material Entry

Changed Field - Bill Type Id:
If the new markup methodology is in effect this field will be set to Unit Price because the price calculation is the result of an aggregate calculation. If the old markup methodology is in effect this field will be set to the applicable value (margin, markup or multiplier). See Customer Note 8.3 for details. As in previous versions, this field will also be set to Unit Price if the Inventory Item's Use Price Levels? field is flagged.

8.8 Create PM Billing

In previous releases, this function skipped all Sites flagged as Inactive, and did not consider the Date Closed (which could be in the future). In this release, this validation is refined so that Site with a future Date Closed will not be skipped when this function is run, even if it is flagged as Inactive.

8.9 Compute Service Invoice

This release corrects an issue with reversal Job History lines if a user attempted to edit a previously invoiced line. This could result in a negative 'ghost' line on the second or third invoice for that Work Order.

This release corrects sporadic 'key is missing' errors when invoicing COD Work Orders.

For Warranty Jobs, the Tax Group may be determined from the Site's COP tab instead of the Job itself, In previous releases, the Tax History did not have the Tax Group completed, and Tax reports were missing these invoices. This release corrects this problem.

8.9.1 Compute Service Invoice Checklist

Potentially out-of-balance Cash Receipts / AR Sales $0.00 Entries will appear on the Checklist but cannot be checked for processing; a workspace warning message also be displayed.

New Field: Skip Print Invoice
This field will be flagged if this invoice will be emailed AND the new functionality to skip print emailed invoices (see Customer Note 8.2.2a) is enabled via registry.

8.10 Rate Schedule Viewer

When the Rate Schedule is saved, the detail lines are now re-ordered with the most recent entries at the top. Enhanced validation prevents overlapping date ranges and gaps which cause undesirable results when SAMPro attempts to determine which line of the Rate Schedule to use.

8.11 Record Billing Adjustments

This release corrects a very sporadic Runtime error: "containsPoint:" not understood.

In Version 9.0.572.034-049, when you clicked the Save button in Record Billing Adjustments the function restarted at the Job Id input screen. In this release, the default is NOT to restart the function. See Customer Note 8.1.4 for a registry to automatically restart Record Billing Adjustments.

8.11.1 Sales / Use Tax Validation

Validation has been added to warn the user if Sales or Use Tax has not been computed when the invoice is saved as Ready to Print. The following warning will be displayed if a sales or use taxable invoice is saved as Ready To Print if there is a Next Invoice Amount but the Taxes tab is blank.

Warning: Compute Sales Tax has not been Pressed.

Ok to continue?

Click No to return to Record Billing Adjustments to click Compute Sales Tax before saving. If you click Yes to continue, the appropriate entries will NOT be made to the Sales Tax Table which is used for Sales Tax reporting.

8.12 Reverse Job Invoice

In this release, the WO COD Tab's Invoice Reference is cleared during Start Job Invoice Reverse process. This allows the user to edit the Work Order's COD child tab if needed before re-billing the Work Order.

This release corrects a spurious SQL error  (invalid object name 'FMMSInfo') which occurred if data was initially converted to V9.0 on 9.0.572.030 or earlier and the table expected by the function was not found.  

9 Job / Job Costing

9.1 Job Related Registries

9.1.1 Registry to Refine Job Costing for Labor

A new methodology (enabled via registry) is available to keep wage and non-wage hourly-type amounts separately so that percent-type cost lines can be applied to wages only. This registry is also required to Job Cost Pay Rate Adjustments on the Job's Employee Overrides tab.  

See Customer Release Note 12.1.2 for details.  

9.1.2 Change to Auto-Numbering via Job Sequence Field

If enabled, the registry key JobSequenceField=true in sys-viewer-vjb determines which field in the Job record contains the mask for auto-number job id's when using the Job Clone function. In previous releases, it was an all or nothing feature meaning if you made the registry setting ALL jobs must auto-number.

In this release, if the JobSequenceField registry exists AND the job template you are cloning from has a mask in the specified field, the system will continue to auto-number as before. However, if the Job / Job Template DOES NOT have a mask in the specified field, then the user should manually set the Job Id in the Job Clone wizard.

9.1.3 Job Journal Registry To Require Net Zero Costing on Co.Equip Tab

Id: sys-viewer-vjbjrnl

Setting Key: NetZeroEquipmentCost   Setting Value: true   (default false)

This registry impacts the Job Journal's Co.Equip tab which is used to charge company equipment assets to a Job or Work Order. When enabled, this registry requires that the costs entered on the Co.Equip tab net to zero. This entry provides a means of controlling job cost transfers.

9.1.4 Report Job Detail Registry to Suppress Labor Costs

This option suppresses labor costs on the details lines. This registry is available in the report dated 2011-10-27 but was not previously documented.

Id: sys-report-rjbdtl

Setting Key:  HideLaborCostDetail   Setting Value: true

9.1.5 Skip Unapproved CO's in Job EOM

This release implements a new registry setting which, when set, skips Change Orders that haven't yet been approved. If this entry is not in place,  Change Orders are included in the calculation for revenue recognition even if the Change Order was not approved until the next accounting period.

Registry Id: sys-job-eom

Setting Key: SkipUnapprovedCOs   Setting Values: true   (default false)

The above option is recommended if the following are also in place:

Setting Key: Contract  Setting Value: PercentComplete    

Setting Key: ContractPercentCompleteLevel   Setting Value: job

9.2 Job Related Reports

9.2.1 Drilldown Service Profitability Component Report

The revised component report CSERPFT1.rpt dated 2016-09-28 corrects an error when drilling down from the Drilldown Service Profitability report.

9.2.2 Report Job Billing Report (RBLLRPT.rpt)

The revised report (AKA Report Job Billing Recap) dated 2016-03-31 supports Security Id processing and corrects an issue which caused it to 'hang' in some environments.

9.2.3 Report Profitability by Client (DCPFTRv73b029.rpt)

The revised report dated 2016-10-19 enhances how the billed costs are calculated for the Labor, Material, Other, and Subcontract columns at the Client, Client Site, and Bill Item Summary levels.

9.2.4 Report Job Cost Details – Direct

This new report (RJBDTLDRCT.rpt dated 2016-01-10) resembles the original Report Job Billing Details but skips all overhead jobs in order to prevent typical users from running the report for indirect overhead jobs and seeing confidential data.

9.2.5 Report Jobs in Progress

The revised report (RJBPRGRSS.rpt) dated 2017-03-10) replaces the Over/Under Billed column heading w/ Total Billed JTD - Cost JTD.  For Change Orders (Billing Items with the Change Order? box checked), the report now checks the CO Date Approved when determining whether or not to include the CO Amount in the Total Revised Contract: the CO Date Approved must be less than or equal to the report's Ending Date.

9.2.6 Report WIP Summary 2 (% Completion Method)

This new report (DWIPSUM2.rpt) dated 2017-03-13 calculates Total Estimated Revenue from the Contract Amounts in the Billing Items. For Change Orders, the Date Change Approved must be less than or equal to the Ending Date for the report.

9.2.7 Profitability Analysis Report

The Profitability Analysis Report (RPRFTRPT.rpt) dated 2018-05-15 has been updated to include filtering by the job billing item. This report is used to show billing details by contract items and can now be sorted by both the billing item and job which will show revenue earned first by each job account and second totals for bill item.

9.3 Job Viewer

Create PO Button: When this button is clicked, the caret will be positioned in the Vendor Id when the PO is opened to save keystrokes.

Corrects a collection out of bounds error when changing records with the JC Summary Tab displayed.

9.3.1 Job Main Tab

New Fields:

Lien Waiver Req'd?
This field should be checked if Lien Waivers are required for this Job.  The field will be displayed in the PO Header and AP Header for any PO's referencing the Job in the header, and subsequent A/P transactions referencing a PO that references the Job. The user will be warned when creating a PO or AP Journal for a Job that requires a Lien Waiver.  The Lien Waiver warning message is silenced then PO Orders referencing a Lien Waiver Job are generated via the Quote and Quote Manager Approval Wizards.

City  State/Province Zip/Postal Code
This information defaults from the Site record, and displays just below the Job Tax Status to help with the selection of the correct Sales Tax Group.

Changed Fields:

Job Contact 1 Extension:   Job Contact 2 Extension:
These phone extensions have been expanded to 7 digits.

 When records are cloned via the Job's Clone Job button, a record change log entry noting the source record reference info is written to each new record.  

Auto Numbering: If enabled, the registry key JobSequenceField=true in sys-viewer-vjb determines which field in the Job record contains the mask for auto-number job id's when using the Job Clone function. In previous releases, it was an all or nothing feature meaning if you made the registry setting ALL jobs must auto-number.

In this release, if the JobSequenceField registry exists AND the job template you are cloning from has a mask in the specified field, the system will continue to auto-number as before. However, if the Job / Job Template DOES NOT have a mask in the specified field, then the user should manually set the Job Id in the Job Clone wizard.

9.3.2 Import Budget

In previous releases, if a user attempted to import bad data from a spreadsheet, the system would add blank lines to the Budget tab.  In this version, the system will ask the user to 'Please fix displayed errors and retry the import' and display a text box detailing the errors.

9.3.3 Job Employee Overrides Tab

New Field - PyRateAdj:
This field enables a Pay Rate Adjustment to be specified by Employee for this Job.  This Adjustment will be added to the Employee's Pay Rate for hours entered for the Labor Rate / Pay Type specified on this tab. This adjustment will also be added to the Job Cost rate for wage-type earnings if the wages are being costed AND the global registry option LaborJobCostRateMethod is set to 7687.

On Hourly Employees (that are not using standard cost), it will Accrue to GL and Job Cost the additional amount if Earnings Id setup this way.

On Hourly Employees that are setup to use standard cost, it will pay the employee the additional amount & accrue it to GL but it will not job cost the additional amount unless a special Standard Cost Earnings Group Id is setup to include the additional amount (and added to the Job's Employee Override tab).  

This additional amount is always ignored on Salary type employees.

9.3.4  Job Financial Tab

New Field: CIP Discount Percent
This release adds support for Owner Controlled Insurance Program (OCIP) and Contractor Controlled Insurance Program (CCIP) discounted insurance job costing. OCIP/CCIP Job Cost Rate Discounts are implemented by completing this field. The system will then apply this discount to the non-wage labor (burden) cost portion of labor posted to the Job for Job Cost Codes with the "CIP Discount?" field checked.

NOTE: use of this feature requires that the global registry option LaborJobCostRateMethod is set to New (see Customer Release Note 12.1.2 for details).

9.3.5 Job Invoices Tab

New Field: Discount Taken
This display field is maintained by the system.

9.3.6  Job List View

The new JobByProjectDescriptionByJobId option on the Job List's Sort Order Pane displays these columns:

Project Description - Project Id - Job Id - Job Name - Site Id - Site Name

9.4  New Record: Cost Category Group

Purpose:

This record is referenced in the Job Cost Category. It has been added to fulfill future reporting needs.

Important Fields:

Cost Category Id:
This required field uniquely identifies this record.

Cost Category Name:
Briefly describes this record.

Cost Category User1: Cost Category User2:
These optional fields may be used to record additional information.

9.5  Job Cost Category

New Field: Cost Category Group
This optional field has been added to support future reporting needs.

9.6 Skill Viewer

Purpose:

Skill records are not job-specific. They may be referenced in the Job Cost Code record to allow for  more detailed Job Cost coding in Reports and KPI's. Note that the Skill table is referenced in the Job Cost Code record only; it is not NOT written to Job History (or other History records).

Important Fields:

Skill Id:
Uniquely identifies this record.

Skill Name:
Briefly describes this record. Recommended but not required.

Skill User1-5:
These optional fields may be used to record additional information required by your company.

Obsolete?
If this field is checked, the record is considered Obsolete, and it may not be directly specified during data-entry (either by entering the Id or selecting it from a list). Obsoleted records can be edited and the Obsolete option can be cleared when necessary.

9.7  Job Cost Code Viewer

New Field: Skill Id
Skill records are not job-specific, but may be referenced to allow for more detailed Job Cost coding in Reports and KPIs. Note that although the Skill record is referenced in the Job Cost Code record; it is not NOT written to Job History (or other History records) when an entry for this Job Cost Code is posted.

New Field: CIP Discount?
This field should be flagged if the CIP Discount Percent in the Job record should be applied to discounts the non-wage labor (burden) cost posted to this Job Cost Code.

NOTE: use of this feature also requires that the global registry option LaborJobCostRateMethod is set to New (see Customer Release Note 12.1.2 for details).

9.8 Change Order

9.8.1 Main Tab

New Field - % Likelihood:
This field is reserved for future use in SAMPro's Job EOM function.

9.8.2 Invoices Tab

New Field: Discount Taken
This display field is maintained by the system.

9.9  Job EOM Processing

Job EOM now writes the Work Order Reference RN to GL History. This enhancement will help users tie out financials to a work order.

9.10 Project Manager Workbench

The RFI, RFQ, Transmittal, Submittal and Other files processed by this viewer now support the sys-document-archive registry's UseSubdirectories option.

9.10.1 Subcontractor POs Tab

Changed Fields:  Earned %:  Amount Earned:
Validation now prevents the amount earned from being reduced below the threshold of what have already been vouchered in A/P.

9.10.2 Invoices Tab

New Field: Discount Taken
This display field is maintained by the system.

9.11 Job Journal

Changed Field - Total Labor Cost: In previous releases, this running total display field was not promptly updated if the global registry LaborRatesAndAccrualMethod=7687 was enabled. This field is now correctly updated when the Job Cost Code is entered.

The Job Journal's Tab Mismatch logic has been refined to consider all versions (base,-01,-02,etc) when determining if the post to GL will be in balance.

9.11.1 Accounting Period Validation

Budget and Budget Change entries no longer require Accounting Period / Date validation. Only 'Actual' type entries require this validation. The Transaction Type CANNOT be changed once data has been entered on any of the child lines.

This release includes validation to ensure that the posting to GLH for each referenced Accounting Period is in balance. If the user attempts to force different accounting periods (with GL enabled) on the Labor or Expenses tab, the message "WARNING: this transaction is out-of-balance and must be corrected before it can be posted" will be displayed. When the user has acknowledged the message, a workspace will be displayed to show the user what is wrong so that the entry can be saved.

9.11.2 Intercompany Support

Job Budgets, Job Labor, Job Expense and Projected Cost now have the Security Id set when created in the Inter-Company model. New validation  requires Job Journal entries for Inter-Company type clients to include 2 or fewer companies on each child tab. The 'Parent' company is the company whose GL COS account is credited.

9.11.3 Job Journal Expenses Tab

Cost Categories with a Selection Type of Equipment are now allowed on the  Expenses tab.

9.11.4 Job Journal Main Tab

Changed Field: Transaction Type
The default Transaction Type is now set to 'Unknown', forcing the user to decide on the Transaction Type before entering any detail lines. Note that Custom Field functionality may be used to set the Job Journal's default Transaction Type to 'Actual' if the previous functionality is preferred.

9.12 Project Manager Viewer

9.12.1 Invoices Tab

New Field: Discount Taken
This display field is maintained by the system.

10 General Ledger  / Bank Journals

10.1 Registry

 

10.2 Reports

10.2.1 GL Reports Set

Parameters:
The token commentary may now be used to specify the Commentary text on the user defined GL report(s) run from this set.

parameter key:    glrprt.cmmntry
English version:  commentary

commentary={Commentary Text as desired}

10.2.2 Report Bank Reconciliation (RBNKRECN.RPT)

Revised 2015-08-06 to support edited Bank Deposit Transaction Id's which may now include a tack number.

10.2.3  Crystal Bank Deposit Reports

Reports revised to support edited Bank Deposit Transaction Id's which may now include a tack number:

Crystal Report Bank DepositSQL8.2.545.073Up.rpt
Crystal Report Bank DepositSQLk5WCompanySecurity8.2.545.073Up.rpt

10.2.4  GL Report Row Layout

In this release, underlines may also be printed below totals using the same underline options on the EndTot lines as defined for the BeginTot lines. To do this, enter the character to be used for the underlining (usually "-" or "=") in the - (Underline) field for the EndTot line.

10.2.5  GL Income Report

The release corrects display issue when this report is held open. In previous releases, if the GL Income report was held open after a report was printed, if you attempted to change the GL Reporting Period the RN of the first period run was maintain.  In this release, the GL Reporting Period is properly refreshed.

10.2.6 Report Journal Listing GL Entries

The report (RGLJRNL.rpt) dated 2016-12-16 fixes a sporadic issue where the report did not match the GL Journal viewer total debits and credits.

10.2.7 GL Trial Balance Report

This release corrects a sporadic display issue if the GL Entity viewer is open when the report is run.

10.2.8 Bank Deposit Journal Report:

This new report (BNKDPST.rpt) prints the Journal Entries and associated receipts by the bank GL Account. The Start/End date is based on the Bank Deposit Effective Date.

10.3 Bank Reconciliation Journal

Edits to the Bank Reconciliation Journal involving blanking the "clear" indicator now reset the Date Reconciled back to "1900-01-01"  for Bank Deposit and Bank Transfer entries. Previously, the Date Reconciled was only cleared on Check tab edits.

10.4 Bank Deposit Journal

Validation now ensures that edits to this journal are never allowed in a closed accounting period.  When an unreconciled Bank Deposit Journal entry is accessed, the user is warned if the Accounting Period is closed, and that Reversing entries will take the Effective Date and Accounting period assigned to the new transactions. When the user changes the Effective Date and Accounting Period and saves the entry, the system writes the reversal AND forwarding transactions to the current period.

The new transaction will be saved with a tack number (01,02, ...) appended to the Bank Deposit Transaction Id.

10.5 Bank Transfer Journal

Refined validation checks reconciliation of header and detail GL Account / Entities entries separately. Also prevents changes when the Reconciliation Journal has changed while the Transfer Journal is being edited.

Validation also prevents Bank Transfer Journal entries from being deleted if the Accounting Period is inactive.

New Fields: Parent
Company Id:
This field will be completed by the system if Intercompany Security is implemented.

New Fields - Transfers From Tab

Company:
Specifies the Company the Transfer is from if Intercompany Security is enabled.

Recon Id: Recon Date:
The Bank Reconciliation Transaction Id and Date for this line.

10.6 Recurring GL Journal

The system now validates that each Company referenced is balanced when Intercompany is enabled.

10.7 GL Reporting Period

Changed Field: Report Title:
In previous releases, the Report Title field was copied when a GL Reporting Period was 'cloned' by editing the GL Reporting Id and tabbing out of the Id field. This resulted in the Report Title being set incorrectly.  In this release, the Report Title is cleared when a GL Reporting Period is cloned: it will be set based on the Fiscal Year and Date when the new record is added.

11 Assets and Rentals

11.1 Reports

 

11.2  Registries

 

11.3 Create Rental Billing

In previous releases, this function skipped all Sites flagged as Inactive, and did not consider the Date Closed (which could be in the future). In this release, this validation is refined so that Site with a future Date Closed will not be skipped when this function is run, even if it is flagged as Inactive.

11.4 Asset Viewer

Changed Fields - Asset User Fields 1-5:
These fields can be used to set Equipment Fields when creating new equipment via the Create New Equipment button on the Location tab.

The following keys can be entered on any of the Asset User fields pass valid Id's to the corresponding Equipment fields.

Tech=a valid Technician Id
Cert=a valid Certification Id
Script=a valid Call Script Id
Profile=a valid Escalation Profile Id
Metric=a valid Log Form Id
Category=a valid Service Category Id

Important Note:
Do not include a space between the key and the Id.  For example, to set the Service Category to HVAC:

Correct:  Category=HVAC    Incorrect: Category = HVAC

Multiple key/id pairs, separated by commas, can be entered on a single Asset User line.

Tip: Use Custom Fields to Set User Asset Fields

The Custom Fields functionality allows the user to select from a list of appropriate key/id combinations.

12 Payroll

12.1. Payroll Registry

12.1.1 Auto Sequence Employee Id

This enhancement provides for the auto-sequencing of Employee Ids. If this option is enabled, the user will not be allowed to specify the Id when creating an Employee. This feature must be discussed with your support representation.

12.1.2 Registry Entry to Refine Job Cost Calculation

Id: sys-ffv-global-settings

Setting Key: LaborJobCostRateMethod  Setting Value: New

NOTE: No Burden From Cost Codes
If the above registry is enabled, the system now assumes that the following is also enabled (even if it is not implemented in your database). This ensures that the labor burden is correctly calculated.

Setting Key: DisableCostCodeHourlyBurdenRate   Setting Value: true

The new methodology computes the wages, fringes and j/c-only portions separately then returns sum of the three. This registry is also required if the Pay Rate Adjustments specified on the Job's Employee Overrides tab are to be job costed (for wage type earnings being costed).

The new methodology keeps wage and non-wage hourly-type amounts separately so that percent-type cost lines can be applied to wages only. Note that this registry impacts Job Cost / Job History values, not Payroll. Labor entered in the Work Order, Labor Journal, PR Journal and the Job Journal will use the new methodology enabled via this registry.

 

 

12.1.3 Registry Report Payroll Check

In this release, the PR Check registry format sys-report-rprchck-GLACCOUNTID-GLENTITY also supports the bitmap option (if enabled). Previously, only the MICR options were supported.

12.1.3a   Print the Report PR Check Detail After the Check Run

Id: sys-report-rprchck

Setting Key: PostReports   Setting Value: rprchckdtl

This registry enables the printing of the Check Detail report following the posting of PR Checks. The input screens for the report will be displayed but the report must be started manually with the appropriate fields completed.  

IMPORTANT REGISTRY NOTE: If you are using the sys-report-rprchck-glaccnt-glentty registry format, the PostReports option MUST be enabled in the base sys-report-rprchck registry.

12.1.4 Registry Report PR Miscellaneous Deduction Check

In this release, the PR Miscellaneous Deduction Check registry format sys-report-rprmdchck-GLACCOUNTID-GLENTITY also supports the bitmap option. The MICR options are also supported in this release.

12.1.5 Report PR 401(k) Reporting for Pinnacle

The Report PR 401(k) Reporting function now supports exports to Pinnacle.  The following registry entries are required to support this functionality:

Registry Id: sys-401k-

Format Designation

Setting Key: Format Setting Value: Pinnacle

This entry is required.

Plan Number

Setting Key: PlanId Setting Value: plan

This entry is required. Replace plan with your Pinnacle plan identifier.

Filename

Setting Key: filename Setting Value: yourfilename.csv

The filename format is optional, but recommended if you will be running the report for multiple companies (if you are using the branch or security versions of the registry id).

Loan Repayments

Setting Key: L01Id Setting Value: deduction1,deduction2...

These would be entered only if repayments to a 401(k) loan are implemented in your company. deduction1,deduction2... would be replaced with the Id (or Id's) of the miscellaneous deductions used to identify loan repayments, separated by commas.

12.1.6 Registry to Reclassify Burden Cost for Overhead Labor

Id: sys-ffv-global-settings

Setting Key: ReclassifyBurdenCostForOverheadLabor

Setting Value: true  (default false)

SUMMARY of changes when new registry setting is enabled ...

1. Earnings of type burden (n/a) are included in accruals on overhead jobs.

2. GL Expense for burden (n/a) ALWAYS follows the wages.  This includes overhead AND direct jobs.

Prior to this mod, only Wage-type earnings were included in Labor-to-GL accruals for time charged to overhead jobs.  During the accruals process, the burden expense posts to the same account as the wage expense for any given labor line.  Determination of the wage expense GL Account still follows the standard rules.

12.1.7 Registry to Match Job Cost / GL Accrual of Labor

The registry fixes known labor costing issues where the dollars posted to GL Cost-of-Sales and JCH do not match. When enabled, is acts as a comprehensive calculator for Labor Pay Rates, Job Cost Rates and GL Accruals, impacting payroll calculations in the Labor Journal, WO Labor, WO Entry, the Employee Rate Test tab, and Start Compute Payroll.

Id: sys-ffv-global-settings

Setting Key:  LaborRatesAndAccrualMethod  Setting Value: 7687

IMPORTANT NOTE: We strongly recommend discussing this option with your support rep AND running tests with this registry enabled BEFORE turning it on in your live system. In general, this option should make posting more accurate, but it may be impacted by the customer's specific configuration. The new Select Rate Method to Test field on the Employee Rate Test tab will help with initial testing (Customer Note 12.5.2). In particular, this registry must NOT be used with any customizations that have the Pay Rate field available for input! 

12.1.8 Canadian AFT Processing (TD Bank EFT 80 Byte File Format)

 Registry Id: sys-aft-

  Setting Key: Format    Setting Value: TD80

See Help for additional required fields AFT processing. Make sure that the edOriginatorName field is a max of 15 characters.

12.1.9 Registry to Specify Exceptions to Taxable Fringes

This release implements registry-controlled refinements for the Earnings record's Taxable flag. This lets you specify that tax for certain specified Authorities or Groups should NOT be assessed for a Taxable fringe. The User1 and User2 fields of the Earnings Record are used to specify which taxes to exclude. The following registries are required to enable this functionality.

Id: sys-compute-payroll

Setting Key:  FringeTaxExceptionUser1  Setting Value: TaxAuthorityId  

Setting Key:  FringeTaxExceptionUser2  Setting Value: TaxTableId

(Note: the Setting Values of TaxTableId or TaxAuthorityId can be used with either of the above setting keys.)

If either or both of these registries are enabled, Compute Payroll checks the User 1 and/or User 2 fields of the Earnings Record to see if there are any Taxable Fringes should NOT be taxed by the listed Tax Authorities or Tax Tables. Note that this ONLY works for Tax Tables specified as 'Always Withhold' on the Employee's taxes tab.

Earnings Record:

Changed Fields: Earnings User1 - Earnings User2
These fields may be used to specify a list of Tax Groups or Tax Authorities for which tax should NOT be assessed if enabled via the above registry setting:

If the Earning Record is of Type Fringe, with the Taxable box checked AND  
The FringeTaxExceptionsUser1 or FringeTaxExceptionsUser2 registries are set AND
The Tax Table is specified as 'Always Withhold' on the Employee's taxes tab.

12.1.10 Custom PR ADP Export

This new format provides a customized ADP detail record generated by the Report PR Export function. This new processing will be enabled via the following registry options and entries in the Employee User2 field and with consultation with ADP.

Id: sys-pr-export

Setting Key: format   Setting Value: ADPKaback

Setting Key TaxFrequencyField   Setting Value: emplye_usr2

Note: If the ADPKaback format is specified, the FileId, PathName and CompanyCode keys must also be completed in the registry. The AltEmployeeIDField key is supported. It is optional  and if the key is not present, the emplye_id field is used.

Employee Record

The Employee User2 field must be set to the appropriate TaxFrequency value. This value will be included in the ADP export detail for the ADPKaback format.

12.1.11 Custom PR Export Paychex Mod

The following changes were made to the custom Paychex format PayChexDayNite:

Extract the new PayChex Employee # (Employee User1 field) into Employee Id, positions 1-6
Do not extract the SS# into positions 119-128, leave blank

12.1.12 Registry To Enable Optional Accrual for Bonus Pay

Id: sys-ffv-global-settings

Setting Key: AccrueBonusPay    Setting Value: true (default false to preserve original behavior)

IMPORTANT: This option may ONLY be enabled if the sys-ffv-global-settings registry option LaborRatesAndAccrualMethod is set to 7687.

This setting is only required in version 9.0. Implementing it 'activates' the Payroll Periods User2 field. It answers the question of whether bonus pay should be accrued.  The Payroll Period's User2 field must be set to True to enable this behavior. This registry impacts the Employee viewer; Labor Journal viewer; Payroll Period viewer; Work Order viewer and Compute Payroll.

Payroll Period

Changed Field: User2
This field is in conjunction with the AccrueBonusPay registry setting in sys-ffv-global-settings.  If this field is set to True AND the registry is set to true, bonus pay entered for this Payroll Period will accrue. If this field is set to False or is blank, bonus pay will NOT accrue regardless of whether or not the AccrueBonusPay setting is enabled.

If your firm accrues bonus pay, It strongly recommended that the Custom Fields functionality be used to change Payroll Period User2 field's label to Accrue Bonus Pay.  Custom Field Values of True and False should be added (these values are NOT case-sensitive).

12.1.13 Paychex SPI Flex Format

The Report PR Export function now supports the Paychex SPI Flex Format. The following registry is required to enable this functionality.

Id: sys-pr-export

Setting Key: format  Setting Value: PaychexSPI

This setting specifies that the Paychex SPI Flex format will be exported. If this setting is enabled, the Paychex format setting should not be enabled!

Setting Key: PathName Setting Value: path

This setting specifies the complete path of the directory to which SAMPro will export the Paychex file.

Setting Key: ClientNumber Setting Value: client#

This required setting specifies the client number assigned to your firm by Paychex. It will be used to generate part of the filename of the Paychex file.

12.1.14 Labor Journal Registry to Use Default Service Job in the Equipment record for all but PM WO’s

Registry Id: sys-viewer-vlbrjrnl

Setting Key: DefaultJobByEquipmentId Setting Value: true

Note that this registry is also applied to Labor Journal entries posted from TechAnywhere.

By default, the system uses the Job in the Work Order header as the default job for entering WO-related detail in the Labor Journal. This release supports the above registry setting to alter this behavior. If this registry entry is enabled (and the referenced WO is NOT preventative maintenance), the system will check to see if there is a default service job in the equipment header. If so, the Job, Cost Code and Billing item to the from the Equipment will be defaulted instead of from the WO header. If the job info is blank in the equipment record, the system uses the job info in the work order header.

For Preventive Maintenance Work Orders, Job information defaults from the WO header, regardless of whether or not this registry entry is enabled.

Note: registry options to provide this functionality is also available in the Work Order, AP Journal and Purchase Order registries.

12.2  Payroll Reports

12.2.1 Report PR Verification

Report Payroll Verification (RPRVERI.rpt) dated May 1, 2015 includes the Branch Id as a filter. This report also supports the Hard Block logic (implemented by the BranchFilterWithHardBlock global settings registry option) on the report.  Note that the report filters do not display the User's branch filters but the Hard Block is handled by the report.

12.2.2 Report Payroll Verification 2

Report Payroll Verification 2 (RPRVERI2.rpt) dated May 1, 2015 includes the Branch Id as a filter. This report also supports the Hard Block logic (implemented by the BranchFilterWithHardBlock global settings registry option) on the report.  Note that the report filters do not display the User's branch filters but the Hard Block is handled by the report.  

12.2.3 Report Payroll Worksheet

New Option: Include Dir Deposit Section?
The revised Report Payroll Worksheet (RPRWRKSv90b001.rpt) dated 2017-11-14  includes a Direct Deposit section which is enabled by checking this option. For employees with no check issued for the pay period, the section will show the appropriate info from the Direct Deposits tab in the Employee record. For employees with a check issued for the pay period, the report will show direct deposit info from the check table.

This report also includes the Branch Id as a filter, and supports the Hard Block logic (implemented by the BranchFilterWithHardBlock global settings registry option) on the report.  Note that report filters will not display the User's branch filters but the Hard Block is handled by the report.  

12.2.4 New Report PR Canadian T4 (Standard) for Standard Printers

The new Report PR Canadian T4s (Standard) and Report PR Canadian T4 Summary (Standard) do not require a printer that supports native PCL printing with a PCL 5 or 5c printer driver. These reports may require some changes to your existing registry entries, but are much simpler to run. If you still have the same printer / printer driver that you used for your T4’s last year, you may use the old version of Report PR Canadian T4.

12.2.4a Setting up and Running the New T4 Reports

Step 1: Once the new version has been installed, run Start Function Update to add the new reports (Report PR Canadian T4s (Standard) and Report PR Canadian T4 Summary (Standard) to the Report menu.

Step 2: Go to the User Group (versions 9.0 and 9.1) or User Groups and Functions (version 8.2) record for the users who will run these reports and give them access to the new reports.  They must log off and back on to access the reports.  Note that if you are running under User Group All you must also log off and on to run the new reports.

Step 3.  The new (Report PR Canadian T4s (Standard) and Report PR Canadian T4 Summary (Standard) the same registries as the old T4 reports – review or create the registries listed below as needed.

Changes for T4 Printer Registry

This registry manages the margin adjustments to enable the report to align correctly on the form.

Tip:  Most printers require negative margin adjustments for the new Report PR Canadian T4s (Standard).  We recommend starting with the following settings and adjust as needed following your alignment print:

Id: sys-printer-t4
Setting Key: marginx  Setting Value: -0.63
Setting Key: marginy  Setting Value:  -0.85

Reminder: Negative margin setting values move the report text closer to the upper left-hand corner.  Setting values without the negative sign move the report text to the right (marginx) and down (marginy).

It is not necessary to specify a default printer in this registry if you are using the new Report PR Canadian T4s (Standard) report.

New Registry for T4 Summary

The following registry may be used to specify margin adjustments on the T4 Summary (Standard) if they are different from the T4 (Standard). Most printers require negative margin adjustments for the new Report PR Canadian T4 Summary (Standard).  We recommend starting with the following settings and adjusting as needed following your alignment print:

Id: sys-printer-t4summary
Setting Key: marginx  Setting Value: -0.55
Setting Key: marginy  Setting Value: -0.95

Step 4. Unless your support representative updated your Folders view or made the appropriate Function Substitution, you will need to run the new reports from the Report Menu. Run Report PR Canadian T4 (Standard) and print a test alignment of your tax forms for one or two employees before running all copies. You will be prompted to run the T4 Summary (although Report PR Canadian T4 Summary (Standard) may be also be run stand-alone).

Make any adjustments needed to the horizontal or vertical positions via the sys-printer-t4 and/or sys-printer-t4summary registries and recheck for alignment as needed.

Step 5. Once you are happy with your alignment, run the necessary copies of your T4 forms. A message will be displayed while the forms are still printing:

Print T4 Summary Form? Insert Form Now.

If you want to print the T4 Summary, DO NOT RESPOND TO THIS MESSAGE IMMEDIATELY. The user should verify that all T4's have been printed, and then load the T4 Summary form in the printer.

After the T4 Summary form has been loaded, the user should then click Yes in the message box.

12.2.4b Additional Registries for T4 Forms

Registry for Setting Contact Info for the T4 Summary

Id: sys-report-rT4

Setting Key: t4contactperson  Setting Value: Firstname Lastname

Setting Key: t4telephone  Setting Value: aaa   eee   nnnn  

(Note: you must include 3 spaces in between each set of numbers)

Setting Key: t4extension  Setting Value : nnn

Setting Key: t4sin1   Setting Value : # # # # # # # # #

Setting Key: t4sin2   Setting Value : # # # # # # # # # (if applicable)

 

Setting the Company Name and Address for the T4 and T4 Summary

Id: companyname

Contents: Your Company Name

The Company Name printed on the T4 and T4 Summary Reports is derived from the companyname registry. The name may be entered in the header Contents field: a Setting Key and Value are not required.

Id: companyaddress

Setting Key: Line1   Setting Value: Street Address

Setting Key: Line2   Setting Value: City, Prov, Postal Code

12.2.4c .Important Notes on Other Viewer Settings:

Tax Authority Records

For any provincial Tax Authority Records, you need to put the province code in the ‘Prov:’ field.

Deduction Records

For the deduction records for Union Dues or Charitable, need to populate field ‘Deduction User 1’ with Dues or Charitable, respectively.

Employee Records

For any employee that is CPP, EI or PPIP exempt, in the Employee Viewer, on the ‘User Fields’ tab, need to populate Employee User 8, 9 or 10 respectively with a ‘Y’.

Earnings Records

This release supports an enhancement to allow Earnings records to be set up with a W2 Category of OI:40 and an Earnings Type of Wage for use in T4 processing.

12.2.5 Report Payroll GL Accounts

The revised Report Payroll GL Accounts (RPRGLAC.rpt) dated 2016-06-10 includes a new GL Account range.

12.2.5 Report PR Checks

Previously, the Document Description for saved PR Checks included the GL Account, Entity and Check #. The Document Description now includes the PR Period Id, Check Date & Check #.

The system now prevents the user from running the check report if the Checklist screen is open but the Check Report screen has been closed.  

When Intercompany is enabled, the Security Id is now set in the Check record when Checks are posted or voided.

12.2.5a Bonus Payroll Checks - Preferred Method for Version 9.0 and Up

The new Federal Tax Rate and State Tax Rate overrides on the Labor Journal Hours Tab Detail allow large Bonus Checks to be generated without the need change the Employee Record's Taxes tab. See Customer Note 12.17.4 for additional information on using the new fields.

1. Establish a new PAYROLL PERIOD for bonus checks. Example: 2017-Sept-B.

Note:  Unless overridden via registry, BONUS amounts (entered on the Labor Journal) will NOT Accrue/post to the GL, regardless of how the Accrue to GL field is checked in the Payroll Period.

 

Note: PTO Accrual and Bonus Pay Periods
Typically, PTO Hours would not be accrued on bonus payroll periods. Do NOT check the Accrue PTO or the Remote Technician Applet boxes on you Bonus Payroll Period.

2. Establish a new PAY TYPE if one doesn't already exist.

Pay Type Id:  Bonus  Description:  Bonus    Check Label:  Bonus 

Rate Factor:  1.000    Show Rate on CK: optional

Hours Type:  Other     GL Acct Id:  GL for Wages or Bonus Wages

Earnings Grp Id:  n/a

3. In the LABOR JOURNAL, enter all bonus amounts using the new bonus Pay Period Id setup in step 1 above (example: 2017-Sept-B).

After inputting zero hours to an overhead Job and your Bonus Pay Type, double click on the MAGNIFY GLASS of the line. Confirm and edit as follows:

Hours:   000.00

Salary?  (not checked)

Extra?   (not checked)

Pay Type Id:  Bonus

Bonus Amount:  Enter Bonus Dollars to Pay this Employee

Federal Tax Rate:
State Tax Rate:
These fields provide a flat rate override to the Federal / State Income Tax rate brackets in the Employee's Federal (FED-M or FED-S) and State Tax Tables. These fields are intended to be used for Bonus pay only. If these field are blank, the Federal / State Tax Table will be used as before. Enter the appropriate rate for bonuses prescribed by the tax authority.

Important Notes On Usage:

1. The overriding federal and/or state tax rates are applied directly to the Bonus Amount with which they are associated.  Taxable wage reductions (125, 401k, etc) are NOT applied to the Bonus Amount before computing FIT/SIT using the special tax rates. Tax is on Total Earnings when using this option. If this is not desired, the old methodology of changing the Employee record's Tax tab to specify a flat tax FED-bonus entry may be used instead.

2. Taxable wage reductions will eventually reduce the Taxable Wages so payroll reports, including W2s, will have the correct info.

Consider the example where an employee received a $10,000 bonus with 20% special FIT tax rate, 10% special SIT tax rate and 5% 401k deduction.  In the event special tax rates have been specified, the following is the order in which the calculations occur:

Gross Wages = $10,000

FIT = $2,000 (10,000 x .2)

SIT = $1,000 (10,000 x .1)

401k = $500 (10,000 x .05)

Taxable Wage = $9,500 (10,000 - 500)

4. Run the COMPUTE PAYROLL function for the new bonus Pay Period Id and the print the PAYROLL WORKSHEET before printing your checks to confirm your bonus checks are correct for the new bonus Pay Period Id.

Tip: Use Pay/Deduct Cycle Code XXXX to skip all deductions!

12.2.6 Report PR Misc Deductions Checks

This release corrects a problem where the Vendor was not always correctly written to the Check record when multiple Vendors were included in the Check run (note that the Vendor was correctly listed on the printed check).

When Intercompany is enabled, validation ensures that a Company is selected and the GL Entity completed when the report is run. The GL Entity now writes to the Check record when the checks are posted.

When Intercompany is enabled, the Security Id is now set in the Check record when Checks are posted or voided.

These checks now print correctly when the 20 reference limit on the stub is exceeded.  

12.2.7 Report PR Check Detail (RPRCHCKDTL)

The revised report RPRCHCKDTL.rpt dated 2016-02-17 supports GL Account / GL Entities in processing the report so that the appropriate registries (for bitmaps, etc.) will be referenced.  This report also includes formatting enhancements and allows for the printing of the report description on the report.

Employer-based taxes are no longer included (as of 2015-06-23) since this report is used as a ‘check stub’ for companies not printing actual checks when doing Direct Deposit.

12.2.8  Executive PR Processing - Revised Reports to Install

Executive PR processing has been added to the following reports via the following filter:

New Filter - Executive PR:
If you are an Executive Payroll user, this field will default to Y; to run this function for all employees (Executive or not) clear this range. If your User record is not flagged as Executive Payroll, you will only be able to run this function for other non-Executive users even if you clear the filter.

These revised reports must be installed in your database to enable the Executive Payroll functionality.

Report PR Hours Summary - RPRHRSMMRY.rpt -- revised report dated 2015-08-19.  

Report PR Hours Summary 2 - RPRHRSMMRY2.rpt - revised report dated 2015-08-19

Report PR Employee Paid Time Off - RPRSTPTO.rpt - revised report dated 2015-08-19

Report State Unemployment Electronic File - RSTTEUE.rpt - revised report dated 2015-08-19

Report W2 Electronic File - RW2EFv72_b105.rpt - revised report dated 2015-08-19

Report W2 Electronic File (Maryland) - RW2EF-MD.rpt - revised report dated 2015-08-19

12.2.9 New Report PR Check Reconciliation - RCKRECN-PR

This new report, dated 2015-08-19, excludes AP and PRMD checks. Only PR checks (both Executive and non-Executive PR) will be listed.

12.2.10 Report PR Export for ADP

The following entries are required for ADP Exports implemented with Report PR Export) rather than the earlier ADP Export functionality.

Registry Id: sys-pr-export

Setting Key: Format Setting Value: ADP

This registry option specifies that the ADP formatting will be used in the Report Payroll Export function.

Setting Key: PathName Setting Value: path

This registry option specifies the complete path of the directory to which SAMPro will export the ADP file.

Setting Key: FileId   Setting Value: YY

YY should be replaced by a 1-2 character code used to generate the filename. This is also a field on the input screen. If the FileId is set in the Registry, it will automatically default into the report range screen.

Setting Key: CompanyCode Setting Value: 2-3 character code

This is also a field on the input screen.  If the CompanyCode is set in the Registry, it will automatically default into report range screen.

Setting Key: AltEmployeeIDField   Setting Value: database field with alternate id

The Setting Value of this option should specify the database field name (i.e emplye_usr1) which contains the alternate employee id.

12.2.10a Reclassification of ADP Labor via PRS Codes for Report PR Export

This release now supports the reclassification of regular and overtime hours via the presence of a PRS code in the Pay Type's PRS Pay Code field for the ADP format only. Currently anything outside of Regular or Overtime requires a PRS code; the code and hours goes into column 3 of the export. In this release, the code is flexible so that if a Pay Type that is for regular hours, but should be re-classified on the ADP pay stub (i.e. Prevailing Wage hours and rate), the PRS code should be entered in the Pay Type.  The presence of the PRS code causes the export to put the code and hours in column 3 (hours 3).

12.2.11 W2 Forms (Plain Paper Copy)

The W2 Year is now printed below the Copy label on the Plain Paper Copy version of the report.

12.2.11a  New Report PR W-2s (Standard) and Report PR W-3s (Standard)

The new Report PR W-2s (Standard) and Report PR W-3s (Standard) do not require a printer that supports native PCL printing with a PCL 5 or 5c printer driver. These report may required some changes to your existing registry entries, but are much simpler to run. If you still have the same printer / printer driver that you used for your W2’s last year, you may use the old version of Report PR W-2.

Step 1. Once the new version has been installed, run Start Function List Update to add the new reports (Report PR W-2s (Standard) and Report PR W-3s (Standard) to the Report menu.

Step 2. Go to the User Group (versions 9.0 and 9.1) or User Groups and Functions (version 8.2) record for the users who will run these reports and give them access to the new reports.  They must log off and back on to access the reports.  Note that if you are running under User Group All you must also log off and on to run the new reports.

Step 3.  The new Report PR W-2s (Standard) and Report PR W-3 (Standard) use the same registries as the old reports – review or create these registries as needed:

companyEINfederal (see Help for details)

sys-report-rW2 (also sets contact info for the W-3 – see Help for details)

Changes for W2 Printer Registry

sys-printer-w2 (sets margin adjustments)

Tip:  Most printers require negative margin adjustments for the new Report PR W-2s (Standard).  We recommend starting with the following settings and adjust as needed following your alignment print:

Id: sys-printer-w2
Setting Key: marginx  Setting Value: -0.05
Setting Key: marginy  Setting Value:  -0.6

Reminder: Negative margin setting values move the report text closer to the upper left-hand corner.  Setting values without the negative sign move the report text to the right (marginx) and down (marginy).

Note: it is not necessary to specify a default printer in this registry if you are using the new Report PR W-2s (Standard) report.

New Registry for W3 Printer

The following registry may be used to specify margin adjustments on the W-3 if they are different from the W-2. Most printers require negative margin adjustments for the new Report PR W-3s (Standard).  We recommend starting with the following settings and adjusting as needed following your alignment print:

Id: sys-printer-w3
Setting Key: marginx  Setting Value: -0.05
Setting Key: marginy  Setting Value: -0.72

Step 4.  Unless your support representative updated your Folders view or made the appropriate Function Substitution, you will need to run the new reports from the Report Menu.  Run Report W-2 (Standard) and print a test alignment of your tax forms for one or two employees before running all copies. You will be prompted to run the W-3 (see the W3 Printing Tip below), although Report PR W-3s (Standard) may be also be run stand-alone.

Make any adjustments needed to the horizontal or vertical positions via the sys-printer-W2 and/or sys-printer-W3 registries and recheck for alignment as needed.

Step 5. Once you are happy with your alignment, run the necessary copies of your W-2 and W-3 forms (see Help for details).

W3 Printing Tips:
The Copy A option of Report PR W-2s (Standard) allows the printing of a W3 form at the end of the report. The system will print the Copy A’s and summary page as usual, and then pause. The following message box will appear:

 Print W3 Form? Insert W3 Form Now.

If you want to print the W3, DO NOT RESPOND TO THIS MESSAGE IMMEDIATELY. To print the W3 form, the user should verify that all Copy A’s plus the summary page have been printed, and then load the W3 form in the printer.

After the W3 form has been loaded, the user should then click Yes in the message box to display and then print the W3 form. Note that if taxes for more than one state have been assessed, an X will be printed in the State portion of Box 15, and the Employer’s state ID number will be blank.

12.2.11b - Report PR W2's / Report PR W2's (Standard) Copy 2 Residual Tax

If Residual Tax Withholding is used, Local wages may be overstated on Copy 2 of the W2's. The following new registry entry will omit the print of Local Line 2 on the W2's.

Id: sys-report-rw2

Setting Key: OmitCopy2LocalLine

Setting Value: true   (default is false)

12.2.12 Report EFT Payroll

This release corrects the landscape formatting of the printed Electronic Payment Register report generated when Report EFT Payroll is run to produce the electronic file for direct deposit.

12.2.13 Report AFT Payroll

This release corrects the landscape formatting of the printed Electronic Payment Register report generated when Report AFT Payroll is run to produce the electronic file for direct deposit.

12.2.14 Report PR Deductions Detail

The revised report (RPRDEDDTL.rpt) dated 2017-08-30 includes a new filter range for the GL Entity ID which relates to the GL entity assigned to the employee records.

12.2.15 Report PR Miscellaneous Deduction Check Detail

This release corrects a problem which resulted in duplicate lines appearing on the report if the Employee Deductions Tab included multiple lines with the same Deduction Id for different date ranges. This is a system report and does not need to be imported into your database.

12.2.16 Report W2 Electronic File

The Electronic W2 Report (RW2EFv72b105.rpt dated 2018-01-17) has been revised to allow successful submission with the "Permitted Benefits Under a Qualified Small Employer Health Reimbursement Arrangement" change made this year. We don't support the processing of these fields, but the revised report fills the required fields with zeros so that it can be submitted successfully.

12.2.16a Report W2 Electronic File

The revised Report W2 Electronic File (RW2EFb72vb105.rpt) dated 2018-02-16 supports the following options:

Philadelphia W2's

To support Philadelphia Electronic W2 filing the following additional registry options must be enabled:

 Id: sys-w2-ef

Setting Key: reEmployerContactName   Setting Value First Name Last Name

Setting Key: reEmployerContactPhoneNumber  Setting Value:

Enter the area code and phone number without parentheses or hyphens.

Setting Key: reEmployerContactPhoneExtension  Setting Value: if applicable

Setting Key: reEmployerContactEMail   Setting Value: email of the contact at your firm

Setting Key: reEmployerContactFax   Setting Value: fax of the contact at your firm

Setting Key: rsStateControlNumber   Setting Value: as supplied by the state of PA

NOTE:  The registry entry for rsStateControlNumber should only be enabled for Philadelphia W2 reporting. This registry must be disabled when generating electronic W2s for other authorities.

Oklahoma W2's

To support Oklahoma State Electronic W2 filing the following additional registry options must be enabled:

 Id: sys-w2-ef

Setting Key: rsOKWithholdingAccountNumber   

Setting Value: as supplied by the state of Oklahoma

12.3  Pay Type Viewer

New Fields: Pay Type User 3-5
These new fields were added to support TechAnywhere and other user-specific requirements.

12.4 Union Viewer

The following phone extension field has been expanded to 7 digits in this release:

Union Extension

12.5 Payroll Period

Changed Field: Default?
When a Payroll Period record is saved, the user is now warned if there is no Payroll Period flagged as Default.  

Changed Field: User2
This field is in conjunction with the AccrueBonusPay registry setting in sys-ffv-global-settings.  If this field is set to True AND the registry is set to true, bonus pay entered for this Payroll Period will accrue. If this field is set to False or is blank, bonus pay will NOT accrue regardless of whether or not the AccrueBonusPay setting is enabled. See Customer Note 12.1.12 for details.

12.5.1 Payroll Period List

A new sort order, PayrollPeriodByYear has been added to allow Payroll Periods to be sorted by the Payroll Year field. The following field are displayed:

Year - Quarter - Month - Start Date - End Day - Payroll Period Id - Description - Accounting Period Id

Tip:
To sort periods with the most recent fiscal year first, click the Year column header.

12.5.2 Payroll Period Range Filter

The following ranges have been added to assist in filtering:

Year
Quarter
Month

Accrue to GL? (enter Y for records with this field checked, N for records with this field blank)
Accrue to PTO? (enter Y for records with this field checked, N for records with this field blank)
Pay with EFT? (enter Y for records with this field checked, N for records with this field blank)

12.5.3 Payroll Period Hours Tab

The Hours Tab is now filtered based on the User's Executive PR and Branch Filter fields. Data for Executive Payroll Employees (Executive P/R flagged in the Employee record) will only be displayed if the Executive PR? box is checked in their User record.

Filtering based on the User's Branch Filter only comes into play when the hard-block filtering option is turned on via the following registry setting:

Id: sys-ffv-global-settings
Setting Key: BranchFilterWithHardBlock    Setting Value:true

12.8 Compute Overtime

See Customer Note 12.18 for an enhancement which support Overtime processing when checks are not printed or posted.

12.8.1 Compute PR - OT Processing

GL transaction activity (generated by Compute Payroll) which is related to the Compute Overtime function has been refined so that transaction effective dates match work dates. This solves timing issues that exist when a Pay Period straddles multiple Accounting Periods.

This release eliminates the requirement that employees belong to branches.

This release matches up the Accounting Period and Effective Date when posting Allocated OT Premium.

12.9 Compute Payroll

This release corrects the setting of the Earnings Id where a 'fixed' earning amount type is specified (such as a Bonus amounts entered on the Employee Recurring Wages tab).  

Taxes for Tax Authorities not marked 'Always Withhold' on the Employee Tax tab are only assessed for labor for a Job referencing that Tax Authority. This corrects a problem in recent releases.

The pay method is forced to 'flat' when hours = 0 and pay amount <> 0 to overcome a sporadic Labor Journal issue. 

This release corrects a sporadic virtual stack overflow error when OT Premiums are allocated.

This release implements Intercompany processing for employer taxes (etc.) allocated during the compute to ensure that all companies are in balance after processing payroll.

This release refines the rounding of payroll taxes.

A new column, prhstryjc.prhstryjc_frnge_rte has been added to assist in the correct computation of PR Fringes Allocated to JCH.  The system now uses the new fringe rate field when available.

If the new GL Expense Account is completed in the Employee's Tax Tab, Compute PR will use it to post to GL History instead of using the GL Expense account in the associated Tax Authority.  If this field is blank, the system will continue to use the GL Expense Account in the Tax Authority.  

Note: the sys-compute-payroll registry PRExpenseAccount option trumps the GL Expense Accounts on the Tax Authority and Employee Taxes tab.

12.9.1  Payroll Fringe Accruals

In previous releases, you could not accrue an Earnings ID marked Fringe because it would be double-costed when Print/Post Payroll Checks was run. This made it necessary to set up 2 Earnings Id's to book estimated fringes, and then to make an adjustment at month or quarter end to 'adjust' the cost estimates to match the actual.

In this version, Compute Payroll no longer generates Fringe Expense and Liability GL activity for fringes that have been accrued so that Fringe-type Earnings may be marked as Accrue. Note that users who did not print/post Payroll checks were always allowed to accrue the Fringes.

Note: Consult your Data-Basics Support Rep before changing any existing Fringe Earnings to the new methodology.  The previous setup will continue to work.

12.9.2 Refinements to Extra Withholding

In previous releases, if annualized Gross Pay was not high enough to qualify for a taxable rate line on an applicable Tax Table, extra withholding would not be applied. This release corrects this issue and allows the specified extra withholding to be applied. Note that if the extra withholding would result in negative net pay, the compute will return an error. This must be corrected (e.g., by temporarily reducing the extra withholding) before a check can be produced.

12.9.3 GL Entity Debit

Compute Payroll now supports the setting of the GL Entity Debit from the Job if the Earnings Id's Entity is blank. The GL Entity Credit continues to work as before.

12.9.4 Registry to Set Debit Account for Fringe Expenses Accrued on Direct Jobs

This new registry option supplements the GL Account settings currently found in the Earnings record.  This registry setting is used during Labor entry.  It specifies the Debit account for Fringe Expenses accrued against direct (non-overhead) jobs.

Registry Id: sys-ffv-global-settings

Setting Key: COSFringeGLAccountId  Setting Value: GL Account Id

12.10 Employee Record

12.10.1 Recurring Wages Tab

New Field: Bonus Amount
This new field may be used to pay flat per-period amounts such as Car Allowances. It will be written to the corresponding Bonus field in the Labor Journal.  If this field is completed, the Hours field should be blank, and an appropriate Pay Type must be selected (Hours Type and Category should both be set to Other).

12.10.2  Taxes Tab

Detail View
New Field: GL Expense Account

This field enables the use of multiple GL Accounts for employer based taxes. This field can only be set if the selected Tax Table has the Tax Employer? box checked. If this field is completed, the Compute PR function will use it to post to GL History instead of using the GL Expense account in the associated Tax Authority.  If this field is blank, the system will continue to use the GL Expense Account in the Tax Authority.  

Note: the sys-compute-payroll registry PRExpenseAccount  option trumps the GL Expense Accounts on the Tax Authority and Employee Taxes tab.

12.10.3 New Tab: Rate Test

This tab enables the user to see what the Employee's Pay and Job Cost rates are under a variety of scenarios (e.g., specific dates, jobs, etc.).

Data Entry Fields:

Hours:  Date:
These fields must be completed to see the basic Pay and Job Cost rates for this Employee.

Work Order Id:   Job Id:  Job Cost Code: Job Cost Category:
Completing these fields allows the user to see Pay and Job Cost calculations for the selected Job/Work Order (e.g., prevailing wages, pay adjustments, etc.).

Bill Item:  Extra:  Labor Rate:  Billing Rate Type: Revenue Rate:
These fields allow the user to see the revenue rate/amount revenue for the Hours entered above.

Pay Type:  Earnings Group:  
Allows for additional refinement / investigation of Pay and Job Cost rates.

New Button:

Clicking this button displays a workspace with the expected GL activity for the scenario being 'tested'.

Results Fields:

These display-only fields are calculated based on the Data Entry fields completed the base information for this Employee.

Pay Rate: Pay Rate Additional: Pay Rate Premium:
If the selected Job's Employee Override specifies a Pay Adjustment for the employee, it is included in this Rate and displayed separately in the Pay Rate Adj. field below. The Premium field displays premium rate amounts such as Overtime (if an Overtime Pay Rate is specified).

If a Prevailing Rate Job is selected, the Pay Rate displays the Prevailing Wage and the Pay Rate Additional displays the difference between the Prevailing Wage and the employee's 'normal' Pay Rate.

Fringes Unit Cost:  Fringes Cost:
Calculated based on the Data Entry fields computed for this Employee.

Burden Cost:
Calculated based on the Data Entry fields computed for this Employee and how the LaborJobCostRateMethod is set.

Pay Rate Adjustment:
If the selected Job's Employee Override tab specifies a Pay Adjustment for the employee, it is displayed here.  

Prevailing Wage? Prevailing Wage Type: PW Labor Rate:  PW Fringe Rate:
Displayed if a Prevailing Wage Job is specified.

CIP?  CIP Discount %  CIP Discoult/Hour:
Displayed if Owner Controlled Insurance Program (OCIP) and Contractor Controlled Insurance Program (CCIP) discounted insurance job costing is enabled for the selected job.

12.10.3a  Rate Test Tab New Field

Select Rate Method to Test
By default, the Rate Method will be set to configuration currently in use (see table below). Switching to a different Method resets the Rate Test Tab to the values which would be obtained if that method were in effect.

Method

Implemented  Via

7687

Registry Id: sys-ffv-global-settings

Setting Key:  LaborRatesAndAccrualMethod  Setting Value: 7687

6654

Registry Id: sys-ffv-global-settings

Setting Key: LaborJobCostRateMethod    Setting Value: New

4124

Registry Id: sys-ffv-global-settings

Setting Key:LaborJobCostRateMethod  Setting Value: BurdenOnWagesOnly

989

Pay Type implemented as an option in the Employee Earnings and Earnings Group List tables

12.10.4  Employee Earnings Tab

Changed Field - Amount Type:
A new Amount Type, Fixed (per Payroll Period), is available for Fringes. This could be used to record taxable, company-owned vehicle usage. Validation ensures that the Amount Type of Fixed may only be selected if all of the following are true:

The Earnings Type is set to Fringe
The Fringe is not Accrued
The Fringe is not Job Costed

12.10.5 New Tab: Job Overrides

This tab lists any Jobs referencing the selected Employee on the Job Employee Overrides tab. The following fields from the Job's Employee Overrides Tab are displayed:

Job Id - Earning Group - Deduction Group - Labor Rate - Pay Type - Pay Adjustment

12.10.6 Main Tab

When a user 'clones' an employee record by changing the Employee Id and tabbing out of the field, the US SocSecNo: or Canadian SIN: will be cleared.

12.11 Start Generate Recurring Labor

This function correctly identifies all eligible Recurring Labor and Other entries.  Previously, entries were skipped if the Employee Start/End Date fell entirely within the Payroll Period's Effective Dates. If the Start/End Dates of the Recurring lines on the Employee record intersect at ANY point within the Period Start/End (work) dates, the line now qualifies as "eligible".

If a warning (e.g., employee terminated) is encountered, all valid entries will be created; a list of the entries which were and were not created will be displayed. Previously, no entries were created.

This release corrects Cost Category defaulting so that the value from the Employee Recurring Wage Tab always takes precedent.

The new Bonus Amount field on the Employee's Recurring Wages tab may be used to pay flat per-period amounts such as Car Allowances. It will be written to the corresponding Bonus field in the Labor Journal when this function is run.  If the Bonus Amount field is completed, the Hours field should be blank, and an appropriate Pay Type must be selected (Hours Type and Category should both be set to Other).

12.12 Deduction Group

12.12.1 Deduction Group Deductions Tab

Changed Field - Amount:

The restriction that this field may not be zero has been removed. 

Note that Compute PR skips Deduction Group lines when the Amount is zero. However, the Deduction line may still be used for certain types of special union reporting.  When the union has an elective deduction (e.g. 401K union) or employee elects to take an additional amount (e.g. increase VacFund amount by .25).  Instead of having to create a separate Deductions Group for each Union & Employee or separate Union Deduction Groups w/various percentages/fixed amounts, the setup would include a Deduction record (e.g, 401K Union# or VacFund-Union#) with the UNION ID in the User1 field.

This Deduction would be added to the Employee Deductions Tab for those employees taking the deduction, with the appropriate Amount completed.

The Deduction (with the UNION ID in the User1 field) would also be added to the Deduction Group(s) for the Union with the Amount set to zero or a base amount.  This line is required for reporting purposes so that so that these additional dollars are also picked up on the union report.

12.13 Canadian Payroll

12.13.1 Report PR Canadian Electronic T4s

Corrects a problem reporting Employment Insurance Earnings & Canada Pension Plan and Quebec Pension Plan by forcing a print of 0.00 for EI & CPP-QPP earnings for exempt employees.

Multiple provinces will be combined in one file if the Province is blank on the input screen. The province is determined from the Employee record.

Pension Adjustments may be entered using Earning Id's with the W2 Category set to 52. These Pension Adjustment amounts will be printed in Box 52.

RPP Contribution amounts should be entered using an Earnings Id with the W2 Category set to 20. These will be printed on Box 20.

This release supports the processing of exempt earnings for the calculation of Box 14 Employment Income.

12.13.2 Report PR Canadian T4s

Pension Adjustments may be entered using Earning Id's with the W2 Category set to 52. These Pension Adjustment amounts will be printed in Box 52.

RPP Contribution amounts should be entered using an Earnings Id with the W2 Category set to 20. These will be printed on Box 20.

This release supports the processing of exempt earnings for the calculation of Box 14 Employment Income.

12.13.2a Recent T4 Corrections

This release corrects issues with the following T4 fields:

1. Union Dues reporting in Box 44
2. Employee and Company Registered Pension Plan contributions in Box 52
3. Any Earning or Deduction specifying an Other Information Box # (W-2 Category = OI:xx eg OI:40)

12.14 Earnings Group

12.14.1  Earnings Tab

Changed Field - Amount Type:
A new Amount Type, Fixed (per Payroll Period), is available for Fringes. This could be used to record taxable, company-owned vehicle usage. Validation ensures that the Amount Type of Fixed may only be selected if all of the following are true:

The Earnings Type is set to Fringe
The Fringe is not Accrued
The Fringe is not Job Costed

12.14.2 Labor-to-GL Accruals

In previous releases, changing certain values (Hours, Pay Type, etc) didn't always cause the GL Accrual Info to be recalculated.  The display only Accrual Info is now correctly re-initialized to ensure that accruals are calculated correctly in the Employee, Labor Journal, Payroll Period and Work Order viewers, and in Compute Payroll.

This release corrects a recent issue where Labor Journal lines referencing a PayType with a RateFactor of 0.0 incorrectly generated GL Accrual postings.

An override of the accumulated 'Earnings' when the Labor entry references specific Pay Type(s) specified in the Employee's Earnings tab allows an alternative way of determining overtime pay if overtime isn't at a 1.5 multiplier. This release extends support for this feature to the Earnings Group record. Click the Magnify button to access the Pay Type field.

12.15 Start Payroll GL Import

This new Starter function will allow for the import of a PR GL file from a payroll service; currently, Wells Fargo is supported. A GL Journal entry will be created when this function is successfully run. Note that the v.rgstry must have PRInterface enabled in order to run this function.

Once the file is obtained from the payroll service, it should be loaded on your system at a location where your SAMPro user can browse to.

Registry:

The following registry is required to import payroll data from Wells Fargo.

Registry Id: sys-start-sprglimprt

Setting Key:  Format    Setting Value: WellsFargo

The Wells Fargo import file is comma-delimited. The first row is a header row, and is ignored by the import.

The columns are defined as follows:

Columns 1-2: Wells Fargo info, skipped by the import

Column 3: GL Account Id

Column 4: GL Entity Id

Column 5: Debits

Column 6: Credits

Columns 7-9: Skipped by the import

Range Screen:

Period Id:
The Accounting Period these transactions will be assigned to.

Effective Date:
The effective date of the transactions: this date must fall within the Accounting Period.

Transaction Description:
This field will be used to generate the Description in the GL Journal header generated when this function is run.

Path Name of Import File:
Browse Files Button:
Enter the name of the file that you wish to import or use the button to bring up a browser to help you do so.

Preview File Button:
Once you have selected a file, this button enables you to view its contents to confirm that it is the correct one. If the file format is incorrect, the system will warn you that ‘The Specified File Does Not Appear To Be A Properly Formatted Payroll Import File’.

 When you are satisfied that the correct import file is selected, click the Go button. The system will confirm that the file has been imported. You will only be allowed to import properly formatted files.

The following validations will be made:

A test is made to check the total debits in the import file against the total debits in any GL Journal entry; if these are equal, the user will be warned that this file may already have been posted, and the use is given the opportunity to proceed or exit.  Multiple GL Journal entries could possibly show in the warning message.

The system will validate that total debits = total credits.

The system will validate that all GL Accounts and GL Entities referenced in the file actually exist in the database.

12.16 Earnings Viewer

Changed Field - Type:

N/A has been changed to Burden to better describe it's use for Job Cost Burden records.

A new Type of Standard Cost has been added. This Type would be selected if the client wished to avoid posting pay rate-based costs to Job History for privacy reasons for some or all of its employees. For this setup:

Earnings records of Type Wage would have the Job Cost Labor Entry and Job Cost PR Check fields blank.  

One or more Earnings record of Type Standard Cost would be created with one of the Job Cost fields flagged.

Each employee this setup applies to would have a Wages line and a Standard Cost line on their Employee Earnings Tab. The Wages line would be used for computing payroll, but the Standard Cost line would be used for Job Cost reporting that managers and other personnel might have access to.

12.17 Labor Journal

This release corrects a spurious 'Please clear line '#' and re-enter Bonus Amount') message when using Insert/Copy to enter multiple lines with the Bonus field completed.

This release corrects Job Override JCH calculations when the Earnings Group defaults from the Work Order's Job.

Changed Field - Payroll Period Id:
Validation now prevents changing the Payroll Period on an existing entry from one that has Accrue to GL enabled to one with Accrual to GL disabled and vice versa.

Changed Field - Extra?:
This release provides enhanced validation when copying/editing lines to prevent the Extra box from being checked for billing items that do not "allow extras."  

12.17.1 Validations

When the Payroll Period defaults in or is changed, the parent Effective Date will be changed if needed to ensure it falls within the selected Pay Period.

Validation is now performed on a line by line basis to ensure that the Accounting Period is active (if the Effective Date falls within the Accounting Period) and that the Accrual Accounting Period is active (if the Effective Date falls within the Accrual Accounting Period). Additional validation prevents the Payroll Period from being changed if any detail lines have been entered.

12.17.2 Main Tab

New Button:

 If an employee's pay (earnings) rate was changed mid-pay period, clicking the new Reset Rates button automatically recomputes each line in the selected Labor Journal entry, and asks the user to confirm the change. Previously, the entry had to be edited manually to force the recompute.

A new customization file is required to access the new button if upgrading to this build did NOT trigger a database conversion. Contact your Support representative if the new button does not appear (note that you may have to scroll down the Main tab to access the button).

12.17.3 Hours Tab

HrsBll:
If Start and Stop Times are displayed via customization, the Billable Hours field now appears to the right of Actual Hours. Billable Hours will also appear on the Detail view.

PR-to-GL Accruals:
In previous releases, accruals were skipped for Standard Cost type Earnings record when an Overhead Jobs was specified. In this release, accruals are correctly posted for Standard Cost Earnings for Jobs that are not Direct.

12.17.4 Special Federal/State Tax Rates for Bonus Pay

Labor Journal Hours Tab Detail View

Note: a new v.cus file may be needed to see these fields if a data-conversion was not triggered when upgrading to this version.

This enhancement eliminates the need to edit the Employee record before and after bonus checks are run in order to apply a Federal Income Tax (and if needed, State)  flat rate to bonus pay.  See Customer Note 12.2.5a for additional Usage instructions and details to running Bonus Check with this newer methodology.

New Fields:

Federal Tax Rate:
State Tax Rate:
These fields provide a flat rate override to the Federal / State Income Tax rate brackets in the Employee's Federal (FED-M or FED-S) and State Tax Tables. These fields are intended to be used for Bonus pay only. If these field are blank, the Federal / State Tax Table will be used as before. Tax is on Total Earnings when using this option. If this is not desired, the old methodology of changing the Employee record's Tax tab to specify a flat tax FED-bonus entry may be used instead.

Changed Field - Bonus:
Since a Bonus should never be entered on a line which also records hours; validation has been added to prevent the user from entering hours and a Bonus on the same line.

12.18 Compute Overtime Enhancement When Checks are Not Printed/Posted

This release extends the functionality of the Overtime calculator work even when checks are not actually printed and posted. To accomplish this, registry settings have been enabled to change the functionality of the Payroll Period's Post History button to generate Job and GL History as well as Payroll History (default functionality).  Note that the Post History button must be clicked after Compute Overtime and Compute Payroll have been run.

12.18.1 Registries

In addition to the existing registries required for Start Compute Overtime (in sys-start-scmpteovrtme and sys-strart-scmptepryll), the following registries are available to enable/control this Compute Overtime enhancement.

Start Compute Overtime Registry

Id: sys-start-scmpteovrtme

This required setting enables this Overtime functionality.

Setting Key: Method    Setting Value: Hutchinson

The following settings are only applicable if the Method is set to Hutchinson as shown above.

These settings specify the hours that are to be considered 'regular' hours (in additional to the regular hours entered) when computing overtime. Note that 'regular' hours may be reclassified as overtime when the Compute Overtime function is run.

Setting Key: IncludeHolidayHours  Setting Value:Y  (default N)
Setting Key: IncludeVacationHours Setting Value:Y  (default N)
Setting Key: IncludeSickHours    Setting Value:Y  (default N)

The existing registry options for sys-start-scmpteovrtme must also be set (see Help for Registry Start Compute Overtime).

Start Compute Payroll Registry

Id: sys-compute-payroll

These settings specify the hours that are to be considered 'regular' hours when the Compute Payroll function is run. The user will be warned if the user's regular hours exceed 40 (or the value set via registry) as a reminder to run Compute Overtime first.

Setting Key: RegularHoursIncludesHoliday  Setting Value: true  (default false)
Setting Key: RegularHoursIncludesSick      Setting Value: true  (default false)
Setting Key: RegularHoursIncludesVacation  Setting Value:  true  (default false)

The existing registry options for sys-start-scmptepyrll must also be set (see Help for Registry Start Compute Payroll).

View Payroll Period Registry

Id: sys-viewer-vpyrllprd

This registry impacts the Payroll Period's Post History button. When enabled, clicking it will generate Job and GL History as well as Payroll history.

Setting Key: PostJCH    Setting Value:true

The following registry is also recommend to ensure that the Accrue to GL flag is set in the Payroll Period viewer:

Setting Key: AccrueToGL Setting Value: true

View Employee

Require that the Payroll Periods Per Year is set in the Employee record to prevent errors when Overhead and Payroll are computed.

Id:  sys-viewer-vemplye

Setting Key: RequiredFieldsParent Setting Value: emplye.py-prds

12.18.2 Payroll Procedure for Overtime Calculation

1. Verify that all registry setting have been properly entered.

2. Enter labor for a Payroll Period which has the Accrued to GL box flagged.

2. When the entries for the Payroll Period have been completed, run Start Compute Overtime.

3. Next run Start Compute Payroll.

4. In the Payroll Period viewer, click the Post History button to generate Payroll, Job Cost and GL History without printing / posting checks.

5. Run the reports used to generate information for your payroll service.

12.19 Workers Comp Category

12.19.1 Support for Security Filtering

This enhancement is applicable to a scenario where the WC state from the Job is used to determine the Cost Cat Workers Comp codes to use in the Labor Journal and WO Labor tab. In addition, unique Security-specific WC codes are implemented for each company containing the proper rates, and then added multiple WC codes with the same state to the cost category.  Previously, when the system matches up the Job WC state to the Job Cost Category WC Code, it did not stay within the same security and just selected the first one on the list. 

In this release, Security has been built into this matching process so that it uses the appropriate WC code for the company that the job/labor journal transaction resides in.

13 TimeAnywhere

 

13.1 TimeAnywhere 1.0

 

13.2 TimeAnywhere 2

This release provides an enhancement to support Process TimeAnywhere Files in a Sybase environment.

The terminated employee warning is now ignored when posting labor to prevent posting failures.

The TimeAnywhere 2.0 web-browser interface provides the user with more screen real estate and convenience for time entry. Please contact your support representative for a Powerpoint illustrating the use of this new interface. This web application writes directly to the SAMPro database records discussed below.

TimeAnywhere 2.0 supports posting to the Start / Stop times in the Labor Journal if the employee works past midnight (e.g., 11:00 PM - 12:30 AM).  In this scenario the actual hours worked will be assigned to the date selected by the TimeAnywhere user; the entry will NOT be broken into two entries (for hours before and after midnight).

13.2.1 Employee Viewer Setup - Other Tab

Remote Time Sheet Style (may be labeled TimeAnywhere Type):
Set this field to Individual if this employee will only be entering time for him or herself.

For Crew Managers, this field MUST be set to Foreman in order for them to also see and log time for their Crews.

13.2.2  User Record Setup

In order to log onto TimeAnywhere, the Employee Id must be completed in the User record.

13.2.3 User Registry to Filter Which Employees a Foreman in TimeAnywhere Can Manage

On the Registry tab of the Foreman’s User record, indicate the fields you would like to use to narrow down the number of Techs a Foreman can view from the field. Use any of the following fields in the Key column:

Key:

TimeAnywhereEmployeeType
TimeAnywhereEmployeeBranch
TimeAnywhereEmployeeUser1-10 (10 fields)

Value: The value or list of values in the key field of Employees the Foreman should be able to see

The Value column should list the field values of the Techs your Foreman will be able to see. Field values should be separated by commas (i.e. East,Wsest).

If a Foreman, for example, has a customized field placing him in the East district, he will be able to enter information for himself even if his User registry is set to West. For the Foreman to be able to enter information for other Techs in the East and West districts, his User registry should list both- East,West. Note that a Foreman will always be able to enter time for himself even if his value is not included in the User Registry.

13.3 TimeAnywhere Labor Viewer

Purpose:

This record displays labor data generated from TimeAnywhere. When it is flagged as Submitted from the web, it will eligible to be Posted to the Message table via the Start Process TimeAnywhere Files function (which may either be run manually or as a Schedule Event.)  

The Messages are used generate Labor Journal Entries when the Start TimeAnywhere Post function is run.  

Usage:

This entry may be edited if it has not yet been Posted to the Message table.  If it has been Posted to the Message Table, this record cannot be changed; the associated Labor Journal entry can be edited if changes are needed.

Important Fields:

Time Labor Id:
Generated by the system when the TimeAnywhere entry is created.

Employee Id:  
The Employee the time was entered for.  This time may have been entered by the Employee, or by the Foreman if the Employee is part of a TimeAnywhere Crew.

Payroll Period Id:
If this field is blank, the Employee was not asked to select a Payroll Period in TimeAnywhere.  SAMPro will select the correct Payroll Period according based on the Date when the time is processed.

If this field is completed, the Employee selected a Payroll Period.  This could if two concurrent Payroll Periods existed for the same date (for example, weekly and bi-weekly Payroll Periods).

Description:
Entered in TimeAnywhere.  This field will be used to generate the corresponding Labor Journal Hours detail.

Date:
The Effective Date of the work.

Start Time: End Time:
These fields indicate the Start and End Times for this work.  These fields will only be completed if they are enabled in TimeAnywhere.

TimeAnywhere 2.0 supports posting to the Start / Stop times in the Labor Journal if the employee works past midnight (e.g., 11:00 PM - 12:30 AM).  In this scenario the actual hours worked will be assigned to the Date selected by the TimeAnywhere user; the entry will NOT be broken into two entries (for hours before and after midnight).

Labor Rate Id:  Pay Type Id:  
Entered/defaulted in TimeAnywhere.  

Hours:
The actual hours worked from TimeAnywhere.  This field will be also be used to default Hours Billed when the Labor Journal is generated.

Submitted?
If this field is flagged, these hours are eligible to be posted to the Message table. It is typically set when the TimeAnywhere user marks time for submission.  This field may be changed if needed. This would allow a back office administrator to flag hours as submitted if the TimeAnywhere user forgot to do so before the Payroll Period was over; only Hours flagged as submitted are eligible to be posted to a Message.  Note that this field cannot be changed if the Posted field is checked.

Posted?
If this field is flagged, this record has been posted to the Message table via the Start Process TimeAnywhere Files function and may not be edited.  

Transaction Id:
This field displays the latest Labor Journal entry associated with this record. The View button also opens the most recent Labor Journal Transaction.

Message Id:
The Message generated for this TimeAnywhere data.  Click the View button to access the Message table.

Message Status:
If the Status is set to Posted, the Message has been posted to the Labor Journal.  If Status is set to Post Pending, it has not yet been posted to the Labor Journal.

Work Order Id - Job Id - Cost Code Id - Billing Item Id - Cost Category Id
These display-only fields detail the Work Order / Job these hours were applied to in TimeAnywhere.

13.4 TimeAnywhere Expenses Viewer

Purpose:

This record displays employee expense data generated from TimeAnywhere. When it is flagged as Submitted from the web, it will eligible to be Posted to the Message table via the Start Process TimeAnywhere Files function (which may either be run manually or as a Schedule Event.)  

The Messages are used generate Labor Journal Other Tab entries when the Start TimeAnywhere Post function is run.  

Usage:

This entry may be edited if it has not yet been Posted to the Message table.  If it has been Posted to the Message Table, this record cannot be changed; the associated Labor Journal entry can be edited if changes are needed.

Important Fields:

Expense Labor Id:
Generated by the system when the TimeAnywhere entry is created.

Employee Id:  
The Employee the expense was entered for.  This may have been entered by the Employee, or by the Foreman if the Employee is part of a TimeAnywhere Crew.

Payroll Period Id:
If this field is blank, the Employee was not asked to select a Payroll Period in TimeAnywhere.  SAMPro will select the correct Payroll Period according based on the Date when the time is processed.

If this field is completed, the Employee selected a Payroll Period.  This could if two concurrent Payroll Periods existed for the same date (for example, weekly and bi-weekly Payroll Periods).

Description:
Entered in TimeAnywhere.  This field will be used to generate the corresponding Labor Journal Other detail.

Date:
The Effective Date of the expense.

Start Time: End Time:
These fields indicate the Start and End Times for this work.  These fields will only be completed if they are enabled in TimeAnywhere.

Other Rate Id:   Unit Cost:  Amount Cost:
Entered in TimeAnywhere.  

Submitted?
Typically, this field is flagged when the TimeAnywhere user marks this Expense as Submitted; it is then eligible to be posted to the Message table. This field may be changed if needed. This would allow a back office administrator to flag expenses as submitted if the TimeAnywhere user forgot to do so before the Payroll Period was over; only expenses flagged as submitted are eligible to be posted to a Message.  Note that this field cannot be changed if the Posted field is checked.

Posted?
If this field is flagged, this record has been posted to the Message table via the Start Process TimeAnywhere Files function and may not be edited.  

Transaction Id:
The Labor Journal Transaction Id generated for this TimeAnywhere data (via the Message table).  Click the View button to display the Labor Journal entry.

Message Id:
The Message generated for this TimeAnywhere data.  Click the View button to access the Message table.

Message Status:
If the Status is set to Posted, the Message has been posted to the Labor Journal Other tab.  If Status is set to Post Pending, it has not yet been posted to the Labor Journal Other tab.

Work Order Id - Job Id - Cost Code Id - Billing Item Id - Cost Category Id
These display-only fields detail the Work Order / Job these expenses were applied to in TimeAnywhere.

13.5 TimeAnywhere Break Viewer

Purpose:

This record displays employee 'break' data generated from TimeAnywhere. This information may be required by some state authorities. These records are only generated if this functionality is enabled (via a TimeAnywhere Setting).  

Usage:

This entry may be edited if it has not yet been Posted to the Message table.  If it has been Posted to the Message Table, this record cannot be changed; the associated Labor Journal TimeLog entry can be edited if changes are needed.

Important Fields:

Time Break Id:
Generated by the system when the TimeAnywhere entry is created.

Employee Id:  
The Employee the Break was entered for.  This may have been entered by the Employee, or by the Foreman if the Employee is part of a TimeAnywhere Crew.

Payroll Period Id:
If this field is blank, the Employee was not asked to select a Payroll Period in TimeAnywhere.  SAMPro will select the correct Payroll Period according based on the Date when the time is processed.

If this field is completed, the Employee selected a Payroll Period.  This could if two concurrent Payroll Periods existed for the same date (for example, weekly and bi-weekly Payroll Periods).

Description:
Entered in TimeAnywhere.  This field will be used to generate Labor Journal TimeLog detail.

Date:
The Date of the break was taken.

Start Time: End Time:
These fields indicate the Start and End Times for this break.

Submitted?
If this field is flagged, the TimeAnywhere user marked this Break as Submitted; it is eligible to be posted to the Message table.

Posted?
If this field is flagged, this record has been posted to the Message table via the Start Process TimeAnywhere Files function and may not be edited.  

Transaction Id:
The Labor Journal Transaction Id generated for this TimeAnywhere data (via the Message table).  Click the View button to display the Labor Journal entry.

Message Id:
The Message generated for this TimeAnywhere data.  Click the View button to access the Message table.

Message Status:
If the Status is set to Posted, the Message has been posted to the Labor Journal's TimeLog tab.  If Status is set to Post Pending, it has not yet been posted.

13.6 TimeAnywhere Crew Viewer

Purpose:

This viewer enables 'crews' to be set up so that a crew manager / foreman may enter time for his crew in TimeAnywhere.

Usage:

In addition to this record, the appropriate configuration setting must be in place in the TimeAnywhere Settings viewer.

Important Fields: Upper Section

Crew Id:
A unique Id to identify this Crew.

Crew Manager:
Enter the Employee Id of the Crew Manager who will be able to enter time for the Crew defined below.

Important: The TimeAnywhere Type field in the Crew Manager's Employee record (located on the Other tab) MUST be set to Foreman in order to see and log time for Crews.

Labor Rate Id:
This optional field provides the default Labor Rate for Crew labor entry in TimeAnywhere.

Important Fields: Lower Section

Employee Id:  Employee Name:
Enter the Employees to be included in this TimeAnywhere Crew. An employee may be listed on multiple Crews if needed.

13.7 Start Process TimeAnywhere Files

Purpose:

This function processes Submitted (but not yet Posted) TimeAnywhere Labor, Expense and Break records to the Message table.  The Start TimeAnywhere Post function then uses these Messages to construct Labor Journal Entries for the time/expenses entered.

Usage:

The related Start Process TimeAnywhere Files (Automated) function may be used to process TimeAnywhere data as a Scheduled Event.

Important Fields:

Start Date:  End Date:
These fields define the range of effective dates for time, expenses and breaks which will be processed.

By Date?
If this field is checked, each Message will be limited to a single day for that Employee/Pay Period. This will result in Labor Journal Entries being generated for a single day per Employee when the TimeAnywhere post is run.

Employee Id:
To process TimeAnywhere records for all eligible employees, leave this field blank. To limit this run to a specific employee, enter his Id. A series of employees can be specified by listing Employee Id's separated by commas: 1001,1005,1025.

14 Quoting

14.1 Quote Registries

14.1.1 Setting up for Quote Manager and Quote Scope

If you will be using the new Quote Manager / Quote Scope viewers and/or CRMAnywhere, some of the entries in your existing Quotemaster (sys-viewer-vqte) registry record must be copied to the sys-viewer-vqtemngr registry for the Quote Manager, and others to the new sys-viewer-vqtescpe registry for the Quote Scope Viewer.

TIP: Cloning Your Quote Entries

The easiest way of transferring your existing Quotemaster entries to the new viewers is to clone them. Note that the existing registry sys-viewer-vqte should NOT be changed as it supports the older Quotemaster viewer.

1. Access the sys-viewer-vqte registry.

2. Change the Id to sys-viewer-vqtemngr and tab out of the Id field.

3. Delete or disable any lines not supported by Quote Manager; they will be ignored by the system but may confuse users editing this registry in the future.

4. Reconfigure any disabled or required fields entries.

5. Save the new registry.

6. Repeat steps 1-5 for the Quote Scope registry (sys-viewer-vqtescpe).

14.1.2 Registry to Relax Credit Hold Processing

In Version 9.0.572.017, Credit Hold processing was tightened up so that if either the Days Credit Hold or Credit Limit set on the Client are exceeded, a new Work Order generated by the Wizard would be put on Credit Hold.

The following registry has been added to allow the user to return to the old default behavior so that a new Work Order is ONLY put on Credit Hold if the Site or Client is flagged as Credit Hold. The Client's Credit Limit and Days Credit Hold will be ignore.

Registry Id: sys-viewer-vqte

Registry Id: sys-viewer-vqtemngr

Setting Key: IgnoreCreditHoldDaysLimit  Setting Value: true (default false)

14.1.3 Registry to Not Update Work Order NTE Amounts when Approval Wizard Runs

In version 9.0.572.037, the Quote Manager's and Quote Master's Approval Wizards were revised to set the Work Order's Sub NTE set from the sum of the Extended Costs on the approved Sub Scope lines, and the Work Order's Client NTE from the sum of the Extended Prices and Revenue Adjustments on the approved Scope lines (Revenue Adjustments not included). This was done to support SubAnywhere.

This functionality was not in alignment with the business practices of certain customers, a registry is available to override the new default behavior. When the following registry is set to false and the approval wizard is run, the Client and Sub NTE of new work orders will be 0, and the Client and Sub NTE's existing work orders will not be changed. For Both Quote Master and Quote Manager:

Id: sys-viewer-vwrkordr

Setting Key: UpdateNTEAmounts  Setting Value: false (default is true)

Note that this registry is set the Work Order registry!

14.1.4 Use Crystal Quote Registry

In a previous release, we corrected an issue where the Quote ID did not auto-fill when the Print Quote button was clicked when creating more than one quote in Quote Manage / Quote Master. But users for Crystal Reports Quote Form want the Report Form id to be blank so that it can run a third party app. This release supports a registry key to override the default behavior. When this is set to true the Quote will allow blanks in the Report Id to allow Crystal Reports to run.

Id: sys-viewer-vqte
Setting Key: UseCrystalQuote  Setting Value: true (default false)

Id: sys-viewer-vqtemngr
Setting Key: UseCrystalQuote  Setting Value: true (default false)

14.2 Quote Reports

14.2.1 Report Quote Recap

Sectionkey support has been added to the Report Quote Recap to support its use in CRMAnywhere. See Customer Release Note 15.2.3 for details on the report and registry settings needed for its use in CRMAnywhere.

This release corrects a sporadic problem where Use Tax did not appear on this report.

14.2.2 Report Quote Form (Standard)

The revised report (RQTEFRMv90b035.rpt dated 2017-06-21) evaluates the ‘ n/a’ Tax Type on Scope detail lines based on the Cost Category, Quote’s Sales Tax Group, and Quote’s Tax Status. This enhancement supports the global registry DeferTaxStatusDecision=true so that the Tax Type on Quote Scope detail lines defaults to ' n/a'.

Earlier update: This release and the revised Report Quote Form (RQTEFRMv90b035.rpt) dated 2016-09-02 correct the following issues with Estimated Sales Tax:

Fixed fee quotes no longer shows estimated tax if a Cost Category that is designated as nontaxable was selected in the Quote Scope.

Estimate Tax is now correctly printed for non-fixed fee quotes when the Print Quote Total? is cleared.

Estimated Tax is now calculated like tax on a Service Invoice so that the estimated tax on the Quote and the sales tax on the service invoice will agree.

14.2.2a Report Quote Form Supports Bitmap Override by Job

The revised Report Quote Form (RQTEFRMv90b035.rpt) dated 2018-05-14 supports the new bitmap override by Job functionality; the Quote must specify a header Job for this functionality. Note that this functionality only applies to the bitmap, not the sectionbackerbitmap.

Registry Id: sys-report-rqtefrm

Setting Key:  BitmapOverrideBasedOn   Setting Value: job

This registry entry defines that this override is based on a user field in the quote's Job record.

Setting Key: BitmapOverrideField  Setting Value: job user database field

This registry entry specifies exactly Job User field will provide the override for the base 'Setting Key: bitmap'.  The database field name must be specified.

For example, the following specifies the Job's User 3 field:

Setting Key: BitmapOverrideField  Setting Value: jb_usr3

Setting Key: Job~string   Setting Value: path\bitmap.bmp

This entry provide the override bitmap file that will be used if the Job record's User field defined above contains the string specified. Notice that a tilde (~) separates Job from the string. As many of these entries may be made as needed to support the various bitmaps.

Example:

Suppose that we have a bitmap file named 010101_quote.bmp that should be used on quotes associated with Job's having the following text string 010101 in Job User 3 fields.

Setting Key: Job~010101  Setting Value: path\010101_quote.bmp

Tip: Include the part of the bitmap name as the text string for clarity.

Tip: Including the appropriate values in your job templates will ensure that new jobs are created properly. In addition, using the Custom Fields functionality to specify the allowed values will prevent inappropriate values from being entered.

14.3 Quote Manager Viewer

Purpose:

The Quote Manager Viewer provides a streamlined approach to Quoting. This viewer enables the user to specify the Site and Opportunity (for CRMAnywhere users) the Quote is for, as well as the Job or Work Order to be used when the Quote is posted.

Usage:

Quotes that were originally generated in the Quote Viewer may be updated, printed and posted from Quote Manager (for header information) and the Quote Scope Viewer (for detail Scope Option information).

Registry:

The Quote Manager registry (sys-viewer-vqtemngr ) and the Quote Scope registry (sys-viewer-vqtescpe) are used by these new viewers. The Quote registry sys-viewer-vqte is used by the Quote Manager Approval Wizard. See Customer Note 14.1.1 for details.

Important Fields: Upper Section

Main Tab

Quote Id:
This field is automatically generated by the system when you click the Add Record button.

Description:
This optional field may be used to briefly describe the Quote. If this Quote was submitted from Techanywhere, this field lists how the problem was found (Unit Down, PM Visit or Service Call) and the Tech Id of the Tech submitting the Quote.

Submitted By:
This optional field may be used to record the submitter's name or initials.

Expiration Date:
This field indicates the last day on which the customer can accept the quote. This field is available for reporting purposes, but NO warnings or validations are performed relative to approving options.

WorkOrder Id:
If this quote is being generated in response to a source Work Order, enter its Id: the Site Id, Tax Group and Status, Sales Rep, and Rate Schedule (from the associated Job record) will default in. A Work Order may be used as the source for multiple Quotes.

You are not allowed to select Archived or Credit Hold Work Orders.  Closed Work Orders may only be specified if a registry setting is in effect. The Quote Approval wizard requires the use of the New WO option when the Quote's source WO is closed.

Job Id:
This field defaults from the Work Order or may be selected by the user to provide the default Job when the Approval Wizard is run. This Job’s Material Price Level will be used for default pricing on the Quote’s Inventory tab, overriding the Client Site Material Price.

If the Job Id is selected manually, the system defaults in the Report Id, Quote Notes and Small Print from Job's Site, and the Branch Id (if completed in the Job record) or from the Job’s Site (if the Branch is blank in the Job but completed in the Site).

Site Id:
The Site for which the Quote is being generated. If this field has not already defaulted in enter a valid Site Id. The Site may not be changed if the WO or Job are filled in, or if any Scope lines exist.

Date Opened:
This field defaults to today’s date, but may be changed by the user if needed.

Rate Schedule Id:
The default Rate Schedule for Quote Scopes. This field defaults from the Job (if specified). If this field is completed, the Gross Margin and Percent Markup fields must remain blank.  The individual Scopes may reference their own Rate Schedule, Margin or Markup to allow for 'what if' scenarios when building a quote.

Gross Margin Percent:
The default Gross Margin Percent to use on Scopes for this Quote. If this field is completed, the Rate Schedule and Percent Markup fields must remain blank.

Markup Percent:
The default Percent Markup to use on Scopes for this Quote. If this field is completed, the Rate Schedule and Gross Margin fields must remain blank.

Tax Group Id: Tax Status:
The Tax Group Id and Tax Status should be selected. The Tax Group Id defaults as follows:

If there is a source Work Order, the Sales Tax Group / Status from the WO's default Job.

If a Job (but no WO) is selected, the Sales Tax Group/Status defaults from the Job.

If there is NO Work Order or Job, the Sales Tax Group defaults from the Site's COP tab.

NOTE: These fields are only used for determining estimate tax on the Quote report. When the Approval Wizard is run, the Tax Group and Tax Status in the selected Job are now used to when generating Work Order detail lines.  

Sales Rep Id:
The Sales Rep for this Quote. This field defaults from the primary Sales Rep in the Site record, but may be changed by the user if needed.

Account Manager Id:
When a Quote is created, the system will default the Account Manager from the Site; it may be changed by the user if needed. When the Approval Wizard is run and a NEW work order is generated, SAMPro uses the Quote's Account Manager to write to the corresponding field in the newly generated Work Order. 

WorkCode Id:
If you entered the Work Order Id, this field defaults from the Work Order. When the quote is approved, this field will be used to supply the header (and Equipment line) Work Code for any new Work Orders generated. If a Service Category is referenced in the Work Code, the Service Category below will default from it.

Cost Category Id:
A valid Cost Category with the Cost Type set to Other. This field will be used when the system generates the Other tab line for Fixed fee quotes. Validation ensures that the Cost Category is always completed for a Fixed Price Scope, and is blank if it is not Fixed Price.

Service Category Id:
This optional field defaults from the Work Code, and specifies the Service Category this quote is related to. When creating a new Work Order, the Quote's Service Category (if completed) will be used to set the Work Order's Service Category. If the Quote's Service Category is empty, the new Work Order's Service Category will be set based on the Work Code.  

Estimator Id:
This field specifies the
Estimator responsible for this Quote (optional); it defaults from the Job record anytime the Job is changed (by edits to the Job Id or by changing the Work Order Id).

Opportunity Id:
This field will be completed if this Quote was generated from an Opportunity in SAMPro or CRMAnywhere.

image\ApproveAll_new.gif  When pushed, the system prompts for confirmation...'Set ALL Open, Printed and Accepted Scope options to Approved?'. If you click Yes the options will be approved.

image\SKIN1_ComputeRevAdjust.gif  If a Revenue Adjustment  field is completed on a Scope, clicking this button generate entries to the RevAdjust tab. Since previous revenue adjustment entries (that are not fully approved) will be deleted, the system will ask you to confirm the deletion before proceeding.

image\ViewRecap_new.gif Click this button to view/print the Quote Recap report.

image\PrintQuote_quote.gif Click this button to print the Quote Report specified in the Report Id field. If you elect to e-mail this form, the Client Site E-mail Address will be defaulted into the To: field. See Registry Entry System Email for information on e-mail configuration.

image\PrintChangeOrder.gif Use this button for change order management with construction-type jobs. When clicked, this button will launch Report Change Order (this report MUST be installed). The Create CO button on the Quote’s Option lines may be used to create the Change Order itself.

Tip: When the Change Order is approved, the Quote Approval Wizard’s Create Job Budget Option may be used to generate Job Budget Tab entries to the Change Order. Alternately, the standard Export to Work Order option may be used to manage the work in the field.

image\VendorApproval_new.gif Click this button to email the Vendor Approval Form. If Outlook is enabled in the sys-email registry entry, the regular SAM Pro email form will appear when the Vendor Approval button is clicked.

image\ApprovalWizard_new.gif Unless a registry entry is enabled to automatically launch the Wizard when the Quote is saved, the user will set one or more scopes to ‘Approved’, save the Quote, and then click the Approval Wizard button to run the wizard. The system will warn you to save the quote if it determines that unsaved changes have been made prior to clicking the button. See Quotemaster Approval Wizard for help on using the Wizard.

The system checks to see if any Vendors in approved scopes are Blocked Purchase as of today. If so, the user is alerted and the Wizard is prevented from proceeding.

Report Id:
The Report that should be used to generate the printed (or .pdf) copy of this Quote for the customer. Typically, this would be RQTEFRM.

Billing Address Id:
If this field is completed, it will be used by the system to set the Invoice Address if a new Work Order is generated by the Quote Manager Wizard. If this field is blank, the Billing Address in the Job record will be used for invoicing. Otherwise, the Client Mailing address (in the Job record that you select in the approval process) will be used.

Submitted By:
The name or initials of the person submitting the quote.

Print Quote Total?
Check this box (by double-clicking or pressing Spacebar) if you want the total cost of the options printed on the quote report .

Web Viewable CRM?
This box should be flagged if you would like your Client for be able to view this Quote on FMAnywhere. Clearing the box will prevent the Quote from being displayed on FMAnywhere (for example, if it has not been completed yet).

 

Notes Tab

Notes
M
ay be used to enter notes for this quote. These notes will be printed on the quote report.

Quote User 1-10:
Optional, user-defined fields.

Statuses: Open, Accepted, Approved, Declined, Mixed, Printed
Categories: Active, Inactive
These fields provide for an Overall Quote Status to assist in the management of quotations. These fields are set by the system when a Quote is added or modified, and when your database is updated. See Quote Status for detailed information.

Status Date:
This field is set to the current date when the Quote's Status is changed.

Small Print Tab

Small Print:
This text box is typically used to enter the boilerplate legalese and terms ‘small print’ text to be included at the end of the Quotation that you send to your customer. It defaults from the Site record.

Opportunity Tab

If an Opportunity is specified on the Quote's Main tab, its detailed information will be displayed.

Gross Margin Tab

This tab displays the Gross Margin for each Scope.  

Important Fields: Lower Section

Scope Tab

This tab provides the summary information for each Scope on this quote.  Double-click on a line to access the selected Quote Scope record.

Labor Tab

This tab displays the labor lines on each Scope on this Quote.  Double-click on a line to access the Labor tab of the selected Quote Scope record.

Inventory Tab

This tab displays the Inventory materials lines on each Scope on this Quote.  Double-click on a line to access the Inventory tab of the selected Quote Scope record.

Materials Tab

This tab displays the non-inventory materials lines on each Scope on this Quote.  Double-click on a line to access the Materials tab of the selected Quote Scope record.

Subcontractors Tab

This tab displays the Subcontractor lines on each Scope on this Quote.  Double-click on a line to access the Subcontractor tab of the selected Quote Scope record.

Other Tab

This tab displays the Other lines on each Scope on this Quote.  Double-click on a line to access the Other tab of the selected Quote Scope record.

Equipment Tab

This tab displays the Additional Equipment lines on each Scope on this Quote.  Double-click on a line to access the Additional Equipment tab of the selected Quote Scope record.

RevAdjust Tab

This tab displays the Revenue Adjustment lines on each Scope on this Quote.  Double-click on a line to access the Revenue Adjustment tab of the selected Quote Scope record.

Techs Tab

The Techs tab lists all Work Order Technician lines for Work Orders referenced by this Quote. When a line is right-clicked, a prompt appears displaying Work Order information. The Technician Status may be changed from this prompt.

14.3.1 Recent Quote Manager Changes

Corrects sporadic issue assigning multiple Inventory/Material items to a PO when the Approval Wizard is run.

Apostrophes in the description field on the Quote Scope Materials or Subcontractor tabs are now handled correctly when a PO is generated via the Approval Wizard.

14.4 Quote Scope Viewer

Purpose:

The Quote Scope allows the user to focus on building a single Quote option at a time. Detailed lines are entered and adjusted on the Scope.  

Usage:

The Quote Manager viewer is used for approving Scopes and printing the Quote.

Registry:

The Quote Manager registry (sys-viewer-vqtemngr ) and the Quote Scope registry (sys-viewer-vqtescpe) are used by these new viewers. The Quote registry sys-viewer-vqte is used by the Quote Manager Approval Wizard. See Customer Note 14.1.1 for details.

Important Fields: Upper Section

Main Tab

Option Code:
This required field uniquely identifies this option within this Quote (1, 2, 3, etc.). This field is case insensitive - this means that you cannot create options AA, aa, aA and Aa on a single quote – they are all considered duplicates.

Quote Id:
The display-only field lists the Quote this Scope belongs to.

Equipment Id:
If a default Work Order with a single piece of Equipment is specified in Quote Manager, the Equipment Id will also default when a new Scope is added. Double click to select from the active Equipment at the Site, or right-click to create a new Equipment record if needed.

Additional Equipment
If you wish to add additional equipment to this Scope enter it on the Additional Equipment Tab. Quantities will NOT be multiplied as a result of adding equipment.

Revenue Adjustment Id:
This field defaults from the Job referenced in the Quote Manager record for this Scope. It
enables revenue adjustments to be applied to this Scope; it defaults from the Quote Manager but may be changed by the user.  A “total invoice” type revenue adjustment should be selected for Fixed Price quotes.

When the Scope is saved, the system generates the appropriate entries the RevAdjust tab after asking you to confirm the deletion of existing entries. Existing Revenue Adjustment lines must be detailed before changing the Revenue Adjustment Id.

Scope of Services:
This field describes the services to be included on the quote. It is printed on the Quote Recap report and the Quote report.

Expanded Scope of Services:
The standard Quote report (rqtefrm.rpt) adds the ability to expand the printing of Scope Of Services by adding Notes attached to the Quote record.  To enable this feature, The Notes Summary field must contain the Option Code.

Work Order Id:
This field displays the source Work Order for this Scope specified in the Quote Manager record.

Quote Amount:
If this is not a fixed price option, this display-only field will be calculated by the system based on the extended prices in the detail lines associated with this Scope.

Fixed Price:
This field defaults from the Flat Rate Category (if one was selected) or be entered by the user. If completed, the Price fields in the Labor, Inventory, Materials Other and Subcontractor tabs will be forced to 0. When a Work Order is generated, the Fixed Price will be written to the Other tab.

Net Adjust:
The net amount of the adjustments for this Scope calculated by the system from the information on the RevAdjust tab.

Net Price:
The system calculates this display-only field by subtracting the Net Adjustments from the Fixed Price or Quote Amount.

Cost Category:
The default cost category for fixed price quotations.

Status:

Open: This field defaults to Open for new Scopes.

Printed: It will be set to Printed if the Quote is printed and confirmed.  

Accepted: The status may be set to ‘Accepted’ in this record or in FMAnywhere( or the Client Web interface)  to indicate that the  customer has accepted it.

Approved:  Set the status to ‘Approved’ in this record or in Quote Manager if the customer has accepted this Option and it is ready for  processing via the Quote Manager Approval Wizard.  

Declined:  The status may be set to ‘Declined’ in this record or in FMAnywhere (or the Client Web interface)  to indicate that the  customer has rejected this Scope.

Rate Schedule Id:
The Rate Schedule for this Quote Scope. This field defaults from Quote Manager. If this field is completed, the Gross Margin and Percent Markup fields must remain blank.  

Gross Margin Percent:
The Gross Margin Percent to use on this Scope. If this field is completed, the Rate Schedule and Percent Markup fields must remain blank.

Markup Percent:
The default Percent Markup to use on this Scope. If this field is completed, the Rate Schedule and Gross Margin fields must remain blank.

Important Note:  Changing the Rate Schedule, Gross Margin % or  Markup % Fields
If the Rate Schedule, Margin or Markup is changed, the system will recompute the prices on previously entered lines as needed.  Only Scopes with a status of Open or Accepted (if enabled via registry) are eligible for the change. Clearing the Rate Schedule, Margin AND Markup fields (so that none are set) does NOT trigger the recompute.

Clicking the Recompute Scope button will recompute the prices based on the Rate Schedule, Gross Margin % or Markup % This button is useful to use if the Rate Schedule has recently been changed.  The button may only be used for Scopes with a status of Open or Accepted (if enabled via registry).

Skip Print?
This field designates whether or not this scope and its data should be skipped on the printed quote.

Forecast?
This field designates whether or not the scope should be included in custom sales forecast reports.

Projected Close Date
This field may be used for custom sales forecast reporting.

Probability %
This field may be used for calculations on custom sales forecast reports.

Mfg. Rep Comm:
This field may be used to specify the expected manufacturer’s representation sales commission for reporting and informational purposes.

Sales Rep Commission Amount
This field may be used to specify the expected manufacturer’s representation sales commission for reporting and informational purposes.

 Clicking the Import Flat Rate button displays a series of Wizard screens which enable you to select the Flat Rate Category, Price Level and Quantity. Additional Wizard screens for Labor, Material and Inventory allow hours, quantities and costs to be edited.  A Vendor Id may also be specified.  Click to see Import Flat Rate details.

Use this button only to create Budget entries for a Construction Job; a confirmation box is displayed then this box is clicked. If a Job is entered on the Main tab, clicking this button will generate a Change Order to the Job. The Change Order’s Id will be derived from the Scope’s Option Code, and the CO Amount from the Scope’s Quote Amount or Fixed Price, and its Status via registry.

Bill Item:
If the Create CO button generates a Change Order Billing Item, its Id will appear in this display-only field.

   The Import Diagnostic Cost button imports all costs associated with the quote’s lead work order so that they may be presented on the quote form. Diagnostic charges should be Declined, so that they are not billed twice. See Quote Diagnostic Cost Wizard for details.

The  Import Wizard sets the Tax Type based on the Tax Group / Tax Status in the Quote Manager records. This prevents the this wizard from failing if the Tax Type Id ' n/a' is encountered in any of the Job History lines being imported (the could occur if the Tax Type was reset via the Work Order button).

 This functionality is designed for use with SubAnywhere.  When clicked a wizard will be launched to import costing information from the SubQuote tab of the WO referenced in the Quote Manager header. When the costs are imported, the markup rules defined in the Scope (Rate Schedule, Markup % or Gross Margin %) are applied to the imported costs to determine the Scope's revenues. This will be done even if Revenue has been entered on the Work Order's SubQuote tab.

Note: Wizard Requirements
The user will be alerted if no lines from the WO SubQuote Tab match the Equip. Id, or if the WO Id is not completed in Quote Manager.

Pushing the button launches a wizard that lets the user complete the selected Scope by copying the details from other existing Scopes for this Quote. The Labor, Inventory, Material, Sub and Other lines associated with these Scopes will be imported.

Clicking this button accesses the Scope's Quote Manager record.

 

Scheduling Tab

Opened By: Opened Date: Opened Time:
These display-only fields are automatically set by the system when a new Quote is created.

Declined By: Declined Date: Declined Time:
These display-only fields are automatically set by the system when this Option is set to Declined and the Quote is saved. These fields will also be set when a customer declines this option in CRMAnywhere. Note that this fields will only be set once, and will retain their initial date and time stamp even if the option is later set to Opened.

Accepted By: Accepted Date: Accepted Time:
These fields are automatically set by the system when this Option is set to Accepted and the Quote is saved. If the option goes directly from open to approved, the approved values will default.

Approved By: Approved Date: Approved Time:
These fields are automatically set by the system when this Option is set to Approved and the Quote is saved. These fields will also be set when a customer approves this option in CRMAnywhere.

User Fields Tab

Quote Scope User 1-5:
These fields may be used for informational and reporting purposes.

Important Fields: Lower Section

Labor Tab

Hours:
The hours of labor being quoted.

Cost Category:
This required field defaults from the Labor Rate (if specified in this record). When you double-click on this field to set it, the list will be filtered so that only those Job Cost Categories with a cost type of Labor are displayed.

Labor Rate Id:
The default Labor Category for this work.

Tax Type Id:
The appropriate Tax Type (typically, n/a for labor) for this labor line; enter a valid Id or double-click to select from a list.

Hourly Cost:  Extended Cost:
The hourly cost for this labor defaults from the Flat Rate Category (if selected) or from the Labor Rate/Rate Schedule fields. The system calculates the extended cost by multiplying the Hours times the Hourly Cost.

Hourly Price Extended Price
If this option is not Fixed Price (which requires that these fields be $0), the hourly cost for this labor defaults from the Labor Rate/Rate Schedule fields or is calculated based on the Cost and Gross Margin or Percent Markup calculations. The system calculates the extended price by multiplying the Hours times the Hourly Price.

Description:
This field defaults from the Labor Rate record but may be adjusted by the user if needed.

Inventory Tab

The Quote Scope uses the same rules as the Work Order for the inclusion of the tax cost (if applicable) to allow for proper markup and GM% calculation for lines entered directly on the Quote, as well as from Flat Rates.

Quantity:
The quantity of the part being quoted.

Cost Category:
This field defaults from the Inventory Item’s Inventory Group if it is not manually set before you enter the Inventory Item Id. If you double-click on this field  to set it manually, the list will be filtered to Job Cost Categories with a cost type of Material.

Inventory Item Id:
Enter a valid Inventory Item Id or double-click to select from a list.

If a superseded part number is entered into this field, the system will alert the user that "Item A has been superceded by Item B. Use New Item?" It the user clicks Yes, the new part (B) will be returned to the field. If the user clicks No, part A (which has been superceded) will remain in the field.

Tax Type Id:
This field defaults based on the on the Job’s Tax status and the Cost Category.

UOM:
Displays the Unit of Measure from the Inventory record.

Vendor Id:
Complete this field if the part will be ordered from a Vendor rather than pulled from stock; inactive Vendors may not be selected.  If you specify a Vendor, a Purchase Order will be generated when the quote is approved. Validation prevents the Vendor Id from being completed on negative quantity Inventory and Material lines when the Quote is saved/added.

PO Id:
If you have completed the Vendor Id, this field will be completed by the system when Approval Wizard is run (if the Quote option is accepted) and the PO generated.

If these items should be appended to an existing PO, enter the PO Id. The approved lines will be added to the existing PO (rather than creating a new one).

Unit Cost Extended Cost
The unit cost for this item defaults from the Flat Rate Category (if selected) or from the Inventory Item. The system calculates the extended cost by multiplying the Quantity times the Unit Cost.

Unit Price Extended Price
If this option is not Fixed Price (which requires that these fields be $0), and this Inventory Item is not flagged as ‘Use Unit Price’, the price for this item is calculated from the Inventory Item/Rate Schedule fields or is calculated based on the Cost and Gross Margin or Percent Markup calculations. The system calculates the extended price by multiplying the Quantity times the Unit Price.

If an Inventory Item flagged as ‘Use Unit Price’ is selected, the Material Price Level from the Client Site will be used to determine which level Unit Price will default.

Price Code Handling:
The Inventory Item allows for 10 levels of Material Pricing, but Price Codes only allow for 5. If price codes are in effect, and the default price level from the Client Site is greater than 5, the system now defaults price level 1 from the Price Code. A registry entry Price Code Handling (sys-ffv-global-settings) is available to always default the value from the Price Code level 1, regardless of the Material Price Level in the Client Site.

Description:
This field defaults from the Inventory Item record but may be adjusted by the user if needed.

Vendor Part Number:
The Vendor’s Part Number for this item , if available. This will be written to the PO if the line is approved.

Vendor Quote Number:
If the Vendor provided you with Quote number, enter it here. It will be included on the Vendor Approval Form for their reference.

Material Tab

This tab should be used to enter non-inventoried material. The Quote Scope uses the same rules as the Work Order for the inclusion of the tax cost (if applicable) to allow for proper markup and GM% calculation for lines entered directly on the Quote, as well as from Flat Rates.

Quantity:
The quantity of the material being quoted.

Other Rate Id:
This optional field may be used to specify miscellaneous materials or other items on quotes; it may default in the Cost Category.

Vendor Id:
The Vendor from which you wish to obtain this material; inactive Vendors may not be selected. Validation prevents the Vendor Id from being completed on negative quantity Inventory and Material lines when the Quote is saved/added.

PO Id:
If you have completed the Vendor Id, this field will be completed by the system when Approval Wizard is run (if the Quote option is accepted) and the PO generated.  If these items should be appended to an existing PO, enter the PO Id. The approved lines will be added to the existing PO (rather than creating a new one).

Tax Type Id:
The appropriate Tax Type for this line; enter a valid Id or double-click to select from a list. If you enter a Vendor Id, it will default to Prepaid.

Cost Category:
This field is required. If you double-click on this field to manually set it, the list will be filtered to Job Cost Categories with a cost type of Material.

Unit Cost:   Extended Cost:
The unit cost for this item defaults from the Flat Rate Category (if selected) or may be entered by the user. The system calculates the extended cost by multiplying the Quantity times the Unit Cost.

Unit Price: Extended Price:
If this option is not Fixed Price (which requires that these fields be $0), the price for this item defaults from the Rate Schedule fields or is calculated based on the Cost and Gross Margin or Percent Markup calculations. The system calculates the extended price by multiplying the Quantity times the Unit Price.

Description:
This field should contain a brief description of the material.

Vendor Part Number:
The Vendor’s Part Number for this item, if available. This will be written to the PO if the line is approved.

Vendor Quote Number:
If the Vendor provided you with Quote number, enter it here. It will be included on the Vendor Approval Form.

Subcontractors Tab

Quantity:
The quantity of the subbed work being quoted.

Cost Category:
This required field normally defaults when you select a Vendor or Other Rate Id. Alternately, if you double-click on this field to set it, the list will be filtered so that only those Job Cost Categories with a cost type of Subcontractors will be displayed.

Tax Type Id:
The appropriate Tax Type for this line; enter a valid Id or double-click to select from a list. If you enter a Vendor Id, it will default to Prepaid.

Other Rate Id:
This optional field is typically used to specify standard subcontractor charges.  It will in turn default the Cost Category.

Note: If the Equipment specified on a Scope references a Service Provider Rate Schedule, then any Other Rate Id's specified on the Sub tab default the Unit Cost values from the Equipment's Service Provider Rate Schedule table instead of the one referenced in the Vendor record.

Vendor Id:
The vendor from which you wish to obtain this material; inactive Vendors may not be selected.

Validation requires a Vendor Id to be entered on Subcontract lines when that option is approved. This prevents an invalid Technician from being associated with Subcontract lines, and the PO post from failing because a Vendor was not specified.  

PO Id:
This field will be completed by the system when Approval Wizard is run (if the Quote option is accepted) and the PO generated.  If these charges should be appended to an existing PO, enter the PO Id. The approved lines will be added to the existing PO (rather than creating a new one).

Unit Cost Extended Cost
The unit cost for this item defaults from the Flat Rate Category (if selected) or may be entered by the user. The system calculates the extended cost by multiplying the Quantity times the Unit Cost.

Unit Price Extended Price
If this option is not Fixed Price (which requires that these fields be $0), the price for this item defaults from the Rate Schedule fields or is calculated based on the Cost and Gross Margin or Percent Markup calculations. The system calculates the extended price by multiplying the Quantity times the Unit Price.

Description:
This field should contain a brief description of the work.

Vendor Quote Number:
If the Vendor provided you with Quote number, enter it here. It will be included on the Vendor Approval Form for their reference.

Work Requested:
The description of the work requested. This will appear on the work order that will be generated to this subcontractor.

Other Tab

Quantity:
The number of units being quoted (e.g., backhoe hours, mileage, permits, etc.).

Cost Category:
This field is required; it typically defaults from the Other Rate Id.

Other Rate Id:
Enter a valid Other Rate Id or double-click to select from a list (for example, permits, fees, etc.).

Tax Type Id:
The appropriate Tax Type for this line; this field is set based on the Quote Manager's Tax Type and Cost Category.

Unit Cost Extended Cost
The unit cost for this defaults from the Flat Rate Category (if selected) or may be entered by the user. The system calculates the extended cost by multiplying the Quantity times the Unit Cost.

Unit Price Extended Price
If this option is not Fixed Price (which requires that these fields be 0$), the price for this item defaults from the Rate Schedule fields or is calculated based on the Cost and Gross Margin or Percent Markup calculations. The system calculates the extended price by multiplying the Quantity times the Unit Price.

Description:
This field defaults from the Other Rate record (if specified). It should contain a brief description of the charge.

Addtnl Equipment Tab

This tab is used to append additional equipment to this Scope.

Equipment Id:
Enter an Equipment Id to add it onto this option for reporting purposes. The system will not factor in multiple quantities to account for additional equipment listed on this tab when work orders or purchase orders for this Quote are generated. Multiple quantities must be set either when Importing a Flat Rate (on the scope tab), or by entering them directly on the detail lines.

RevAdjust Tab

Revenue adjustments enable you apply discount and management fees to the quote total. Saving this Scope, or clicking the Adjust Revenue button on the Quote Manager Managers tab populates this tab with adjustments based on the Revenue Adjustment record(s) for each Scope tab. When the Quote is approved and a Work Order is generated the information on this tab will be applied to the Work Order's RevAdjust tab. 

Invoice Description:
This field will be printed next to this discount or addition on the printed quote and invoice generated from this quote (e.g., ‘Loyal Customer Discount’). This field defaults from the Revenue Adjustment record.

o Add o Deduct
This field controls whether the dollars on this line will be added to or deducted from the quote.

AdjBase: Rate: Amount:
For Discounts, the AdjBase would be typically be set to the Fixed or Total Quote amount for this option. The Rate should be set to the discount to be applied to this option. The Amount is calculated by the system by multiplying the Adjustment Base times the Rate. To deduct a specific dollar value, leave the AdjBase and Rate fields blank, and simply enter the amount.

‘Adds’ (such as management or trip fees) are generally entered as a flat amount. Both the Adjustment Base and the Rate will be blank, and the Amount will be the flat fee.

Cost Category:
The default Cost Category for this adjustment.

GL Account Id:
This field sets the default discount account for the entries that will be generated on the RevAdjust Work Order tab, and is typically an income type account. It will be debited (as an offset to the credits for this type of income) when the work order invoice is posted.

GL Entity:
The default GL Entity for this adjustment. This field defaults from the Default Service Job Cost Code found in the Client Site Equipment referenced on the specified scope line.

PSeq#:
The Print Sequence Number sets the order that multiple revenue adjustment lines will print on the invoice.

Tax Type:
The Tax Type will default to "n/a" and will be evaluated and properly handled by invoicing should this quote become an actual work order.

Techs Tab

The Techs tab lists all Work Order Technician lines for Work Orders referenced by this Scope. When a line is right-clicked, a prompt appears displaying Work Order information. The Technician Status may be changed from this prompt.

14.4.1 Recent Quote Scope Changes

Quote Scopes now support revenues of up to $99,999,999. Previously, revenues of ten millions and above resulted in a tab mismatch error in both the Quote Master and Quote Scope viewers.

This release corrects a Runtime Error: 'CheckCurrentField Not Understood'. This error only occurred when clicking the Flat Rate Import button with the Subcontractor, Additional Equipment, Revenue Adjustment or Techs tab selected.

Quote Scope Viewer Scheduling Tab: Changed Fields: Opened By - Date Opened - Time Opened
In previous releases, if a Scope was reopened, these fields were updated with the current User, Date and Time.  In this release, these fields are only updated when they are blank when the Scope is initially created.  This change provides better reporting information on when the scope was originally created.

This release corrects a sporadic 'Record Not Found' error when attempting to change the Equipment Id in a previously saved Quote Scope record.  

Changed Fields: Rate Schedule, Gross Margin % - Markup %
If the Rate Schedule, Margin or Markup is changed, the system will recompute the prices on previously entered lines as needed.  Only Scopes with a status of Open or Accepted (if enabled via registry) are eligible for the change. Clearing the Rate Schedule, Margin AND Markup fields (so that none are set) does NOT trigger the recompute.

New Button:

Clicking the Recompute Scope button will recompute the prices based on the Rate Schedule, Gross Margin % or Markup % This button is useful to use if the Rate Schedule has recently been changed.  The button may only be used for Scopes with a status of Open or Accepted (if enabled via registry).

New Button:

This enhancement extends the "Copy From" functionality to allow a Scope to be copied from any Quote, not just the one that the current Scope belongs to.

New Button:

Clicking the Parent Quote button on the Quote Scope accesses the Scope's Quote Manager record.

14.5 Quotemaster (View Quote)

The Import Diagnostic Costs Wizard is now supported in if a source Work Order is not specified.  The Wizard verifies that the Site in the Quote / Quote Manager matches the Site of the Work Order selected.

The Import Diagnostic Cost Wizard now sets the Tax Type based on the Tax Group / Tax Status in the Quote / Quote Manager records. This prevents the this wizard from failing if the Tax Type Id ' n/a' is encountered in any of the Job History lines being imported (the could occur if the Tax Type was reset via the Work Order button).

If a Job (but no Work Order) is specified in the Quote viewer, the Approval Wizard now defaults the Job id from the Quote header. Previously, the Job only defaulted if a Work Order was specified.

This release corrects the setting of Status Category when all scopes are Approved but not all are fully Approved.

The display-only Extended Price on the Scope and Detail lines has been expanded from  from decimal(8,2) to decimal (10,2) to support quotes up to $99,999,999.99. The changes to the Work Order Extended Prices support this enhancement.

14.5.1 Quote Viewer - Main Tab

The ServiceChannel Upload button has been removed from this tab because the quote/proposal integration has been disabled by ServiceChannel.

Changed Fields: Rate Schedule - Gross Margin - Markup Percent

These fields provide the defaults for the Options associated with this Quote.  They may be overridden on the Option Tab.

Changed Field: Account Manager
When a Quote is created, the system will default the Account Manager from the Site; it may be changed by the user if needed. When the Approval Wizard is run and a NEW work order is generated, SAMPro uses the Quote's Account Manager to write to the corresponding field in the newly generated Work Order. 

Changed Fields: Tax Group Id: Tax Status:
These fields are only used for determining estimate tax on the Quote report. When the Approval Wizard is run, the Tax Group and Tax Status in the selected Job are now used to when generating Work Order detail lines.  

14.5.2 Quote Viewer - Scope Tab

Quote Scopes now support revenues of up to $99,999,99. Previously, revenues of ten millions and above resulted in a tab mismatch error in both the Quote Master and Quote Scope viewers.

Changed Fields: Opened By - Date Opened - Time Opened
In previous releases, if a Scope was reopened, these fields were updated with the current User, Date and Time.  In this release, these fields are only updated when they are blank when the Scope is initially created.  This change provides better reporting information on when the scope was originally created.

New Fields:  Rate Schedule - Gross Margin - Markup Percent

These fields override the corresponding fields located on the Quote's Main Tab.

Rate Schedule Id:
The default Rate Schedule for generating this option.  If this field is completed, the Gross Margin and Percent Markup fields must remain blank.

Gross Margin Percent:
The Gross Margin Percent to apply to costs associated with this Option. If this field is completed, the Rate Schedule and Percent Markup fields must remain blank.

Markup Percent:
The Percent Markup to associate with cost entered to complete this Option. If this field is completed, the Rate Schedule and Gross Margin fields must remain blank.

14.5.3 Cloning a Quote

We already do special processing to clear certain fields when the user types 'new' in the Quote Id field. In this release, the following fields will be also be cleared: the Scope tab's Equipment Ids, the WO Id and Job Id in the Main tab, and the new TechAnywhere fields.

15.5.4 Inventory Tab

Changed Field: Vendor Id
An Inactive Vendor may not be selected.

New Field - UOM:
Displays the Unit of Measure from the Inventory record.

14.6 Quotemaster / Quote Scope Approval Wizard

Previously, if the Approval wizard encountered the "WARNING: this work order has open assignments to a remote technician" the approval stopped. In this release, the warning is suppressed so the Approval wizard can run.

In this release, the Description entered on the Scope's Material tab will be accurately written to the Purchase Order (when a Vendor is specified). In previous releases, the Description from the Other Rate Id overwrote the Quote Material Tab when a Purchase Order was generated.

Previously,the new Work Order's Service Category was always set based on the Work Code. When creating a new Work Order, the Quote's Service Category (if completed) will be used to set the Work Order's Service Category. If the Quote's Service Category is empty, the new Work Order's Service Category will continue to be set based on the Work Code.

Since Payroll Period validation is not applicable to WO Labor flagged as Quoted, the Approval Wizard now ignores this validation when generating WO Labor lines.

When the Approval Wizard is run, the Tax Group and Tax Status in the selected Job are now used to when generating Work Order detail lines.  

When the Wizard writes back to the source Work Order, the Work Code on existing Equipment tab entries is retained. The Work Code from Quote / Quote Manager sets the Work Code on any newly generated Equipment lines.

The Service Evaluation Id now defaults from the Scope's Site Equipment record when a new Work Order is created. For multiple Scopes/Equipment, the Service Evaluation associated with the Equipment on the first Scope processed will be used.

When the Quote Approval Wizard is launched, the system now checks for Inactive Vendors. If a Vendor is inactive, the user is alerted and the Wizard is blocked from proceeding.

The system checks to see if any Vendors in approved scopes are Blocked Purchase as of today. If so, the user is alerted and the Wizard is prevented from proceeding.

New WO's are also put on Credit Hold if the Client's Days Credit Hold or Credit Limit are exceeded. Previously, only the Client/Site Credit Status was considered.

This release corrects a problem in PO generation when one PO was updated and one was created for the same Vendor.

14.6.1 Closed PO Validation

The Quotemaster / Quote Manager Approval Wizard now check to see if the Date Closed is set on a Purchase Order it is set to update.  The user is warned that "The following Purchase Orders are closed and cannot be updated".  After clearing this message, the user has the option of proceeding or canceling the Wizard (so that the PO referenced in the Quote may be changed or cleared before rerunning the Wizard). Canceling the Wizard and correcting the problem is recommended.

If the user elected to continue and the post to the PO failed, the user will be warned, and a text file (ErrorLogForQuote_######_date_time) specifying the problem will be written to the directory named in the dbreportfiles registry.

14.6.2 New Select Quote Documents Screen

The new Select Quote Document screen ( following the Budget Screen) allows the user to select from the list of documents attached to the Quote to be attached to the Work Order.

Select Quote Documents

This screen displays a list of documents attached to the Quote. The user may select documents that should get attached to any Work Orders created/updated by the wizard process.

ok
Click the ok box to check the documents you wish to attach to the Work Order being updated or created.

Description: Category: File: Document Id:
These display fields default from the Document record.  The File displays the Document's file type.

14.6.3 Approval Wizard Updates the Work Order Client and Sub NTE

When a Work Order is created/updated from the Quote/Quote Manager, the Work Order's Sub NTE will be set from the sum of the Extended Costs on the approved Sub Scope lines. The Work Order's Client NTE will be set from the sum of the Extended Prices and Revenue Adjustments on the approved Scope lines, Revenue Adjustments  included. In previous releases, the Approval Wizard did not update the Work Order's Client NTE or Sub NTE. Note that a registry entry suppressing the update of the Client NTE is available (UpdateNTEAmounts=false in sys-viewer-vwrkordr).

14.6.4 Approval Wizard Job Budget

When the Job Budget option is selected, the Quote's Revenue Adjustments now generate a revenue Budget Entry (+ or -) to the Job and Cost Code specified.  

When the Job Budget option of the Quote Approval wizard is selected, Budgeted Revenues are now written for T&M Quotes; previously only Budgeted Costs were written.

14.6.5 Approval Wizard - WO Log Tab

The Approval Wizard now writes to the Work Order Log Tab when a new Work Order is created as well as when a Work Order is updated by the Wizard.

14.7 Quote Master / Quote Scope Import Diagnostic Cost Wizard

Changed Field - Work Order Id:
The source Work Order from the Quote/Quote Manager defaults to the field. If there is no source Work Order, the user may enter an Id, or double-click to select from a filtered list of Work Orders associated with the Site in the Quote / Quote Manager record.  

New Field - Import All Equipment:
If this field is checked, any additional Equipment referenced on the Work Order's Equipment tab will be imported to the Scope's Equipment tab.

This release corrects issues associated with importing Other and non-inventory Material Diagnostic Costs. Edited Work Order lines are also imported correctly in this release. In addition, the Work Order Other Tab Description will be imported to Quote lines when the Diagnostic Cost Wizard is run. In previous releases, the Other Rate's Description was used instead of the Description on the Work Order line.

14.8 Import Flat Rate Wizard

This release corrects a display issue in the Quote and Quote Scope viewer where importing a Flat Rate did not update the Scope Of Services field until you clicked in it.

15 CRMAnywhere

15.1 Overview

The new CRMAnywhere is a powerful web-based module designed to give your company transparency and control in tracking your prospects’ progress from sales lead to customer.  From initial contact to Quote, your Sales Reps can create Opportunities, track Milestones, and plan Activities and meetings that integrate with a Google calendar. It also allows the creation of Quotes for potential and existing clients. Contact your account manager for details on licensing this new module. Note that the Opportunity record is ONLY available if the new CRMAnywhere module is licensed on your system.

CRMAnywhere now features the ability to navigate multiple records at once, to reference information in a previous record when creating a new one. The most-recently opened viewer is the only one that can be edited- previous windows are marked “Read-Only” but can be moved, re-sized, brought into main focus, and copied from using ctrl + C to copy and paste information into the new record. This feature can be accessed through open records- open a Contact record, then use the Add Opportunity button, or click a linked record from the lower tabs to open a new Opportunity or Quote record. You are not able to open an Opportunity record, then click back to the main dashboard to open a Contact record from the Analytic- additional records must be accessed from the most recently-opened record.

The records used by CRMAnywhere may also be accessed in SAMPro.  This section of the Customer Notes describes the SAMPro interface.  A separate training PowerPoint is available for the CRMAnywhere interface.  

15.2 Registry

15.2.0 Quote Scope and Manager Registry Entries Used by CRMAnywhere

CRMAnywhere supports the registries enabled for the Quote Manager and Quote Scope viewers.  See Customer Release Note 14.1.1 for details.

15.2.1 Opportunity Registry

The following registry setting is required to allow you to create Client Sites from the CRMAnywhere Dashboard or the SAMPro Opportunity viewer.

Id: sys-viewer-vopprtnty

Setting: NewSiteTemplateId    Setting Key: Site Template Id

The template site should be very basic since it must function for all Sites generated from Opportunities. The Client Site Template should have its Quote Defaults tab completed.  It must also have a Site Equipment record associated with it.

15.2.2 User Setup/Configuration  for CRMAnywhere Gmail Calendar Interface

User Registry:

The following Keys are required for the user's Activities to be interfaced with a Gmail Calendar.

Key:  GmailCalendarId  Value: the gmail address associated with the calendar

Key:  GmailCertificatePassword  Value: see Gmail Service Configurations

Key: GmailCertificateLocation  Value: see Gmail Service Configurations

Key:  GmailServiceAccountEmail  Value: see Gmail Service Configurations

Gmail Service Configuration:

Contact your support person to complete this step. They will provide the appropriate values for completing the User Registry Tab.

Google Calendar Integration Settings for the User:

From your Google Calendar, use the cog dropdown to select Settings. On the General settings tab, scroll down until you find the Events from Gmail setting. Uncheck the box. Scroll down until you see Show events you have declined and Automatically add invitations to my calendar. It's recommended to set both of these to No. Click Save to keep your changes.

Select the Calendars tab. Find your Gmail account's main calendar and click Shared: Edit Settings. Do NOT check the Make this calendar public box. Under Share with specific people, enter the GmailServiceAccountEmail value from your SAMPro User record's Registry Tab. Set the Permission settings to Make changes AND manage sharing. Click Save.

15.2.3 Report Quote Recap

Sectionkey support has been added to the Report Quote Recap dated 2015-08-11; the Quote Id is the sectionkey. This enhancement has been made to support the generation/saving of this report in CRMAnywhere. The appropriate registry entries must be made to support this functionality. The first two options are required for CRMAnywhere; the remaining to archive the report in SAMPro.

Registry Id: sys-report-rqtercp

Setting Key: autosavefilename  Setting Value: QuoteRecap,^sectionkeyvalue^-,^date^

Setting Key: autosavebysection  Setting Value: true

Setting Key: autosave    Setting Value: true

Setting Key: autosaveoverwrite   Setting Value: true

Setting Key: autosavedirectory   Setting Value: pathtodirectory

Setting Key: autosavefiletype    Setting Value: PDF or DBReport

15.2.4 Registry to Specify Opportunity Templates for CRMAnywhere

In order to properly set up Opportunities for different types of prospective Jobs, unique Opportunity templates can be created. Once the template is created, the desired display name and Opportunity record number needs to be entered in the new registry setting sys-crm-opptemplates. Once this registry has contents, you can select the appropriate template before entering details in each new Opportunity record created in CRMAnywhere.

Id: sys-crm-opptemplates

Setting Key: desired name of template  Setting Value: Opportunity Id

Refer to the CRMAnywhere Advanced Settings PowerPoint for details on setting up templates.

15.3 Related Records

15.3.1  Association

Purpose:

As its name implies, the Association Record may be used to identify and record the trade groups and professional associations to which your Contacts belong.

Usage:

The Contact record's Association Tab may be used to record their Associations. This information is available for reports, KPI's, and via CRMAnywhere.

Important Fields:

Association Id:
Typically, the Association's acronym or abbreviation (e.g., MSCA, PRSM, etc.).

Association Name:
This field should be used to record the  Association's name. Some abbreviations may be needed as this field is 40 characters in length (e.g., Mech Service Contractors of America).

Obsolete?
If this field is checked, the record is considered Obsolete, and it may not be directly specified during data entry. Obsoleted records can be edited and the Obsolete option can be cleared if needed.

15.3.2 Contact

Changed Tabs:

Main Tab

New Buttons:

 If the new CRMAnywhere is enabled on your system, clicking this button will launch the Opportunity viewer with the Contact Id completed.

 Click this button to copy the Contact Group's Mailing Address to the Mailing Address below.

Contact Id:
This is now a display-only field. When a new Contact record is saved, the system will automatically generate a numeric Id for it.

New Fields - Contact First Name: Contact Last Name:
The First and Last Name of the Contact.  These fields will update the display-only Contact Name field when the record is saved.

Mailing Address:
This field has been moved from the Misc Tab to the Main Tab.

Contact Extension:
Expanded to 7 digits.

New Field: Web Viewable CRM?
This field should only be flagged if this contact should be accessible from CRMAnywhere for Sales Reps. Typically, it would be flagged for prospects, middlemen, and for Contacts associated with existing Sites/Jobs that would be involved with specifying / approving new work.

User Fields Tab

Contact User 1-20:
These 30 character fields may be used for recording additional information about this Contact.

Contact Date 1-10:
These date fields may be used for recording dates pertinent to this Contact record.  

 

Associations Tab

Association Id:   Association Name:
Record the Associations this Contact belongs to.

 

Market Sources Tab

Source Id:
If this Contact was acquired via a specific marketing campaign, enter the appropriate Market Source Id.

Date:
Enter the Date of the campaign.

Description:
Additional details.

 

Opportunities Tab

SiteName - Summary Description - Status - Status Date - Estimated Value - Opened - Closed - Quoted? - Id

This display tab lists all Opportunities created for this Contact in SAMPro or CRMAnywhere for Sales Reps. You may double-click on an Opportunity to access it.

 

Activities Tab

SiteName - Summary Description - Status - Type - Description - Date - Time - Complete? - Id

This tab displays all Activities for the Opportunities associated with this Contact. Double-click on a line to open the Opportunity it is associated with. Note that the Summary Description defaults from the Opportunity.

 

Quotes Tab

This tab displays all Quotes referencing Opportunities created for this Contact. Double-click a line to access the Quote.

SiteName - Description - Status - Opened - Expiration - Opportunity Id - Quote Id

 

References Tab

Table Name:
The type of record (Opportunity, Project Manager, User, Project Principal, etc.) that is referencing this Contact.

Id: Name/Description:
The individual record within the specified Table that references this Contact.

Role:
The Role specifies how the Contact is used in each Table. For example, if this Contact is for a Project Manager, lines would be entered for his association with his User record, his Project Manager record. In these cases, the 'Role' derives from the Table Name.  

Lines will also display for any Jobs where he is included on the Job's Contacts Tab. In this cause, the Role column derives from the Contact Type field on the Contacts Tab (in our example, PM).

 

Table Name

Id

Name/Description

Role

Job

200343

David Gray

PM

Project Manager

DGray

David Gray

Project Manager

User

1234

David Gray

User

15.3.2a Additional Contact Viewer Enhancements

Data Conversion

When data is converted up to this version, the system will populate the new First Name and Last Name fields based on the original Contact Name field as follows:

If the Contact Name field contains two words (for example, Joe Smith) the first word will be used to populate the First Name field, and the second word will populate the Last Name field.

If the Contact Name field does not contain two words, the system will not attempt to update the First and Last Name fields (this must be done by a user).

If data was upgraded to 9.0 before this release, contact support for assistance to implement this functionality..  

Contact List View

A new sort order, ByLastName, has been added to support the new Last Name field.

Contact Filter View

New Filter Ranges:  Last Name - First Name

These new ranges have been added to support new First and Last Name fields.

 

15.3.3 Contact Group

Contact Group Id:
In this release, the Contact Group Id retains the value entered by the user when the record is added instead of changing it to the Rn.

New Field - Obsolete?
If this field is checked, the record is considered Obsolete, and it may not be directly specified during data-entry (either by entering the Id or selecting it from a list). Obsoleted records can be edited and the Obsolete option can be cleared when necessary. When you check the Obsolete field, the following message box will be displayed:

“You have elected to obsolete this record. Would you like to see existing references to this record?”

If you click Yes, the system will display a viewer that provides click-through access to all tables referencing this record.

New Tabs:

Contacts Tab

This tab lists all Contacts belonging to this Group.  Double-click on a line to open the selected Contact record.

Opportunities Tab

This tab lists all Opportunities related to Contacts belonging to this Group.  Double-click on a line to open the selected Opportunity record.

Quotes

This tab lists all Quotes related to Contacts belonging to this Group.  Double-click on a line to open the selected Quote record.

15.3.4  Milestones

Previously referenced in the Job record, Milestones may now also be used in the Opportunity record.  The Milestones created for Opportunities might include Site Visit, Create Quote, etc.

15.4  Opportunity Viewer

Purpose:

Opportunity records are used to track and manage sales opportunities in SAMPro back office and CRMAnywhere for current or potential customers. They may be used as a starting point for creating Quotes in CRMAnywhere or SAMPro.

Opportunities reference Milestones and Activities (meetings, calls, anything that should be a calendar event) on the child tabs. Activities may be synced with a Calendar.  Currently, the Sales Rep's Google Calendar is supported via their Gmail account.

Usage:

Note that Opportunities can be assigned to Sales Reps but Contacts can’t; Contacts may have multiple sales lead opportunities in different areas,which can be assigned to multiple Sales Reps. One Contact can have as many Opportunities as you like.

Important Fields:

Main Tab:

Contact Id: Group Id:
The Contract Id is required.  Each Opportunity must be associated with a Contact. The display-only Group Id defaults from the Contact record.

Phone: Cell Phone: Fax Phone: Email:
These display-only fields default from the Contact record.

Site Id:
If this opportunity is for an existing Site, it may be entered in this field. If the Site does not yet exist, the Add Site button may be used to create it. Opportunities do not need to have a Site until a Quote is needed.

Summary Description:
A brief (80 character) description of this Opportunity. This field appears on the Opportunity list screens and is highly recommended.

Estimated Value:
The best estimate of the dollar value of this Opportunity.

Probability:
The probability (as a percentage) of winning this business.

Status:
The Status of this Opportunity. This text field allows meaningful statuses to be used by your company.

Status Date:
This field is automatically set to today's date when the Status field is changed.

Date Opened:
This field is set to today's date when the Opportunity is created.

Date Closed:
This date should be set when the Opportunity is completed successfully or work is declined.

Once you are at a point to Quote your potential Client, you can either select an existing Site, or click the Add Site button. Fill in the template, being sure to name your new Site, and click Add. This new Client Site will be created with a status of Mail-List Only, and is not an active Site until the Quote is accepted and the back office activates the Client Site.

Once you have a Site on the Opportunity record and are ready to create a Quote for them, click the Add Quote button. The Quote Manager will be launched with the Site, Sales Rep and Opportunity fields pre-loaded from this record.

Description Tab:

Extended Description:
This 5000 character field may be used for a more extensive description. It will be displayed on the Quote's Opportunity tab.

User Fields Tab:

Opportunity User 1-20:
These field may be used to record information important to your company.

Milestones Tab:

This tab allows appropriate Milestones to be set for this opportunity.  The Milestones will be created by your company, but some typical examples for Opportunity use could be:  Pre-Sales, Initial Customer Meeting, Create Quote, Submit Quote, Close Sale.

Milestone Id:
Enter a Milestone Id or double-click to select from a list.

Start Date: End Date:
The Starting and Ending dates for this Milestone.

Description:
A brief description of this Milestone; defaults from the Milestone record but may be changed by the user.

Milestone Description:
This display only field shows the Description in the Milestone record.

Completed?
Check this field (by double-clicking on it) if this Milestone has been completed.

 

Activities Tab:

Activities are events such as meetings, site visits, and phone calls that can be tracked on a Calendar. Click the Magnify button to view add fields.

Date:  Time:
When the Activity is scheduled to start.

End Date:  End Time:
When the Activity is scheduled to end.

Type:
The type of Activity - call, email, visit, etc.

Priority:
Defines the level of importance.  Your firm may use text (High, Low) or a numeric value to specify the priority.

Status:
Describes the current status of this Activity (To Do, In Process, etc.).

Status Date:

Completed?
Check this box if this Activity has been completed.

Send to Calendar?
Check this box if this Activity should be sent to the Sales Rep's calendar.

Summary Description:
Briefly describes this Activity.

Calendar Title:
This text will appear on the Calendar.

Regards:
A more detailed description of what this Activity is regarding.

Quotes Tab

Displays the Quotes this Opportunity is associated with.  Double-click on a line to access the Quote.

15.5  Client Site CRM Data Viewer

Purpose:

This new viewer will be launched when the Opportunity record's Add Site button is used to successfully create a new Site for the Opportunity.  It provides access to those fields needed to create a Quote.

Important Fields:

Main Tab

Site Id:
This display only field specifies the Site Id; it may not be changed from this screen.

Site Name:
If this Site was generated from an Opportunity record, this field defaults from the CRM template.  It may be changed by the user to conform to your firm's naming conventions for Sites.

Clicking this button will copy the Voice and Fax Phone Numbers, Email Address, and Work/Ship Address from the last Contact line on the Contacts tab.

Site Voice Phone:  Site Fax Phone:
The main voice and fax number at this site.

Email Address:
The e-mail address for this Site.

Store #:
Optional. The Store number uniquely associated with this site.

Work/Ship Address:

Street Address:
City:  State:  Zip:
The actual (street) address of this Site.

Contacts Tab

The Contact tab enables you to attach one or more Contacts to a Site for informational and reporting purposes.  The last Contact listed will be used when the Copy From Contact button is clicked.

Contact Id:
Enter a valid Contact Id (or double-click to select from a list). You may create as many lines as needed to accommodate all contacts. The display-only Name, Firm, Email and Phone number fields will default from the Contact record.

Contact Type Id:
This optional field defaults from the Contact record but may be changed by the user if needed.

 

16 Service Management

16.1 Registry

16.1.1 Registry to Warn or Error if WO Date Scheduled Set to Past Date

This registry option may be used prevent or warn the user from setting the Work Order Date Scheduled (on the Tech tab) to a date in the past. When implemented, the user will either be warned about (Warning option) or prevented from (Error option) changing the Date Scheduled to a date in the past in New Call, the Work Order viewer, Start Workorder Daily Edit, the Dispatch Board and TechFinder.

Registry Id: sys-ffv-global-settings

Setting Key: DontAllowWOScheduledDateBeforeCurrentDate  Setting Value: Error or Warning

16.1.2  Registry to Specify Active Work Orders on Powerboard Tech Summary

The Powerboard Tech Summary shows the 'active' work order the Tech is assigned to.  By default, 'active' work orders have a Tech Tab status of travel or onsite.  The following registry allows the user to override the default, and specify their only list of 'active' statuses. Note the following registry does NOT impact the WO Escalation Status, only the Powerboard's Tech Summary.

Registry Id: sys-viewer-vdsptchbrd

Setting Key: ActiveDBoardStatuses  Setting Value: list of status

Example:  

Setting Key: ActiveDBoardStatuses  Setting Value: travel,onsite,parts pickup

16.1.3 Registry to Control Start Work Order Daily Edit WO Count

It is possible to inadvertently run this function for many more work orders than the user intended. In this release, when the Go button is clicked on the initial range screen, the user will be prompted with a message specifying the number of records that will be processed:

WARNING: #### records have been selected for adjustments.
Press Yes to continue or No to cancel.

In addition, a registry entry is also available to limit the number of records which may be selected for processing on the Checklist screen.

Registry Id:  sys-start-swrkordrdlyedt

Setting Key: MaxWorkOrderCount    Setting Value: maxnumberofrecordsallowed

We recommend setting this registry to 500 as a starting point. It is possible that firms with extremely large PM runs may need to set this value somewhat higher.

Setting Key: MaxWorkOrderCount    Setting Value: 500

When this registry is enabled and the number of selected lines exceeds the registry setting, the system will display a message similar to the following when the Go button is clicked on the checklist screen:

ERROR: 556 Records have been selected for adjustments.
This process is limited to 500 records.
You must select fewer records before proceeding.

Once the user deselects enough records to meet the limit, clicking the Go button will process the Work Orders.

16.1.3a  Use Standard Settings/Registry When Running WO Daily Edit From Dispatch Board

By default, selecting Edit Daily Workorders from Dispatch Board causes log types to be used from Dispatch Board. If the following registry is set, the standard WorkOrder Daily Edit settings (included those defined in sys-start-swrkordrdlyedt) to be used instead.

Id: 'sys-viewer-vdsptchbrd'
Setting Key: UseStandardWorkOrderDailyEditSettings   Setting Value: true   (default false)

16.1.4 New Call Audit Option

This version supports an audit option to write user actions in New Call to a log. The following registry is needed to turn on New Call Audit Log:

Id: sys-newcall
Setting Key: AllowNewCallLog   Setting Value: true

Each time New Call opens, a file (using User_date_time in the name) will be opened in the directory specified via the dbreportfiles registry.  Audit messages will be written to the file each time a user action generates a change in New Call.

16.1.4a New Call Option to Omit Market Source when Creating New Site/Client  Records

The following registry has been revised to omit writing the Market Source to the new Site and Client records. Previously, the Market Source was only omitted from the new Site.

This registry entry impacts the New Call Create (flashlight) and New Call New COD screen where a new Client Site (and Client if applicable) are created along with the new Work Order.

Id: sys-newcall
Setting Key: MarketSourceNoSite    Setting Value: true    (default false)

If false or registry key is absent, continue to write the NewCall Market Source to the new Site and or Client and WO (default behavior).

16.1.4b New Call Option to Clear Default Tech When Selecting Equipment

The following registry option causes the system to ignore the default technician specified in the Site or Equipment. When it is enabled, the Technician Id will be set to blank (unassigned) when the Equipment is selected (regardless of whether it whether it was manually selected or defaulted). After the equipment has been selected, the user may then enter the Technician Id or use TechFinder to do so.

Id: sys-newcall   

Setting Key: IgnoreDefaultTechFromClientSite   Setting Value: true  (default is false)

16.1.5 Registry to Skip Checklist when Running Service Billing Worksheet

Id: sys-start-ssrvcebllngwrksht

Setting Key: SkipCheckList   Setting Value: true (default is false)

This setting is currently only supported for the Start Compute Service Billing Worksheet function. When this option is in place, the user won't need to push the GO button on the check list to see the report get displayed. This functionality supported both from the Work Order's Print Worksheet button and from Start Compute Service Billing

Example:

Eliminate the printer prompt AND checklist screen from the Service Billing Worksheet.   Worksheet.

Id: sys-start-ssrvcebllngwrksht

Setting Key: SkipCheckList   Setting Value: true

Setting Key: UseDefaultPrinter   Setting Value: true

Setting Key: DefaultDo Setting Value: true  (required to flag all lines on the checklist)

Note that the UseDefaultPrinter option is available for reports which do not require a starter function. See Customer Note 1.2.3.

16.1.6 Registry to turn On New Work Order GM Screen based on Job History / Projections

By default, the Work Order's Gross Margin tab is based on information loaded into the Work Order record itself. When the following registry is enabled, a different Gross Margin tab will appear. This version of the Gross Margin tab is especially useful if Revenue Adjustments are entered to ensure that the Work Order NTE is not exceeded.

This tab displays information based on Job History; Revenue Adjustment projections will be also be displayed if actual values are not found in Job History. See Customer Note 16.1.6a for additional details. ONLY values for the Job referenced on the Work Order's Main tab will appear.

Registry Id: sys-viewer-vwrkordr

Setting Key: GrossMarginFromJobHistory   Setting Value: true   (default false)

The following existing registry option must also be implemented to ensure that management fee lines are correctly written to Job History.

Registry Id: sys-ffv-global-settings

Setting Key: SetTaxTypeManagementFees    Setting Value: true   

16.1.6a New Work Order Gross Margin Tab (From Job History / Projections)

This tab will appear if the above registry is enabled. It displays information from in Job History as well as projections based on the selected Revenue Adjustment table. This information will help the user determine if any adjustments should be made to the Work Order to prevent its total invoiced amounts from exceeding the Client NTE. Note that ONLY values for the Job referenced on the Work Order's Main tab will appear.

Important Fields / Buttons:

Gross Margin Id:
Analyze Labor:  Analyze Materials: Analyze Other: Analyze Subcontract:
These display-only fields default from the Gross Margin table for this Work Order. If an Analyze box is checked, that category of costs/revenues will be included in the Gross Margin Analysis.

Revenue Adjustment Id:
The Revenue Adjustment record used by the system when the Adjust Revenue button is clicked, and also for projected values if actual Job History values do not yet exist. The Rates, GL Accounts and Invoice Description from the header of this table are displayed below the UNBILLED and TOTAL sections of this screen.

image\SKIN1_RefreshGM.gif Clicking this button refreshes the tab with current entries in Job History and any applicable projections from the Revenue Adjustment table.  

 image\SKIN1_ComputeRevAdjust.gif  Entries on the RevAdjust tab are automatically created by clicking his button if a Revenue Adjustment table is specified on this Work Order. Only Revenue Adjustments pertaining to the Job on the Work Order's Main Tab will be generated. These entries will also be written to Job History so they will be displayed this tab. Clicking this button also imports all applicable costs into the Work Order so that any manual adjustments can be made easily.

Warning: Clicking this button will delete any unbilled manual Revenue Adjustments on this Work Order.

Client NTE:
The user will be warned if the Projected Invoice Total exceeds this value. The field may be used to adjust the default Client Not to Exceed value if the customer has approved a greater value for this Work Order.

UNBILLED:

This section is a matrix that enables you to review Revenues and Revenue Adjustments before billing the Work Order. Detail lines with an Effective Date in the future will NOT be included in the matrix.

Labor: Material: Other: Subcontract: Subtotal:

Billable Cost:   Revenue:  
These
display-only fields are calculated by the system based on the unbilled Costs/Revenue in Job History for each category.

RevAdjust:
If any Unbilled Revenue Adjustments (not netting to zero) for any cost type are found in Job History they will be used to generate these fields. Otherwise, the system will project the Revenue Adjustment values based on Unbilled Revenues and the Revenue Adjustment Id in the Work Order.  The projected value will also be used if Unbilled Revenue Adjustments netting to zero across all values are found in Job History.

NOTE: There cannot be a mixture of actual and projected Revenue Adjustments displayed on the screen. For example, if an unbilled Revenue Adjustment for labor exists in Job History, that will be displayed on the Gross Margin tab: any projected values for material, other or subcontract costs will not appear.  

Clicking the Adjust Revenue button allows you to import costs and make the actual Revenue Adjustment entries in the Work Order and to Job History. When you save the Work Order and refresh the Gross Margin screen, the actual unbilled Revenue Adjustments will appear on the Gross Margin tab.

Net Revenue:
The net of the Revenue and Rev Adjust columns.

GM%    
The Gross Margin % for this line (
Net Revenue - Billable Cost) / Net Revenue * 100). Note that if no Billable Costs exist for this line, this column will be blank.

Target%:  
Displayed from the
Gross Margin table.

Subtotal:
Before Sales Tax.

Sales Tax:
The projected Sales Tax for the Next Invoice.

Next Invoice Total:
The projected value of the next invoice, including Sales Tab.

TOTALS:
These fields are computed by the system based on the values from the UNBILLED matrix PLUS any invoiced lines for Job on the Work Order's Main tab.

Labor: Material: Other: Subcontract: Subtotal:  

Total Cost: Total Revenue:
Displays the Total Cost and Total (net) Revenue from UNBILLED matrix PLUS any invoiced lines for Job on the Work Order's Main tab.

Total % GM$:
The Total% column displays the projected Gross Margin Percent for this Work Order as a whole. The Gross Margin Dollars (GM$) column is calculated by subtracting the Billable Cost from the Revenue.

Subtotal:
Before Sales Tax.

Sales Tax:
The projected Sales Tax total for all billed and projected invoices.

Projected Invoice Total:
The projected total (including Sales Tax) for all billed and projected invoices for this Work Order. This field is compared to the Client NTE specified on this tab.  The user will be warned if this field exceeds the Client NTE when the Work Order is saved.

16.1.6b Work Order Registry to Deny Manual Entry of Negative Inventory Lines

Registry Id: sys-viewer-vwrkordr

Setting Key: AllowNegativeInventoryQuantity

Setting Values: true    (default is false)

Implementing this registry setting prevents the user from manually entering negative Inventory lines on the Work Order Inventory tab.  Typically, this would be enabled to require IM ADJUSTMENT transactions to be made to "return" items to a stocking location.  Ideally, the Return Wizard process to would be used to do so. This type of transaction influences the Average Cost Calculation whereas direct WO Inventory activity does not.

WARNING: As of this release, this new option is applied to both the Actual and the Billable quantities.  With the new option enabled one cannot give a billing credit (negative Billable Qty) to adjust and/or correct an invoice.

16.1.7 TechFinder Registry to Control WO Status Category  (Allow WaitCustApprvl)

In previous releases, the system was hard-coded to only allow Work Orders with a Status Category of Open or Completed.  However the WaitCustApprvl escalation and tech statuses map to a Status Category of Pending Ok To Start, which meant that these WO would never appear on the TechFinder viewer.

In this release, a new registry has been added to override the default Status Category limit for TechFinder. Which enabled, all Status Categories are allowed.  

Registry Id: sys-tech-finder

Setting Key: WOStatusCategorySQL  Setting Value: wrkordr.wrkordr_stts_ctgry like '%'

NOTE: if the above setting in in please, the Work Orders shown on TechFinder will continue to be filtered by the default Tech and WO Escalation Statuses (or those set by the TechStatusSQL and WOStatusSQL settings).

16.1.8  Registry to Override NewWorkOrderStatus for Preventative Maintenance Work Orders

This registry should be set to enable Preventative Maintenance Work Orders (generated by Create PM Work Orders) to be assigned a special status when they are created even when NewWorkOrderStatus is set (which trumps the older StatusForPreventiveMaint registry option).

Registry Id: sys-web-access-none and sys-web-access-technician

Setting Key: OverrideNewWorkOrderStatus Setting Value: astatus

16.1.8a Registry to Override Status of PM Work Orders With ReqResource Parts

Registy Id: sys-start-scrtepmwo
Setting Key: ReqPMPartsStatus    Setting Value: status

By default, PM Work Orders which were generated with any ReqResource lines were ALWAYS set to Waiting Parts. This registry provides an override so that users can specify a different status for PM's with ReqResource parts.

Example: To set PM's with ReqResource lines to Waiting Service:

Id: sys-start-scrtepmwo
Setting Key: ReqPMPartsStatus   Setting Value: Waiting Service

16.1.9 Prevent User from Editing WO Other Tab Lines Imported from a PO

If the user changes the description of a Gen Item after it is imported into the WO from a source PO a disconnect is created when running Create EOM Unvouchered AP GL Entries (seomunvchrdap). Those changed lines will not be included in the GL Journal written by the function.

A registry has been added to previous these lines from being changed on the Work Order's Other tab. If the following registry is implemented, the system will display an error message if the user attempts to change the description on an Other tab line associated with a PO and imported from JCH. Note that the Setting Value is false to implement this behavior.

Registry Id: sys-viewer-vwrkordr

Setting Key: AllowEditOfPOGENDescriptions   

Setting Value: false  (Default is true to preserve current behavior)

16.2 Reports

16.2.1 Service Invoice

See Customer Note 8.2.1a for details on implementing an enhancement to attach TechAnywhere Receipts and Other Documents to Emailed Service Invoices and to Skip Print Emailed Service Invoices.

16.2.2 Work Order Field Ticket Standard (woticket-db.rpt)

The revised report dated 2016-02-25 adds an option to Skip PO Summary. In addition, Multi-page textbox processing was added for the Work Requested field.  

16.2.3 Report PM Agreement Summary (RPMAGRMNT)

Report revised 2016-06-14 fixes alignments in the Invoice section of the report.

16.2.3 Report PM WorkOrder List

This release plus the revised Report PM WorkOrder List (RPMWRKORDRLST.rpt) dated 2017-09-12 supports the OrderBy registry (if present) for the function Start Create PM Work Orders (sys-start-scrtepmwo).  This means that the function's checklist and the report will appear in the same order.

Important Note to Sybase Users:

If the Client Site Equipment's Inspection Date is referenced in the OrderBy statement, its database name must be entered as clntsteeqpmntpm.clntsteeqpmntpm_dte_schdld_inspctn instead of clntsteeqpmntpm_dte_schdld_inspctn to prevent a Sybase error -144 column not found error when the report is run.

Id: sys-start-scrtepmwo

Setting Key: OrderBy
Setting Value: clntste_id,clntsteeqpmntpm.clntsteeqpmntpm_dte_schdld_inspctn,tchncn_id,clntsteeqpmnt_id

16.2.4 Report Site Service History

The revised Report Site Service History (RSRVCEHSTRYDTL.rpt) dated 2017-10-04 includes a new range filter, Equipment Type Id. This range allows the report to be filtered to Site Equipment of specific Equipment Type(s),

16.3 Work Order Viewer

This release corrects a keyFieldNotInDictionary error which occurred when the user attempted to add a Call Script  for the second (or greater) piece of Equipment listed on the Work Order.

Create PO Button: When this button is clicked, the caret will be positioned in the Vendor Id when the PO is opened to save keystrokes.

The system no longer attempts to calculate the Gross Margin if the Work Order or Job Id is empty. This should result in a performance enhancement when the empty Work Over viewer is accessed.

When the new Create Quote button is clicked, the Quote Manager viewer is launched with the Work Order Id and other defaults filled in, with the Add button enabled.

Corrects a spurious 'Receiver is not a boolean' error which occurred if the user immediately clicked the RR Wizard or Import RR button after accessing the record.

16.3.1 Work Order Technician Tab

A new tech Status, Over Budget, has been added; it has a corresponding Work Order Escalation Status of Over Budget (Status Category Completed), This new status falls above Completed and below Wait Paperwork in precedence.

When changing from one Subcontractor Tech to another Sub, when the Vendor is updated in the associated PO the AP Terms and Tax Group will also be updated. Only PO's with no child lines will be updated.

This release refines the update of the Purchase Order if one Subcontractor Tech (with a referenced PO) is changed to another. The AP Term in the PO is forced to match the terms from the Vendor record, even if blank (unless overridden by customization). The PO's Sales Tax Group is updated from either the Vendor (by default) or Job record (if the DefaultPOTaxGroupFromJob is set to true in sys-viewer-vprchseordrlst registry).

Corrects a display issue in the magnify view of the Technician tab.

 The WO Tech Index allows multiple lines with the same date but not the same time per technician. The insert/copy functionality has been changed to blank the Time Scheduled on the new Line instead of the Date Scheduled. The message "WARNING: the Time Scheduled cannot be copied" will be displayed.

Changed Buttons:

image\WOTechFinder.gif  TechFinder functionality now supports the sys-viewer-vwrkordr registry's CreatePOForSub option: if it is set to Automatic, a PO will automatically be generated when a Subcontractor is assigned.  If the option is set to Prompt, the user will be prompted to confirm that a PO should be created.  If the option is set to Manual (or the registry is absent) a Subcontractor PO will not be generated.

When a SubAnywhere subcontractor is added to a Work Order, the PO that is generated for the sub (either automatically or by clicking the Create Sub PO button) will be set to Unreleased to conform to SubAnywhere requirements. To be considered a SubAnywhere tech, the Technician record must: reference a Vendor record; have the Web Access field set to Subcontractor, and have the Remote Device Type set to the new option of SubAnywhere.

16.3.2 Work Order Quotes Tab

When a line on the display-only Quotes Tab is double-clicked, the Quote Manager viewer for that Quote will be launched.  In previous versions, the older Quotes viewer was displayed.

16.3.3 Work Order Invoices Tab

Changed Field: Balance
Corrects a display issue where a discount applied in Cash Receipts appeared in this field. This field now correctly displays only the balance due (if any) on the invoice.  

New Field: Discount Taken
This display field is maintained by the system.

16.3.4  Work Order ReqResource Tab

New Field - UOM:
Displays the Unit of Measure from the Inventory record.

Vendor Id:
In this release, the Vendor always defaults from the Inventory record's Purchasing when a manual line is entered AND the global registry option DefaultRequiredResourceVendorFromInventory=true is enabled. Previously, this defaulting was blocked if DefaultRequiredResourceVendorFromJCHBudgets=true was also set.

When an Inventory Item is added, the Job Cost Category defaults from the Inventory Item's Group record. The Cost Category must be of Type Material.

New Button:

When this button is clicked, the Start Material Requisitioning function is launched with the As Of Date field set to today, and the selected Work Order Id entered in its range filter.

16.3.4a  Picked Processing

If items are not transferred to the Inventory tab when the record is saved with the 'Picked' flag set, the transaction will be rolled back. If this functionality is being used, it is strongly suggested that the AdjustDefaultDateOrPeriod registry (in sys-viewer-vwrkordr) is set to date to avoid errors during the picked processing.

16.3.4b WO Required Resources Wizard

If the same item appears on the ReqResource tab multiple times for different equipment, these lines must be consolidated when the PO is generated. The consolidation messages are now streamlined so that instead of displaying a message each time an time an item requiring consolidation is found, the system now displays the consolidation message only once if needed. A list enumerating the consolidations will then appear. This list may be printed if needed. This information is attached to the PO as a Note.

This release also corrects sporadic problems with Inventory line consolidation.

16.3.5 Work Order Main Tab

New Field: Email
The Email address from the Site's upper Contacts tab is now displayed below the Site's Phone and Fax numbers.

New Field: Dispatcher Comments
This new 3000 character text box may be used to record conversation/activity notes about the Work Order.

Work Order Type Added - Q/A:
This Type has been added to identify Work Orders generated by Start Create Quality Assurance Work Orders. See Customer Release Note 16.4 for details.

New Field: Store #:
The Site's Store # is now displayed to the right of the Site Id.

Return to Inventory Button:
If the Return To Inventory Wizard is canceled, the Inventory Adjustment Journal entry is NOT saved. Previously, an entry with header but no detail information was saved.

16.3.6  Work Order Labor Tab

Labor Tab Header: The Actual Hours: Billable Hours: fields display a running total of hours entered on the Work Order. Negative labor hours are now subtracted from these running totals instead of being added.  

PR-to-GL Accruals: In previous releases, accruals were skipped for Standard Cost type Earnings record when an Overhead Jobs was specified. In this release, accruals are correctly posted for Standard Cost Earnings for Jobs that are not Direct.

The Extended Price has been expanded from decimal(8,2) to decimal (10,2).

Magnify View New Fields

Start Time:  Stop Time:
These fields would typically be completed if this time was originally entered via TechAnywhere. Note that changes made to these fields may impact the actual Hours field.

Payroll Period:
Validation now prevents changing the Payroll Period on an existing Labor line from one that has Accrue to GL enabled to one with Accrual to GL disabled and vice versa.

16.3.7  Work Order Inventory Tab

The Extended Price has been expanded from decimal(8,2) to decimal (10,2).

Changed Field - Bill Type Id:
If the new markup methodology is in effect this field will be set to Unit Price because the price calculation is the result of an aggregate calculation. If the old markup methodology is in effect this field will be set to the applicable value (margin, markup or multiplier). See Customer Note 8.3 for details.

New Field - UOM:
Displays the Unit of Measure from the Inventory record.

16.3.8 Work Order Other Tab

This release corrects a recent issue where Tax Cost transfers posted to GLH out-of-balance for Use Tax jobs.

The Tax Cost (for Use Tax Jobs) is now computed properly when an Other Rate with a Standard Cost is selected. Previously, the Tax Cost was not computed if the Unit Cost defaulted in rather than being entered by the user.

Other lines for Fixed Fee Billing Items (for Use Tax Jobs) which the user flags as Extra now  have the Use tax factored in when the Revenue is calculated.

Lines entered via the Flat Rate import now correctly evaluate "exceptions" in the Sale Tax Group when setting the Sales Tax Type.

The Extended Price has been expanded from decimal(8,2) to decimal (10,2).

Changed Field - Bill Type Id:
If the new markup methodology is in effect this field will be set to Unit Price because the price calculation is the result of an aggregate calculation. If the old markup methodology is in effect this field will be set to the applicable value (margin, markup or multiplier). See Customer Note 8.3 for details.

16.3.8a  Lines from Site's WO Other Tab

This release corrects a 'system primitive failed' error when a Work Order created under the following scenario is first edited:

Work Order is created in New Call
The Site's WO Other line writes to the WO Other tab
WO Other to GL is enabled in the Accounting Period

16.3.8b Unit Price Calculations with Canadian PST

Changed Field: Unit Price
This release corrects the calculation of the Unit Price in the specific scenario where the Bill Quantity was edited to a different value than the Actual Quantity for lines where there is a "tax cost" to be included in the basis of calculating the Unit Price. This issue primarily impacts situations such as calculating the Canadian PST as an additional cost on a line to be included in pricing mark-up. When adjusting the Unit Cost to include Tax Cost on the Work Order Other tab, the system now uses the Actual Qty, not the Billable Qty.

16.3.9  Work Order COD Child Tab

The user id is now sent to XCharge for a WO COD Payment single payment where the alias is not known.

New Field: Date Received: (click the Magnify Button to access)
It may be necessary to generate multiple invoices on a single WO that has multiple COD lines from different visits. In previous releases, this was handled by toggling the 'Do Not Apply' flag. In this release, when invoicing with the revised Service Invoice, the system compares the COD's Date Received with the Bill Thru Date selected to determine if a WO COD line should be included on the invoice. The Cash Receipts Journal entry generated when the invoice is posting will have its Effective Date set to the WO COD Tab's Date Received. If the Date Received does not fall within the current default Accounting Period, the Cash Receipt's Effective Date is adjusted to be either the Start Date or the End Date of the defaulted Accounting Period.  The Start Date is chosen when the current date is less than the Start Date.  The End Date is chosen when the current date is greater than the End Date.

If the COD Tab's Date Received is blank, the line will be included on the invoice unless the Do Not Apply flag is set.

The revised Service Invoice Report (serviceinvoicev90b002.rpt) dated 12/17/2014 supports the use of the WO COD tab's Date Received field to determine if a COD Payment should be included on an invoice. If the Invoice's Bill Thru Date equals or exceeds the WO COD tab's Date Received the COD Payment will be applied to the Invoice.  

16.3.9  Work Order Revenue Adjustment Tab

The Adjust Revenue button on the GM tab now skips the special *ACCRUAL* lines for PM Invoicing even if they have not yet been billed.

This release prevents spurious Tab Mismatch errors encountered when additional Revenue Adjustment lines were added to accrual-type PM Work Orders.

This release closes a loophole which allowed the user to delete billed Revenue Adjustments immediately after invoicing a Work Order. The user is also prevented from indirectly deleting billed lines via the Adjust Revenue button on Gross Margin tab.  

16.3.10 Work Order Import Costs Wizard

In this release, labor, material and other lines imported into the Work Order (using either the Import Costs button or the Import Costs Wizard) will retain their Job information even when the registry option DefaultJobByEquipmentId is enabled.

Refines the import of requisitioned items when the User's and WO's Branches are not the same.

Corrects an error when selecting the Equipment Id on the Inventory screen.

16.3.11 Work Order Call Script Tab

The Call Script tab retains the User Id of the person who entered the Call Script when a different user saves the Work Order.

16.3.12 Create PO Button

The Purchase Order registry DefaultPOTaxGroupFromJob is also supported when a PO is generated via this button.

16.3.13 Work Order - Project Manager Filtering

This release applies the User's PM filtering to the Work Order viewer. The Project Manager is connected to the Work Order via the Work Order's parent Job.  A new list option, Work Orders By Project Manager Id has been added to support this enhancement.

16.3.14 Work Order Invoicing Tab

Date Closed:
This field is set to today's date when the Work Order's Escalation Status is set to Cancelled: this happens when all Tech lines on are set to 'cancelled'.

16.3.15 Work Order Gross Margin Tab

This release corrects a display issue where the Gross Margin % value was truncated for values greater than 100%. For  example, if the gross margin% was calculated as GM $/Total Revenue = 558.39 / 493.00 = 113.26% only the 13,26% would display in previous versions.

The Adjust Revenue button now skips the special *ACCRUAL* lines for PM Invoicing even if they have not yet been billed to prevent Tab Mismatches.

16.3.16 Work Order Other Info Tab

The Work Order Comments field has been expanded to display the 15 lines of the Site Work Order Comments.

16.3.17 Work Order Revenues Tab

This release corrects a 'Runtime error: system primitive failed' which occurred when double clicking on an AP Journal line.

16.3.18 Work Order Equipment Tab

This release correctly sets the Cycle Code Filter when Equipment is manually added with a Work Code referencing a Cycle Code. This will prevent TechAnywhere sync issues resulting from an incorrectly formatted filter.  

16.4 Start Create Quality Assurance Work Orders

Purpose:

This new starter function allows users to create new Quality Assurance (Q/A) Work Orders for internal use by "cloning" completed Work Orders.

Description of Q/A Work Order

The new Q/A Work Order will include information specified from the input screen as well as fields imported from the Work Order being cloned. The Work Order Type will be set to Q/A. The Job Id, Job Cost Code Id and Job Billing Item Id will not be cloned.

The following fields will be set when the Q/A Work Order is generated:

Work Order Header (Main and Invoicing Tabs):

The following fields will be "cloned" from the WO used to create it:

Work Order Name - Site Id - Original Caller - Branch Id
Service Manager - Work Order NTE -  Work Performed
Dispatcher - Sales Rep - Service Zone

The Work Code will default from the function's input field.

If the user specified an Escalation Profile when running the function, it will be written to the Q/A Work Order. If the user did not specify the Escalation Profile, it will be "cloned" from the Work Order used to create it.
The Original WO Id will be set to the Work Order used to generate this Q/A Work Order.

Equipment Tab:

These fields will be "cloned" from the WO used to create it:

Equipment Id - Work Code - Resolution Code - Cause Code
Service Parts Id -  Service Tasks Id
Work Requested - Work Performed

Technician Tab:

These fields will default from the function's input fields:

Tech Id - Status - Date Scheduled

The Time Scheduled will be set to 8:00, and the Status will be set to the default for the selected Technician.  

Log Tab:

This tab will be set in the same fashion as the Tech Tab.        

Important Fields Initial Range Screen:

New Value Fields: (will be used to generate the new Q/A Work Orders)

Tech Id:
Select the Technician the Q/A Work Order should be assigned to.  

Date Scheduled:
Specify the Date Scheduled for the Q/A Work Order.

Work Code Id:
Select an appropriate Work Code for the Q/A Work Order.

Escalation Profile Id:
Select an Escalation Profile suitable for Quality Assurance Work Orders. If this field is left blank, the original Work Order's Escalation Profile will be cloned to the Q/A Work Order.

Important Note:
If the Escalation Profile is cloned from a 'real' Work Order, Scheduled Events could be generated for Site-based Notifications with could cause confusion for the customer, as well as Dispatcher/Service Manager Notifications not always appropriate for Q/A Work Orders.

Filter Fields (will be used to select the Work Orders to create Q/A Work Orders for)

Technician Id:
Site Id:
Work Order Id:
Work Code Id:
Work Order Date Completed:
One or more of these ranges should be completed to limit the Work Orders eligible for Quality Assurance Processing. In the case of the Technician and Work Code ranges, the Id on the Work Order's Main tab will be evaluated.

Escalation Status:
By default, this range is set to Completed,Invoice Ready,Billed so that only work orders that have been finished will be eligible for Q/A processing. This range may be adjusted by the user if needed.

WO Type:
By default, this range is set to ~PM Invoice, Rental Invoice so that PM and Rental Invoice Work Orders used only for billing will be excluded from this function. Q/A Type Work Orders are skipped automatically.

 Click the Go button, to display a list of work orders eligible Q/A processing.

Important Fields - Checklist Screen:

Do
This field enables you to select which Work Orders will be used to generate Q/A Work Orders. By default, all Work Orders are selected. Double-click on the Do field to select (check) or deselect an item.

Site Id: Site Name: WO Id: Tech Id: Date Work Completed: Work Code Id: Service Manager: Work Order Name:
These fields are displayed for informational purposes so that you can verify which Work Orders should be used to general Q/A Work Orders.

Important Buttons:

Click the Check button to check (select) every item on the list.

Click to de-select every item on the list.

 When you click the Go button, the system will create your Q/A Work Orders.

16.5 Service Agreement Type Viewer

Changed Field - Service Agreement Type Id
Expanded from 10 to 15 Characters.

New Fields: Service Agreement Type User 1-10
Optional fields for reporting or other purposes.

16.6 Scheduled Event Viewer

Changed Field: Email Message
This release expands this field to 8000 characters. This will reduce truncation problems where tokens (such as ^workrequestedall^) are used to generate lengthy email notifications and alarms.

16.7 Cause Code Viewer

New Fields:  Cause Code User 1-5
These fields may be used to record additional information required by your company.

16.8 Technician Viewer

The following phone extension fields have been expanded to 7 digits in this release:

Technician Contact 1
Technician Contact 2

16.8.1 Technician Unavailable Tab

New Fields: Start Time: and End Time:
These fields are currently used in conjunction with custom job scheduling; they are not used by the standard Unavailable functionality in TechFinder and the Dispatch Board.

16.8.2 Technician Web Access Tab

Remote Device Type
New Option: SubAnywhere
If SubAnywhere IS enabled, set the Remote Device Type to SubAnywhere. This field controls whether PO’s are created as Released (None) or Unreleased (SubAnywhere).  If a particular subcontractor should not have access to SubAnywhere, set the Remote Device Type to None. The Web Access field should be set to Subcontractor if you want to auto-generate PO’s for them when a Work Order is created in New Call or Create PM WorkOrders; this is true whether or not SubAnywhere is enabled.

See Customer Note 24.1.1 for additional information on this change.

16.8.3 Technician Main Tab

New Fields:

Vendor Name:
If the Vendor field is completed on this subcontractor technician record, the Vendor's Name will be displayed, and the following fields will be completed if applicable.

Insurance Required: Insurance Expired:
The insurance required field defaults from the Insurance Required field in the Vendor record. If this field is checked, the system will check the INS tab in the Vendor record to determine if all insurance is still valid. If not, the Insurance Expired field will also be checked.

Payments Blocked:
If this display field is checked, the Vendor’s Insurance is flagged as 'Block Payments' and it is currently expired. A 'Payments Blocked' subcontractor may not be selected in New Call or on a Work Order.

Purchases Blocked:
If this display field is checked, the Vendor’s Insurance is flagged as 'Block Purchases' and it is currently expired. In version 9.0, this field is informational only and Purchases Blocked Techs may be selected in New Call and on Work Orders as in previous releases.  

16.9 Dispatch Board

Work Order changes are only allowed from the Dispatch Board if the User belongs to a Group with Change permission for View Work Order Work Order Dispatcher.  

16.9.1 Classic Dispatch Board

The Date Range button has been added to the Classic and Day boards. This allows users to switch the Date Range without having to switch to the Powerboard first.

This release corrects an overlap issue that made it difficult to click the left arrow to change the Date Scheduled.  It also corrects a sporadic 'system primitive failed' runtime error when the Tech Id was changed on the Work Order Summary (lower section). This only occurred if the Call Sequence number exceeded the number of rows allowed on the Classic Board or columns on the Day board.  

Time Chart

When the Classic/Day Board's Time Chart is displayed, only those Work Orders for the selected Tech will appear.

The length of the bar in the Time Chart is now rounded to the nearest quarter hour so that users can better judge the start and stop times via the bars.

WO Summary

New Field: Dispatcher Comments
This new 3000 character text box may be used to record conversation/activity notes about the selected Work Order.

16.9.2 Dispatch Board Sort Options

A new sort order, Status/WorkOrderId has been added.  This allows all Work Orders of a specific status to be grouped together and in Work Order Id order.

16.9.3 Dispatch Board's Create PO Button

In previous releases, if the user was editing an existing Purchase Order, and then clicked the Dispatch Board's Create PO button, the system would open a blank PO form, losing any unsaved changes on the PO. In this release, when the Dispatch Board's Create PO button is clicked and an existing PO with unsaved changes is open, a Purchase Order message box will appear:

Warning: the changes to the current record have not been saved.
Do you want to return to save your changes?

Clicking Yes returns to the existing PO so that existing changes may be saved. Clicking No opens a new PO form with the Work Order Id completed.

16.9.4  Day Board (Classic Board Switched Orientation)

In previous releases, the Notes button displayed as grayed out when a Work Order was selected. This button now displays correctly, indicating that the user may view/add Notes to the selected Work Order.

16.9.5 Dispatch Board's Work Order Summary

The Work Order Summary is accessed by right clicking a line on the Work Order List and selecting Update Work Order. This release corrects a "Key is Missing" when clicking the Save button in the Work Order Summary viewer.

16.9.6 Power Board

The length of the bar in the Time Chart is now rounded to the nearest quarter hour so that users can better judge the start and stop times via the bars.

The Notes icon now correctly displays to give the visual queue that there are notes attached to that WO/Site/Job. In previous releases, the Notes button did not always correctly display notes the second time a WO was selected.

16.9.7 Subcontractor POs

When changing from one Subcontractor Tech to another Sub on the Work Order or Dispatch Board, when the Vendor is updated in the associated PO the AP Terms and Tax Group will also be updated. Only PO's with no child lines will be updated.

16.9.7 Power Board Work Order Summary

The Work Order Summary screen is accessed from the Power Board by right-clicking on a Work Order and selecting Update Work Order. It allows the dispatcher limited edits to specific WO fields. This function was never designed to support the deletion Work Order lines. The Delete Line button has been removed from the side button bar in this release to avoid confusion. This release also corrects a 'key is missing error' when Equipment is added or changed on the Equipment tab.

16.9.8 Dispatch Board Date Range Tab

Corrects a display issue so that selecting a User Range no longer obscures a pre-defined range.

16.9.9 Dispatch Board Available Hours Tab

Corrects a spurious 'technician is INACTIVE' message when using the Available Hours tab to assign WO to a tech whose Tech Id exceeds 10 characters.

16.9.10 Dispatch Board Email Button

When UseOutlook is enabled via registry, clicking the Email button launches the Outlook form and sets the Email To field with the Tech’s Email Address 2.

16.10 New Call

This release corrects a problem writing the Work Requested to the WO when switching between the New Call screens.  

The Site's Service Manager is no longer cleared when changing the Job changes the Client. This corrects a problem which occurred when the sys-newcall registry option ServiceManagerBasedOnSite was set to true.  

A Work Order may be generated with Other lines from the Site's WO Other tab. In this release the Tax Type for warranty jobs (where the job itself has no tax group so it comes from the Site's COP tab) is now set so that it is automatically evaluated correctly as part of Service Compute.

When a Work Order is created, a Record Change Log entry will now be generated with the Date, Time, User Id and the Description "new record created".

The Client Mailing Address now displays below the Client Id: / Client Name: fields when the Client has been determined in New Call and New Call 2. A new v.cus file may be required to see this field.

An "Access is Not Allowed" message displays when the Collections button is clicked if the user is not allowed access to the Client record.

This release disables the obsolete 'New Job for Every Work Order' functionality experienced by some longtime users.

The message saying there are Notes attached only displays if active (non-obsoleted) note(s) are attached to the Site.

When a TechAnywhere Weblog is entered, the Work Code / Service Category only default if the Weblog itself specifies a Work Code.

16.10.1 New Call Create New Client/Site

Changed Field - Contact 1 Email:
The system also writes the Contact 1 Email field to the Client Site Email Address field (clntste_eml) when the Site is created.

Corrects a problem where Work Requested entered in the 'flashlight' (Create New Client/Site) screen overwrote Work Requested subsequently entered in the original New Call screen.

16.10.2  New Call 2

This release improves the tab order of the search fields.

New Field: Store #
This new field enables searching by the Site's Store # field.

New Field: Original Caller
This field lists the person who called in this Work Order. It defaults from the Contact 1 First and Last Name fields in the Client Site record (if completed); if these fields are not completed it will default from the Client Site Contact 2 information. This field may be changed by the user; it will be written to the Work Order's Original Caller field.

16.10.3 New Call Create New COD

The Quote Report Id (QuoteDefaults tab) and the GL Entity Id (COP tab) are now defaulted from the Client Site template to the new Client Site created by this function.

New Field: Store #
This new field enables the new Site's Store # field to be set.

New Field: Original Caller
This field lists the person who called in this Work Order. If completed by the user, it will be written to the Work Order's Original Caller field.

New Field - Sales Tax Group Id:
In this release, the User may select the Sales Tax Group to be written to the COP tab of the new Site being added. This new feature should eliminate the need to have separate COD jobs created for each possible Sales Tax Group combination during initial setup. In SAMPro, if the COD Job does not reference a Site (as is the case for COD/MFG Warranty Type Jobs),  Service Compute/Invoicing will use the Site's Sales Tax Group Id instead (from the COP tab) to compute the Sales Tax on the invoice. However, multiple COD jobs are still needed for payroll tax purposes to determine correct State/Local tax codes.

Important: if the COD Job selected has the Sales Tax Group already set, it will not be used to populate this field. Also note that if the ZIP Code Table contains a Sales Tax Group Id for the zip code entered, the system will use it to populate this field; the user may select a different Sales Tax Group if needed.

Multiple COD Jobs by Sales Tax Group:
It may not be possible to eliminate these Jobs if they are already setup and being used.  Listed below are issues to consider:  

1. All the existing COD sites will need to be updated to contain a Sales Tax Group on the COP tab.

2. All the Site Equipment for these COD sites ‘Default Service’ Job will need to reference either a Taxable or Non-Taxable (exempt) COD Job (with no Sales Tax Group or Site).

3. If tracking state tax authorities for payroll purposes on the Financial tab of the Job, then taxable & exempt COD Jobs by state are needed.  The Site Equipment ‘Default Service’ Job will need to reference the correct taxable or exempt COD Job by state.  If you are tracking local tax authorities for payroll, then it’s doubtful your existing setup would change.

16.10.4 Equipment Pane

The Equipment's Manufacturer has been added between the Warranty End Date and the Model Columns.

16.10.5  New Call (FMMS)

The NTE amount from the selected Service Request now defaults to the NTE Client field which will populate the corresponding field in the newly created Work Order.

Also fixes an error accessing the FMMSInfo table when the Vendor Value includes an apostrophe (e.g. "Domino's").

This release corrects issues in the FacilitySource integration when selecting the web log.

16.10.6 New Call - SubAnywhere Techs

When a Work Order is created for a SubAnywhere subcontractor tech, the PO that is simultaneously created will be set to Unreleased to conform to SubAnywhere requirements. To be considered a SubAnywhere tech, the Technician record must: reference a Vendor record; have the Web Access field set to Subcontractor, and have the Remote Device Type set to the new option of SubAnywhere.

16.11 Start Create PM WOs  

If the TechServiceParts=No registry was enabled in sys-start-scrtepmwo AND both Service Parts and Service Tasks were specified on the Equipment's PM Schedule, the Service Tasks did not write to the WO Equipment Work Requested. This has been corrected so that the Tasks are correctly written to the WO Equipment Work Requested.

This function also generates a PO for Subcontractor Techs. In this release, the Site Equipment being serviced is completed on the PO's Gen line.

In previous release, this function skipped all Sites flagged as Inactive, and did not consider the Date Closed (which could be in the future). In this release, this validation is refined so that Site with a future Date Closed will not be skipped when this function is run, even if it is flagged as Inactive.

If WO Inventory lines are generated from the Service Parts list, their Description field now defaults from the Inventory Item's Name.

Changed Fields:  Start Date:  End Date:
In previous releases, the Start and End Date were required to be within the same calendar year. In this release, the dates may cross a calendar year, but the End Date is restricted to a maximum of 1 year from the Start Date. The message 'End Date must not be more than 1 year from Start Date' will be displayed when the user clicks Go if the date range is exceeded.

This version corrects a recent problem in the Checklist screen where un-checking a line NOT associated with a Master Contract resulted in that line being deleted from the Equipment PM Schedule.

The Cancel button as been removed from the Progress Bar since it is ignored by the function.

16.11.1 Setting the Date and Time Opened

New Fields:  Date Opened:  Time Opened:
These fields will be used to set the Work Order's Date Opened and Time Opened fields.  They default to the current Date and Time, but may be edited by the user if desired. Some reports and standard KPI's utilize the WO Date Opened for date range filtering and analysis of calls "opened".  These reports/analytics would provide a better analysis if the Date opened is set to the date the work is scheduled, or the first day for the month the work is scheduled for.  

In addition, this enhancement allows Escalation events sensitive to "creation" date/time to be handle more accurately, rather than beginning "prematurely".

16.11.2  SubAnywhere Techs

When a PM Work Order is generated for a SubAnywhere subcontractor tech, the PO that is simultaneously created will be set to Unreleased to conform to SubAnywhere requirements. To be considered a SubAnywhere tech, the Technician record must: reference a Vendor record; have the Web Access field set to Subcontractor, and have the Remote Device Type set to the new option of SubAnywhere.

16.12  Start Message Table Purge

This release changes/fixes the following in the Start Message Table Purge function:

- Remove orphaned LargeObject records as a result of archiving messages
- Change the default action to purge rather than archive if registry 'DisableArchive' is not set
- Include FMMS message statuses of 'sent' and 'sending'
- Include SageQuest message statuses of 'response'

16.13 TechFinder

TechFinder now considers the User's Security Id when generating the list of Techs.  If the User's Security is set, the Technician's Security must either be blank, or be allowed by the User's Security setting. If the User's Security is blank, all applicable Techs will be displayed, regardless of their Security.

This release supports TechFinder when localization date settings for Canada are in effect.  

16.14 Start Create PM Billing / Invoices

This release corrects a very sporadic issue with this function hanging when a single site was selected.

If enabled via registry, the Branch Prefix is once again appended to the Id when a PM Invoice Work Order is created.  

OpenEdge Credit Card Processing
XCharge sometimes returns an empty response for certain aliases resulting in an 'out of bounds' error. In this release, when an empty response is received a decline message will instead be generated: "Error Empty response received for Site <site> for amount <amount> with Alias: <alias>". This issue may then be investigated with Xcharge.

The Cancel button as been removed from the Progress Bar since it is ignored by the function.

16.14.1 Inventory Extras

This release corrects an issue which prevented PM Work Order Inventory Extras from being billed. In this release, if the Extra flag is set on an existing WO Inventory line, the AR Invoice Id will not be written to Job History based on the PM Invoice Id being completed in the Work Order.  This will allow these lines to be billed separately on the Preventive Maintenance Work Order apart from the existing PM Invoice. (Note that if the Create PM Work Order registry option Setting Key AssignPMInvoiceIds is set to false the PM Invoice will not be defaulted to Preventive Maintenance Work Orders).

16.15 Start Work Order Daily Edit

Work Orders with a Status Category of ''Archived'' are now excluded from this function.

See Customer Note 16.1.3a for a registry to use the standard settings when running this function from the Dispatch Board.

16.15.1 Range Screen

Changed Field - Selected Date:
The user is now allowed to roll back work orders to before today, but doing so will display a warning:
  "Warning: Selected Date is before Today all Workorders on list will be set to this date."

16.15.2 Checklist Screen

Checklist Screen: Site City
The Site City has been added to the right of the Site Name column.

16.16 Start Renew Master Contracts

The function does not support Master Contracts with multiple inspection lines for the same day and month and do not have the Monthly or Day of the Week Inspection boxes flagged.  In previous releases, attempting to do so resulted in the system locking up with the progress bar displayed.

In this release, if Start Renew Master Contracts encounters a Master Contract with this issue, the processing will be stopped and the following message displayed:

ERROR: Master Contract (Master Contract Id) has duplicate dates in inspection lines. Correct this error in this Master Contract or clear its Renewable flag and renew it manually. None of the Master Contract in this run have been updated; if multiple Master Contracts were specified, rerun this function after correcting the problem.

The user must correct this issue as indicated in message in order to proceed.

16.17 Start Work Order Entry

The Work Order Labor and Inventory extended price fields were expanded in 9.0. This release makes the corresponding changes to this function to correct FieldLength errors.  If your system was converted to 9.0 BEFORE this release, it will be necessary to trigger a reconversion to correct the errors; contact Support for assistance.

16.18 Start Scheduled Event Purge

This function will now purge scheduled events for archived Work Orders.

16.19 Master Contract

16.19.1  Master Contract List

This release corrects a "selected record not found" error when selecting a Master Contract from a list displaying an Agreement Type Id which exceeded 10 characters.

16.20 Escalation Management

16.20.1 New Statuses: Manager Review and Over Budget

A new Technician and WO Escalation Status has been added, Manager Review. It follows Invoice Ready in the Escalation hierarchy with a WO Status Category of Completed, as shown below.

The new Over Budget Tech Status has a corresponding Work Order Escalation Status of Over Budget (Status Category Completed), This new status falls above Completed and below Wait Paperwork in precedence.

 

Tech Status

WO EscalationStatus

WOStatusCategory

Archived

Archived

Archived

Credit Hold

Credit Hold

Open

Unacknowledged

Unacknowledged

Open

Work Declined

Work Declined

Cancelled

WaitCustApprvl

WaitCustApprvl

Pending Ok to Start

WaitDispApprvl

WaitDispApprvl

Open

InvoiceApproved

InvoiceApproved

Completed

InvoiceDisputed

InvoiceDisputed

Pending Ok to Invoice

Onsite

Active

Open

Travel

Active

Open

On Break

Active

Open

Return Trip

Return Trip

Open

Parts Pickup

Parts Pickup

Open

Waiting Parts

Waiting Parts

Open

Parts Ordered

Parts Ordered

Open

Parts Received

Parts Received

Open

Pending

Pending

Open

Checked Out

Checked Out

Open

Scheduled

Scheduled

Open

Rescheduled

Rescheduled

Open

Waiting Service

Waiting Service

Open

Quote Approved

Quote Approved

Open

Waiting Quote

Waiting Quote

Open

Quote Received

Quote Received

Open

Hold

Hold

Open

Invoice Ready

Invoice Ready

Pending Ok to Invoice

Manager Review

Manager Review

Completed

Invoice Review

Invoice Review

Completed

Wait Paperwork

Wait Paperwork

Completed

Over Budget

Over Budget

Completed

Completed

Completed

Completed

Billed

Billed

Billed

No Bill

No Bill

Billed

Cancelled

Cancelled

Cancelled

Tech Declined

Tech Declined

Open

 

16.21 Escalation Profile

New Token

The new ^workperformedall^ token displays the Equipment Id, Name and Work Performed of all Equipment lines on the Work Order when the Scheduled Event is executed.

16.22 Web Log

List View:
A new Sort Order, WebLogByWorkOrderByClientSiteName has been added. This Sort Order also displays the Web Log's Tech Id (of the Tech who added a recommendation and generated the Web Log), Date and Time Logged, and the Work Requested.

Range View - New Ranges:

Dispatcher Id:
This range may be used to filter Web Logs based on the Dispatcher referenced in the Client Site record.

Technician Id:
This range may be used to filter on the Web Log's Tech Id (the Tech who added a recommendation and generated the Web Log).

16.23 Start Renew Service Contracts

In previous releases, Start Renew Service Contract renewed PM Schedules on inactive pieces of equipment if they were marked OK to Renew.  In this release, the Active/Inactive status of the Equipment will be considered during the renewal process so that Equipment flagged as Inactive will be skipped even if has PM Schedule lines flagged as Ok To Renew.

16.24 Scheduled Event Manager

The system no longer pops up a message when a scheduled report is generated from an escalation profile event. In previous releases, reports auto-generated from an escalation profile would cause a message to display when the report was added the report queue. This would cause the scheduled events manager to stop running until the message was cleared. This could be controlled by configuring the batch file running scheduled events with the switch -messageBoxSuppress=yes enabled, but this was not the best solution.

17 TechAnywhere

A new field, Bar Code Id, has been added to the Equipment record.  In this release, TechAnywhere will post to the Bar Code Id for new Equipment and also in Equipment edits.

17.1 Registry

17.1.1 Changes to Quote Scopes

If a Quote Scope is changed by TechAnywhere or FMAnywhere, an email will be sent to:

The Sales Rep associated with the Quote

If the Sales Rep/Sale Rep's Email is not available, the email will be sent to the emailto address specified in the sys-FMAnywhere or sys-TechAnywhere registry.

17.1.2 Registry to Attach TechAnywhere Collateral Files to the Job Record

This new registry tells the post whether or not to include a reference to the Work Order's Job in the Document records created from the uploaded collateral.  Note that collateral files will always be attached to the Work Order and to the Equipment record referenced in the TA Collateral List.  The collateral being posted from TechAnywhere would add a document reference to the Job from the Work Order.

Id: sys-techanywhere

Setting Key: AttachCollateralToJob  Setting Value: true or false (default false)

17.2 TechAnywhere Data

This release adds new TechAnywhere data to most of the records that TechAnywhere can post to in SAMPro. This information will be used by TechAnywhere to track which technician posted this information and if it originated from TechAnywhere or a SAMPro user.

New Fields
TechAnywhere Source Rn: Technician Id  (or Source Rn: TechId:)
If these fields are completed, this record/line was created/revised from TechAnywhere.

These fields are displayed in all of the following records/tabs:

Labor Journal: Hours, Other and Time Log Tabs (Magnify view)
Purchase Order: Status, Inventory and General Tabs (Magnify view on child tab)
Quote Viewer: Scope, Labor, Inventory, Material, Other
Quote Scope Viewer: Main, Labor, Inventory, Material, Other
Web Log
Work Order: Other Info, Equipment, Inventory, Other, Metrics, ReqResource, COD
Refrigerant Tracking History
All Job History written by TechAnywhere

17.3 TechAnywhere Post

When a Flat Rate is referenced, the price from TechAnywhere is always used. Previously, if the price was adjusted using any other price level than 1, the TechAnywhere price override was ignored.

This version corrects Labor and PO posting issues in recent releases.

When posting Quotes from TechAnywhere, prices for Other and Material items are now successfully posted. This corrects an issue in recent releases where costs but not prices were posted.

This release corrects a sporadic problem where the Equipment Id on the PO's Gen tab was cleared on general items received in TechAnywhere.

This fix applies to customers using the Taylor Universal Work Order functionality. It corrects a 'Key is Missing' error when posting Work Order COD information.

This release corrects a sporadic problem where TechAnywhere combined all outstanding quotes into one message resulting in all scopes being written to all quotes created by the post.

PO's will not be updated by the post if no values have changed. This will preclude failed message when the post attempts to update a closed PO.

This release supports subfolder logic when a file is archived after a delay; previously, these files were archived in the base archive directory.  

The Unit Cost entered by the Tech Material and Other lines now posts back to SAMPro so that the Quote's costs are correct.

To improve performance, the Post applies a 90 Day cutoff date for documents so that it no longer attempts to archive documents which can likely never be archived. .

The Client Site Security is assigned to new Site Equipment added by TechAnywhere.

This release makes the determination of a TA PO's posting style more accurate.

The Tax Type is now set correctly when Flat Rates are posted from TechAnywhere.

PO's generated in TechAnywhere now have their Company / Security set from the Work Order that the material was purchased for. 

This release corrects a problem in the TechAnywhere Post cause by the override of the Labor Rate by the Job Cost Category.

When posting Quotes from TechAnywhere, the system now updates the Quote Amount and Net Amounts in the database for non-fixed price quotes.

Previously, only the hours and minutes from the start and stop times posted to the labor entry. This release enhances the post so that the Hours, Minutes and Seconds are posted.

Taxable discounts for Use Tax jobs now have the Tax Type correctly set to Use on the Revenue Adjustment lines generated by the post. The discount totals with taxable and nontaxable portions are divided (if needed) when it posts revenue adjustments.

When Equipment is created via a TechAnywhere TimeSheet, the Equipment Status is now filled in with 'NewFromTA' like it is when it is created from a CompletedWO message.

Very large Status Changes messages are now handled successfully by the TechAnywhere Post.

Supports rescheduling of Work Orders from the field. See your TechAnywhere support rep for details.

The terminated employee warning is now ignored when posting labor to prevent posting failures.

This release supports TechAnywhere labor posting when the PostLaborByWorkOrder registry is set to true.

Corrects a problem in previous releases where, if the first Equipment line on a WO had a blank Equipment Id, TA PO's failed to post.

Corrects a Key Is Missing error when a new style TechAnywhere PO is posted.  

The Log Form Id specified by Techs when creating NEW Equipment records now posts to SAMPro.

TechAnywhere supports writing to the new field Work Order COD Tab's Effective Date field. The date the Technician touches the payment will be used to complete this new field.

If the Equipment is not specified on the Equipment tab, the post will add an Equipment line, and then post the Other Rate lines in the message.

TechAnywhere Reimbursable Expenses (Other) and Breaks (TimeLog) now store the correct security ID.

17.3.1 TechAnywhere PO Receipt Post

V9.0.572.052 corrects a problem in V9.0.572.049 where the TechAnywhere post did not update the Job Quantity Ordered and Job Quantity Received on the PO from TechAnywhere.

In previous releases, the TechAnywhere PO Receipt Post could select the incorrect Accounting Period/Effective Date. Typically, this would occur around the time of an accounting period changeover (beginning of the month) due to the Information warning/error "EffectiveDateNotInPeriodRange" causing the TechAnywhere Event Manager to stop running until cleared. For example, if the default accounting period was still December, posting with a  January 1st date could generate Information warning/error "EffectiveDateNotInPeriodRange" causing the TechAnywhere Event Manager to stop running until cleared.

In this release, the PO Receipt Post now adjusts the Accounting Period match the Effective Date if possible.  The following registry entry may be used to override the default behavior and instead set the effective date to fall within the Default Accounting Period to the default Effective Date. In most cases, the default functionality (period) is preferred. This entry (and the new default behavior) only impacts the TechAnywhere Receipt Post, not manual entries.

Id: sys-viewer-vinvntryrcpt

Setting Key: AdjustDefaultDateOrPeriod  Setting Value: period or date  (default is period)

When period is specified:
The Accounting Period table is queried for eligible Accounting Periods.  To qualify, the period must be Active and its date range must include the defaulted Effective Date.  When multiple periods are eligible, the one with the smallest Period Id is chosen to become the new Accounting Period for the current transaction.  If no eligible period is found, nothing is changed.

When date specified:.
The Effective Date is adjusted to be either the Start Date or the End Date of the defaulted Accounting Period.  The Start Date is chosen when the current date is less than the Start Date.  The End Date is chosen when the current date is greater than the End Date.

In the absence of the new setting, it uses the 'adjust period' behavior described above as default.

17.4  TechAnywhere Rescheduling Option

An option added to TechAnywhere 3.6.054.013 allows a certain work order status to trigger the ability for a technician to reschedule the work order. Your TechAnywhere Support Rep will need to enable this option for you. Once it has been enabled, your Techs will have the option to reschedule the work order for:

1) New Schedule Date 
2) New Schedule Time
3) Different Technician (separate option)
4) New Status (separate option)

The details from the technician's selections will send to SAMPro in a Message where they will be processed by the TechAnywhere Event Manager. The end result will be a new line on the work order technician tab with the details the technician selected. If an existing (duplicate) line happens to already exist with the same Technician/Schedule Date/Schedule Time, the line will be updated with the new status.

17.5 TechAnywhere Scheduled Event Manager

Enhancements to the code eliminate false positive TimeOutAlarm events when a large backog is being processed.

17.6 TechAnywhere New Call

When a Work Order is created in TechAnywhere, its Client and Sub NTE fields now default from the Site Equipment record. If these fields are not set in the Equipment record, they will default from the Site record. These fields were not previously set when a Work Order was created in TechAnywhere.

17.7 TechAnywhere Timesheet

When Equipment is created, the Equipment Name now defaults to Pending instead of the Equipment Id to correct an issue with Custom Fields. If Custom Field values are specified for the Equipment Name, Pending must be one of the allowable options.

17.8 TechAnywhere Quote Enhancements

In conjunction with the configured TechAnywhere options available in 4.1.059.001, this release now supports the ability to post quote discounts (revenue adjustment) and an option to email a recipient with a SAMPro generated scheduled quote report (RQTEFRM).

The revenue adjustment utilizes the following existing registry entry (typically used for work order discounts) to define the cost category used to record the revenue adjustment on the quote.

Id: sys-techanywhere
Setting Key: DiscountCostCategory  Setting Value: CostCategoryId of discount

The GL for the discount will be pulled from that Cost Category.

The quote report is triggered by the technician's actions to request a quote report to be emailed to the customer. The FROM email address is pulled from the SAMPro registry for sys-email DefaultEmailSender, and the TO email address is specified by the technician. A scheduled report event will be created where the Scheduled Report Manager SAMPro Service will execute the event on the next tick to email the report to the email recipients.

Contact your TechAnywhere support rep to have the necessary configurations/scheduled events implemented to support this new functionality.

17.9  Require a PCR Table for New Equipment

Client Site Service Tab

New Field - PCR Table Id:
This field is used by TechAnywhere to indicate that Equipment linked to this Site requires a PCR Table. If it is completed, TechAnywhere will force technicians to pick a PCR table ID whenever adding new equipment for a Site with this field completed.

This field also provides the new default value for new Equipment created for this Site in SAMPro.

18  Fleetmatics (was Sagequest)

This release corrects a formatting issue which prevented GPS stops from getting to Fleetmatics.

Revised handling of the cancellation of a schedule date, and direction request to be compatible with the Fleetmatics work order format.

All Work Order Technician lines are now sent to Fleetmatics. Additionally, the schedule date has now been appended to the end of the WorkOrderID sent to Fleetmatics.

The estimated hours is now converted to seconds when a message is sent to Fleetmatics as a result of a drag and drop operation on the Classic Board. In addition, the system no longer sends messages to Fleetmatics if the old and new Techs are the same during a drag and drop.

This release corrects a problem where the Estimated Hours sent to Fleetmatics/SageQuest was being truncated after 9,999 seconds (2hr 47min).

18.1 Registry

18.1.1 Changed Registry - Prior Dates Allowed by Default

Id: sys-ffv-global-settings

Setting Key:  AllowSageQuestToUsePriorDates  Setting Value: true (now defaults true)

The above registry option was implemented to allow SAMPro to send updates to Fleetmatics (Sage Quest) with the scheduled date being in the past. This registry setting was a success, and is now being used for every new install. In this release, the default value of this setting has been changed to true. By default, SAMPro will now send work order updates to Fleetmatics regardless of the schedule date. Clients will not have to roll the dispatch board over to keep the schedule date current just to have their work orders show up and update the Fleetmatics (SageQuest) map.

18.2 Start Get Valid Drivers from Fleetmatics (was Sage Quest)

Start Get Valid Drivers From Sage Quest has been changed to Start Get Valid Drivers From Fleetmatics.  It may be necessary to run the Start Function List Update to see this change.

When running this starter function, it will no longer report how many drivers it found. This supports configuring this function as a scheduled process event without interrupting the Scheduled Event Manager with a popup.

This release also fixes the "Runtime error: "asArrayOfSubstringsSeparatedBy:" not understood" if running this function when Fleetmatics Integration software is not running at the time.

18.3 Time+Distance Button

Corrects a sporadic problem with incorrect responses when clicking the Work Order's Time+Distance button.

18.4 Dispatch Board

 Replaces the old SageQuest button on the Dispatch Board.

19 Shop Orders

19.1 Shop Order Registry

19.2 Shop Order Viewer

19.2.1 Cancel Shop Order

New Button:

This button allows a Shop Order to be canceled. This functionality is only allowed if the Transfers Printed and Transfers Recorded boxes are NOT checked.

When it is clicked, the quantities allocated or back ordered will be zeroed, and the Date Closed will be set to today. If the Work Order Id is set, the Requisitioned flag and Shop Order Id on the Work Order's ReqResources tab will be cleared. This provided a way of undoing the Start Materials Requisitioning function which generated the Shop Order.

19.2.2 Shop Order Record Transfer Ticket

The Unit Cost from the stocking location is now written to the staging location by this function. This cost will be used by the Tech Material Pickup Transfer function, resulting in a more accurate cost when applied to the Work Order.

20  Requisitioning

See Shop Orders (above) for related functionality.

21 Service Channel

This release corrects issues experienced by some Canadian users uploading invoices. The Invoice Date is now sent in US format even for Canadian users for the I12 and I14 ServiceChannel Invoice Formats.

This release supports Work Order IDs with alphabetic characters (prepended with a Branch Id).

Refines handling of invalid responses from ServiceChannel to prevent HTTPServer crashes.

Incorrectly configured ServiceChannel responses now place a diagnostic message in the offending message record. The invalid response will otherwise be ignored so that posting is not interrupted.

SAMPro is prohibited from updating a Work Order's status in response to an inbound IVR status change message for ‘Cancelled’ and ‘Billed’ Work Orders. See Customer Note 21.2.8 for details / a registry to adjust this behavior.  

The COMPL_DATETIME will be sent to ServiceChannel for status change messages beginning with 'COMPLETED'. COMPL_DATETIME comes the Tech Tab's scheduled date and time.

The Work Order's NTE is now set correctly when it is created from a ServiceChannel Service Request (WebLog) processed in New Call.

This release modifies the computation of DATETIME so that it can not be earlier than SCHED_DATETIME to conform with recent ServiceChannel validations.

The Work Order's Work Performed is sent to ServiceChannel whenever a Status update is sent.

In this release, we follow up by sending ServiceChannel a Status Change message setting the ServiceChannel status to DISPATCH_CONFIRMED. 

Traps error caused by ill-formed Service Channel response messages.

Corrects a 'key is missing' runtime error when changing status for ServiceChannel mutual client PM's.

Includes PIN number when a PM Work Order is inserted in the FMMSInfo table.

Service Channel is updated when a PM WO is created.

Now defaults PROBLEM to 'Unknown' if it is empty; ServiceChannel ignores new work orders from SAMPro if the PROBLEM field is empty.

Corrects an "IndexOf" error when selecting a weblog in New Call.

If NewWOToServiceChannelEnabled is set to True and SAMPro's Start Create PM WorkOrders is also used, it creates duplicate PM's. Contact Support for a registry entry to resolve this condition.

The type comes from the callNode's attributes instead of a subNode.

Adds SCHED_DATETIME to outbound XML for new WO's (Service Channel requirement).

Allows WOUPDATES to post to Work Orders originating in SAMPro.

This release corrects an amperand (&) character issue when parsing requests.

Improved handling of inbound WorkOrder Update dispatches.

21.0 Check In/Out Problem: TR_NUM vs WO_NUM

This release addresses a situation where ServiceChannel sends SAMPro a CHECK IN (or CHECK OUT) message in which the TR_NUM points to an FMMSInfo record for a Work Order different from that indicated by the CHECK message's WO_NUM value. In this release, if the CHECK message contains conflicting TR_NUM and WO_NUM values:

An entry will be made in the FMMS log file

But a Work Order will not be updated because since we do not know which one is correct

21.1 FMMS Info Table

Corrects the SQL error: Incorrect syntax near '.' when trying to create RN index on FMMSInfo table.

21.2 Registries

21.2.1 Use ServiceChannel IVR Service for WOs Originating in SAMPro

This enhancement extends SAMPro’s ServiceChannel Data Bridge to provide for the use of the ServiceChannel IVR service for Work Orders not originating as  ServiceChannel New Service Requests.  A registry (see below) is required to enable this functionality.

When a Work Order is created in SAM Pro via New Call, Create PM Work Order, Create PM Billing, or Create Rental Billing, a New Work Order XML message (as per ServiceChannel specs) for transmission to ServiceChannel. In the New Call case, however, this process will be omitted if the Work Order was created as the result of the pulling of a ServiceChannel New Service Request from SAMPro’s weblog.

The queueing of the New Work Order XML will take place regardless of whether the Client is or is not a “Mutual” Authority/ServiceChannel client. The contents of the New Work Order XML message will be derived from the contents of the SAMPro Work Order and the appropriate entries in the following Registry.

Registry Id: sys-FMMS-Vendor-ServiceChannel

Setting Key: NewWOToServiceChannelEnabled  Setting Value: True

This registry option is required to enable this feature. Set its value to ‘Yes’ or ‘True’ to turn this feature on. Actually, any value beginning with ‘Y’, ‘y’, ‘T’, or ‘t’ will enable this feature.

Setting Key: NewWOToServiceChannelDefaults

Setting Value: LOC:multi, SUB:#fromSC, PRIORITY:NORMAL, PRICE:0.00, NTE:0.00, STATUS:OPEN, CURRENCY:USD, TRADE:HVAC, OPERATOR:namefromSC, CATEGORY:Repair

This registry sets the default values of certain attributes for the generated New Work Order. Note that these all appear on one registry line. The format of the line is a collection of comma separated key/Value pairs with the keys separated from the values by a colon.

Check with ServiceChannel for the correct values for the LOC, SUB, TRADE, OPERATOR, and CATEGORY keys as these may vary from installation to installation.

21.2.2 Registry to Map Work Codes and Equipment Id's

New registries support setting the Work Code based on the Service Channel Priority, and the Equipment based on the Trade Code.

Map Service Channel Priority Codes to SAMPro Work Codes

Setting Key: PriorityToWorkCodeMappings   Setting Value: PriorityCode:WorkCodeId

When enabled, this registry automatically sets the Work Code Id to a value derived from the Service Request's PRIORITY attribute.

This option specifies how the Service Channel Priority Codes map to the SAMPro Work Code Id's when a Work Order is created from a Service Channel . It supports multiple lines so that all ServiceChannel Priority Codes may be properly mapped.

Example: The following option maps the ServiceChannel 'Emergency' Priority Code to the SAMPro Work Code Id 'Safety'.  

Setting Key: PriorityToWorkCodeMappings: Setting Value: Emergency:Safety

Map ServiceChannel Trade Codes to SAMPro Equipment Id's

When enabled, this registry will automatically select the Client Site Equipment based on the contents of the Service Request's TRADE attribute. It supports multiple lines so that all ServiceChannel Trades may be properly mapped.

Setting Key: TradeToEquipmentMappings  Setting Value: TradeCode:EquipmentId

21.2.3  Registry to Exclude ServiceChannel's Scheduled Date and Time

Registry Id: sys-FMMS-Vendor-ServiceChannel

Setting Key: IncludeScheduledDateInNewWorkOrder   Setting Value: No  (default Yes)

When New Call accepts a new Service Request via the weblog, the scheduled and time will be omitted if this option is set to 'No'.

21.2.4 Registry To Copy the ServiceChannel SCHED_DATETIME to the Work Orders' Date and Time Must Complete fields. 

Id: sys-fmms-vendor-ServiceChannel

Setting Key: IncludeMustCompleteDateInNewWorkOrder  Setting Value: Y

When this registry is enabled, when a Work Order is generated from Service Channel, the ServiceChannel SCHED_DATETIME will be copied to the Work Orders' Date and Time Must Complete fields. 

21.2.5 Registry To Upload Equipment Work Performed Notes on Status Change

Id: sys-fmms-vendor-ServiceChannel

Setting Key: UploadEquipmentWorkPerformedNotes

Setting Value: Y

Note that values of Y, y, T, or t enable this mod; the default is that this mod is not enabled. When this option is enabled, Work Order's Work Performed is now sent as Notes to ServiceChannel whenever a Status update is sent.

A Work Order Note is sent to ServiceChannel for each Equipment line in the Work Order.

The Note includes the contents of the Work Order Equipment Work Performed field.

Each note is prefixed with the Equipment Id, Manufacturer, Model, and Serial Number.

If this option is not enabled, the Work Performed will be included in a <RESOL> sub-element of the <CALL> element when a status change is sent.

21.2.5a Registry to Disable Uploading Equipment Work Performed by Equipment Id

The previous registry enables a feature that sends a Work Order Note to ServiceChannel for each equipment line on a work order. This registry allows the upload feature to be disabled for specified Equipment Ids. This new registry option may be used to refine which Equipment Id's have their Work Performed uploaded to ServiceChannel.  The value of this key is a comma separated list of Equipment Ids to be excluded from the Note sending operation.

Id: sys-fmms-vendor-ServiceChannel

Setting Key: UploadEquipmentWorkPerformedNotesExceptEquipment
Setting Value: Id1,Id2,...

Setting Key: UploadEquipmentWorkPerformedNotes  
Setting Value: Y   (note that this setting is also required)

The following example would prevent the sending of Work Order Notes for Client Site Equipment Id 'RTU2', but allow that for all other Equipment Id's to be sent.

Setting Key: UploadEquipmentWorkPerformedNotesExceptEquipment  

Setting Value: RTU2

21.2.6 Registry to Disable Sending ETA Updates to ServiceChannel / FacilitySource / Corrigo

This registry disables sending ETA changes to ServiceChannel when a Sampro Work Order's ETA changes.

Id: sys-fmms-vendor-ServiceChannel  / sys-fmms-vendor-FacilitySource / sys-fmms-vendor-Corrigo

Setting Key: UploadWorkorderETAChanges  Setting Value: No   (default is Yes)

Note this setting is applicable to all FMMS Subsystems (e.g. Corrigo, FacilitySource). Any value beginning with 'Y', 'y', 'T', or 't' is equivalent to 'Yes' and any other value is equivalent to 'No'. The absence of the Registry entry is equivalent to a 'Yes' value. So there will be no change in functionality if the Registry entry is not found.

21.2.7 Registry to Disable Updating SAMPro Work Order Status from Service Channel IVR Messages

This registry may be used to disable the updating a Sampro Work Order's status based on IVR Check-In and Check-Out messages received from ServiceChannel.

Id:  sys-fmms-vendor-ServiceChannel

Setting Key:  PostIncomingStatusUpdates   Setting Value:  No  (default is Yes)

Any value beginning with 'Y', 'y', 'T', or 't' is equivalent to 'Yes' and any other value is equivalent to 'No'. The absence of the Registry entry is equivalent to a 'Yes' value. So there will be no change in functionality if the Registry entry is not found.

21.2.8 Registry to Define Statuses Exempt from Inbound IVR Status Change Message

ServiceChannel provides an IVR facility that allows techs to phone into them with a change to a Workorder's status. This change is then forwarded to SAMPro for posting to the SAMPro Workorder. Sometimes it becomes necessary (for ServiceChannel internal reasons) for a tech to make such a IVR entry for a Workorder that has a 'finished' status (e.g. 'billed') within SAMPro. In this release, we prohibit SAMPro from updating a Workorder's status in response to such an inbound IVR status change message for ‘Cancelled’ and ‘Billed’ Work Orders. Note that the Work Order’s current status is derived from the wrkordrlgtype_id on the first line of the Workorder’s Technicians tab.  

This functionality may adjusted via registry.

Id: sys-fmms-vendor-ServiceChannel

Setting Key: StatusUpdateIsProhibitedForStatusCodes  Setting Value: listofstatuscodes

The Setting Value is a list of status codes separated commas. The codes ‘Cancelled’ and ‘Billed’ are always automatically added to the list. If no entry is found, the list will consist solely of these two entries.

21.2.9 Check-In and Check-Out Messages to ServiceChannel with Check Element

When SAMPro detects certain Status changes to a Work Order, it sends ServiceChannel a CALL XML message that includes TR_NUM and the new ServiceChannel STATUS code. When entering certain Status values, ServiceChannel would like us to include a CHECK element within the CALL XML. The CHECK element  includes a TYPE code which corresponds to the new Status Code.

Identify ‘CHECK TYPE’ Values Corresponding to ServiceChannel Work Order Status Codes.

Registry Id: sys-FMMS-Vendor-ServiceChannel

Setting Key: CheckTypeForServiceChannelStatus

Setting Value: ServiceChannelStatusCode:CorrespondingCHECKTypeCode

1. There may be multiple Registry lines with the ‘CheckTypeForServiceChannelStatus’ key.

2. Each line may consist of multiple mappings with individual mappings separated by a ‘,’ character.

3. The Valid CHECK Type Codes are: IN, OUT, DISP, and CLOSE

Example:

Setting Key: CheckTypeForServiceChannelStatus
Setting Value: ON_SITE:IN, COMPLETED:OUT

4. If a mapping is not found (or evaluates to ‘N/A’), no CHECK element will be included in the CALL XML.

5. There being several ServiceChannel Status Codes beginning with ‘COMPLETED’ , a special ‘short cut’ is available for those Status Codes: If no mapping is found (or if an ‘N/A’ mapping is found)  for a Status Code and the Status Code begins with ‘COMPLETED’, Sampro will try to identify and use a mapping for the ‘COMPLETED’ status code.

Check In and Check Out Sequencing via the CHECK element’s ID property.

Check elements include an ‘ID’ attribute that ServiceChannel uses to internally sequence Check Ins and Check Outs. The restrictions are:

1. Each Check In process should be identified by an ID attribute value greater in value than that used in any prior Check In processes.

2. Each Check Out process should be identified by an ID attribute that matches that used in the corresponding Check In process.

In order to implement this sequencing, Sampro must somewhere retain the appropriate Check Sequencing information. This has been implemented as follows:

1. Sequencing information will be retained on one of the Work Order’s User Fields.

2. The User Field to be used will be identified in the following registry entry by the line having the key ‘. The value of this key should be a number between 1 and 5 inclusive.

Registry Id: sys-FMMS-Vendor-ServiceChannel

Setting Key: WOUserFieldNumberForCheckInCheckOut

Setting Value: a number between 1 and 5 inclusive.

3. The chosen User Field in the Work Order should be customized to ‘SC In/Out Count:’.

4. If no ‘WOUserFieldNumberForCheckInCheckOut’ key is found, the value of the next rn will be used for the ID attribute. This will not result in proper sequencing.

5. The format of the In/Out Count field will be of the form ‘inCount/OutCount’.

Example: ‘2/1’ meaning there have been 2 CHECK INs but only 1 CHECK Out.

6. A blank value of the in/Out Count Field will be treated as ’0/0’ so there is no need to initialize this field.

7. Whenever SAMPro sends a CHECK IN, it will increment the Work Order’s inCount; whenever Sampro sends a CHECK OUT, it will increment the Work Order’s outCount.

8. Whenever SAMPro sends either a CHECK IN or a CHECK OUT, it will use the value of the Work Order’s inCount for the ID value, ignoring the outCount. Thus a CHECK IN can have multiple CHECK OUTs. Note that because of this, the outCount is actually irrelevant in this processing and is maintained only for informational purposes.

Caution:
Note that this feature should only be used for customers not using ServiceChannel’s IVR check-in/check-out system. It is not clear at this time what will happen if, for example, a Check-Out is sent to ServiceChannel as a response to SAMPro processing a Check-Out message sent by ServiceChannel itself.

21.2.10  Registry to Derive Scheduled Date / Time of Accepted Request Message from Original ServiceChannel Request

When New Call creates a new Workorder based on a  Service Request from ServiceChannel (via the Weblog), it must send ServiceChannel a message that the Service Request has been accepted. This message includes a Scheduled Date and a Scheduled Time.

Normally the Scheduled Date and Scheduled Time are derived from the Workorder being created. The following registry may be implemented to derive the Scheduled Date and Scheduled Time are from data in the original Service Request that was sent by ServiceChannel. 

Id: sys-fmms-vendor-servicechannel

Setting Key: SchedDateTimeSourceWhenAcceptingWO

Setting Value: ServiceRequest or WorkOrder (default)

If the key is missing or the value is other than 'ServiceRequest' (case insensitive), a value of 'WorkOrder' will be assumed.

If the Setting Value is 'ServiceRequest', then the Scheduled Date and Scheduled Time will be taken from the original Service Request issued by ServiceChannel. If the value is 'WorkOrder', the Scheduled Date and Scheduled Time will be taken from the Workorder being created.

21.2.11 Map SAMPro Log Status to ServiceChannel by Client Id

This release adds the flexibility to map SAMPro log status’ to Service Channel log status’ based on registry set values keyed by Client Id (derived from the Job in the WO header).

Normally, SAMPro Workorder status codes are mapped to ServiceChannel status codes via the ‘StatusMappings’ lines found in the SAMPro ServiceChannel Registry entry; they will be used for all Service Channel Clients. However, various ServiceChannel clients may have differing status code mappings. This release extends the SAMPro Registry to allow multiple status mapping sets based on the Workorder's Client Id (derived from the Job in the WO header).

To create a set of Status Mappings in the SAMPro sys-fmms-vendor-ServiceChannel Registry for a specific Client, append a '-' and the Client Id to the 'StatusMappings' key.

Example:

Id: sys-fmms-vendor-ServiceChannel

Setting Key:  StatusMappings-Wendys   

Setting Value: Acknowledged:DISPATCH CONFIRMED

Tip:
Make sure that a StatusMappings option without the Client Id appended is retained for general use.

21.2.12  Registry to Delay ServiceChannel Upload of Work Performed

An earlier release supported the sending of 'Equipment Work Performed' notes to ServiceChannel on Work Order Status changes. This could be an issue because TechAnywhere may not upload the equipment information to SAMPro for some minutes after the Status Change is uploaded.

This release supports a Registry-specified delay between the posting of the Status change and the sending of the Equipment Work Performed notes. The assumption is that by providing a sufficient delay, TechAnywhere will have uploaded the required Equipment information before the delay expires.

Id: sys-fmms-vendor-ServiceChannel

Setting Key: EquipmentWorkPerformedDelaySeconds  Setting Value: delay in seconds

Example: The following will delay the sending of the Equipment Work Performed message for 30 minutes following the status change. The default delay is zero seconds.

Setting Key: EquipmentWorkPerformedDelaySeconds  Setting Value: 1800

21.3 Upload Work Order Documents

New Button: ServiceChannel Upload
A new 'ServiceChannel Upload' button will appear on the Document Viewer's list and record screens if the Work Order is integrated with ServiceChannel. Pressing this button from the Document list will give a checklist of all attachments to allow the user to select multiple attachments to send at once. Pressing from the Document record will upload that single attachment. The attachment(s) will be emailed to ServiceChannel where they will be processed at a set interval and attached to the ServiceChannel system.

21.4 Reverse Posted Invoices (ServiceChannel)

When ServiceChannel work order are billed, the invoice is automatically uploaded to ServiceChannel. In previous releases, if the invoice was reversed and re-invoiced, the only way to handle this was to manually press the Submit button in the invoice master.

This release supports the automatic resending of the re-invoiced invoice. Specifically, when an Invoice Master is marked as 'Reversed', any FMMSInfo records meeting the following requirements are located:

The FMMSInfo record's wrkordr_rn field matches the reversed Invoice Master's srvceinvce_wrkordr_rn field.

The FMMSInfo record has it's fmmsinfo_invce_qd column set to "Y".

IF any such FMMSInfo records are found, their fmmsinfo_invce_qd column is reset to 'N'.

21.5 Service Channel Invoices with No Materials

The Service Channel i.14 invoice template requires that materials are used to complete the job; ServiceChannel will reject the invoice if it doesn't contain material information. Since all jobs do not require materials, this release will add a dummy $0 material line to get around this requirement. The Material Description of 'No Material Required' will be used on the $0 line to conform to ServiceChannel requirements.

22  DBAnalytics / KPI's

DBAnalytics Document Posting support the UseSubdirectories=true option in sys-document-archive. This enhancement will alleviate performance issues caused by having too many files in the root archive folder.

22.1 Start KPI Export

Previously, the 'Start KPI Definition Export' function failed if there is not already a folder named 'Archives' in sampro\KPIs. The export function now creates this folder if one does not exist.

22.2 Web User

Changed Button: Export Profile
Clicking this button exports the Web User's Profile to the DashboardProfiles folder in the main SAMPro directory.  This folder will be created if it does not exist.  

22.3 User Viewer

Import Profile Button:

Corrects a Key Is Missing error when importing certain older analytics.

23 FMAnywhere

23.1 Registries

23.1.1 Default Email for Quote Scope Changes

If a Quote Scope is changed by FMAnywhere, an email will be sent to:

The Sales Rep associated with the Quote

If the Sales Rep/Sale Rep's Email is not available, the email will be sent to the emailto address defined in this registry.

23.1.2 Email for New Site Requests

Id: sys-fmanywhere

Setting Key: emailto   Setting Value: validemailaddress

The emailto option in the sys-fmanywhere registry now specifies the address for New Site Requests.

24 SubAnywhere

24.0 Overview

24.0.1 What is SubAnywhere?

SubAnywhere is a web-enabled module which allows your Subcontractors to

Accept or decline your work assignments

Review the Work Requested and other pertinent Work Order information

Update the Work Order's Status

Add negotiated charges to the Purchase Order associated with the Work Order

Set up records for their own Techs: a special mobile web version of SubAnywhere allows these Techs to access Work Order information and make status updates

Submit Quotes for additional work

Update and download documents (such as PDF's and photos)

SubAnywhere includes easy-to-understand Help available from each of its pages. In addition, you may contact your support rep or access the User Forum for a Powerpoint presentation on using and setting up SubAnywhere.

24.0.2 Setting Up SubAnywhere

Your support representative will set up the basic framework of SubAnywhere, but the following records may need to be updated in SAMPro:

Technician Record:

Main Tab:  Vendor Id is specified

Web Access Tab: Web Access = Subcontractor, Remote Device Type = SubAnywhere

Vendor Record:

Defaults Tab: verify that the Rate Schedule Id is properly completed. SubAnywhere only allows the Other Rates on the selected Schedule to be entered. 

Rate Schedules  for Vendors:

Only the Other Rate column needs to be completed.  The Other Rate Table defines which Other Rates your Subs will be allowed to choose in SubAnywhere from their drop-down charges list.

Other Rate Tables for Vendors:

If you have negotiated rates, the Rate column should be completed with the price the Sub will charge your company; SubAnywhere users will NOT be able override the price or description when they enter this charge.

If the Rate column is empty,  the SubAnywhere user can enter price and unique description.

Site Equipment:

Main Tab: An override to the Vendor’s Rate Schedules may be specified in the Equipment record's Service Provider / Rate Schedule field.  For example, special higher negotiated rates might exist for equipment located in Manhattan. In this case, this override would be use to generate the Charges drop down list in SubAnywhere for this equipment.

Escalation Profiles:

Please discuss with your support rep.

Registry for Documents Uploads / Download

Scheduled Event for Document Upload / Download

Your support rep should set these up with consultation from your IT department.

A Powerpoint with additional detail is available.

24.1 SubAnywhere Recent Updates

SubAnywhere Document Posting supports the UseSubdirectories=true option in sys-document-archive. This enhancement will alleviate performance issues caused by having too many files in the root archive folder.

24.1.1  New Remote Device Type: SubAnywhere

Technician Viewer Web Access Tab

Remote Device Type
New Option: SubAnywhere

If SubAnywhere IS enabled, set the Remote Device Type to SubAnywhere. This field controls whether PO’s are created as Released (None) or Unreleased (SubAnywhere).  If a particular subcontractor should not have access to SubAnywhere, set the Remote Device Type to None. The Web Access field should be set to Subcontractor if you want to auto-generate PO’s for them when a Work Order is created in New Call or Create PM WorkOrders; this is true whether or not SubAnywhere is enabled.

New Call, Create PM Work Orders

When a Work Order is created for a SubAnywhere subcontractor tech in New Call or via Create PM Work Orders, the PO that is simultaneously created will be set to Unreleased to conform to SubAnywhere requirements. To be considered a SubAnywhere tech, the Technician record must: reference a Vendor record; have the Web Access field set to Subcontractor, and have the Remote Device Type set to the new option of SubAnywhere.

Work Order Create Sub PO

When SubAnywhere subcontractor is added to a Work Order, the PO that is generated for the sub (either automatically or by clicking the Create Sub PO button) will be set to Unreleased to conform to SubAnywhere requirements. To be considered a SubAnywhere tech, the Technician record must: reference a Vendor record; have the Web Access field set to Subcontractor, and have the Remote Device Type set to the new option of SubAnywhere.

24.1.2 Create PM WOs for SubAnywhere Techs

When a PO is generated for a SubAnywhere Tech, the initial PO status is now set to Released if it will include GEN lines. This prevents SubAnywhere users from adding charges to PO's that already have a cost associated with it from the Equipment's PM Schedule's Contract Cost. The SubAnywhere PO will be set to Unreleased if it does not include a GEN line.  The PO's Release Date will not be completed if the PO is Unreleased.

In earlier releases, the Status for a SubAnywhere PO was set to Unreleased regardless of whether or not it included GEN lines.

24.2 Registry

24.2.1 Registry Start NetFramework Post

The Start NetFramework Post function provides a SubAnywhere Scheduled Event Manager for Document Uploads. Specifically, it handles messages for SAMNetFramework applications such as SubAnywhere. Currently, this function supports handling Document Uploads in a fashion similar to DashboardEventManager and Start Dashboard Post.  This function should be implemented by adding the Start NetFramework Post to a scheduled event to be run at an interval of your choosing. The following registry is required.

Registry Id: sys-netframework

Setting Key: UploadFolder  Setting Value: Absolute file path

The UploadFolder setting is the default location where files from SAMNetFramework applications (e.g., SubAnywhere) are uploaded.  This setting can be overridden by the registry of specific SAMNetFramework applications (note: for Sntfrmewrkpst to properly retrieve the file from the overridden location, "Application" must be specified in Message record contents).

24.3 Work Order SubQuote Tab

This tab will be updated from the new SubAnywhere module's Quotes tab.

Costing and other information (but not pricing) will be imported from this tab by the Quote Scope's Import Sub Quote wizard.

Quantity
The number of this item/charge being quoted.

Other Rate Id:
The Other Rate being quoted.  

Tech Id:
The Subcontractor quoting this work

Unit Cost:   Extended Cost:
The Cost of the item/item being quoted. This is the price the Subcontractor is charging for the work. These fields will be defaulted from SubAnywhere.  Manual entries to this tab do not default the cost.

Unit Price:  Extended Price:
These fields will be ignored by the Quote Scope's Import Sub Quote wizard; the markup rules defined in the Scope (Rate Schedule, Markup % or Gross Margin %) will be applied to the imported costs to determine the Scope's revenues.

Description:  Other Rate Description:
The Description field must be completed in order for this line to be imported into a Quote Scope; this field will default from SubAnywhere.  The display-only Other Rate Description appears for informational purposes.

Equipment Id:
This field must be completed in order for this line to be imported into a Quote Scope.

24.4 Quotes: Importing from the Work Order SubQuote Tab

This functionality is available on the Quote Scope's Main tab and Quotemaster's Scope Tab.

 New Button:

This functionality is designed for use with SubAnywhere. When clicked a wizard will be launched to import costing information from the SubQuote tab of the WO referenced in the Quote Manager/Master header. When the costs are imported, the markup rules defined in the Scope (Rate Schedule, Markup % or Gross Margin %) are applied to the imported costs to determine the Scope's revenues. This will be done even if Revenue has been entered on the Work Order's SubQuote tab.

Note: Wizard Requirements
If no lines from the WO SubQuote Tab match the Equip. Id on the Scope, a message stating “No Sub Quote lines found to import matching the Equipment Id on the Scope” will appear.

If the WO Id is not completed in the Quote Manager, the following message will be displayed:  “No Sub Quote lines found to import matching the Work Order Id on the Quote”.

25 DBSellpoint Point of Sale

25.1 Overview

DBSellPoint is a point of sales app developed to handle over the counter and retail sales transactions for SAMPro. Payments can be made with cash or credit card, or on account for existing customers. The app is designed to be run on an Android tablet with a credit card scanner, barcode scanner, and a cash drawer.

Returns of DBSellPoint sales are also supported in the app. A Powerpoint presentation focusing using the app itself is available.

25.2 New Function - Start Point of Sale Scheduled Event Manager

This function posts messages (transactions entered in the DBSellPoint app) to the SAMPro database. It is responsible for generating the needed AR Sales Journal, Invoice Master, Inventory History, Job History and Cash Receipts in SAMPro. It handles both DBSellPoint Sales and Returns.

This function will be configured to run automatically by support when it is installed.

25.3 Setting Up SAMPro for DBSellpoint

GL Entities are derived as follows:

ENTB = Balance Sheet Entity (from Company)

ENTI = Income Statement Entity (from Site COP tab)

Posting of POS sales should use the Entity defined above as follows in posting:

1) Cash Receipts Records

a. GL Entity – use Company ENTB – arrcpts.glentty.rn

2)  AR Sales Records

a. AR Control Entity – use Company ENTB – arsls.glentty.rn

b. Entities for GL Posting

i.All Sales Lines, Entity = Site COP ENTI
ii.All Expense (cost) Lines, Entity = Site COP ENTI
iii.Accounts Receivable, Entity = Company ENTB
iv.All Sales Tax Lines, Entity = Company ENTB
v.All Inventory, Entity = Company ENTB

3) AR Terms

When Invoices are posted from DBSellpoint, the Invoice's Due Date, Discount Date, Discount Available are now set based on its AR Terms.

25.3.1  RAQ: Default Cash / Client Site: Walk Up Customer

A default customer (Client Site) must be set up for walk up cash/credit customers where the sale will not be for  'on account' or cash sales to an existing customer. The RAQ configDefaultCustomer (site RN)  defines the default customer (site) that comes up on POS initial screen. This record will be configured by support when your system is set up.

25.3.2 Payment Type: GL Bank Account for Cash Receipts Entry

When an AR Cash Receipts entry is posted from DBSellpoint, the GL Bank Account will default from the Payment Type selected on the POS screen.

25.3.3 Returns Processing

NOTE: If a dollar limit for cash reimbursements is exceeded, a return will require submitting paperwork to accounting and a check gets cut to the customer at some future date.  In that scenario, SAMPro provides no automated help in managing the debt or producing the payment.  Accounting must create a Vendor record and the appropriate AP Journal entry so the customer eventually gets paid/reimbursed as a 'vendor'.

Returns are defined by messages including the key 'Return=true'?  If the customer is reimbursed (cash, credit card credit, etc), the DBSellpoint app will also provide that information so the appropriate negative Cash Receipt can be generated.

The posting depends on whether or not the customer was reimbursed at the POS counter.

If the customer is reimbursed:

The return is treated as a Credit Memo and posts the appropriate Sales and Cash Receipts transactions.

In the Sales Journal, the Invoice Id will be generated by appending the letters CM will to the original POS Invoice Id (e.g.,143234CM). The Transaction Description will be set to 'POS Return Entry'.

The Cash Receipts entry will be made with negative receipts and a Transaction Description will be set to 'POS Return Entry'.

If not reimbursed:

Only a Sales Journal entry will be made using the Costs tab of the Sales Journal to effectively put the Return 'On Account' for the customer.  The Client specified in the Sales Journal will be derived from the Client listed on the Site's COP tab.

A Restocking Fee may be assessed in the DBSellpoint return which will reduce the amount of the return. The RestockGLAccount registry detailed in Customer Note 25.4.3 may be used to specify the GL Account restocking fees will post to. If this registry is absent the Sales GL Account will be used.

If the registry is not set, the return amount for each line will be the original sales less the restocking fee.  If the registry is enabled then the difference on each line between the original sales and return amount will be posted to the Restock Account.

25.4 Registry Settings

25.4.1 User Registry Tab: Default Location/Tax Group for DBSellpoint

The Sales Tax Group on the default Client Site's COP tab is the one for the brick and mortar DBSellpoint location the DBSellpoint User is stationed at. This Sales Tax Group will be used for ALL DBSellpoint transactions. The default Site must be specified in the User's Registry tab for each DBSellpoint User.

Key:  defaultSite   Value: Site Id

25.4.2 Registry for Start Point of Sale Event Manager

Registry Id: sys-start-spntofsleevntmngr

Setting Key: DefaultLocation Setting Value: LocationId

The DefaultLocation is used to set the location for Sales Journal Expense Lines. If this registry is not specified the location 'Main' is Used.

Setting Key: emailpostlogsfrom  Setting Value: validemail

This registry defines the 'from' address for DBSellpoint posting logs. It must be a valid email address for the firm running DBSellpoint.

Setting Key: emailpostlogsto  Setting Value: validemail

This registry specifies the address receiving the posting logs; typically a support rep or IT administrator.

25.4.3 Registry for DBSellpoint Configuration and Defaults

Registry Id: sys-point

Setting Key: ARControlAccount Setting Value: GLAccountId

This required setting defines the AR Control Account to be used when AR Sales Journal entries are generated.

Setting Key: CollateralDirectory   Setting Value: path to uploaded POS collateral files

The CollateralDirectory is required.  It identifies the location where uploaded files can be found.    

If original collateral documents do not yet exist at posting, the next time the posting is run the system will check for the file again and archive if possible.

Setting Key: DiscountGLAccount Setting Value: GLAccountId

This registry specifies the GL Account for sales discounts on sales posting. If this registry is absent the Sales GL will be used.

Setting Key: RestockGLAccount Setting Value: GLAccountId

This registry specifies the GL Account for restocking charges on returns posting; if this registry is absent the Sales GL will be used.

Recent Updates

9.0.572.058 (2018-09-27)

IMPORTANT: Avalara Users
Formatting configurations within the Avalara import files for certain states may require manual updates to Sales Tax Authorities/Groups following the update. Please contact your support rep before running Start Sales Tax Update (Avalara). Note that new releases of Version 9.1 support the Avalara Web Service (which does not have these import issues). Upgrading to Version 9.1 also provides preprocessing information on anomalies in the Avalara import files which may need to be corrected.  

 Accounts Payable

AP Journal: This release corrects an issue where the Equipment Id was not defaulted. This only occurred if a PO was not specified on the AP entry but a Work Order Id was completed on the General tab.

Vendor Date-to-Pay List / AP Checks: This release locks out AP Check generation when the Vendor Invoice is "in use" by the AP Date To Pay Function to prevent inadvertent double payments by resetting the Next Net and Net Gross Pay Amounts.

Credit Card Processing

Electronic Payments: SAMPro now supports Electronic Payments. See Customer Note 7.7 for details.

Purchasing

Start Close Open POs: This release corrects a problem where this function did not always apply Security to the history reversals lines generated by this function.

Service Management

Create PM Billing:

This release corrects an issue which prevented PM Work Order Inventory Extras from being billed. See Customer Note 16.14.1 for details.

Provides performance enhancements when generating PM Billings with Electronic Payments.  

New Call: A new registry option causes the system to ignore the default technician specified in the Site or Equipment record. See Customer Note 16.1.4b.  

System

This release corrects a sporadic Runtime error: The parameter is incorrect. ( OS error 16r57 )  experienced by some remote users when printing.

9.0.572.057 (2018-07-25)

Accounts Payable

AP Date-to-Pay List: This release implements special handling for 'over paid' invoices so that the overpayment is NOT erroneously defaulted to the Discount and Retainage fields.

DBAnalytics

DBAnalytics Document Posting supports the UseSubdirectories option in sys-document-archive. This enhancement will alleviate performance issues caused by having too many files in the root archive folder.

EDI (Custom)

Corrects a ">" Not Understood error when getting a list of files sorted by creation date.

Inventory

Inventory Restock Pick List Entry: Security is set as needed to support Intercompany processing.

Invoicing

Record Billing Adjustments: Validation has been added to warn the user if Sales or Use Tax has not been computed when the invoice is saved as Ready to Print; see Customer Note 8.11.1 for details.

Job Costing

Job EOM:  Customer Note 9.1.5 lists a registry to skip Change Orders that haven't yet been approved. This release also corrects a sporadic problem where the GL Entity was not always set when trying to apportion the revenue across the cost codes.

Payroll

Report PR W2's / Report PR W2's (Standard): If Residual Tax Withholding is used, Local wages may be overstated on Copy 2 of the W2's. See Customer Note 12.2.11b to omit the print of Local Line 2.

Purchasing

Purchase Order: Eliminates a sporadic “Runtime Error: system primitive failed” experienced when saving a PO when the Unvouchered A/P box is flagged in the Accounting Period and receipts are made directly on the PO.  

Service Management

Scheduled Event Manager: The system no longer pops up a message when a scheduled report is generated from an escalation profile event; see Customer Note 16.24 for details.

Service Channel

This release corrects issues experienced by some Canadian users uploading invoices. The Invoice Date is now sent in US format even for Canadian users for the I12 and I14 ServiceChannel Invoice Formats.

See Customer Note 21.2.12 for a registry to delay the ServiceChannel upload of Work Performed after a status change to accommodate delays in the TechAnywhere upload of this information.

ServiceChannel invoice spreadsheets generated by SAMPro can contain multiple invoices. In this release, the blank line previously separating invoices has been eliminated for both the i12 and i14 invoices.

See Customer Note 21.5 for enhancements on dealing with jobs that do not require materials on the i14 format.

SubAnywhere

SubAnywhere Document Posting supports the UseSubdirectories option in sys-document-archive. This enhancement will alleviate performance issues caused by having too many files in the root archive folder.

System

PDF's: The new  XmlToPdf.jar file writes to the xmltopdf.log file to provide diagnostics if a PDF conversion fails. This file requires Java 8 or above. See Customer Note 1.15.1 for details on installing this enhancement.

TechAnywhere

When a Flat Rate is referenced, the price from TechAnywhere is always used. Previously, if the price was adjusted using any other price level than 1, the TechAnywhere price override was ignored.

9.0.572.056 (2018-05-18)

Accounts Payable

Expired Insurance Certificate Notice Report: Revised report (REXPRDINSRNCE.rpt) dated 2018-05-08 provides for bitmap placement when emailing your Vendors. See Customer Note 3.2.12.

Inventory

Stock Status Report: This release corrects a minor rounding problem resulting in the sum of individual Location Totals not adding up to All Reported Locations Total.

Invoicing

Record Billing Adjustments: This release corrects a very sporadic Runtime error: "containsPoint:" not understood.

Consolidated Invoice Report: New report lists AR Invoice ID, PO, site name, invoice subtotal amount, tax amount, and total invoice for each invoice being consolidated. Supports auto emailing. See Customer Note 8.2.5.

Service Invoice: Revised report (SERVICEINVOICEv90b028.rpt) dated 2018-05-14 supports the new bitmap override by Job functionality. Customer Note 8.2.2g.

Progress Invoice Template 3: The revised Progress Invoice (RININV3.rpt) dated 2018-05-14 supports the new bitmap override by Job functionality. Customer Note 8.2.1a.

Job Costing

Revised Report: The Profitability Analysis Report (RPRFTRPT.rpt) dated 2018-05-15 has been updated to include filtering by the Job Billing Item.

Payroll

Compute Payroll: This release corrects the setting of the Earnings Id where a 'fixed' earning amount type is specified (such as a Bonus amounts entered on the Employee Recurring Wages tab).  

Purchasing

PO Reorder Advise Report: This system report now gets Security from Location/GL Entity / Company / Security links if Intercompany is enabled. Previously the report would always try to pull the Security from the Location.  

Quote

Report Quote Form: Revised Report (RQTEFRMv90b035.rpt) dated 2018-05-14 supports new bitmap override by Job functionality; see Customer Note 14.2.2a.  
Corrects a spurious 'Runtime error' when the Copy from Any Scope button was used to copy Scopes with no Inventory lines.
Revenue Adjustments are now correctly posted from TechAnywhere.
Quote Scopes now support revenues of up to $99,999,999. Previously, revenues of ten million and above resulted in a tab mismatch error in both the Quote Master and Quote Scope viewers.

Service Management

Dispatch Board: When UseOutlook is enabled via registry, clicking the Email button launches the Outlook form and sets the Email To field with the Tech’s Email Address 2.

Work Order: This release correctly sets the Cycle Code Filter when Equipment is manually added with a Work Code referencing a Cycle Code. This prevents TechAnywhere sync issues.   

Service Channel

Registry: In a previous release, we added a feature that sends a Work Performed Note to ServiceChannel for each Equipment line on a work order. This release allows the upload feature to be disabled for specified Equipment Ids (see Customer Note 21.2.5a).

System

Make PDF: The new PDFJoiner.jar file supports joining secured pdf's, such as invoices received from Vendors. See Customer Note 1.30 for details.

Reports: Most Report Range fields have been expanded from 999 to 1999 characters.

ServiceChannel: This release supports Work Order IDs with alphabetic characters (prepended with a Branch Id).

Document Archive Maintenance: When Force Archive and Convert to PDF are both flagged, the archived .dbr file is now converted to a PDF. Previously, the file extension was changed but the file remained in .dbr format.

User viewer - Import Profile Button: Corrects a Key Is Missing error when importing certain older analytics.

TimeAnywhere

This release corrects non-Intercompany Security settings when posting to the Labor Journal.   

9.0.572.055b (2018-02-22)

Accounts Payable

Report AP Vendor Payment History: This new report shows the total amount paid by vendors based on the AP Journal Effective Date - see Customer Note 3.2.11.  

Inventory

Inventory Adjustments Journal: See Customer Note 5.1.3 for a registry to Create Warnings for Exceeding Quantity / Unit Cost Thresholds in Inventory Adjustments.

Inventory Restock: This function now sets the Inventory History Security for Intercompany databases. Validation also prevents To and From Locations from being in different Companies. 

Invoicing

Service Invoice: Supports Token Replacement for the Email Subject and Message. See Customer Note 8.2.2e and 8.2.2f for the revised report and registries to enable.

Report Commissions by Amount Invoiced: Revised report (RCMMSSNRPT5.rpt) dated 2018-02-20 includes logic for discounts upon receipt. See Customer Note 8.2.4.  

Payroll

New T4 - T4 Summary: Report PR Canadian T4 (Standard) and Report PR Canadian T4 Summary (Standard) do NOT require a printer that supports native PCL printing with a PCL 5 /5c printer driver. See Customer Note 12.2.4 for details on these new reports.

T4 Processing: This release supports an enhancement to allow Earnings records to be set up with a W2 Category of OI:40 and an Earnings Type of Wage.

Report W2 Electronic File: The revised Report W2 Electronic File (RW2EFb72vb105.rpt) dated 2018-02-16 supports registry options for the state of Oklahoma and the city of Philadelphia; see customer note 12.2.16a.

Service Management

Dispatch Board: Corrects a spurious 'technician is INACTIVE' message when using the Available Hours tab to assign WO to a tech whose Tech Id exceeds 10 characters.

Subcontractor POs: When changing from one Subcontractor Tech to another Sub on the Work Order or Dispatch Board, when the Vendor is updated in the associated PO the AP Terms and Tax Group will also be updated. Only PO's with no child lines will be updated.

Work Order / Escalations: A new tech Status, Over Budget, has been added; it has a corresponding Work Order Escalation Status of Over Budget (Status Category Open), This status falls above Completed and below Wait Paperwork in precedence.

System

Email: See Customer Note 1.15 for details on recent UseOutlook enhancements.

9.0.572.054b (2018-01-19)

Accounts Payable

1099 Form: The revised Report AP 1099 (also titled Report Vendor 1099's) supports a new registry to set the State EIN. Customer Note 3.2.9.

1099 Electronic Files: The new Report AP Electronic Files function creates the file that is used to submit 1099’s electronically. See Customer Note 3.2.10 for details on implementing with required registries.

AP Check: See Customer Note 3.1.2a for a new Registry to Protect Dollar Amount in Canadian AP Checks.

AP Journal:

New Field - Last PO Receipt: Displays the most recent receipt date of the selected PO. See Customer Note 3.3.1 for details.

Registry: Customer Note 3.1.7 lists an option to display an Error or Warning when selecting a PO whose Last PO Receipt precedes the AP Journal's Effective Date.

Registry: See Customer Note 3.1.7a for a AP Journal Registry to Use the Default Service Job in the Equipment record for all but PM WO’s.

AFT Processing: This release supports AFT/AP Link Reporting For RBC (Royal Bank of Canada). See Customer Note 3.1.1b for the registry. The Check Reference Name is included in the Positive Pay file.

Accounts Receivable

Report Customer Statements: The revised report replaces 'Print Zero Balance Statements' with the more flexible 'Print Statements With Balance Over' field. See Customer Note 7.2.2.

Bank Deposit

Bank Deposit Journal Report: This new report (RBNKDPST.rpt) prints the Journal Entries and associated receipts by the bank GL Account. The Start/End date is based on the Bank Deposit Effective Date.

Payroll

Payroll Worksheet: Revised report supports an optional Direct Deposit section showing Direct Deposit info from the Employee (no check issued) or the Check. Customer Note 12.2.3.

Labor Journal: See Customer Note 12.1.14 for a Labor Journal Registry to Use Default Service Job in the Equipment record for all but PM WO’s. Note that this registry is also applied to Labor Journal entries posted from TechAnywhere.

New W-2/W-3: The new Report PR W-2s (Standard) and Report PR W-3s (Standard) do NOT require a printer that supports native PCL printing with a PCL 5 /5c printer driver. See Customer Note 12.2.11a for details on accessing and running these reports.

Revised Report W2 Electronic File: The Electronic W2 Report (RW2EFv72b105.rpt dated 2018-01-17) has been revised to allow successful submission with the "Permitted Benefits Under a Qualified Small Employer Health Reimbursement Arrangement" change made this year. We don't support the processing of these fields, but the revised report fills the required fields with zeros so that it can be submitted successfully.

Purchasing

Purchase Order: See Customer Note 4.1.4a for a Purchase Order Registry to Use the Default Service Job in the Equipment record for all but PM WO’s. Note that this registry is also applied to PO's posted from TechAnywhere.

Print PO Forms: Corrects a sporadic issue preventing PO's from being edited if they were printed with the Print Confirmation box being disabled via registry.

Quotes

Quote Approval Wizard: Previously, if the Approval wizard encountered the "WARNING: this work order has open assignments to a remote technician" the approval stopped. In this release, the warning is suppressed so the Approval wizard can run.

Service Management

Dispatch Board Date Range Tab: Corrects a display issue where selecting a User Range no longer obscures a pre-defined range.

New Call:

Corrects a problem writing the Work Requested to the WO when switching between the New Call screens.  

The registry option to omit the Market Source when creating new Sites now also omits writing the Market Source to the new Clients. See Customer Note 16.1.4a.

Web Log: Corrects handling of non-printing characters in the Work Requested when a new Web Log record is generated from ServiceChannel.

Technician: The new Vendor Name, Insurance Required, Insurance Expired, Purchases and Payments Blocked display fields appear on the Main tab. See Customer Note 16.8.3.

Work Order: Corrects a 'receiver is not a Boolean' error in the Required Resource tab.

Reporting

CrystalViewer Web 4.0: This program written by Data-Basics Inc. allows SAMPro users to view Crystal Reports on their workstations. This program is only for viewing existing Crystal Reports and not for any type of report development. See the CrystalViewerWeb 4.0 SAMPro.pdf file for installation details.

System

Document Management: Corrects a 'Runtime Error: “isOkToRecord” not understood ' and the '"Archive File Location Does Not Exist" error' experienced by some users.

Positive Pay Processing: This release adds Positive Pay reporting for RBC (Royal Bank of Canada. See Customer Note 1.17.4 for the necessary registry entries.

User Group: Corrects a problem where 'cloning' a User Group cleared all selected lines. The settings from the original record are now retained in the newly created one.

XmlToPdf.jar File: The revised file dated 2017-12-27 supports the revised W-2 reporting format. It also corrects a file 'cannot find this file' error with UseOutlook enabled for Outlook 2013 and below. UseOutlook is not yet fully supported for Office 365.

TechAnywhere

Quote Enhancements: This release supports the ability to post quote discounts and to email the SAMPro-generated quote report. See Customer Note 17.8 for details.

Require a PCR Table: TechAnywhere uses the new PCR Table Id in the Site's Service Tab to indicate that new Equipment for this Site requires a PCR Table. See Customer Note 17.9.

TechAnywhere: Corrects Labor and PO posting issues in recent releases.

9.0.572.052  (2017-10-31)

Accounts Payable

AP Journal: Corrects an error -143 when a Credit Purchase Order is selected.

Client Order Processing

COP Invoices: This release corrects a spurious Runtime error that appeared when launching Report COP Invoice in a database which contained only a single AR Control GL Account.

DBSellpoint

When Invoices are posted from DBSellpoint, the Invoice's Due Date, Discount Date, Discount Available are now set based on its AR Terms.

Inventory

Inventory Adjustment Journal: This release corrects a rounding issue that caused the amount expensed/relieved from inventory to differ from Intercompany transactions.

Purchasing

Purchase Order List: The PO's "ordered by" field has been added to the sort option  PurchaseOrderByVendorAlphaByIdByDescription after the status column

Service Management

Work Order Other Tab: Corrects the calculation of the Canadian PST on edited lines as an additional cost on a line to be included in pricing mark-up. See Customer Note 16.3.8b.

Work Order Technician Tab: Refines the update of the referenced Purchase Order if one Subcontractor Tech is changed to another. The AP Term in the PO is forced to match the Vendor record; the PO's Sales Tax Group is updated from the Vendor (default) or Job (registry enabled).

ServiceChannel

This release supports mapping SAMPro log status’ to Service Channel log status’ based on registry values keyed by Client Id. See Customer Note 21.2.11 for detail.

TechAnywhere

This release corrects a problem in v9.0.572.049 where the TechAnywhere post did not update the Job Quantity Ordered and Job Quantity Received on the PO from TechAnywhere.

9.0.572.051 (2017-10-06)

Payroll

Employee Taxes Tab: Tax for Authorities not marked 'Always Withhold' are only assessed for labor on Jobs referencing that Tax Authority, correcting a problem in recent releases.

Workers Comp: This release applies Security filtering based on the Workers Comp Category in the Labor Journal Hours tab and the Work Order Labor tab. See Customer Note 12.19.1.

Quote

Import Diagnostics Wizard:  Corrects a sporadic Runtime error - system primitive failed.

9.0.572.050 (9-28-2017)

Accounts Payable

AP Date-to-Pay List: A new registry entry can be used to control the sort order for this function (e.g., sort invoices by due date). See Customer Note 3.1.6 for details.

AP Journal: Since Job Cost Categories are not needed if a Job is not specified, the Cost Category is cleared if a Job is NOT specified on a detail line when an entry is loaded.

Report AP Check Register: The revised report (RAPCHEKv72b001.rpt) dated 2017-08-15 includes a new range filter, Check Number to enable printing for a specific check or range of check/eft numbers.

Start Create EOM Unvouchered AP GL Entries:  Credit Side Entities are now generated when Intercompany is enabled without a separate registry; see Customer Note 3.1.7 for details.

Vendor Open Invoices Tab: AP Retainage is now included in the calculation of the AmountOwed column.

Accounts Receivable

AR Sales Journal: Tightens Job Cost Category / Job validation.

AR Cash Receipts Journal: Tightens Job Cost Category / Job validation.

Report Customer Statement: Revised report (RCUSTSTMNTv80b048.rpt) dated 2017-10-06 prints the consolidated invoice description for consolidated invoices.

Report AR Aging: See Customer Note 7.2.1 for updates to this report as of 2017-09-19.

General Ledger

GL Reporting Period:  In this release, the Report Title is cleared when a GL Reporting Period is cloned: it will be set correctly based on the Fiscal Year and Date when the new record is added.

Inventory

Inventory Adjustments Journal: Tightens Job Cost Category / Job validation.

Invoicing

Record Billing Adjustments: In Version 9.0.572.034-049, clicking the Save button automatically restarted the function. In this release, a registry is required to do so: see Customer Note 8.1.4.

Service Invoice: Revised report dated 2017-09-06 extends support of the registry option to display both the Billing and Email addresses to the CANADA header format. Customer Release Note 8.2.2d.

Payroll

Report PR Deductions Detail: The revised report (RPRDEDDTL.rpt) dated 2017-08-30 includes a new filter range for the GL Entity ID which relates to the GL entity assigned to the employee records.

Report PR Miscellaneous Deduction Check Detail: Corrects a problem where duplicate lines appeared if the Employee Deductions Tab included multiple lines with the same Deduction Id for different date ranges. This system report does not need to be installed in your database.

Purchasing

Purchase Order: When a PO record is loaded or saved, the Job Cost Category will be cleared if a Job is NOT specified on a detail line. This release also tightens Job Cost Category / Job validation.

Quoting

Use Crystal Quote Registry: See Customer Note 14.1.4 for registry to enable the Quote to allow blanks in the Report Id to so that Crystal Reports may be run.  

Quote Approval Wizard:

When the Create Job Budget option is selected, the Quote's Revenue Adjustments now generate a Budget Entry (+ or -) to the Job and Cost Code specified.

The Description entered on the Scope's Material tab is now accurately written to the Purchase Order instead of being overwritten by the Other Rate Id's Description.

Service Management

Subcontractor Work Orders: When a Subcontractor Tech is changed on the WO Tech tab or the Dispatch Board, the system automatically changes the Vendor in the associated PO. In this release, the PO's A/P Terms and Sales Tax Group are also updated from the Vendor record.

Report PM WorkOrder List: This release plus the revised report support a registry to allow the Create PM WO checklist and the report to appear in the same order. See Customer Note 16.2.3 for details.

Report Site Service History: The revised report (RSRVCEHSTRYDTL.rpt) dated 2017-10-04 includes a new range filter, Equipment Type Id.

Service Invoice: Corrects an issue with reversal lines if a user attempted to edit a previously invoiced line resulting in spurious negative lines on subsequent invoices for that Work Order.

System

Keystrokes: Shift+Tab now moves the caret back one field. Ctrl+G acts like Shift+Tab in Viewers, Reports and Sarters. Ctrl+G retains its 'Go' functionality in the Viewer, Reports and Starter menus.

Positive Pay (BoA):  This release supports Bank Of America Positive Pay Reporting w/ Payee Information. See Customer Note 1.17.3 for the registry to implement.

Printer Selection: This release corrects an issue where the defaultprinter option in the sys-printer-functionid registry was ignored; see Customer Note 1.2.1a for details.

Switch Security Identity: Switching Security from the File>Switch Security Id menu no longer terminates the User's Web sessions.

TechAnywhere

This release corrects a sporadic problem where the Equipment Id on the PO's Gen tab was cleared on general items received in TechAnywhere.

When posting Quotes from TechAnywhere, prices for Other and Material items are now successfully posted. This corrects an issue in recent releases where costs but not prices were posted.

 9.0.572.049 (2017-08-14)

Accounts Payable

AP Journal: Reversing General lines are now flagged as No Discount to avoid discount calculation issues when the Date Effective is edited.

Invoicing

Start Reverse Job Invoice: The Work Order COD Tab's Invoice Reference is now cleared during the Job Invoice Reverse so that the user may edit the COD child tab before re-billing the Work Order.

Progress Invoice Template 3: Revised report (RINIVNV3.rpt) dated 2017-08-13 adds the Site Address to the CANADA header format.

Inventory

Inventory Receipts Journal:  

Un-receipted lines are no longer displayed to enforce the requirement that a new Inventory Receipt entry must be created to re-receipt items.

Previously, if a serialized item was received and then unreceived, its serial number could not be reused. See Customer Note 5.4.3  for a new procedure to re-receive a serialized item.

Payroll

Compute Overtime Enhancement: This release extends the functionality of the Overtime calculator work even when checks are not actually printed and posted. See Customer Note 12.18 for details.

Purchasing

Purchase Orders: Corrects setting the Branch Id when the global setting BranchOverrideFrom=job is enabled and the Work Order Id filled in before the Vendor is selected.

Job Viewer's Create PO Button: If the BranchOverrideFrom global option is set to 'job'  the Branch is correctly reset from the Job's Branch when the Vendor is entered after the Job Id is completed.

Quotes

Quote Approval Wizard (Quote Manager and QuoteMaster):

When the Job Budget option of the Quote Approval wizard is selected, Budgeted Revenues are now written for T&M Quotes; previously only Budgeted Costs were written.

The Wizard now writes to the Work Order Log Tab when a new WO is created or updated.  

Reports

Auto-Emailed Reports: In this release, the registry in Customer Note 8.2.2 is only used to specify a Common Phrase for Service Invoices emails instead of being applied to all auto-emailed reports.

Service Management

Site Equipment: The Equipment Type Id is no longer cleared when the PCR Table Id is updated. This corrects a problem in TechAnywhere and in manual changes to the Site Equipment record.

Work Order

Registry to Prevent Editing WO Other Lines Imported from PO: This registry is recommended if Create EOM Unvouchered AP GL Entries is run. See Customer Note 16.1.9.

WO Other: This release corrects a recent issue where Tax Cost transfers posted to GLH out-of-balance for Use Tax jobs.

WO Technician: Corrects a display issue in the magnify view Technician tab.

ServiceChannel

This release refines handling of a ServiceChannel CHECK IN (or CHECK OUT) message with conflicting TR_NUM and WO_NUM values. See Customer Note 21.0 for details.

Quoting: The ServiceChannel Upload button has been removed from the Quote and Quote Manager viewers because the quote/proposal integration has been disabled by ServiceChannel.

System

Viewers: This release corrects sporadic errors encountered when clicking the End key and then editing an Id field that already contains the maximum number of characters.

Document: This release corrects a sporadic 'Runtime error: index: 1 is outside of collection bounds' which showed up in Windows 10 (fresh install) when trying to show an image in a Document record.

TechAnywhere Post

Purchase Orders: PO's will not be updated by the post if no values have changed. This will preclude failed message when the post attempts to update a closed PO.

Quotes: This release corrects a sporadic problem where TechAnywhere combined all outstanding quotes into one message resulting in all scopes being written to all quotes created by the post.

Taylor UWO: This fix applies to customers using the Taylor Universal Work Order functionality. It corrects a 'Key is Missing' error when posting Work Order COD information.

9.0.572.048 (2017-07-07)

Accounts Payable

AP Journal: Postings to the Bank Account specified in the AP Manual Check section ONLY use the GL Entity on the Main tab when InterCompany is enabled via registry. If InterCompany is NOT enabled, the GL Entity is not used for Manual Check / EFT / CC posting and Check records.

AP Select Invoices for Payment: In this release, the Next Pay Amount field will be completed appropriately when the Next Pay Day field is blank (01/01/1900).

General Ledger

GL Trial Balance Report: Corrects sporadic display issue running report with GL Entity viewer open.

Job Costing

Job Journal: Previously, the Total Labor Cost display field was not promptly updated if the global registry LaborRatesAndAccrualMethod=7687 was enabled. This field is now correctly updated when the Job Cost Code is entered.

Invoicing

Reverse Job Invoice: Corrects a spurious SQL error; see Customer Note 8.12.  

Payroll

Labor Journal Hours Tab: Since a Bonus should never be entered on a line which also records hours, validation now prevents the user from entering hours and a Bonus on the same line.

Quoting

Approval Wizard: Revenue Adjustments of approved option(s) are now included in the NTE Client field when a new WO is created unless suppressed via registry (Customer Note 14.1.3).

Revised Report Quote: The revised report dated 2017-06-21 correctly evaluates the ‘ n/a’ Tax Type on detail scope lines. See Customer Note 14.2.2 for details.

Service Management

Start Renew Service Contracts:  In this release Equipment flagged as Inactive will be skipped.

Work Order Revenues Tab: Corrects an error when double-clicking on an AP Journal line.

Dispatch Board Work Order Summary: Delete button removed; see Customer Note 16.9.7.

System

Licensing: This release closes a loophole which allowed more Full User and TechAnywhere (Technician) records to be created than allowed by license. See Customer Note 1.28 for details.

9.0.572.047 (2017-06-01)

Accounts Payable

AP Journal: This release corrects the calculation of Tax Cost on subsequent AP entries where the PO had previously been partially vouchered.

Accounts Receivable 

AR Cash Receipts Journal - Open Invoice List: The new PO# column displays the customer's Purchase Order specified in the Work Order's PO# field.

DBSellPoint

If original collateral documents do not yet exist at posting, the next time posting is run the system will check for the file again and archive if possible.

Invoicing

Customize Service Invoice Email Message: The revised Service Invoice and this release support custom text in the email that the Service Invoice is attached to. See Customer Note 8.2.2e for details.

Job Costing

Report Jobs in Progress: The revised report replaces the Over/Under Billed column heading w/ Total Billed JTD - Cost JTD. The report is sensitive to the CO Date Approved; see Customer Note 9.2.5.

Report WIP Summary 2 (% Completion Method): New report calculates Total Estimated Revenue from the Contract Amounts in the Billing Items. See Customer Note 9.2.6.

Quoting

Quote Scope: Corrects Runtime Error: 'CheckCurrentField Not Understood' when clicking the Flat Rate Import button with the Subcontractor, Additional Equipment, Revenue Adjustment or Techs tab selected.

Service Management

Work Order Labor Tab Header: The Actual Hours: Billable Hours: fields display a running total of hours entered on the Work Order. Negative labor hours are now subtracted from these running totals instead of being added.  

TechAnywhere

Timesheet: When Equipment is created, the Equipment Name now defaults to Pending instead of the Equipment Id to correct an issue with Custom Fields. If Custom Field values are specified for the Equipment Name, Pending must be one of the allowable options.

This release supports subfolder logic when a file is archived after a delay; previously, these files were archived in the base archive directory.  

9.0.572.0045-046 (2017-05-09)

Accounts Payable

Report AP Canadian Electronic T5018s: This new function creates the files that is used to submit the T5018s electronically to the CRA (Canadian Revenue Agency). See Customer Release Note 3.2.8 for details on running this report and the required registry settings.

Report AFT Accounts Payable:  Report EFT Accounts Payable:
This release corrects the landscape formatting of the printed Electronic Payment Register report generated when these functions are run to produce the electronic file for direct deposit.

Invoicing

Service Invoice:

Revised report dated 2017-05-16 supports a registry setting to allow both the Billing Address and Email To address to print on the invoice header. Customer Release Note 8.2.2d.

Revised report dated 2017-04-14 supports a registry option to skip print $0 DUE invoices (e.g., COD Invoices). See Customer Note 8.2.2c for the registry to enable. Also supports logic to process archive file locations; this corrects an issue where files saved to some original locations were not available when the invoice was generated.

Payroll

Report AFT Payroll:   Report EFT Payroll:
This release corrects the landscape formatting of the printed Electronic Payment Register report generated when these functions are run to produce the electronic file for direct deposit.

Paychex SPI Flex Format: The Report PR Export function now supports the Paychex SPI Flex Format. See Customer Note 12.1.13 for the registry required to enable this functionality.

System

Start Move Generic Documents: This new function is designed to move the generic text files generated by a text printer out of the main SAMPro directory. See Customer Note 1.2.7 for details.

 Registry Viewer: The new Sort Lines button allows individual registry entries to be sorted alphabetically; see Customer Note 1.1.0.

Service Management

New Call New COD:  Job information is again displayed the first time Equipment is selected, correcting an issue in 9.0.572.044.

Web Log: A new Sort Order, WebLogByWorkOrderByClientSiteName has been added the List Viewer. Dispatcher and Technician Ranges have also been added: see Customer Note 16.22.

ServiceChannel

Refines handling of invalid responses from ServiceChannel to prevent HTTPServer crashes.

See Customer Note 21.2.10 for a registry to derive the Scheduled Date / Time of  the Accepted Request Message from the Original ServiceChannel Request when a WO is created in New Call.

TechAnywhere

Quotes: The Unit Cost entered by the Tech Material and Other lines now posts back to SAMPro so that the Quote's costs are correct.

New Call: When a Work Order is created in TechAnywhere, its Client and Sub NTE fields now default from the Equipment record. If not set in the Equipment record, they default from the Site.

 9.0.572.044b  (2017-04-17)

DBSellPoint

Returns:  Corrects the cash allocation for Returns processed for POS sales with multiple payments,

Inventory

Inventory Physical Count: The Inventory module must be enabled in order to access this function.

Inventory Adjustment Journal: This function now supports the 'creation' of serialized item records (via an Adjustment entry) for Intercompany users.  

Inventory Restock List Items Tab: The new Stocked field is checked for items flagged as  Stocked. The Reorder Level: and Order Up To: fields default from the Restock To Location.

Invoicing

Service Invoicing: Corrects sporadic 'key is missing' errors invoicing COD WOs. OOB Cash Receipts/Sales entries appear on the Checklist but cannot be flagged for processing.

Payroll

Compute Payroll: Refinements to Extra Withholding - see Customer Note 12.9.2.

Canadian T4s: See Customer Note 12.13.2a for recent corrections to T4 fields.

PR Export Custom: See Customer Note 12.1.11 for custom changes to the Paychex format.

W2 Forms (Plain Paper Copy): The W2 Year is now printed below the Copy label on the Plain Paper Copy version of the report.

Labor Journal: See Customer Note 12.17.4 for details on the new Federal / State Tax Rates fields for Bonus Pay. Customer Note 12.2.5a provides simplified Bonus Pay Check procedures.

Generate Recurring Labor Journal:  Now correctly identifies all eligible Recurring entries.  Previously, entries were skipped if the Employee Start/End Dates fell entirely within the Payroll Period's Effective Dates.

Registry To Enable Optional Accrual for Bonus Pay: See Customer Note 12.1.12 for details on setting the Registry and Payroll Period User field to enable this functionality.

Labor to GL Accruals:

This release corrects a recent issue where Labor Journal lines referencing a PayType with a RateFactor of 0.0 incorrectly generated GL Accrual postings.

Previously, changing certain values (Hours, Pay Type, etc) didn't always cause GL Accrual Info to be recalculated.  Accrual Info is now re-initialized to ensure that accruals are calculated correctly in the Employee, Labor Journal, Payroll Period and Work Order viewers, and in Compute Payroll.

Quoting

Quote Viewer Scope Tab and Quote Scope Viewer Scheduling Tab:
Opened By - Date Opened - Time Opened: Previously, these fields were updated if a Scope was reopened. Now they are only set when the Scope is created.  

Quote Scope Main Tab
Clicking this new button accesses the Scope's Quote Manager record.

Quote Approval Wizard:  The Quote's Service Category defaults the new WO's Service Category. If the Quote's Service Category is empty, the new WO's will continue to default from the Work Code.

ServiceChannel

When entering certain Status values, ServiceChannel prefers a CHECK element within the CALL XML. See Customer Note 21.2.9 for the Registry options to enable this functionality.

Reverse Posted Invoices: This release supports the automatic resending of the re-invoiced invoice. See Customer Note 21.4 for details.

Incorrectly configured ServiceChannel responses write a diagnostic message in the offending message record. The invalid response is otherwise ignored so posting is not interrupted.

Service Management

Client Site Equipment:  A new Sort Order: ClientSiteEquipmentByIdByBarcode has been added to the List view. Bar Code as been added as a Range in the Filter.

Create PM WOs:  When the TechServiceParts=No registry is enabled and Service Parts and Tasks are specified, the Tasks now correctly written to the WO Equipment Work Requested.

Escalation Profile: The new ^workperformedall^ token displays the Equipment Id, Name and Work Performed of all Equipment lines on the WO when the Scheduled Event is executed.

New Call:

The Site's Service Manager is no longer cleared when changing the Job changes the Client. This corrects a problem in the sys-newcall option ServiceManagerBasedOnSite.

This release supports a Registry Option to Omit Market Source when Creating New Site Record; Customer Note 16.1.4a. 

Work Order:

Corrects an error when adding a Call Script for the second (or greater) piece of Equipment listed on the Work Order.

See Customer Note 16.1.6b for a registry option to Deny Manual Entry of Negative Inventory lines.

SubAnywhere

Create PM WOs: Refines setting of PO Status; see Customer Note 24.1.2.

System

Document Archive Maintenance: The DBR to PDF function now uses the report's internal bitmap path to set the pdf graphics if available.

Id Lookup : Improved performance when an Id-lookup list is initially opened or resorted. This improve occurs the button is click or the field is double-clicked to display the list.

Reports: This release supports Global Registry to enable the Windows Printer Dialog for all reports instead of the SAMPro printer list. See Customer Note 1.2.6 for details.

Upgrade Processing: For SQL Server database users, SAMPro will check for database table change rights and uncommitted transactions to ensure a successful database conversion.  

TechAnywhere

Equipment created from the Timesheet is now assigned Security from the Site if applicable.

Start TechAnywhere Post: To improve performance, the Post now applies a 90 Day cutoff date for documents to avoid attempts to archive documents which can likely never be archived.

9.0.572.043 (2017-03-02)

Accounts Payable

AP Journal: This release closes a loophole which allowed users to voucher Credit PO's multiple times.

AP Checks: This release corrects sporadic locking issues when various users attempted to print AP Checks for different securities at the same time.

DBAnalytics

KPI Definition Import: This release corrects an issue where this function sometimes failed.

Inventory

View Inventory Restock: Corrects an error with the List Sort Order RestockListByToByFrom.

Reports

Bitmaps: Although deprecated, the 'at' and 'size' attributes are still implemented by some users in their report registry entries. This release restores this functionality inadvertently removed in v 9.0.572.037e.

Service Management

Maintenance Service Authorization (Custom): Adds new field and corrects issue cancelling alarms.   

 9.0.572.042 (2017-02-27)

Accounts Payable

AP Journal: This release refines the allocation of line item Tax Cost credits to Tax Authorities. A Tax Authority qualifies for inclusion in the allocation when EITHER of the following is true:
1. The APJ line's Tax Type is Use.
2. The Group Tax Authority line's Job Cost flag is True.

DBSellpoint

DBSellPoint is a point of sales app developed to handle over the counter and retail sales transactions for SAMPro. See Customer Note 25 for details on this new application.

Email

This release corrects a Runtime error when UseOutlook and CopyAll are both enabled in the sys-email registry AND the user sends a report as a .cvs or .txt file from Outlook.

Invoicing

Avalara Sales Tax: In this release, zero tax rates updates are properly accounted for when existing Tax Group records are updated. See 8.4.0 for details and important information on filtering updates.  

Sales Tax Authority: The system now incorporates Sales Tax Authority GL Entities into credit-side tax cost processing when the GL Entity is not set from other sources. See Customer Note 8.5.2 for details.

Payroll

Registry to Specify Exceptions to Taxable Fringes: This release implements registry-controlled refinements for the Earnings record's Taxable flag; see Customer Note 12.1.9.

TimeAnywhere: Enhancement to support Process TimeAnywhere Files in a Sybase environment.

Custom PR ADP Export: See Customer Note 12.1.10 for details on the new format ADPKaback.

ServiceChannel

SAMPro no longer updates a Work Order's status in response to an inbound IVR status change message for ‘Cancelled’ and ‘Billed’ Work Orders. See Customer Note 21.2.8 for additional details and a registry to adjust this behavior.  

Service Management

New Call 2: The Original Caller field has been added.  It defaults from the Site Contact 1 fields, but may be changed by the user; it will be written to the Work Order's Original Caller field.

New Call 2 New COD:

The Original Caller field has been added.  If completed by the user, it will be written to the Work Order's Original Caller field.

The Quote Report Id (QuoteDefaults tab) and the GL Entity Id (COP tab) are now defaulted from the Client Site template to the new Client Site created by this function.

9.0.572.041 (2017-02-10)

Payroll

Compute Payroll: This release corrects an issue with PTO $$ Accruals when the pay rate calculations are enabled via the global registry option LaborRatesAndAccrualMethod set to 7687.

Accounts Receivable

Cash Receipts Journal / Invoice Master:

When an Unapplied Deposit is entered, the Invoice Master Entry Type is now set to Unapplied; it was previously set to Credit Memo or Unknown.
When a database conversion is triggered, previously entered Unapplied Deposits will have their Effective Date, Entry Type and Status reset to the new values.

Requisitioning

Required Resource Wizard: Corrects sporadic problems with Inventory line consolidation.

Scheduled Reports

Previously, installing a revised report record for a scheduled report could result in prompting messages and errors. These issues are corrected so that the revised scheduled report runs properly.

Service Management

Work Order: Corrects a problem which resulted in GL Entities not being properly set when Work Order Labor lines were edited.

SubAnywhere

Technician Web Access Tab: In version 9.0.572.041 and above, the Remote Device Type must be set to the new value of SubAnywhere on the Technician Web Access tab to trigger the processing needed for SubAnywhere Techs. See Customer Note 24.1 for details.

9.0.572.040  (2017-01-25)

Accounts Payable

The Report Vendor Payment History (VNDRPYMNTS.rpt) dated 2017-01-26 was revised to display the 1099 Category of each Vendor.  You may also filter on the 1099 Category in this report.

Accounts Receivable

AR Cash Receipts Journal: This release refines the setting of the Invoice Master Record when an Unapplied Deposit is entered. See Customer Note 7.3.1 for details.

Client Site

Client Site List: The new Sort Order ClientSitesByIdByRn lets the user sort by the Client Site Rn column. This allows the list to be sorted by the newest/oldest record added.  

General Ledger

Report Journal Listing GL Entries: The report (RGLJRNL.rpt) dated 2016-12-16 fixes a sporadic issue where the report did not match the GL Journal viewer total debits and credits.

Inventory

Inventory Receipt Summary Tab: This new tab displays the expected Vendor Invoice Cost for this entry. Expected Vendor Tax is also shown if a Tax Group with "job costed" authorities exists on the PO. This tab may be disabled if the cost should not be displayed. See Customer Notes 5.4.1 and 5.4.2.

Job Costing

Report Job Cost Details – Direct: This new report (RJBDTLDRCT.rpt dated 2017-01-10) resembles Report Job Billing Details but skips all overhead jobs in order to prevent typical users from running the report for indirect overhead jobs and seeing confidential data.

Report Sales Summary by Sales Rep: Revised report (RSLSSMMRYSLSRP) dated 2016-12-20 correctly displays the current year's sales amount if more than one Sales Rep is specified on the Commissions tab of the Job by taking the share percentage into consideration.

Service Management

Fleetmatics: Corrects a formatting issue which prevented GPS stops from getting to Fleetmatics.

New Call:

Corrects a recent performance slowdown loading New Call.

Ctrl-A is ignored instead of erring.  The Add WO button must be clicked to add the WO. 

New Call (FMMS):  

The NTE amount from the selected Service Request now defaults to the NTE Client field which will populate the corresponding field in the newly created Work Order.

Also fixes an error accessing the FMMSInfo table when the Vendor Value includes an apostrophe (e.g. "Domino's").

Corrects issues in the FacilitySource integration when selecting the web log.

ServiceChannel / FMMS

See Customer Note 21.2.6 a new registry to disable sending ETA updates to ServiceChannel (also supported for FacilitySource and Corrigo.  

See Customer Note 21.2.7 for a registry to disable updating SAMPro Work Order Status from Service Channel IVR Messages.

System

Login: Corrects a 'failed to set read permissions for user' error logging in with an SQL 2008 database.

Events Managers: The Dashboard, Point Of Sale, Reports, Scheduled Events and TechAnywhere Events Managers better handle recurring events that have been interrupted and need re-scheduled.

TechAnywhere

TechAnywhere PO Receipt Post: Now adjusts the Accounting Period to match the Effective Date. The registry in Customer Note 17.3.1 may be used to instead set the Effective Date to default Period.

Registry to Attach TechAnywhere Collateral Files to the Job Record: See Customer Note 17.1.2.

9.0.572.039  (2016-12-14)

Accounts Receivable

AR Cash Receipts: The 'Receipts Entered' field is correctly updated when lines on the Other Tab are added or deleted.

Payroll

Labor Journal: Corrects a spurious 'Please clear line '#' and re-enter Bonus Amount') message when using Insert/Copy to enter multiple lines with the Bonus field completed.

System

Logon: Corrects sporadic 'trimblanks not understood' error.

9.0.572.038b  (2016-12-08)

Client Orders (COP)

COP Invoice: If multiple AR Control GL Account exist, the AR Control Account will not when Report COP Invoice is run. See Customer Note 6.1.3 for a registry to default the Account.

DBAnalytics

Exporting / Importing dashboard profiles now works correctly with List type Analytics.

Payroll

Compute Payroll: The pay method is forced to 'flat' when hours = 0 and pay amount <> 0 to overcome a sporadic Labor Journal issue. 

Labor Journal Hours Tab: If Start and Stop Times are display via customization, the Billable Hours field now appears to the right of Actual Hours. Billable Hours will also appear on the Detail view.

Registry to Refine Posting of Job Cost Dollars to GL Posting Accrual of Labor: Customer Note 12.1.7 has this new registry option.

Employee Viewer Rate Test Tab: The new Select Rate Method to Test field allows the user to compare results under different costing/accrual methodologies. See Customer Note 12.10.3a.

Quotes

Contact Quotes Tab: Double clicking on a line launches Quote Manager instead of Quote Master.  

Approval Wizard: Registry to Not Update Work Order NTE Amount; Customer Note 14.1.3.

ServiceChannel

The COMPL_DATETIME will be sent to ServiceChannel for status change messages beginning with 'COMPLETED'. COMPL_DATETIME comes the Tech Tab's scheduled date and time.

 9.0.572.037g  (2016-11-30)

Asset Management

Asset Viewer: See Customer Note 11.4 for details on using User Fields 1-5 to set Equipment fields when creating new Equipment records via the Create New Equipment button.

Project Management

 Project Manager Workbench: Corrects an error when deleting a line from the Contacts tab.

Service Management

Create PM WOs: A new registry to override the status of PM Work Orders with ReqResource Parts is detailed in Customer Note 16.1.8a.

9.0.572.037f  (2016-11-18)

Accounts Payable

AP Journal: Corrects error when an entry for a PO with Subcontract lines is edited.

Service Management

Taylor UWOs: Dates and times entered on the Main tab are now correctly copied to the UWO tab.

TechAnywhere / Web Service

Corrects Out of Memory Error when Posting Large Messages. 

Quoting

Quote Manager: Corrects a problem in the Approval Wizard where the Scope of Services text written to the WO Work Requested (if enabled via registry) was converted to all lowercase. 

9.0.572.037e   (2016-11-16)

Drilldown Reporting

Corrects a problem in certain drilldown reports (including DGLHSTRY.rpt - Report GL History by Account) where the drilldown displayed a blank page.

Canadian AFT Processing

See Customer Notes 3.1.1a and 12.1.8 for AP and Payroll support for the TD80 support.

Service Invoicing

The revised Service Invoice Report (SERVICEINVOICEv90b028) dated 2016-11-11 and this release support registries to skip printing and/or emailing service invoices with a negative total. See Customer Note 8.2.2b for registry details. 

9.0.572.037c   (2016-10-31)

Accounts Payable

Start Create EOM Unvouchered AP GL Entries:
New registry defaults Date Closed range for only PO's; See Customer Note 3.1.4.
Enhancements reduces PO-GEN line issues caused by editing WO-Other Descriptions.
GEN lines from Credit POs are ignored unless the line's Receipted-to-JCH flag is true.

Accounts Receivable

Report Credit Card Expiration for Master Contract: This new report lists upcoming Credit Card Expiration dates in the Master Contract Site list. See Customer Note 7.2.5 for details.

Job Costing

Report Job Billing Report (RBLLRPT.rpt): The revised report (AKA Report Job Billing Recap) dated 2016-03-31 supports Security Id processing and corrects an issue which caused it to 'hang' in some environments.

Report Profitability by Client (DCPFTRv73b029.rpt): The revised report dated 10-19-2016 enhances how the billed costs are calculated for the Labor, Material, Other, and Subcontract columns at the Client, Client Site, and Bill Item Summary levels.

Payroll

Compute Payroll: This release corrects a sporadic virtual stack overflow error when OT Premiums are allocated.

WO Labor, Labor Journal PR-to-GL Accruals: In previous releases, accruals were skipped for Standard Cost type Earnings record when an Overhead Jobs was specified. In this release, accruals are correctly posted for Standard Cost Earnings for Jobs that are not Direct.

Purchasing

Purchase Order Subcontractor Tab: If completed, the Tax Group on the PO header is now carried to Subcontractor tab for Tax Cost calculations. See Customer Note 4.3.4 for details.

Quotes

Quote Approval Wizard:
When a Work Order is created/updated from Quote/Quote Manager, the Sub NTE and Client NTE are set from the approved options. See Customer Note 14.6.3.
Since Payroll Period validation is not applicable to WO Labor flagged as Quoted, the Approval Wizard ignores this validation when generating WO Labor lines.

Quote Scope: This release corrects a sporadic 'Record Not Found' error when attempting to change the Equipment Id in a previously saved Quote Scope record.  

Service Management

Create PM WOs: This function also generates a PO for Subcontractor Techs. In this release, the Site Equipment being serviced is completed on the PO's Gen line.

Classic Board: Corrects an overlap issue that made it difficult to click the left arrow to change the Date Scheduled.  

Dispatch Board: Work Order changes are only allowed from the Dispatch Board if the User belongs to a Group with Change permission for View Work Order Work Order Dispatcher.  

9.0.572.035-036  (2016-10-18)

Accounts Payable

AP Journal: The Add Taxes buttons now splits taxes correctly between the GL Accounts referenced in the Tax Group's Authorities.

AP Payment Approval: Start AP Payment Approved and Start AP Payment Approved PM now classify AP Retainage properly. This corrects an issue where the Vendor Invoice: TotalOwed went negative while the Retainage remained positive.

Accounts Receivable

Client Collections Screen:

Clicking this button launches Report Customer Statements. A registry may be specified to launch a different report; Customer Release Note 2.4.1.

Drilldown Service Profitability Component Report: The revised component report CSERPFT1.rpt dated 2016-09-28 corrects an error when drilling down from the Drill Service Profitability report.

Report AR Sales Journal Post Summary (RARSLSJRNLPSTNG.rpt): The revised report dated 2016-09-26 supports Report Totals Debit Amounts exceeding $9,999,999.

Report Credit Card Expiration: This new report lists upcoming Credit Card Expiration dates in the Client Site. See Customer Note 7.2.4 for details.

General System

Document Archive Maintenance: Now puts convertedDBRs in the root of the document\archive\convertedDBRs with subfoldering (YYYY-MM) if it is enabled.

Quick Attach: Supports additional document references in the PO, Inventory  Receipts, Inventor Adjustments, and Cash Receipts Journals. See Customer Note 1.10.2a.

Saved Reports and Bitmaps: This release enhances the logic used to find a bitmap logo to display on a saved SAMPro report if it is not found in the original location (e.g., after a server move). See Customer Release Notes 1.2.2 for details.

Security Override: A new registry allows the user to set restrictions for a security(ies) to be hidden as a global registry but allow user specific registries to allow certain users access to the blocked security(ies). Customer Note 1.1.5.

User Security: Corrects a 'Key is Missing' error when the user switches security where the Group Id is blank on the Additional Profiles tab of the User record.

Inventory

Inventory Receipts Journal: Corrects a sporadic problem where clicking the "Auto Set Qty Rec'd" button did not always complete the Location fields.

Job Costing

Job's Create PO Button: When this button is clicked, the caret will be positioned in the Vendor Id when the PO is opened to save keystrokes.

Job Journal: The Job Journal's Tab Mismatch logic has been refined to consider all versions (base,-01,-02,etc) when determining if the post to GL will be in balance.

Payroll

Labor Journal - New Button:   
If an employee's pay (earnings) rate was changed mid-pay period after time has been entered, clicking this button recomputes each line; see Customer Note 12.17.2.

Purchasing

Purchase Order: Corrects spurious Tab Mismatch errors encountered when a PO is created or edited for a foreign currency Vendor (Currency Id set in Vendor record).  

Quoting

Quote Scope Viewer:
New button recomputes non-fixed prices. Changing the Rate Schedule, Gross Margin or Markup now automatically recomputes prices. Customer Note 14.4.1.

Report Quote: This release and the revised Quote Report correct a number of issues with printing Estimated Sales Tax. See Customer Release Note 14.2.2.

Approval Wizard: When the Approval Wizard is run, the Tax Group and Tax Status in the selected Job are now used to when generating Work Order detail lines.  

Quote / Quote Manager Changed Fields - Tax Group Id: Tax Status:
These fields are not only used for determining estimated tax on the Quote report.

Service Management

Escalation Management: A new Technician Status has been added, Manager Review. It follows Invoice Ready in the Escalation hierarchy; see Customer Note 16.20.1 for details.  

Fleetmatics: Revised handling of the cancellation of a schedule date, and direction request to be compatible with the Fleetmatics work order format.

Work Order:

Required Resources Wizard: Streamlines consolidation messages and lists consolidated items. See Customer Note 16.3.4b.

Create PO Button: When this button is clicked, the caret will be positioned in the Vendor Id when the PO is opened to save keystrokes.

9.0.572.034a  (2016-09-09)

Accounts Receivable

Cash Receipts: Clearing a previously selected Cash Receipt in an existing Bank Deposit makes that Cash Receipt eligible for editing. The update from that Cash Receipt is now more selective so that previously changed Bank Deposit lines are not impacted.

Report Customer Statements: Revised report includes a Print Zero Balance Statements option and registry to customize the text. See Customer Note 7.2.2b.  

Report Customer Statements 2: Revised report includes a Print Zero Balance Statements option and registry to customize the text. See Customer Note 7.2.3.  

General System

Document Viewer: Corrects a display issue with double-keyed records (e.g., Site Equipment) so that the Reference Name always defaults from the specified record.

Document Archive Maintenance: This Starter function now puts convertedDBRs in the root of the document\archive\convertedDBRs with subfoldering (YYYY-MM) if UseSubdirectories is enabled in the sys-document-archives registry.

Registry: The child pane is now sorted alphabetically by the Additional Contents field when it is saved. Disabled rows are grouped together at or near the bottom of the list.

User Viewer: Disabling a User Account now terminates any active sessions the User is running. See Customer Note 1.8.2 for detail.

User Viewer UserLogonSummary Tab: This new tab lists the SAMPro versions this User has logged onto, and shows if they are currently using the software. Customer Note 1.8.3.

Inventory

Compute Corporate Metrics: See Customer Note 5.1.2 for a registry to refine the Inventory so that if an item’s on-hand quantity is <=0 AND the transaction will reduce the quantity on hand further, then do not use the transaction in the turns calculation.

Restock Pick List Report: The Date printed now appears on the report header.

Inventory Item:  The user is allowed to clear the Superceded By field. However, clearing the field does not clear the Inactive flag which may have been set manually or via registry.

Invoicing

Record Billing Adjustments: This function now automatically restarts at the Job Id input screen after clicking Save. Clicking the red X closes the function so it will not reopen.

Service Billing: See Customer Note 8.1.2 for a registry option which enables users to skip the physical printing of zero dollar service invoices.

Job Costing

Job Journal Expenses Tab: Supports Cost Categories of Selection Type Equipment.

Job Journal Main Tab: The default Transaction Type is now set to 'Unknown', forcing the user to decide on the Transaction Type before entering detail lines. Custom Field functionality may be used to set the default Transaction Type to 'Actual' if preferred.

Quotes 

Work Code: When the Approval Wizard writes back to the source Work Order, the Work Code on existing Equipment tab entries is retained. The Work Code from Quote / Quote Manager sets the Work Code on newly generated Equipment lines.

Service Evaluation:  The field now defaults from the Scope's Equipment the Approval Wizard generates a new WO.

Service Management

Dispatch Board (Classic/Day): Corrects a sporadic 'system primitive failed' runtime error when occurred when the Tech Id was changed on the WO Summary (lower section).

New Call (Subcontractor POs): New registry allows the Date or Accounting Period to be adjusted to keep them in sync for POs generated from New Call. Customer Note 4.1.4.  

 ServiceChannel

Modifies the computation of DATETIME so that it can not be earlier than SCHED_DATETIME to conform with recent ServiceChannel validations.

The Work Order's NTE is now set correctly when it is created from a ServiceChannel Service Request (WebLog) processed in New Call.

See Customer Note 21.2.4 for a ServiceChannel Registry Option To Copy the ServiceChannel SCHED_DATETIME to the Work Orders' Date and Time Must Complete fields. 

See Customer Note 21.2.5 for a registry option To Upload Equipment Work Performed Notes on Status Change.

 If a Work Order is integrated with ServiceChannel, this button appears on its Documents to simplify the upload of attachments. See Customer Note 21.3.

TimeAnywhere

TimeAnywhere: The Transaction Id now displays the latest Labor Journal entry associated with this record. The View button also opens the most recent Labor Journal Transaction.

TechAnywhere

Makes the determination of a TechAnywhere PO's posting style more accurate.

The TechAnywhere Post now assigns the Client Site Security to the new piece of equipment added by TechAnywhere.

9.0.572.033

Accounts Payable

AP Journal: Corrects a recent 'Key is Missing' error when processing a Credit PO for which there is NO Inventory Item Vendor table entry for that Vendor/Item.

Report Unvouchered AP Summary (RUNVCHRDAP3): Report revised 2016-06-15 adds ending date header and corrections to page header.

Accounts Receivable

Cash Receipts Journal: Credit refunds may now be processed via Open Edge / XCharge. See Customer Note 7.4.5a for details.

Avalara Sales Tax: This release corrects an issue where existing Tax Groups were not always updated by the Start Avalara Import function. 

Report Customer Statement (RCUSTSTMNTv80b048.rpt): Report revised 2016-06-16 adds an option to Omit Invoice Description.

General System

Document Viewer: Supports use of the File Location field to store a web address. See Customer Release Note 1.10.4a for details.

MS SQL Server Conversion: When MS SQL Server databases are upgraded to this version, the main primary key index will be changed from a nonclustered to a clustered index to enhanced database performance. See Customer Note 1.26.

Record List Panes: Performance enhancement when record lists are accessed and resorted.

Inventory

Inventory Adjustments Journal: When Location adjustments are edited, the GL Account and Entity from the Inventory Item's Group are now updated if the Inventory Item is changed.

Inventory Restock: Corrects 'receiver is not a boolean' error when accessing an Inventory Restock record and immediately clicking the Print Pick Ticket button.

Restock Pick List Report: This report is now ordered by the Bin/Location and then the Inventory Id. The Transaction Id has been added to the report.

Start Import IM Adjustments: This new function imports Inventory Adjustment entries from a Database table or a csv file. See Customer Note 5.10 for details.

Invoicing

Rate Schedule: When the Rate Schedule is saved, the detail lines are re-ordered with the most recent entries at the top. Validation prevents overlapping date ranges and gaps.

Report Service Invoice (SERVICEINVOICEv90b028.rpt): Revised 2016-04-05. Added PO Id to AR Summary section

Job Costing

Job Journal: Budget and Budget Change entries no longer require Accounting Period / Date validation (only 'Actual' type entries do). The Transaction Type CANNOT be changed once data has been entered on child lines.

Quotes

Quote Scope:

New Scopes automatically default the Job's Revenue Adjustment Id. If a Work Order with a single piece of Equipment is specified in the Quote / Quote Manager, the Equipment Id also defaults on new Scopes.   

This enhancement allows a Scope to be copied from any Quote. See Customer Note 14.4.1 for details.

Quote Printing: Corrects a sporadic issue where the Quote Id did not always auto-fill when the Print Quote button was clicked.

ServiceChannel

New Call: When a Work Order is generated from a ServiceChannel Service Request, the WO's Not To Exceed value is now set as per the Service Request's NTE attribute.

Registries: New registries support setting the Work Code from the Service Channel Priority, and the Equipment from the Trade Code (Customer Note 21.3), and excluding the Service Channel's Date/Time Scheduled (Customer Note 21.4).  

Service Management

Create PM Work Orders: Registry to Override NewWorkOrderStatus for Preventative Maintenance Work Orders (see Customer Release Note 16.1.8 for details).

Dispatch Board: The Date Range button has been added to the Classic and Day boards. This allows users to switch the Date Range without having to switch to the Powerboard first.

Fleetmatics: All Work Order Technician lines are now sent to Fleetmatics. Additionally, the schedule date has now been appended to the end of the WorkOrderID sent to Fleetmatics.

Master Contract: This release corrects a "selected record not found" error when selecting a Master Contract from a list displaying an Agreement Type Id which exceeded 10 characters.  

New Call: Refines handling of the middle pane so that the Client Site List (and not the Master Contract pane) is displayed after the user completes a Call Script.

Report PM Agreement Summary (RPMAGRMNT): Report revised 2016-06-14 fixes alignments in the Invoice section of the report.

Taylor UWO: Initializes the newly instantiated table extensions, other patches. Also encodes Trouble Found with leading zeroes on Replacement parts as well as Original parts.

Work Order:

Other Tab:  Lines for Fixed Fee Billing Items (for Use Tax Jobs) flagged as Extra now have the Use tax factored in when the Revenue is calculated. The Tax Cost is also set when a Standard Cost Other Rate is selected.
Import Flat Rate: If the registry DeferTaxStatusDecision is set to true, the Revenue line imports correctly. Previously, only the costs were imported.
Performance: The Gross Margin is no longer calculated if the Work Order or Job Id is empty to improve time loading the empty Work Over viewer.

SubAnywhere - New Module

SubAnywhere is a web-enabled module which allows your Subcontractors to access work assignments, record negotiated charges, enter quotes and more. See Customer Release Note 24 for details.

TechAnywhere

The Tax Type is now set correctly when Flat Rates are posted from TechAnywhere.

9.0.572.032a  (2016-06-20)

Accounts Payable

Vendor: New 1 Invoice Per Check? field added to the Defaults tab. See Customer Note 3.4.5 for details on using this functionality.

Accounts Receivable

AR Cash Receipts:  Tab Mismatch functionality has been added; see Customer Note 7.3.   This release also corrects a spurious Tab Mismatch error when recording a discount.

Credit Card Processing: The OpenEdge (xcharge) Transaction Id is now referenced in the Work Order COD, AR Cash Receipts, and AR History records, when posting COD Service Invoices (where the alias is set) to the AR Cash Receipts Journal.

Report AR Aging: The revised report (DARAGE.rpt) dated 2016-04-05 gets the PO from the Work Order if the PO is blank in the invoice. Provides new option to Show Collection Notes.

General System

Emailing Reports: SAMPro's Email form supports an expanded Message field of 1200 characters to allow the entire contents of a Common phase to be included in the Message.  

Viewers: The mouse's scroll wheel is supported in 'textbox' fields (e.g. the Work Order's Work Requested field). To use:

Select the field on the screen
Position the mouse cursor over the field
Scroll with the mouse wheel

Start Document Archive Maintenance: The new Days Past to Check PDF Archives field controls the functionality which converts documents from XML to PDF. Customer Note 1.10.3.

View Document: Validation now requires that the Document File Location exists (Add mode).  In Change mode, either the Document File Location or the Archive Location must exist.

General Ledger

GL Report Row Layout: To print Underlines below totals see Customer Note 10.2.4.  

GL Income Report: corrects display issue when this report is held open.

Inventory

Inventory Item Stock Status: Changed Field: Unit Cost (was Average Cost)
The Cost displayed is based on the Item's Cost Method. The label has been changed to the generic Unit Cost.

Inventory Item Vendor Tab: See Customer Note 5.1.1 for a Registry to Limit Writing to Inventory Vendor Tab to Purchasing Agents. This release also corrects a sporadic error entering a price on the Vendors tab.

Invoicing

Construction Invoicing (RININV3): Enhanced to show billed retainage as a positive number with the label 'Billed Retainage'. Also supports a registry option to override the 'Billed Retainage' label (for Canadian users). See Customer Note 8.2.1 for details.

Invoices Tabs:  Enhanced to support revenue type "n/a" in the Invoices tab of the following viewers: Job; Project Manager; PM Workbench; Billing Item; and Work Order.

Record Billing Adjustments: Now uses the Security Id from the Job when it creates the Invoice Master record.

Job Costing

Job: The new JobByProjectDescriptionByJobId option on the Job List's Sort Order Pane displays these columns: Project Description - Project Id - Job Id - Job Name - Site Id - Site Name

Job Journal:

See Customer Note 9.11.2 for additional Inter-Company support.

Registry To Require Net Zero Costing on Co.Equip Tab (Customer Note 9.1.3).

Payroll

Compute Payroll: GL transaction activity related to the Compute Overtime function has been refined so that transaction effective dates match work dates.

Payroll Period: The Hours tab is now filtered based on the User's Executive PR and Branch Filter fields. See Customer Note 12.5.3 for details.

Revised Report Payroll GL Accounts: The revised Report Payroll GL Accounts (RPRGLAC.rpt) dated 2016-06-10 includes a new GL Account range.

PR Miscellaneous Deduction Checks: The Vendor is now always correctly written to the Check record when multiple Vendors were included in the Check run.

Start ADP Import Payroll
Start Payroll GL Import

Enhanced to deny the import of blank GL Entity codes if Inter-Company is enabled. Also includes validation for debits = credits by Company if Inter-Company is enabled.  

T4 Forms: This release corrects an issue with the Employer EI Premium being overstated on the T4 Summary.

Quotes

Quote Master and Quote Scope: The user will now be prevented from entering an Inactive Vendor on the Scope's Materials, Inventory or Subcontractor tabs.

Quote Scope: This release adds the Copy From button to the Scope's Main tab. See Customer Note 14.4.1 for additional details.   

Quote Approval Wizard: If a Vendor is Inactive, the user is alerted and the Wizard is blocked from proceeding.

Service Management

Revised Report: Work Order Field Ticket Standard (woticket-db.rpt)
The report dated 2016-02-25 adds Skip PO Summary and multi-page textbox processing,   

Start Scheduled Event Purge: Now purges scheduled events for archived Work Orders.

Start Create PM WOs: This release corrects a very sporadic issue with this function hanging when a single site was selected.

Taylor UWO: Implements the 2014 extensions to the Taylor UWO subsystem

Work Order:

Corrects a sporadic 'system primitive failed' error: see Customer Note 16.3.8a. Also restores Custom Field functionality absent in previous release.

Main Tab: The Email address from the Site's upper Contacts tab is now displayed below the Site's Phone and Fax numbers.

Import Costs: Imported Material and Other lines now retain their Job information even when  DefaultJobByEquipmentId is enabled.

TechAnywhere

PO generated in TechAnywhere now have their Company / Security set from the Work Order that the material was purchased for. 

This release corrects a problem in the TechAnywhere Post cause by the override of the Labor Rate by the Job Cost Category.

9.0.572.030 (2016-04-27)

Accounts Payable

Revised Report - AP Sales Tax Summary by State by Group: A new option, Show Authority Names, has been added. See Customer Note 3.2.4.  

Accounts Receivable

Report Customer Statement: The revised report supports an option to include the PDF'd invoices referenced on the statement. See Customer Note 7.2.2a for required registry.  

Anywhere Suite

Start Dashboard Post: this new function may be run as a Scheduled Event as an alternative to running Start Dashboard Event Manager as a service. Contact your support representative for details.

EDI (Custom)

Inventory Receipts Journal:  The unt_cst column populates from the PO Line's unt_cst when importing a Shipping Notice. <UnitPrice> may now be omitted from the inbound Shipping Notice XML.

General

Clone Report and Viewer Ranges: When the user right-clicks a saved Range, they will be prompted to Delete or Clone the Range for use by another User. See Customer Release Note 1.23 for details.

User Additional Profiles Tab: Multiple lines may be entered per Security Id to support access to multiple User Groups (in addition to the AdWditional Group tab). See Customer Note 1.8.1.  

Invoicing

Revised Report - Sales Tax Summary by State by Group: A new option, Show Authority Names, has been added. See Customer Note 8.2.2.

Discount Taken Added to Invoices Tabs:  The Invoices tab of the following viewers now includes a Discount Taken column: Job; Project Manager; PM Workbench; Billing Item; and Work Order.

Job Scheduling (Custom)

Implemented.

Payroll

Earnings Group: An override of the accumulated 'Earnings' when the Labor entry references specific Pay Type(s) specified in the Employee's Earnings tab allows an alternative way of determining overtime pay if overtime isn't at a 1.5 multiplier. This release extends support for this feature to the Earnings Group record. Click the Magnify button to access the Pay Type field.

Registry to Reclassify Burden Cost for Overhead Labor: See Customer Note 12.1.6 for details.

Report PR Check Detail: The revised report supports GL Account / GL Entities so that the appropriate registries (for bitmaps, etc.) will be referenced. See Customer Note 12.2.7.  

Report PR Export: This release now supports the reclassification of regular and overtime hours via the presence of a PRS code in the Pay Type's PRS Pay Code field for the ADP format Report PR Export. See Customer Note 12.2.10a  for details.  

Quotes

Registry to Relax Credit Hold Processing: Credit Hold processing was tightened up so that if either the Days Credit Hold or Credit Limit set on the Client are exceeded,  new Work Orders would be put on Credit Hold. See Customer Note 14.1.2 for registry to relax this.

Quote Manager Approval Wizard:

Corrects sporadic issue assigning multiple Inventory/Material items to a PO.
Apostrophes in the description field on the Quote Scope Materials or Subcontractor tabs are now handled correctly when a PO is generated.

Report Quote Form: The revised Quote report dated 2016-04-25 supports the rounding of estimated sales tax by option. See Customer Note 14.2.2 for details.  

Service Management

Dispatch Board: Corrects the display of the Notes button on the Power Board.

New Call:

A WO may be generated with Other lines from the Site's WO Other tab. The Tax Type for warranty jobs (where the tax group comes from the Site's COP tab) is now set so that it can be evaluated correctly as part of Service Compute.
If the Master Contract pane is displayed when the search text is changed, the Site pane will be displayed to show the results of the new search.

TechFinder: See Customer Release Note 16.1.7 for a registry to control the WO Status Category and allow WaitCustApprvl Work Orders to appear.

Technician Unavailable Tab: the new Start Time: and End Time: fields are currently ONLY used in conjunction with custom job scheduling.

Work Order:

Return To Inventory Wizard: The Inventory Adjustment Journal entry is NOT saved when this function is canceled. Previously, an entry with header but no detail information was saved.
Gross Margin Tab: This release corrects a display issue where the Gross Margin % value was truncated for values greater than 100%.

 TechAnywhere

Previously, only the hours and minutes from the start and stop times posted to the labor entry. This release enhances the post so that the Hours, Minutes and Seconds are posted.

When posting Quotes from TechAnywhere, the system now updates the Quote Amount and Net Amounts in the database for non-fixed price quotes.

9.0.572.029a (2016-04-05)

Documents

PDF: The revised PDFJoiner.jar file dated 2016-04-01 supports the inclusion of attached PDF forms when the Make PDF button is clicked. Editing is not allowed in the merged PDF document.

Book: corrects sporadic Index is Out Of Bounds error when the Make PDF button is clicked

Service Management

Work Order:

GM Tab:  The Adjust Revenue button now skips the special *ACCRUAL* lines for PM Invoicing even if they have not yet been billed to prevent Tab Mismatches.
COD Tab: The user id is now sent to XCharge for a WO COD Payment single payment where the alias is not known.
Other Info Tab: The Work Order Comments field has been expanded to display the 15 lines of the Site Work Order Comments.

ServiceChannel: The Work Order's Work Performed is now sent to ServiceChannel whenever a Status update is sent.

TechAnywhere

Taxable discounts for Use Tax jobs now have the Tax Type correctly set to Use on the Revenue Adjustment lines generated by the post.

9.0.572.028 (2016-03-22)

Accounts Payable

Release Recurring AP Journal:  Now supports security and branch override logic so that the AP Journals generated by this function have their Security and or Branch set 

Account Receivable

Compute Finance Charges:  Now supports converted A/R invoices.  

General

Journals: Refines the code so that only Documents attached to the selected entry and it's 'tack' versions appear when the Attachment button is clicked. See Customer Note 1.10.6.

Saved Ranges (Viewers / Reports): In this release, the user must right-click a Range to delete it, and then select Yes to confirm the deletion. See Customer Note 1.23 for details.

Sybase 11: This release corrects login issues experienced by Sybase 11 users.

Windows Time Formats: Corrects a sporadic error which occurred if the user's PC has the Long Date Format set to H:mm:ss.

Invoicing

Flat Rate Import: a new registry support a fourth level of pricing; see Customer Note 8.1.1.

Service Invoice:

Enhancement: See Customer Note 8.2.1a for an enhancement to attach TechAnywhere Receipts/Other Documents to Emailed Invoices and to Skip Print Emailed Service Invoices.
Tax Group: If the Tax Group is determined from the Site's COP tab because it is blank on the Job, it will be correctly written to Tax History for inclusion on the Tax reports.

Inventory

Inventory Adjustment Journal: Corrects a key is missing runtime error in the Fill Lines Wizard.

Quoting

Quote Recap Report: Corrects a sporadic problem where Use Tax did not appear on this report.

Import Diagnostics: The Work Order Other Tab's Description is now imported to Quote lines when the Wizard is run. Previously, the Other Rate's Description was used instead.

Quote Approval Wizard: The new Select Quote Document screen allows the user to select from the list of documents attached to the Quote to be attached to the Work Order. See Customer Note 14.6.2.

Payroll

PR Checks: Previously, the Document Description for saved Checks included the GL Account, Entity and Check #. The Document Description now includes the PR Period Id, Check Date & Check #.

PR Miscellaneous Deduction Checks: If the GL Entity is completed,  it will write to the check record when the checks are posted.

Generate Recurring Labor Journals: If a warning (e.g., employee terminated) is encountered, all valid entries will be created; a list of the entries which were and were not created will be displayed.

Report PR Export for ADP: See 12.2.1 for the registry entries needed enable ADP Exports implemented with Report PR Export rather than the earlier ADP Export functionality.

Service Management

Create PM Billing:  Empty responses from OpenEdge/XCharge previously resulted in an 'out of bounds' error. In this release, a decline message is instead generated.
The Cancel button as been removed from the Progress Bar since it is ignored by the function.

Create PM Work Orders: The Cancel button as been removed from the Progress Bar since it is ignored by the function.

New Call - Equipment Pane: The Equipment's Manufacturer has been added between the Warranty End Date and the Model Columns.

Start Renew Master Contracts: Validation now alerts the user if this function is run for a non-supported Master Contract. See Customer Release Note 16.16 for details.

Work Order Daily Edit: WOs with a Status Category of Archived are now excluded from this function.

Work Order Entry: Corrects FieldSize errors when posting. If your system was converted to 9.0 BEFORE this release, a reconversion will be needed; contact Support for assistance.

Work Order Viewer:

Required Resources:  Corrects a problem with Vendor defaulting; see Customer Note 16.3.14.  Date Closed: This field is set to today when the WO's Escalation Status is set to Cancelled. Main Tab: The Site's Store # is now displayed to the right of the Site Id.

TechAnywhere

Equipment: When created via a TimeSheet, the Equipment Status is set to 'NewFromTA'.

Revenue Adjustments: Discount totals with taxable and nontaxable portions are created (if needed) when revenue adjustments are posted.

Scheduled Events: Eliminates false positive TimeOutAlarm events when a large backog is processed.

TimeAnywhere 2.0

See Customer Note 13.2.3 for a User Registry to filter which Employees a Foreman can manage.

9.0.572.027 (2016-01-12)

 Accounts Payable

AP Journal:  

A refresh is required if the Vendor Invoice changed since the AP Journal was last saved.
The GL Entity is also considered when checking for reconciled EFT/Credit Card transactions.
The Show Invoice button is now disabled when the AP Journal is in Add mode.

FMAnywhere

The emailto option in the sys-fmanywhere registry now specifies the address for New Site Requests.

General

PDF's: This release disables the requirement that Java is installed when viewing a PDF from SAMPro.

Job Costing

Job Clone Button: See Customer Note 9.1.2 for details on a change to auto-numbering jobs.

Job: Corrects a collection out of bounds error when changing records with the JC Summary Tab displayed.

Payroll

Report PR 401(k) Reporting For Pinnacle: See Customer Note 12.1.5 for the new registry options required to support this enhancement.

Employee Rate Test Tab: Supports Job Override defaulting when a Work Order is specified.   

Quoting

Quote Scope Viewer: Validation ensures that the Cost Category on the Main tab is always completed for a Fixed Price Scope, and is blank if it is not Fixed Price.

ServiceChannel

In this release, we follow up by sending ServiceChannel a Status Change message setting the ServiceChannel status to DISPATCH_CONFIRMED. 

Service Management

Start Work Order Daily Edit

Registry: See Customer Note 16.1.3a  for a new registry to use the standard WorkOrder Daily Edit settings when running Edit Daily Work Orders from the Dispatch Board.
Range Screen: The Selected Date may be set to before today (a warning is displayed).
Checklist Screen: The Site City has been added to the right of the Site Name column.

Work Order:

Registry to enable alternate Gross Margin Tab based on Job History / Projections, See Customer Release Notes 16.1.6-16.1.6a.
Other lines entered via the Flat Rate import now correctly evaluate "exceptions" in the Sale Tax Group when setting the Sales Tax Type.

TechAnywhere

Very large Status Changes messages are now handled successfully by the TechAnywhere Post.
The terminated employee warning is now ignored when posting labor to prevent posting failures.
An option added to TechAnywhere 3.6.054.013 allows a certain work order status to trigger the ability for a technician to reschedule the work order; see Customer Release Note 17.4 for details.

TimeAnywhere

The terminated employee warning is now ignored when posting labor to prevent posting failures.

9.0.572.026  (2016-01-12)

CRMAnywhere

CRMAnywhere now features the ability to navigate multiple records at once, and to reference information in a previous record when creating a new one.

General

Login Bitmap: Revised for 2016.

9.0.572.024 - 025 (2016-01-06)

General

Note: an updated v.cus file is required to see the new UOM display fields listed below if a database update was not required when upgrading to this build.

Login: corrects runtime error experienced by some users running with multiple databases (e.g., live and test).

User Group: Corrects a sporadic problem where data was not saved properly.

Inventory

Inventory Adjustment Journal: The new UOM: field on the Inventory tab displays the Unit of Measure from the Inventory record.

Invoicing

Service Invoice: When Show Equipment Detail is flagged, all 3000 characters of the Equipment Work Requested and Performed are printed (SERVICEINVOICEv90_b002.rpt revised 2015-12-19).

Start Sales Tax Update (Avalara): See Customer Note 8.4.4 for details on the new 'Always Create Separate Use Tax Groups' and 'Job Cost Use Tax Group Authorities' features.

Payroll

Labor Journal: When the PR Period defaults or is changed, the parent Effective Date is changed if needed to fall within the PR Period. Also closes a loophole for Effective Date validations.

Purchasing

Purchase Order: Corrects a recent issue where the Add button was enabled when the Vendor was changed on an existing PO.  Also improves the 'blocked purchases' validation.

 Quotes

Quotemaster:  Quotes printed/posted from Quote Manager are set to Approved when Approve All Options is clicked.  New UOM: field on the Inventory tab displays the Unit of Measure.  

Quote Manager: Quotes printed/posted from Quote Manager are now set to Approved when the Approval All Options button is clicked.  

Quote Scope: The new UOM: field on the Inventory tab displays the Unit of Measure from the Inventory record.

Service Management

Fleetmatics: The estimated hours is now converted to seconds when a message is sent to Fleetmatics as a result of a drag and drop operation on the Classic Board. In addition, the system no longer sends messages to Fleetmatics if the old and new Techs are the same during a drag and drop.

Work Order:

The new UOM: field on the Inventory and Required Resources tabs displays the Unit of Measure from the Inventory record.  

When the DefaultJobByEquipmentId registry is enabled, hours imported from the Labor Journal  via the regular Import Costs now retain their Job info instead having it reset to the defaults in the Equipment record.

9.0.572.023 (2015-12-11)

Accounts Payable

Report AP Check Reconciliation (RCKRECN-AP): This new report, dated 2015-08-19, excludes PR checks. Only AP and PRMD checks will be listed.

Accounts Receivable

Credit Card Processing (XCharge): The SAMPro User Id is sent to sent to OpenEdge /XCharge during Credit Card Processing for PM Invoice transactions and Cash Receipt Transactions.

Canadian Installations

Vendor Record:  See Customer Note 1.21 for details on relabeling the 1099 Required: field.

CRMAnywhere

Opportunity Templates: See Customer Note 15.2.4 for a registry to specify Opportunities to be used as templates in CRMAnywhere.

Email (general)

Highly recommended registry and additional validations to prevent the system from attempting to send an email without a 'from' address. See Customer Note 1.1.4 for details.

FMAnywhere

If a Quote Scope is changed by FMAnywhere, an email will be sent to the Sales Rep associated with the Quote or the new registry option detailed in Customer Note 23.1.1.

General

External Applications: SAMPro now consults the Windows registry for the correct program to use when opening application files. If sys-openapp-commmands exists it overrides the Windows registry.

Report Viewer: The message  "There are only 0 pages in report."  no longer repeatedly displays if the left scroll bar of a zero page report is accidentally clicked,

Report Registry: See Customer Note 1.2.3 to skip the printer prompt and print to the default printer.

View User Groups: New tabs for Viewers, Processes, Reports and Analytics Tabs simplify the process of finding and enabling access to these records and functions. See Customer Note 1.30.  

General Ledger

Recurring GL Journal: Now validates that each Company is balanced when Intercompany is enabled.

Inventory

Inventory Adjustment Journal: The Inventory Item's Unit of Measure is now displayed on the detail view of the Inventory tab.

Inventory Receipts: Sales Tax received is calculated based on the PO's Sales Tax Group. The PO's Sales Tax Group is now displayed correctly the Main tab (previously the Vendor's Sales Tax Group).

Inventory Item:  Average Unit Cost Calculation refinements.  See Customer Note 5.3.4.

Payroll

Labor Journal: Validation ensures that the Accounting Period is active (if the Effective Date falls within it) and the Accrual Period is active (if the Effective Date falls within it). Also prevents the Payroll Period from being changed if any detail lines have been entered.

Executive PR Processing: support for this functionality has been added to several Payroll Reports.  See Customer Note 12.2.8 for a list of revised reports to install.

Report PR Check Reconciliation - RCKRECN-PR: This new report, dated 2015-08-19, excludes AP and PRMD checks. Only PR checks (both Executive and non-Executive PR) will be listed.

Purchasing

Purchase Order: If a Vendor's Purchases are blocked due to expired insurance, validation prevents it from being created. Previously, it was created as Unreleased. See Customer Note 4.3.5 for details.

Start Generate Purchase Orders: See Customer Note 4.4.1 for details on Blocked Purchases handling.

Quotes

Quote Master / Quote Scope Import Diagnostic Cost Wizard:

Changed Field - Work Order Id: The source Work Order from the Quote defaults to the field. If there is no source WO, enter an Id, or double-click to select from a list of WO's associated with the Quote's Site.  

New Field - Import All Equipment: If this field is checked, any additional Equipment referenced on the Work Order's Equipment tab will be imported to the Scope's Equipment tab.

This release corrects issues associated with importing Other / Material Diagnostic Costs.

Import Flat Rate Wizard: Corrects a display issue in the Quote and Quote Scope viewer where importing a Flat Rate did not update the Scope Of Services field until you clicked in it.

Quote Master / Quote Manager Approval Wizards: The system now checks to see if any Vendors in approved scopes are Blocked Purchase as of today. If so, the user is alerted and the Wizard is halted.  

Service Management

Create PM WOs: The new Date Opened:  and Time Opened: fields allow the user to control how the Work Order's Date Opened and Time Opened fields are set. See Customer Note 16.11.1 for details.  

PM Authorization Web Service: Custom functionality implemented in this release.

TechFinder: TechFinder now considers the User's Security Id when generating the list of Techs.  If the User's Security is set, the Technician's Security must either be blank, or be allowed by the User's Security setting. If the User's Security is blank, all applicable Techs will be displayed, regardless of their Security.

Fleetmatics (Sage Quest):

By default, SAMPro now sends WO updates to Fleetmatics regardless of the schedule date. See Customer Note 18.1.1 for details.

The Estimated Hours sent to Fleetmatics is no longer truncated after 9,999 seconds (2hr 47min).

 Replaces the old SageQuest button on the Dispatch Board.

Start Get Valid Drivers From Sage Quest: This name of this function has been changed to Start Get Valid Drivers From Fleetmatics.  It may be necessary to run the Start Function List Update to see this change.

New Call: When a Work Order is created, a Record Change Log entry will now be generated.

Work Order Print Worksheet Button and Start Service Billing Worksheet: See Customer Note 16.1.5 registries to skip the printer prompt and checklists when running this report.

TechAnywhere

If a Quote Scope is changed by TechAnywhere, an email will be sent to the Sales Rep associated with the Quote or the new registry option detailed in Customer Note 17.1.1.

9.0.572.022 (2015-11-09)

General

Contact Group: In this release, the Contact Group Id retains the value entered by the user when the record is added instead of changing it to a number.

User Viewer - PM Filtering Range: This range now provides full support of the various options available on a typical range screen, include sql= specifications.

Inventory

Physical Count: Now assigns security to Inventory History records when Intercompany is enabled. This ensures that Fill Backorders finds the correct parts when running under Intercompany.

Payroll

Report PR Miscellaneous Check: When Intercompany is enabled, validation ensures that a Company must is selected and the GL Entity completed when the report is run.

Compute Payroll: Implements Intercompany processing for employer taxes (etc.) allocated during the compute to ensure that all companies are in balance after processing payroll.

Purchasing

Include Taxes in Inventory Cost: If this registry is set, prepaid taxes are now calculated based on the 'job cost' Tax Group in the PO Header, NOT the Vendor record. Customer Release Note 4.1.3.

Purchase Order: If the new Payments Blocked display field is checked, the Vendor’s required Insurance is currently expired, and payments will be blocked in AP.

Quotes

Import Diagnostic Cost Wizard: Now sets the Tax Type based on the Tax Group / Tax Status in the Quote / Quote Manager (prevents failure if the Tax Type Id is set to ' n/a' in imported records).

Service Management

Work Order: User's PM filtering is applied to this viewer. The Project Manager is connected to the WO via the WO's parent Job. New list option: Work Orders By Project Manager Id.

9.0.572.021 (2015-11-05)

Accounts Payable

AP Check Detail Report: Corrections to header formatting. This system report does not need to imported.

Create EOM Unvouchered AP GL Entries: Work Order and Job Id's are now included in the View Details report.

Assets / Rentals

Create Rental Billing: Previously, this function skipped all Sites flagged as Inactive. This validation has been refined so that Sites with a future Date Closed are not skipped.

EDI (Custom)

Inventory Receipts Journal: Correct 'trimBlanks' in incoming Ship Notices; issues Warning/Errors in over-receiving scenarios.
Purchase Order: Refines setting of EDI flag.

General

Contact Viewer: See Customer Release Note 15.3.2a for enhancements to the Contact List and Filter views, and data conversion from earlier releases.

Disabled Fields Registry: In this release, if the first tab order field is disabled, the caret will be positioned in the next field, and the disabled field will correctly display as disabled.

Field Label Remapping: Supports changes to labels not attached to a field (e.g, Site Contact 1: in the Site viewer). See Customer Note 1.18. for details).

Document Management: Enhanced support of DocumentReferences for the regular attach and scanning functions. See Customer Note 1.10.5 for details.

Record > Clone: A new option, Clone, has been added to the Record menu of most viewers. This option allows auto-sequenced records to be cloned, and provides an alternative to cloning by chancing the Id of an existing record.  See Customer Note 1.19 for details.

Report Graphics: The system now looks in the \bitmaps folder in the main SAMPro directory if can't find the graphic. See Customer Note 1.2.2.

Job Costing

Job Journal: Ensures that the posting to GLH for each referenced Accounting Period is in balance. See Customer Note 9.11.1 for detail.

Payroll

Employee: The new Record > Clone menu option allows auto-sequenced Employee records to be cloned. See Customer Note 1.19 for special processing in the Employee record.  

Generate Recurring Labor: Corrects Cost Category defaulting so that the value from the Employee Recurring Wage Tab always takes precedent.

Labor Journal:  

Enhanced validation on PR Period and Extra? fields. See Customer Note 12.17 for details.
Corrects Job Override calculations when the Earnings Group defaults from the Work Order's Job.

PR Miscellaneous Deduction Checks: Prints correctly when the 20 reference limit on the stub is exceeded. Also extends MICR check printing to handle multiple bank accounts/entities.

Purchase Order

DefaultPOTaxGroupFromJob Registry Enhancement: Entering the Vendor after the Job/Work Order does not override the Job's Tax Group. See Customer Release Note 4.1.2.

ServiceChannel

Corrects a 'key is missing' error when changing status for mutual client PM's. Traps error caused by ill-formed ServiceChannel response messages.

Service Management

 Client Site: If the Latitude and Longitude fields are completed  click this button to launch GoogleMaps with the coordinates completed.

Create PM Billing:

The Branch Prefix prepends to the PM Invoice WO Id (if set via registry).

Previously, this function skipped all Sites flagged as Inactive. This validation is now refined so that Sites with a future Date Closed are not skipped.

Create PM Work Orders: Previously, this function skipped all Sites flagged as Inactive. This validation is now refined so that Sites with a future Date Closed are not skipped.

New Call: The Client Mailing Address now displays below the Client Id: / Client Name: fields. A new v.cus file may be required to see this field.

Work Order:

Revenue Adj Tab: Reduces spurious Tab Mismatch errors on PM's.

Labor Tab: Validation now prevents changing the Payroll Period on an existing Labor line from one that has Accrue to GL enabled to one with Accrual to GL disabled and vice versa.

TechAnywhere

Supports TechAnywhere labor posting when the PostLaborByWorkOrder registry is set to true.

9.0.572.019  (2015-09-08)

EDI (Custom)

Inventory Receipts Journal: Initialized PO Extension correctly.

Invoicing

Import Avalara Sales Tax: See Customer Release Note 8.4.2a for a registry to set the Labor Tax Selection by State.

IVR Posting (Custom)

Corrects Work Order Escalation.

Payroll

JC Burden Hourly Rate: When LaborJobCostRateMethod is set to 'new' the system Cost Code burdening is disabled. See Customer Note 12.1.2.

Service Channel

Corrects an "IndexOf" error when selecting a weblog in New Call.
Includes PIN number when a PM is inserted in the FMMSInfo table.
Service Channel is updated when a PM WO is created.
Now defaults PROBLEM to 'Unknown' if it is empty.

Service Management

Dispatch Board: The length of the bar in the Time Chart is now rounded to the nearest quarter hour so that users can better judge start and stop times via the bars.

Work Order:

Call Script Tab: The User Id of the person who entered the Call Script is retained when a different user saves the Work Order.

Create PO Button: The Purchase Order registry DefaultPOTaxGroupFromJob is also supported when a PO is generated via this button.

Labor Tab: The Magnify view now displays the Start and Stop Times  (completed if time was entered via TechAnywhere). Changes made to these fields impacts the Hours field.

9.0.572.018 (2015-08-25)

General

Viewers:  Company records are used when setting the company name on the title pane of SAMPro windows. See Customer Note 1.3.4 for details.

User Viewer: Clicking the Export Profile button exports the User's Profile to the DashboardProfiles subdirectory instead of the main SAMPro directory.  

Web User Viewer: Clicking the Export Profile button exports the Profile to the DashboardProfiles subdirectory instead of the main SAMPro directory.  

Payroll

Earnings Viewer: See Customer Note 12.16 for details on the new Burden (was N/A) and Standard Cost Types.  

Employee Viewer:

Main Tab: When a user 'clones' an employee record by changing the Employee Id and tabbing out of the field, the US SocSecNo: or Canadian SIN: will be cleared.

Rate Test Tab New Field - Unit Cost:  Earnings are only included in this display field if they are flagged as Job Cost.

Job Cost Burden Hourly Rate: Corrects recomputation of this value when the sys-ffv-global-settings LaborJobCostRateMethod option is set to new. Also updates the CIP calculations to use the JC Rate instead of the Pay Rate.

PR Journal (PR Adjustments): Corrects a Key is Missing running Intercompany.  

Report PR Check Detail: See Customer Note 12.1.3a for an important registry note on using the PostReports option to print this report.

Purchasing

Purchase Order: If a PO is started by clicking New, the Ship To address defaults using the sqlshipToStockLocation registry option.

Start Generate Recurring PO: Now supports setting key sqlshipToStockLocation to fine-tune the ship-to address. See Customer Release Note 4.1.1.

Service Management

Dispatch Board: Corrects a system primitive failed error when clicking on the 0 x coordinate of the Classic Board grid.

9.0.572.017 (2015-08-17)

Accounts Payable

Report AP Check: The AP registry format sys-report-rapchck-GLACCOUNTID-GLENTITY also picks up the bitmap options. Previously, only the MICR options were supported.

Create EOM Unvouchered AP GL Entries:

Improves performance generating the View Summary and Detail reports.

This function now posts the Job reference to GL History for Credit type PO's and the Work Order reference to GL History for all POs.

 Accounts Receivable

AR Cash Receipts:  Validation now supports a recent enhancement where edited Bank Deposit transactions are saved with a tack number appended to their Transaction Id.

Compute Finance Charges: If this function is run for multiple clients, the AR Control Account selected by the customer is correctly debited in GL History.

Credit Card Processing (Xcharge):  See Customer Release Notes 7.4.2 and 7.4.4.  

Bank Journal Reports

Report Bank Reconciliation (RBNKRECN.RPT): Revised 2015-08-06 to support edited Bank Deposit Transaction Id's which may now include a tack number.

Crystal Bank Deposit Reports: Reports revised to support edited Bank Deposit Transaction Id's which may now include a tack number:

Crystal Report Bank DepositSQL8.2.545.073Up.rpt
Crystal Report Bank DepositSQLk5WCompanySecurity8.2.545.073Up.rpt

Bank Transfers Journal

Assorted Enhancements. See Customer Release Note 10.5 for details.

COP Portrait Invoices

A new registry entry is required to enable the portrait orientation of the COP Invoice.  See Release Note 6.1.2 for details.

CRMAnywhere:

Report Quote Recap: Sectionkey support has been added to the Report Quote Recap to support its use in CRMAnywhere. See Customer Release Note 15.2.3 for details.

EDI (Custom)

Verifies files have a creation time before sorting them when scanning InBound folder.

General

Desktop Setup: The Users & Functions viewer also includes entries on the Additional Groups tab in the User record when generating the Desktop selection list.

Document Viewer: See Customer Release Note 10.1.4 for recent fixes/enhancements.

Merge Client Sites: Latest release supports Site Contact table entries in merge.

Record Change Log: A new index has been added to resolve record locking issues associated with the new Pending Changes functionality.

Viewers: Corrects  'Runtime error: index: 0 is outside of collection bounds'  when the user mouse clicked slightly to the left of the first character in a list and started typing.

Payroll

Report PR Checks:

When Intercompany is enabled, the Security Id is now set in the Check record when Checks are posted or voided.

The PR Check registry format sys-report-rprchck-GLACCOUNTID-GLENTITY now supports the bitmap option. Previously, only MICR options were supported.

Report PR Misc Deductions Checks:

When Intercompany is enabled, the Security Id is now set in the Check record when Checks are posted or voided.

The PR Miscellaneous Deduction Check registry format sys-report-rprmdchck-GLACCOUNTID-GLENTITY now supports the bitmap option.

Report PR Check Detail (RPRCHCKDTL): Employer-based taxes are no longer included in the revised report dated 2015-06-23 since it is used as a ‘check stub’.

Positive Pay

This release supports Positive Pay for Dollar Bank (see Release Note 1.17.1 for the required registry) and Anchor Bank (see Release Note 1.17.2 for the required registry).

Purchasing

Purchase Order Inventory Tab: The Vendor's last cost (from the Item's Vendor tab) now defaults if the Item is entered by using the Vendor Part Id.

Vendor 'No Inventory' Enhancement: See Customer Release Note 3.4.3 for an enhancement to prevent users selecting specified Vendors for Inventory Parts PO's.

Quotes

Quote Approval Wizard:

The Quotemaster and Quote Manager Wizards now check to see if the Date Closed is set on a Purchase Order it is set to update. See Customer Note 14.6.

If a Job (but no WO) is specified, the Wizard now defaults the Job id from the Quote header.

New WO's on Credit Hold if the Client's Days Credit Hold or Credit Limit are exceeded. Previously, only the Client/Site Credit Hold Status was considered.

Corrects a problem in PO generation when one existing PO was updated and one was created for the same Vendor.

Quote (older viewer): corrects setting of Status Category when saved.

Quote Manager: Corrects an error the Gross Margin Net Amount exceeded four digits.

Service Channel

If  NewWOToServiceChannelEnabled is set to True and SAMPro's Start Create PM WorkOrders is also used, duplicate PM's can be created. Contact Support for a registry entry to resolve this condition.

The type comes from the callNode's attributes instead of a subNode.

Adds SCHED_DATETIME to outbound XML for new WO's (new Service Channel requirement).

Allows WOUPDATES to post to Work Orders originating in SAMPro.

Service Management

Create PM WOs: If WO Inventory lines are generated from the Service Parts list, their Description field now defaults from the Inventory Item's Name.

Dispatch: This release corrects a "Key is Missing" when clicking the Save button in the Work Order Summary viewer.

Message Table Purge: Assorted enhancements; see Customer Note 16.12 for details.

New Call:  An "Access is Not Allowed" message will be displayed when the Collections button is clicked if the user is not allowed access to the Client record.

New Call 2: This release improves the tab order of the search fields.

New Call Log: This version supports an audit option to write user actions to a log; see Customer Release Note 16.1.4.

TechFinder: Now supported when localization date settings for Canada are in effect.  

Work Order Import Costs Wizard:

Corrects an error when selecting the Equipment Id on the Inventory screen.

Refines the import of requisitioned items when the User's and WO's Branches are not the same.

Shop Order Record Transfer Ticket

Now writes the Unit Cost from the stocking to the staging location.

TechAnywhere

Corrects a problem in previous releases where, if the first Equipment line on a WO had a blank Equipment Id, TA PO's failed to post.

9.0.572.016 (2015-07-10)

Accounts Payable   

Canadian T5018 Forms: Changes to support the two vendor per page format (previously was three vendors per page).

Client Order

Corrects a problem where the user was not allowed to manually override the Unit Price.

 Inventory Adjustments Journal

This function now posts the WO reference (when available) to Inventory History. Previously, only the Job Id was posted for Job-Location and Location-Job entries.

Payroll

Canadian T4 Forms: Minor alignment fixes.

Workflow Folders

When the user hovers the mouse over a Workflow Folder label or button, the function's Name and Id are now displayed in the Status Pane at the bottom of the screen.

XmlToPdf.jar File (2015-07-08)

The revised file corrects a problem in the previous version (2015-06-22) which failed to save PFD's properly if the save path and/or File name contained SPACES.

9.0.572.015 (2015-07-01)

AP Journal

This release validates that the Effective Date falls within the specified Accounting Period when deleting an entry. Also correct row locks experience by some users.

When a PO number is entered, if multiple Inventory Receipt Journal entries are present a list appears so All or a specific entry may be selected (see Customer Note 3.3.4).

Bank Deposit Journal

Validation ensures that edits are never allowed in a closed Accounting Period; see Customer Note 10.4 for details.

GL Reports Set

Parameters:  The token commentary  specifies the Commentary text on the user defined GL report(s) run from this set: commentary={Commentary Text as desired}

Inventory Item

Use Unit Prices? has been changed to Use Price Levels?:  New label better describes the use of the field (Customer Note 8.7).

Job Cloning

When records are cloned via the Job's Clone Job button, a record change log entry noting the source record reference info is written to each new record.  

Merge Client Sites

This administrative function merges equipment and other records associated with one Site to another Site. See Customer Note 2.6 for details.

Project Manager Workbench Subcontract POs Tab

Changed Fields:  Earned %:  Amount Earned:  Validation now prevents the amount earned from being reduced below the threshold of what has been vouchered in A/P.

Purchase Order Sub Tab

Changed Fields:  Earned %:  Amount Earned: Validation now prevents the amount earned from being reduced below the threshold of what has been vouchered in A/P.

 Quote Master Viewer, Quote Scope Viewer

Corrects a spurious Tab Mismatch error which could occur with certain extended price summations on the Inventory, Material and Other Tabs.

Service Management

Dispatch Board: Changes made from the Classic Day Board (switched orientation) now support the pending changes functionality (see Customer Note 1.3.2).

WO Revenue Adjustment Tab: Prevents spurious Tab Mismatch errors when additional Revenue Adjustment lines were added to accrual-type PM Work Orders.

WO Required Resources Tab: The Cost Category now defaults from the Inventory Item's Group record; it must be of Type Material. See Release Note 16.3.4a for details on 'picked' process error checking.

TechAnywhere

Corrects a Key Is Missing error when a new style TechAnywhere PO is posted.  

9.0.572.014  (2015-06-11)

Bank Reconciliation Journal

Edits involving blanking the "clear" indicator now reset the Date Reconciled to "1900-01-01" for Bank Deposits and Transfers.

Service Management

New Call: Disables obsolete 'New Job for Every Work Order' functionality experienced by some longtime users when reopening an old Client Site.

Reports

Corrects an error in recent versions which occurred when the 'Hold Open' button was not selected when running a Drilldown report.

9.0.572.013 (2015-06-08)

EDI

Changes to custom Inventory Receipt functionality.

Payroll

Report Payroll Verification (RPRVERI.rpt dated May 1, 2015)
Report Payroll Verification 2 (RPRVERI2.rpt dated May 1, 2015)
Report Payroll Worksheet (RPRWRKSv90b001 dated May 6, 2015)

Revised reports include a Branch Id filter and support the Branch Hard Block logic. The report filters do not display the User's Branch filters but the Hard Block is handled by the reports.  

Quotes

New records created in Quote Master are now accessible in the Quote Scope viewer.

Service Management

Dispatch: When the Classic/Day Board's Time Chart is displayed, only those Work Orders for the selected Tech will appear.

New Call:

The message saying there are Notes attached only displays if active (non-obsoleted) note(s) are attached to the Site.

When a TechAnywhere Weblog is entered, the Work Code / Service Category only default if the Weblog itself specifies a Work Code.

Refrigerant Tracking: When a new is recorded in SAMPro, the Manufacturer, Make, Model and Serial number now default from the Equipment record.

ServiceChannel: Corrects an amperand (&) character issue when parsing requests.

TechAnywhere

The Log Form Id specified by Techs when creating NEW Equipment records now posts to SAMPro.

Viewers

The Notes button displays the blank Note icon if only Obsoleted or no notes are attached.

OpenEdge / XCharge Credit Card Processing

When a payment is processed via Create PM Billings, the User, Client, Client Site, Work Order and Job Id are now included in the message sent to XCharge.

When a payment is processed via the Work Order's COD Tab, the Client, Client Site, Work Order and Job Id are now included in the message sent to XCharge.