<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://in.compucrete.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiAdmin</id>
	<title>KeystoneIntranet - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://in.compucrete.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiAdmin"/>
	<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php/Special:Contributions/WikiAdmin"/>
	<updated>2026-05-15T14:38:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Main_Page&amp;diff=855</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Main_Page&amp;diff=855"/>
		<updated>2023-07-17T18:38:29Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: /* GPS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;right&amp;quot;&lt;br /&gt;
|[[Tags &amp;amp; Formatting Guide ]]&lt;br /&gt;
|- &lt;br /&gt;
|[[GH Wiki Standards Guide ]] &lt;br /&gt;
|-&lt;br /&gt;
|[[More Wiki Info]]&lt;br /&gt;
|}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;font size=&amp;quot;6&amp;quot;&amp;gt;GivenHansco Intranet&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;4&amp;quot; color=&amp;quot;#000080&amp;quot;&amp;gt;Online Support &amp;amp; Documentation System&amp;lt;/font&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| {{table}}&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''Announcements'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''What's New'''&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
:[[New Keystone Releases]] 4.3.11 - 6/13/2023&lt;br /&gt;
:[[Support Alerts]]&lt;br /&gt;
:[https://givenhansco.sharepoint.com/:x:/s/supportteam/ET5kQCpCQuBCu46qHGtYwgABmovrGxOC8jOlUtpVITGmng?e=VMY2iN Keystone 4.x Internal Build Testing Spreadsheet]&lt;br /&gt;
:[https://onedrive.live.com/redir.aspx?cid=c163067a39df96c2&amp;amp;resid=C163067A39DF96C2!4481&amp;amp;parId=C163067A39DF96C2!4480&amp;amp;authkey=!AqcheqeKn8ris7g&amp;amp;Bpub=SDX.SkyDrive&amp;amp;Bsrc=Share&amp;amp;ref=button Keystone 3.x Internal Build Testing Spreadsheet]&lt;br /&gt;
:[https://1drv.ms/x/s!AklOmdIh80nxrCJJA_D6IVxpE4RL Development Tasks Spreadsheet]&lt;br /&gt;
:[https://ghwebdev.azurewebsites.net Keystone Online Dev Site]&lt;br /&gt;
:[https://givenhansco.sharepoint.com/Lists/Share%20Calendars/Color%20Calendar.aspx Company SharePoint Calendar]&lt;br /&gt;
|&lt;br /&gt;
:[[Backup/Restore Issues#Before_Restoring_a_company_database,_check_this!_(version_4.0.1+) |Before Restoring a company backup, check this!]] 1/11/22&lt;br /&gt;
:[[Install/Update Issues#Keystone_database_upgrade_fails_.28version_4.0.1.2B.29 |Improved handling for database upgrade failures in Keystone 4.0.1+]] 10/27/21&lt;br /&gt;
:[[Microsoft Edge Chromium required for Keystone 4]] 08/22/21&lt;br /&gt;
:[[Configure InterBase ODBC Access]] 03/05/21&lt;br /&gt;
:[[AR: Fix Leading/Trailing Spaces in Jobs|Fix Leading/Trailing Spaces in Jobs]] (09/23/20)&lt;br /&gt;
:[[AR: Update Sales Costs from Product Standard Cost|Update Sales Costs from Product Standard Cost]] 11/4/19&lt;br /&gt;
:[[Configuring Keystone for E-Ticketing]] 10/04/18&lt;br /&gt;
:[[Fixing a Double AR void Invoice]] 10/03/18&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Keystone =&lt;br /&gt;
{|border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|[[Accounts Receivable And Billing Info |AR]]&lt;br /&gt;
|[[Inventory Module|Inv]]&lt;br /&gt;
|[[Accounts Payable System|A/P]]&lt;br /&gt;
|[[General Ledger System|G/L]]&lt;br /&gt;
|[[Payroll System|PR]]&lt;br /&gt;
|[[Cash Management System|Cash]]&lt;br /&gt;
|[[Job Cost System|JC]]&lt;br /&gt;
|[[Keystone Ticket Printing System|Ticketing]]&lt;br /&gt;
|[[Keystone Dispatch System |Dispatch]]&lt;br /&gt;
|[[Keystone Document Imaging |Doc Img]]&lt;br /&gt;
|[[Keystone On Demand | On Demand (mobile)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Keystone Quick Links ==&lt;br /&gt;
&lt;br /&gt;
===Common System Topics===&lt;br /&gt;
:[[Keystone REST Server (KServer)]]&lt;br /&gt;
:[[Keystone Company Database Backup Utility]]&lt;br /&gt;
:[[QueryGen]]&lt;br /&gt;
:[[Keystone Security]]&lt;br /&gt;
:[[Keystone Constants]] Decodes tables lookup values e.g. payroll run types, cash man. trans types. (Updated 01/06/23)&lt;br /&gt;
:[[Keystone Installation and Configuration]]&lt;br /&gt;
&lt;br /&gt;
===Common Software Topics===&lt;br /&gt;
:[[Export Tickets to Accounting]] (Including EXF)&lt;br /&gt;
:[http://keystonehelp.compucrete.com Customer Help Website]&lt;br /&gt;
:[[A/R and Billing: Training Outline]]&lt;br /&gt;
:[[DeReconcile Inventory]] Undo 1 or more Inv. Recon sessions. (7/24/13)&lt;br /&gt;
:[[Payroll: Federal &amp;amp; State Electronic Filing Guides]]&lt;br /&gt;
&lt;br /&gt;
===External/Third Party Devices===&lt;br /&gt;
:[[Device Server and Device Aggregator]]&lt;br /&gt;
:[[Device Aggregator/Device Server Issues]]&lt;br /&gt;
:[[Batch Control Devices]]&lt;br /&gt;
:[[GPS/Status Devices]]&lt;br /&gt;
:[[Notification Devices]]&lt;br /&gt;
:[[HaulHub (Tickets to State DOT)]]&lt;br /&gt;
&lt;br /&gt;
===Interbase Database===&lt;br /&gt;
:[[InterBase]]&lt;br /&gt;
:[[Interbase System Table Queries ( RDB$ )]]&lt;br /&gt;
:[[Database Tips]] (Restore Empty DB)&lt;br /&gt;
:[[InterBase Issues]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[InterBase#Installation_on_64-bit_Windows_10_Creators_Update_.28Build_1703.29_and_higher | Interbase Install Fix for Windows 10 Creators]]  (07/17/17) &lt;br /&gt;
:[[Database Corruption]] Using '''GHIBDataPump'''&lt;br /&gt;
:[[Configure InterBase ODBC Access]]&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
:[[Windows 7 and Keystone]]&lt;br /&gt;
:[[Keystone 2.5 Changes]] '''with new directory chart'''&lt;br /&gt;
&lt;br /&gt;
===Keystone Software Info===&lt;br /&gt;
====Accounting====&lt;br /&gt;
:[[General Ledger: Financial Statements with Bigger Print]]&lt;br /&gt;
:[[DeReconcile Inventory]] Undo 1 or more Inv. Recon sessions. (7/24/13)&lt;br /&gt;
:[[Sales Tax Handling in Keystone 2.3]] (Includes Sales Tax Collection) 10/15/09 10/13/17&lt;br /&gt;
:[[Updating the Base Product Code for 1.8 System]] - Methods for setting up Base Product Codes&lt;br /&gt;
:[[Time Calculation Queries]] - Demonstration query for time calculation 5/19/08&lt;br /&gt;
:[[Zone History Analysis]] - Analyze Zone Times for Dispatch - 5/15/08&lt;br /&gt;
&lt;br /&gt;
====Forms====&lt;br /&gt;
:[[Keystone Forms]]&lt;br /&gt;
:[[Sample Forms]]&lt;br /&gt;
:[[Keystone Form Colors]] The Color De-Coder Ring. (Yes we support the colors blanched almond and lemon chiffon!)&lt;br /&gt;
:[[Payroll: Form Versions]] Now supports '''*SUM''' to total all defs in a check group.  (07/07/17)&lt;br /&gt;
&lt;br /&gt;
:[[Invoice Form Fields]] (also includes sample adding ticket image to form) &lt;br /&gt;
:[[Ticket Form Fields]]&lt;br /&gt;
:[[Quote Form Fields]] 10/10/19&lt;br /&gt;
:[[Plant Cash Receipt Form Fields]] 03/07/18&lt;br /&gt;
:[[PO Form Fields]] 03/07/2018&lt;br /&gt;
&lt;br /&gt;
:[[AP Check Form Fields]] 12/14/2022&lt;br /&gt;
&lt;br /&gt;
====Config====&lt;br /&gt;
:[[Company Database Connection Pooling]]&lt;br /&gt;
:[[Keystone Security]]  (Wiki Page)&lt;br /&gt;
:[[Keystone Constants]] Decodes tables lookup values e.g. payroll run types, cash man. trans types.&lt;br /&gt;
:[[Keystone Experimental Features]]&lt;br /&gt;
:[[Keystone Telemetry]]&lt;br /&gt;
&lt;br /&gt;
===Documents===&lt;br /&gt;
:[[Media:Web Update.pdf]]&lt;br /&gt;
:[[Keystone Accounting Installer Guidelines]]&lt;br /&gt;
&lt;br /&gt;
===Development Etc===&lt;br /&gt;
:[[Online Users Conference 2011]] - 3/2/2011&lt;br /&gt;
:[[Keystone 3.x Development]]&lt;br /&gt;
:[[Development Topics]]&lt;br /&gt;
:[[Development How To]]&lt;br /&gt;
&lt;br /&gt;
==Batch Controls Importing==&lt;br /&gt;
:[[Batch Control Ticket Interfaces]]&lt;br /&gt;
:[[Batch Ticket Import]]&lt;br /&gt;
&lt;br /&gt;
==GPS==&lt;br /&gt;
*[[GPS System Setup]] Modern GPS System Notes&lt;br /&gt;
*[[GPS System Diagnostics]] Diagnostic information for GPS systems&lt;br /&gt;
&lt;br /&gt;
== Keystone Tools ==&lt;br /&gt;
:[[Query Export]]&lt;br /&gt;
::[[Most Excellent Queries]]&lt;br /&gt;
:[[Keystone Email Setup]]&lt;br /&gt;
:[[Datascope System | DataScope]] &lt;br /&gt;
::[[DataScope Examples]] * [[DataScope G/L Finanacial Statements]]&lt;br /&gt;
&lt;br /&gt;
== Tools for Supporting Keystone ==&lt;br /&gt;
:[[QueryGen]]&lt;br /&gt;
:[[Importing Accounting Data]]&lt;br /&gt;
:[[Communications Tools]]&lt;br /&gt;
:[[Keystone Support Backup]] Company Database Backup utility for support&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
:[[Application Server Diagnostics]]&lt;br /&gt;
:[[Install/Update Issues]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[Backup/Restore Issues]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[Keystone System Cache]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[Error Messages and Meanings]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[Restoring the Empty Database Template]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[Disk Space Issues]]&amp;lt;BR&amp;gt;&lt;br /&gt;
:[[PC/Network Support]]&amp;lt;br&amp;gt;&lt;br /&gt;
:[[Remote Desktop Tips]]&lt;br /&gt;
:[[Performance Issues]]&lt;br /&gt;
&lt;br /&gt;
= General Info =&lt;br /&gt;
:[[Windows Utilities]]&lt;br /&gt;
:[http://technet.microsoft.com/en-us/windows/jj728757 Windows Shortcut Keys (TechNet)]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Zone_History_Analysis&amp;diff=690</id>
		<title>Zone History Analysis</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Zone_History_Analysis&amp;diff=690"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#To use zone history analysis, set the start and end dates to indicate the range you wish to analyze. The default range is the 30 days prior to, and including today.&lt;br /&gt;
#Enter a high and low cutoff value that are reasonable expectations for the zone. Any zone travel times outside of the cutoff range supplied will not be included in the zone history analysis. &lt;br /&gt;
#Select an interval. To see detailed &amp;quot;by the minute&amp;quot; analysis, set this value as low as '''1'''. For a more general analysis, select larger ranges like '''5''' or more.&lt;br /&gt;
#Click on '''Analyze'''. New grid columns will be added to display the zone history analysis:&lt;br /&gt;
&lt;br /&gt;
[[Image:Zonehistory.png]]&lt;br /&gt;
&lt;br /&gt;
The zone history analysis offers a proposed value as well as a summary of zone travel times in each interval. To set the new zone time to any of these values, edit the '''Time''' column.&lt;br /&gt;
&lt;br /&gt;
'''Proposed''' is an average of the zone travel times that are within the cutoff range. &lt;br /&gt;
&lt;br /&gt;
''Note: A few values at the extreme of the cutoff range can wildly skew the proposed value.''&lt;br /&gt;
&lt;br /&gt;
Columns are also added for the quantity of travel times that fall below or above the cutoff range. If the numbers in these columns are large, you can adjust the cutoff range to include them in the zone history analysis.&lt;br /&gt;
&lt;br /&gt;
The intervals on the zone history analysis use density shading to visually highlight the quantities in each column. The background color varies from a very light, faded red when there are few values in that interval to a very intense red when there are many values in that interval. This provides a visual indication where the majority of travel times fall.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Windows_Vista_and_CompuCrete_Notes&amp;diff=688</id>
		<title>Windows Vista and CompuCrete Notes</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Windows_Vista_and_CompuCrete_Notes&amp;diff=688"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''These Notes are OUt of Date!!!'''&lt;br /&gt;
&lt;br /&gt;
Interbase 7.1&lt;br /&gt;
-------------&lt;br /&gt;
&lt;br /&gt;
1. When running SETUP.EXE, click the &amp;quot;Run&amp;quot; button when you see the warning saying that &amp;quot;The publisher could not be verified.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
2. When the &amp;quot;User Account Control&amp;quot; dialog appears, select the &amp;quot;Allow&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
3. During the install, always enter a number greater than 1 for Number of Users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CompuCrete&lt;br /&gt;
----------&lt;br /&gt;
&lt;br /&gt;
1. When running SETUP.EXE, click the &amp;quot;Run&amp;quot; button when you see the warning saying that &amp;quot;The publisher could not be verified.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
2. When the &amp;quot;User Account Control&amp;quot; dialog appears, select the &amp;quot;Allow&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
3. After clicking OK on the CompuCrete License dialog, you will see a &amp;quot;Windows Security Alert&amp;quot; dialog saying that the Windows firewall has blocked the CompuCrete Application Server. Click the &amp;quot;Unblock&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
4. You will see a &amp;quot;User Account Control&amp;quot; dialog. Click Continue.&lt;br /&gt;
&lt;br /&gt;
5. Be certain to put an IP address in the Server Name box on the Server Connection Parameters dialog. You cannot leave this blank!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CompuCrete Web Update&lt;br /&gt;
---------------------&lt;br /&gt;
&lt;br /&gt;
1. The very first time you do a Web Update on Vista, you will get an error dialog after restarting CompuCrete to install the update. (&amp;quot;Could not execute the following OS command (Error Code=740)...&amp;quot;) Windows will then popup a message that says &amp;quot;Windows has applied a Program Compatibility fix&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
2. Start CompuCrete, you will see the &amp;quot;User Account Control&amp;quot; dialog. Click &amp;quot;Allow&amp;quot;. The update will install, but when CompuCrete restarts you will see the Product Activation dialog. Click &amp;quot;Cancel&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3. Start CompuCrete, and you will get the Login dialog.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
General&lt;br /&gt;
-------&lt;br /&gt;
&lt;br /&gt;
1. In Vista, every user is a &amp;quot;standard&amp;quot; user by default, even administrators.&lt;br /&gt;
&lt;br /&gt;
2. Files under &amp;quot;C:\Program Files&amp;quot; cannot be changed by standard users.&lt;br /&gt;
&lt;br /&gt;
3. To edit a text file located under &amp;quot;C:\Program Files&amp;quot;, click Start-&amp;gt;All Programs-&amp;gt;Accessories, then RIGHT-click Notepad and select &amp;quot;Run as administrator.&amp;quot;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Windows_Utilities&amp;diff=686</id>
		<title>Windows Utilities</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Windows_Utilities&amp;diff=686"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Windirstat:''' Utility to visually display disk space useage. [http://windirstat.info/ windirstat.info]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Paint.net:''' Replaces windows paint.  Actually useful. (Requires .NET framework 2.0 or higher.) [http://www.getpaint.net/index.html getpaint.net]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''CPU-Z:''' Gathers information on some of the main devices of your system. [http://www.cpuid.com/cpuz.php cpuid.com]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''CPUCount:''' Detects number of processors, number of cores, hyperthreading capabilities. [http://softwarecommunity.intel.com/articles/eng/2728.htm intel.com]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''InterBase PLANalyzer:''' Helps diagnose query complexity and performance issues. [http://cc.embarcadero.com/Item.aspx?id=24115 embarcadero.com]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Virtual Null Modem:''' Emulates two serial ports connected via a null modem. [[Media:VirtualNullModem.zip|VirtualNullModem.zip]]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Serial Port Monitor:''' Intercepts and analyzes serial data transfer between any serial device and Windows application. [[Media:SerialPortMonitor.zip|SerialPortMonitor.zip]]&amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Windows_7_and_Keystone&amp;diff=684</id>
		<title>Windows 7 and Keystone</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Windows_7_and_Keystone&amp;diff=684"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Windows 7 (and Vista/2008) System File Protection===&lt;br /&gt;
&lt;br /&gt;
Windows 7 (and Vista/2008) implemented a new feature called “System File Protection.” This is supposed to prevent an application from writing to any file in the C:\Program Files directory or below. It also comes with a workaround which is meant to accommodate older Windows applications that need to write to this folder. If an older Windows application (which Windows sees Keystone as) writes to a file in '''C:\Program Files''', Windows 7 creates a “virtual” folder under '''C:\Users\&amp;lt;username&amp;gt;\AppData\Local\VirtualStore\Program Files''' and stores the changed version of the file there. If the older application opens the file, Windows knows to redirect the file request to the “virtual” folder and the application works normally. So far, so good.&lt;br /&gt;
&lt;br /&gt;
Now suppose that we use an older Windows program (such as Craig's IB2CDS utility which allows direct editing of the new CDS files in the BIN\RESOURCES folder) to change a file under '''C:\Program Files\GivenHansco\CC'''. When we save the file, it gets saved into the “virtual” folder, leaving the original version of the file (under '''C:\Program Files\GivenHansco\CC''') intact. Keystone will see the virtual folder version of the file. So far, so good. (Note that Windows NOTEPAD understands system file protection and will simply not allow the file to be saved back under C:\Program Files unless it was run as administrator.)&lt;br /&gt;
&lt;br /&gt;
Now a week later we install a new Keystone update. This update happens to include a new version of the file that we manually changed, and we expect this new version to overwrite our changes. Windows 7 has the ability to detect that the Keystone update is a “setup” type program, and will turn off the “virtual” folder logic. Thus the update installs the new version of the file into the original folder under '''C:\Program Files\GivenHansco\CC'''. The version with our manual changes still exists in the “virtual” folder. The next time we run Keystone, it will see the “virtual” folder version of the file, not the updated one that the update installed. And therein lies the problem.&lt;br /&gt;
&lt;br /&gt;
Most of the time, the files that we have to manually edit are under the '''C:\Program Files\GivenHansco\CC\Cust''' directory. Since the installer never puts any files into this folder, the problem above does not occur. Recently we added a new folder under the BIN directory called RESOURCES to store some files needed by the Payroll Year End Modifications program. There are cases where these files may need to be manually edited on a customer’s system to accommodate their specific payroll configuration. Since the installer writes to this folder and we may have to manually edit these files, we will encounter the Windows 7 file protection issue.&lt;br /&gt;
&lt;br /&gt;
There is another potential issue that also affects certain files in the '''C:\Program Files\GivenHansco\CC\Cust''' directory. If a user has multiple Windows logins setup on their PC (perhaps the PC is shared by two people who work different schedules) only one user (the one logged in at the time the Keystone databases were created) will have access to these configuration files. When the other user logs in, Keystone will not see the files and may display the Product Activation dialog.&lt;br /&gt;
&lt;br /&gt;
A temporary workaround procedure is as follows:&lt;br /&gt;
*On Windows Vista/7, when running Keystone for the first time (product activation), right click the Keystone icon and choose Run As Administrator. This will ensure that Keystone places all its configuration files into the real '''C:\Program Files''' directory.&lt;br /&gt;
*When editing any file in the '''C:\Program Files\GivenHansco\CC''' folder or below, always right-click the application that will be used to edit the file and select Run As Administrator. This will ensure that the changes are saved back to the real C:\Program Files directory.&lt;br /&gt;
&lt;br /&gt;
A permanent solution to this issue involves changing the folder where Keystone configuration and data files are stored. This is being investigated for inclusion in a future release.&lt;br /&gt;
&lt;br /&gt;
([http://en.wikipedia.org/wiki/User_Account_Control#Features Here is a link to a Wikipedia entry] that describes this behavior in the second paragraph of the Features section.)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Here is an old page with Windows Vista notes that are obsolete:&lt;br /&gt;
:[[Windows Vista and CompuCrete Notes]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Windows_7_Administrator&amp;diff=682</id>
		<title>Windows 7 Administrator</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Windows_7_Administrator&amp;diff=682"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Use at your own risk….&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
These steps configure Windows 7 with more permission for the Administrator user.  Apply to Windows 7 when the PC is acting as a Server or Stand Alone system (i.e. interbase is installed).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Enable the Administrator account===&lt;br /&gt;
#Right click My Computer and select Manage&lt;br /&gt;
#Expand Local Users and Groups and click Users&lt;br /&gt;
#Right-click Administrator and select Properties&lt;br /&gt;
#Un-check Account is Disabled&lt;br /&gt;
#(or type “net user administrator /active:yes” at the command prompt)&lt;br /&gt;
===Set PC user notify setting (for each user that logs in)===&lt;br /&gt;
#Open User Accounts from the Control Panel&lt;br /&gt;
#Click User Account Control Settings&lt;br /&gt;
#Set to “Never Notify”&lt;br /&gt;
===Edit Registry - configure the EnableLinkedConnections registry value, follow these steps:===&lt;br /&gt;
#Click Start, type regedit in the Start Search box, and then press ENTER. &lt;br /&gt;
#Locate and then right-click the following registry subkey: &lt;br /&gt;
#HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System&lt;br /&gt;
#Point to New, and then click DWORD (32-bit) Value.&lt;br /&gt;
#Type EnableLinkedConnections, and then press ENTER.&lt;br /&gt;
#Right-click EnableLinkedConnections, and then click Modify.&lt;br /&gt;
#In the Value data box, type 1, and then click OK.&lt;br /&gt;
#Exit Registry Editor, and then restart the computer.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Wiki_Tags_%26_Formatting_Guide&amp;diff=680</id>
		<title>Wiki Tags &amp; Formatting Guide</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Wiki_Tags_%26_Formatting_Guide&amp;diff=680"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Tags &amp;amp; Formatting Guide]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=W-2_%26_1099_Electronic_Filing_Guides&amp;diff=678</id>
		<title>W-2 &amp; 1099 Electronic Filing Guides</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=W-2_%26_1099_Electronic_Filing_Guides&amp;diff=678"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Payroll: Federal &amp;amp; State Electronic Filing Guides]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Verify_Product_Cost_Rollup&amp;diff=676</id>
		<title>Verify Product Cost Rollup</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Verify_Product_Cost_Rollup&amp;diff=676"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Inventory]]&lt;br /&gt;
[[Category: SQL]]&lt;br /&gt;
&lt;br /&gt;
All Products&lt;br /&gt;
&amp;lt;pre&amp;gt;select p1.product_class,p1.product_code,p1.description_1,p1.standard_cost, &lt;br /&gt;
  sum(qty_assembly*p2.standard_cost) &amp;quot;Calc Std Cost&amp;quot;, &lt;br /&gt;
  (sum(qty_assembly*p2.standard_cost))-p1.standard_cost &amp;quot;Diff&amp;quot; &lt;br /&gt;
from artprod p1 &lt;br /&gt;
inner join artprstr x on p1.product_code=x.assy_product_code inner join artprod p2 &lt;br /&gt;
     on x.comp_product_code=p2.product_code &lt;br /&gt;
group by p1.product_class, p1.product_code,p1.description_1,p1.standard_cost order by 1 ,2&lt;br /&gt;
order by 1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Products with cost mis-match&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
select p1.product_class,p1.product_code,p1.description_1,p1.standard_cost,&lt;br /&gt;
  sum(qty_assembly*p2.standard_cost) &amp;quot;Calc Std Cost&amp;quot;,&lt;br /&gt;
  (sum(qty_assembly*p2.standard_cost))-p1.standard_cost &amp;quot;Diff&amp;quot;&lt;br /&gt;
from artprod p1&lt;br /&gt;
inner join artprstr x on p1.product_code=x.assy_product_code&lt;br /&gt;
inner join artprod p2 on x.comp_product_code=p2.product_code&lt;br /&gt;
where abs(p1.standard_cost-&lt;br /&gt;
     (select sum(x2.qty_assembly*p3.standard_cost) from artprstr x2&lt;br /&gt;
     inner join artprod p3 on x2.comp_product_code=p3.product_code&lt;br /&gt;
     where p1.product_code=x2.assy_product_code ))&amp;gt; .0001&lt;br /&gt;
group by p1.product_class, p1.product_code,p1.description_1,p1.standard_cost&lt;br /&gt;
order by 1 ,2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Updating_to_Keystone_2.5&amp;diff=674</id>
		<title>Updating to Keystone 2.5</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Updating_to_Keystone_2.5&amp;diff=674"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Installing Keystone 2.5 Update on Windows 7==&lt;br /&gt;
&lt;br /&gt;
When upgrading to Keystone 2.5 from a prior version on a Windows 7 PC, this procedure must be followed to install the update correctly.&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;NOTE: Do NOT login to Windows as Administrator when updating Keystone. Login as the Windows user who normally runs Keystone.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Load the 2.5 update normally, using either Web Update or Load Update from the Keystone System Maintenance menu. When asked to release the update, click YES.&lt;br /&gt;
# You will see the following dialog asking if you wish to restart Keystone:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update1.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click YES.&lt;br /&gt;
# The Keystone splash screen will appear, followed by a message that says &amp;quot;Preparing to install update...&amp;quot;. You will then see an error message similar to the following:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update2.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click OK.&lt;br /&gt;
# Click the windows START button, select All Programs, select Accessories, then RIGHT-CLICK on the Command Prompt option and select &amp;quot;Run As Administrator.&amp;quot; &lt;br /&gt;
# You will see the following message:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update3.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click YES.&lt;br /&gt;
# At the command prompt, type: &amp;lt;PRE&amp;gt;CD %TEMP%\CCGH&amp;lt;/PRE&amp;gt;&lt;br /&gt;
# At the command prompt, type: &amp;lt;PRE&amp;gt;DIR CCW*.tmp /od&amp;lt;/PRE&amp;gt;&lt;br /&gt;
# You will see a directory listing similar to the following:&amp;lt;BR&amp;gt;&amp;lt;tt&amp;gt;Volume in drive C has no label.&amp;lt;BR&amp;gt;Volume Serial Number is BCBF-B23C&amp;lt;BR&amp;gt; Directory of C:\Users\vmuser\AppData\Local\Temp\CCGH&amp;lt;BR&amp;gt; 11/11/2011  04:59 PM    &amp;lt;DIR&amp;gt;          .&amp;lt;BR&amp;gt; 11/11/2011  04:59 PM    &amp;lt;DIR&amp;gt;          ..&amp;lt;BR&amp;gt; 10/31/2011  07:02 PM        14,823,954 CCWE87A.tmp&amp;lt;BR&amp;gt; 11/11/2011  04:59 PM        14,915,472 CCWA33E.tmp&amp;lt;BR&amp;gt;               2 File(s)     29,739,426 bytes&amp;lt;BR&amp;gt;               2 Dir(s)  59,800,133,632 bytes free&amp;lt;/tt&amp;gt;&lt;br /&gt;
# At the command prompt, type the name of the LAST file indicated in the directory listing, for example: &amp;lt;PRE&amp;gt;CCWA33E.tmp&amp;lt;/PRE&amp;gt;&amp;lt;B&amp;gt;NOTE: If you do not see any filenames listed, please stop and call support!&amp;lt;/B&amp;gt;&lt;br /&gt;
# You will see the following dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update4.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click NEXT.&lt;br /&gt;
# You will see the License Agreement dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update5.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Select &amp;quot;I accept the agreement&amp;quot;, click NEXT.&lt;br /&gt;
# You will see the Select Destination Location dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update6.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Verify that the highlighted box contains the path to your current version of Keystone (normally C:\Program Files\GivenHansco\CC), click NEXT.&lt;br /&gt;
# You will see a warning message indicating that the folder already exists:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update7.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click YES.&lt;br /&gt;
# You will see the Select Additional Tasks dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update8.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click NEXT.&lt;br /&gt;
# You will see the Ready to Install dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update9.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click INSTALL.&lt;br /&gt;
# &amp;lt;b&amp;gt;(Network Server/Standalone Only) &amp;lt;/b&amp;gt;If the Keystone database files are currently stored in the C:\Program Files\GivenHansco\CC\Cust\Data folder, you will see the following warning:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update10.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click YES.&lt;br /&gt;
# &amp;lt;b&amp;gt;(Network Server/Standalone Only) &amp;lt;/b&amp;gt;If the Keystone database files are currently stored in the C:\Program Files\GivenHansco\CC\Cust\Data folder, you will see a second warning:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update11.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Click YES.&lt;br /&gt;
# You will see the Service Applications dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update12.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&amp;lt;b&amp;gt;(Network Server/Standalone Only) &amp;lt;/b&amp;gt;Ensure that Socket Server is checked.&amp;lt;BR&amp;gt;If other boxes are checked, leave them checked. Click NEXT.&lt;br /&gt;
# After the update has been installed, you will see the completion dialog:&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;[[image:Ks25update13.jpg]]&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Ensure that &amp;quot;Launch Keystone&amp;quot; is checked, click FINISH.&lt;br /&gt;
# Keystone will start, update the System and Document Imaging databases &amp;lt;b&amp;gt;(Network Server/Standalone Only)&amp;lt;/b&amp;gt; and the login screen will appear.&lt;br /&gt;
-----&lt;br /&gt;
See [[Keystone 2.5 Changes]] for important information regarding Keystone 2.5 Folder locations.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Updating_the_Base_Product_Code_for_1.8_System&amp;diff=672</id>
		<title>Updating the Base Product Code for 1.8 System</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Updating_the_Base_Product_Code_for_1.8_System&amp;diff=672"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Updating Base Products]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Updating_Base_Products&amp;diff=670</id>
		<title>Updating Base Products</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Updating_Base_Products&amp;diff=670"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Base Product ==&lt;br /&gt;
The field Base_Product in ARTPROD, appears as Product Base in Product Maintenance.  Currently it's main use is to allow the dispatch system to transparently switch product codes between plants.  If Base_Product is not properly setup, then when a user ships a plant 2 product on a plant 1 order, the product will stay with the plant 1 product code.&lt;br /&gt;
&lt;br /&gt;
When properley setup, a base_product will include the product code, without the plant number and the plant separator character.  For example:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
! Product Code&lt;br /&gt;
! Base Product&lt;br /&gt;
! Plant&lt;br /&gt;
! Comment&lt;br /&gt;
|- &lt;br /&gt;
| 3000-01&lt;br /&gt;
| 3000&lt;br /&gt;
| 01&lt;br /&gt;
| common 2 digit plant&lt;br /&gt;
|-&lt;br /&gt;
| 3000-02&lt;br /&gt;
| 3000&lt;br /&gt;
| 02&lt;br /&gt;
|-&lt;br /&gt;
| 30.1&lt;br /&gt;
| 30&lt;br /&gt;
| 1&lt;br /&gt;
| Single digit&lt;br /&gt;
|-&lt;br /&gt;
| 3034-021&lt;br /&gt;
| 3034&lt;br /&gt;
| 021&lt;br /&gt;
| Triple digit&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Updating the Base Product Code==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This collection of queries is based on using the NOTES_1 field to temporarily store the new base product value.  Verify that the NOTES_1 field is available before proceeding.&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Identify Mismatched BASE_PRODUCT codes:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select product_code,base_product,notes_1,plant_no,&lt;br /&gt;
 substr(product_code,strlen(product_code)-1,strlen(product_code)),&lt;br /&gt;
 description_1 from artprod&lt;br /&gt;
where base_product&amp;lt;&amp;gt;substr(product_code,1,strlen(product_code)-3)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Identify Products where the plant number doesn't match the product code.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
select product_code,base_product,notes_1,plant_no,&lt;br /&gt;
 substr(product_code,strlen(product_code)-1,strlen(product_code)),&lt;br /&gt;
 active_flag from artprod&lt;br /&gt;
where plant_no&amp;lt;&amp;gt;substr(product_code,strlen(product_code)-1,strlen(product_code))&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Identify null Plant numbers:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select substr(product_code,strlen(product_code)-1,strlen(product_code)),product_code,plant_No&lt;br /&gt;
 from artprod where plant_no is null&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update Plant Numbers if needed:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
update artprod&lt;br /&gt;
set plant_no=substr(product_code,strlen(product_code)-1,strlen(product_code))&lt;br /&gt;
 where plant_no is null and substr(product_code,strlen(product_code)-1,strlen(product_code)) between '00' and '99'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Update Products:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
update artprod&lt;br /&gt;
set notes_1=substr(product_code,1,strlen(product_code)-3)&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code)-1,strlen(product_code))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Review the updated products&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
select product_code,base_product,notes_1,plant_no,substr(product_code,strlen(product_code)-1,strlen(product_code)) from artprod&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code)-1,strlen(product_code))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check for duplicates:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
select notes_1,plant_no,count(*),mIN(product_code) First_Prod,max(product_code) Last_Prod from artprod&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code)-1,strlen(product_code)) AND NOTES_1 IS NOT NULL&lt;br /&gt;
group by notes_1,plant_no&lt;br /&gt;
having count(*)&amp;gt;1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the products&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
update artprod&lt;br /&gt;
set base_product=notes_1 where notes_1 is not null and notes_1&amp;lt;&amp;gt;''&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code)-1,strlen(product_code))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
NOTE: You may need to clear old base products before updating.  Add the where clause if there are valid base products you want to keep:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
update artprod set base_product=null&lt;br /&gt;
where base_product&amp;lt;&amp;gt;substr(product_code,1,strlen(product_code)-3)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Alternate Example - 1 Char Plant using NOTES_2 ==&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select product_code,base_product,notes_1,plant_no,&lt;br /&gt;
 substr(product_code,strlen(product_code),strlen(product_code)),&lt;br /&gt;
 description_1 from artprod&lt;br /&gt;
where base_product&amp;lt;&amp;gt;substr(product_code,1,strlen(product_code)-2)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
select product_code,base_product,notes_1,plant_no,&lt;br /&gt;
 substr(product_code,strlen(product_code),strlen(product_code)),&lt;br /&gt;
 active_flag from artprod&lt;br /&gt;
where plant_no&amp;lt;&amp;gt;substr(product_code,strlen(product_code),strlen(product_code))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
update artprod&lt;br /&gt;
set notes_2=substr(product_code,1,strlen(product_code)-2)&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code),strlen(product_code))&lt;br /&gt;
&lt;br /&gt;
select product_code,base_product,notes_2,plant_no,substr(product_code,strlen(product_code)-1,strlen(product_code)) from artprod&lt;br /&gt;
where notes_2 is not null&lt;br /&gt;
&lt;br /&gt;
select notes_2,plant_no,count(*) from artprod&lt;br /&gt;
where plant_no=substr(product_code,strlen(product_code),strlen(product_code))&lt;br /&gt;
group by notes_2,plant_no&lt;br /&gt;
having count(*)&amp;gt;1&lt;br /&gt;
&lt;br /&gt;
update artprod set base_product=null&lt;br /&gt;
where base_product&amp;lt;&amp;gt;substr(product_code,1,strlen(product_code)-2)&lt;br /&gt;
&lt;br /&gt;
update artprod&lt;br /&gt;
set base_product=notes_2 where notes_2 is not null and notes_2&amp;lt;&amp;gt;'' and&lt;br /&gt;
 plant_no=substr(product_code,strlen(product_code),strlen(product_code))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==DataScope Product Review==&lt;br /&gt;
&lt;br /&gt;
Create a DataScope Report with this query:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select product_class,sales_gl,p.plant_no,base_product,p.active_flag,1 ct,product_code,description_1 prod_name,a.description acct_name,a.segment_2,c.description &amp;quot;Class Name&amp;quot;,LINK_PRICE_PRODUCT,&lt;br /&gt;
substr(product_code,strlen(product_code)-1,strlen(product_code)) &amp;quot;Prod Code Plant&amp;quot;,&lt;br /&gt;
substr(product_code,1,strlen(product_code)-3) &amp;quot;Prod Code Core&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 from artprod p&lt;br /&gt;
inner join gltacct a on a.gl_account=p.sales_gl&lt;br /&gt;
inner join artprcls c on c.class_no=p.product_class&lt;br /&gt;
where active_flag='Y'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recommended Field Layout&lt;br /&gt;
&lt;br /&gt;
Data:&lt;br /&gt;
*CT&lt;br /&gt;
&lt;br /&gt;
Rows:&lt;br /&gt;
*Product Class&lt;br /&gt;
*Class Name&lt;br /&gt;
*Base Product&lt;br /&gt;
*Product Code Core&lt;br /&gt;
&lt;br /&gt;
Columns:&lt;br /&gt;
*Plant&lt;br /&gt;
*Product Code Plant&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Undo_Year_End_Processing&amp;diff=668</id>
		<title>Undo Year End Processing</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Undo_Year_End_Processing&amp;diff=668"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Starting with Keyston 3.6.29, G/L Year End records the Year End Session number when closing.  This allows for better diagnostics as you can track which transactions were rolled into the resulting Retained Earnings 'R' type entry.&lt;br /&gt;
&lt;br /&gt;
As a result of this change, there are now 3 changes required in order to Undo a g/l year end...&lt;br /&gt;
*Set the transaction type from 'C' back to 'S' for all closed transactions&lt;br /&gt;
*Set the YREND_SESSION_NO to null for all closed transactions&lt;br /&gt;
*DELETE the 'R' record&lt;br /&gt;
&lt;br /&gt;
First identify the 'R' transaction for the retained earnings account.  Then substitute it for &amp;lt;R SESSION&amp;gt; in this script...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
update glttrx set trans_type = 'S' where trans_type ='C' AND YREND_SESSION_NO=&amp;lt;R SESSION&amp;gt;;&lt;br /&gt;
 &lt;br /&gt;
update glttrx set YREND_SESSION_NO=NULL where YREND_SESSION_NO=&amp;lt;R SESSION&amp;gt;;&lt;br /&gt;
 &lt;br /&gt;
DELETE FROM GLTTRX where SESSION_NO=&amp;lt;R SESSION&amp;gt; AND TRANS_TYPE='R';&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Travel_Tips&amp;diff=666</id>
		<title>Travel Tips</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Travel_Tips&amp;diff=666"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Mileage=&lt;br /&gt;
IRS 2008 Standard Rate for Mileage:  $0.505 /mile  [http://www.irs.gov/newsroom/article/0,,id=176030,00.html | IRS site]&amp;lt;BR&amp;gt;&lt;br /&gt;
IRS 2007 Standard Rate for Mileage:  $0.485 /mile&lt;br /&gt;
&lt;br /&gt;
=Air Travel Advice=&lt;br /&gt;
The TSA has a new blog [http://www.tsa.gov/blog/] that answers questions about airport security.&lt;br /&gt;
&lt;br /&gt;
=Booking/Fare Websites=&lt;br /&gt;
*http://orbitz.com&lt;br /&gt;
*http://travelocity.com&lt;br /&gt;
*http://itasoftware.com (Lookup airfare only ... Great for looking up multiple cities (e.g.: bos;alb;bdl) )&lt;br /&gt;
*http://kayak.com&lt;br /&gt;
&lt;br /&gt;
=Airlines=&lt;br /&gt;
*http://aa.com&lt;br /&gt;
*http://delta.com&lt;br /&gt;
*http://usair.com&lt;br /&gt;
&lt;br /&gt;
=AirFare Advice=&lt;br /&gt;
*http://farecast.com/ -predicts if tickets will rise or drop, recommends to buy now or later – 74.5% accuracy      &lt;br /&gt;
*http://www.farecompare.com/&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Training_Outline:_Ticket_Printing&amp;diff=664</id>
		<title>Training Outline: Ticket Printing</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Training_Outline:_Ticket_Printing&amp;diff=664"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Training Outline - Ticketing System =&lt;br /&gt;
&lt;br /&gt;
== CONFIGURING Keystone OPTIONS ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Create Ticket Layout ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Pricing Options ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Allow Price/Disc Changes&lt;br /&gt;
#Show Prices On Screen For Non Cods&lt;br /&gt;
#Print Prices On Tickets&lt;br /&gt;
##Cods Only&lt;br /&gt;
##Always&lt;br /&gt;
##Never&lt;br /&gt;
##Cods - Ask All Others&lt;br /&gt;
#Pricing Control (Remote Only)&lt;br /&gt;
##Ticketing System&lt;br /&gt;
##Office&lt;br /&gt;
=== File Maintenance Options On Ticketing Menu ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Product&lt;br /&gt;
#Customer&lt;br /&gt;
#Price&lt;br /&gt;
#Job Price&lt;br /&gt;
=== Ticket Printing Program Options ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Show A/R Balance &amp;amp; Total Open Slips&lt;br /&gt;
#Ask For Truck, Time, Miles&lt;br /&gt;
#Ask Next Delivery Time&lt;br /&gt;
#Ask For Payment&lt;br /&gt;
=== Remote Transfer Options ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Print Report&lt;br /&gt;
#Drive To Be Used&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Time_Queries_for_Tickets_and_Sales_History&amp;diff=662</id>
		<title>Time Queries for Tickets and Sales History</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Time_Queries_for_Tickets_and_Sales_History&amp;diff=662"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Converting a Date and Time (HHMM) into a time stamp:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select ticket_date,ticket_time,&lt;br /&gt;
  ticket_time/100 &amp;quot;Hour&amp;quot;,&lt;br /&gt;
  ticket_time-100*(ticket_time/100) &amp;quot;Minute&amp;quot;,&lt;br /&gt;
  60*(ticket_time/100)+ticket_time-100*(ticket_time/100) &amp;quot;Minutes&amp;quot;,&lt;br /&gt;
  cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440  &amp;quot;Frac day&amp;quot;,&lt;br /&gt;
  cast(ticket_Date as timestamp )+cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric&lt;br /&gt;
    (11,6) ) /1440  &amp;quot;Ticket Timestamp&amp;quot;,&lt;br /&gt;
  floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440) ) &amp;quot;Elapsed Minutes &amp;quot;&lt;br /&gt;
from artslshd&lt;br /&gt;
where ticket_date = '3/31/08'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Time_Fix_Queries&amp;diff=660</id>
		<title>Time Fix Queries</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Time_Fix_Queries&amp;diff=660"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Leave Plant vs. Ticket Date/Time ===&lt;br /&gt;
Review Leave Plant&amp;lt;Ticket Date/Time&lt;br /&gt;
&amp;lt;PRE&amp;gt;select plant_no,ticket_date,ticket_time,leave_plant_dt, &lt;br /&gt;
cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)+.006945  fix_LeavePlant_dt&lt;br /&gt;
from ARTSLSHD&lt;br /&gt;
WHERE leave_plant_dt&amp;lt;cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Fix Leave Plant:&lt;br /&gt;
&amp;lt;PRE&amp;gt;update artslshd&lt;br /&gt;
set leave_plant_dt=cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)+.006945&lt;br /&gt;
WHERE leave_plant_dt&amp;lt;cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)&lt;br /&gt;
and ticket_date='2/1/7'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Arrive Job vs. Leave Plant ===&lt;br /&gt;
&lt;br /&gt;
Arrive Job Analysis:&lt;br /&gt;
&amp;lt;PRE&amp;gt;select plant_no,leave_plant_dt, arrive_job_dt,&lt;br /&gt;
leave_plant_dt+.020834  fix_Arrive_job_dt&lt;br /&gt;
from ARTSLSHD&lt;br /&gt;
WHERE arrive_job_dt&amp;lt;leave_plant_dt&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Fix Arrive Job:&lt;br /&gt;
&amp;lt;PRE&amp;gt;update ARTSLSHD&lt;br /&gt;
set  arrive_job_dt=leave_plant_dt+.020834&lt;br /&gt;
WHERE arrive_job_dt&amp;lt;leave_plant_dt&lt;br /&gt;
and ticket_date='2/1/7'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Return Plant vs. Leave Plant (a.m. p.m. fix) ===&lt;br /&gt;
&lt;br /&gt;
Return Time Analysis&lt;br /&gt;
&amp;lt;PRE&amp;gt;select leave_plant_dt,arrive_job_dt,begin_pour_dt,end_pour_dt,leave_job_dt,return_plant_dt,return_plant_dt+.5 est_fix__ret_plt&lt;br /&gt;
,return_plant_dt-leave_plant_dt Days_off,cast((return_plant_dt-leave_plant_dt)*1440 as integer) Mins_off&lt;br /&gt;
from ARTSLSHD&lt;br /&gt;
WHERE RETURN_PLANT_DT&amp;lt;LEAVE_PLANT_dt&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Return Time Fix&lt;br /&gt;
&amp;lt;PRE&amp;gt;update ARTSLSHD&lt;br /&gt;
set return_plant_dt=return_plant_dt+.5 where&lt;br /&gt;
 RETURN_PLANT_DT-LEAVE_PLANT_dt  between -1.0 and -.5&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Elapsed Time ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select plant_no,ticket_date,ticket_time,return_plant_dt,  &lt;br /&gt;
cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp) Ticket_dt,&lt;br /&gt;
cast (.005+1440*(return_plant_dt-cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)) as integer) Fix_elapsed,elapsed_time&lt;br /&gt;
from ARTSLSHD&lt;br /&gt;
WHERE ticket_date&amp;gt;'2/1'&lt;br /&gt;
and return_plant_dt&amp;gt;cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)&lt;br /&gt;
rows 1 to 1000&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
update artslshd set&lt;br /&gt;
elapsed_time=cast (.005+1440*(return_plant_dt-cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
   as char(2))   as timestamp)) as integer) &lt;br /&gt;
from ARTSLSHD&lt;br /&gt;
WHERE ticket_date&amp;gt;'2/1'&lt;br /&gt;
and return_plant_dt&amp;gt;cast (ticket_date||' '||cast(ticket_time/100 as char(2))||':'||cast(ticket_time-100*(ticket_time/100)&lt;br /&gt;
  as char(2))   as timestamp)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
NOTE: This query overrides existing elapsed times.  Consider a more stringent where clause.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Time_Calculation_Queries&amp;diff=658</id>
		<title>Time Calculation Queries</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Time_Calculation_Queries&amp;diff=658"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This query demonstrates different calculations combining HHMM times and Date fields with TimeStamps:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select ticket_date,ticket_time,&lt;br /&gt;
ticket_time/100 &amp;quot;Hour&amp;quot;,&lt;br /&gt;
ticket_time-100*(ticket_time/100) &amp;quot;Minute&amp;quot;,&lt;br /&gt;
60*(ticket_time/100)+ticket_time-100*(ticket_time/100) &amp;quot;Minutes&amp;quot;,&lt;br /&gt;
cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440  &amp;quot;Frac day&amp;quot;,&lt;br /&gt;
cast(ticket_Date as timestamp )+cast ( .01 + (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440  &amp;quot;time day&amp;quot;,&lt;br /&gt;
return_plant_dt &amp;quot;Return DateTime&amp;quot;,&lt;br /&gt;
floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) ) &amp;quot;Elapsed Mins&amp;quot;,&lt;br /&gt;
floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60) &amp;quot;Elapsed HH&amp;quot;,&lt;br /&gt;
floor(.5 +60* (floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60 -&lt;br /&gt;
floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60) ) ) &amp;quot;Elapsed MM&amp;quot;,&lt;br /&gt;
100*floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60)  +&lt;br /&gt;
floor(.5 +60* (floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60 -&lt;br /&gt;
floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60) ) ) &amp;quot;Elapsed HHMM&amp;quot;&lt;br /&gt;
 from artslshd&lt;br /&gt;
where ticket_date = :Test_Date and return_plant_dt is not null and ticket_time is not null&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sample Elapsed Time Review ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select Plant_no,cust_no,ticket_no,ticket_date,ticket_time,&lt;br /&gt;
return_plant_dt &amp;quot;Return DateTime&amp;quot;,&lt;br /&gt;
floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) ) &amp;quot;Calc Elapsed Mins&amp;quot;,&lt;br /&gt;
100*floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60)  +&lt;br /&gt;
floor(.5 +60* (floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60 -&lt;br /&gt;
floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60) ) ) &amp;quot;Calc Elapsed HHMM&amp;quot;,&lt;br /&gt;
Elapsed_time &amp;quot;Sys Elapsed Time&amp;quot;&lt;br /&gt;
 from artslshd&lt;br /&gt;
where ticket_date = '3/31/08' and return_plant_dt is not null &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
UPDATE artslshd&lt;br /&gt;
SET ELAPSED_TIME=&lt;br /&gt;
  100*floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60)  +&lt;br /&gt;
  floor(.5 +60* (floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60 -&lt;br /&gt;
  floor(floor(1440*(Return_Plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100*(ticket_time/100))  as numeric (11,6) ) /1440) )/60) ) )  &lt;br /&gt;
where ticket_date BETWEEN :Beg_Date and :End_Date and return_plant_dt is not null  and ticket_time is not null&lt;br /&gt;
 and plant_no in ('P1', 'P2', 'P3');&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Older Example==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example Time Query&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select artdriv.driver_name,plant_no,truck_no, ticket_date,ticket_no,artslsdt.qty_sold, ticket_time,&lt;br /&gt;
&lt;br /&gt;
 floor(1440*(batch_end_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440) ) &amp;quot;TB Time&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(leave_plant_dt-batch_end_dt))  &amp;quot;End Batch to Leave&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(arrive_job_dt-leave_plant_dt))  &amp;quot;To Job Minutes&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
FLOOR(  floor(.5 + 1440*(arrive_job_dt-leave_plant_dt)) / 60) &amp;quot;To Job Hrs&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(arrive_job_dt-leave_plant_dt))- 60*FLOOR(  floor(.5 + 1440*(arrive_job_dt-leave_plant_dt)) / 60) &amp;quot;To Job Min&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
100*FLOOR(  floor(.5 + 1440*(arrive_job_dt-leave_plant_dt)) / 60)  +&lt;br /&gt;
floor(.5 + 1440*(arrive_job_dt-leave_plant_dt))- 60*FLOOR(  floor(.5 + 1440*(arrive_job_dt-leave_plant_dt)) / 60) &amp;quot;To Job HH:MM&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
floor(.5 + 1440*(begin_pour_dt-arrive_job_dt))  &amp;quot;Waiting&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(end_pour_dt-begin_pour_dt))  &amp;quot;Pour&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(leave_job_dt-end_pour_dt))  &amp;quot;Washing&amp;quot;,&lt;br /&gt;
floor(.5 + 1440*(return_plant_dt-leave_job_dt))  &amp;quot;To Plant&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 floor(1440*(return_plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440 ) ) &amp;quot;TTR_MIN&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
100*floor(&lt;br /&gt;
 floor(1440*(return_plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440 ) ) / 60 ) +&lt;br /&gt;
&lt;br /&gt;
 floor(1440*(return_plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440 ) ) -&lt;br /&gt;
60*floor(&lt;br /&gt;
 floor(1440*(return_plant_DT-cast(ticket_Date as timestamp )-cast (  (60*(ticket_time/100)+ticket_time-100* &lt;br /&gt;
    (ticket_time/100))  as numeric (11,6) ) /1440 ) ) / 60 )  TTHHMM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
from artslshd &lt;br /&gt;
&lt;br /&gt;
inner join artslsdt td on artslsdt.session_no=artslshd.session_no and artslsdt.trans_no=artslshd.trans_no and artslsdt.line_no=1&lt;br /&gt;
&lt;br /&gt;
inner join artdriv on artdriv.driver_code = artslshd.driver&lt;br /&gt;
where driver is not null and batch_start_dt is not null and batch_end_dt is not null&lt;br /&gt;
and ticket_date between:Begin_date and :End_date and driver is not null  and void_flag ^='Y'&lt;br /&gt;
order by artdriv.driver_name, ticket_date, ticket_no&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Ticket_Importing_Info&amp;diff=656</id>
		<title>Ticket Importing Info</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Ticket_Importing_Info&amp;diff=656"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Keystone Ticket Printing and Dispatch==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Batch Control==&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Ticket_Form_Fields&amp;diff=654</id>
		<title>Ticket Form Fields</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Ticket_Form_Fields&amp;diff=654"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Ticket Fields==&lt;br /&gt;
&lt;br /&gt;
'''Note:''' These is the list of fields direct from the select query.  Aliases such as &amp;quot;TH.&amp;quot; and &amp;quot;CU.&amp;quot; are not part of the field name used for tickets.  Therefore use &amp;quot;SLUMP&amp;quot; not &amp;quot;TH.SLUMP&amp;quot; etc.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
TH.SESSION_NO, TH.TRANS_NO, &lt;br /&gt;
TH.CUST_NO, TH.TICKET_NO, TH.TICKET_DATE, &lt;br /&gt;
TH.SLUMP, TH.MILES, TH.TICKET_TIME, &lt;br /&gt;
TH.SALESPERSON, TH.SYS_LOC, TH.PLANT_NO, &lt;br /&gt;
TH.TAX_AUTHORITY, TH.JOB_PO_LOC, TH.JOB_LOT, &lt;br /&gt;
TH.JOB_BLOCK, TH.ORDER_CODE, TH.ORDER_SESSION_NO, &lt;br /&gt;
TH.ORDER_TRANS_NO, TH.ORDER_LOAD_NO, TH.TRUCK_NO, TH.TRAILER_1, &lt;br /&gt;
TH.TRAILER_2, TH.SOURCE_FLAG, TH.VOID_FLAG, &lt;br /&gt;
TH.PRICED_FLAG, TH.OFFICE_PRICE_FLAG, TH.ZONE, &lt;br /&gt;
TH.COD_FLAG, &lt;br /&gt;
TH.ELAPSED_TIME, &lt;br /&gt;
TH.BATCH_START_DT, TH.BATCH_END_DT, &lt;br /&gt;
TH.LEAVE_PLANT_DT, TH.ARRIVE_JOB_DT, &lt;br /&gt;
TH.BEGIN_POUR_DT, TH.END_POUR_DT, &lt;br /&gt;
TH.LEAVE_JOB_DT, TH.RETURN_PLANT_DT, &lt;br /&gt;
TH.CUSTOMER_PO, TH.DRIVER, TH.PAYMENT_AMOUNT, &lt;br /&gt;
TH.CHECK_DATE, TH.CHECK_NO, &lt;br /&gt;
TH.BANK_NO, TH.SHIP_TO_1, TH.SHIP_TO_2, &lt;br /&gt;
TH.SHIP_TO_3, TH.SHIP_TO_4, TH.DELV_INST_1, &lt;br /&gt;
TH.DELV_INST_2, TH.DELV_INST_3, TH.DELV_INST_4, &lt;br /&gt;
TH.WEATHER, &lt;br /&gt;
TH.WEIGHMASTER, TH.CUSTOM_1, TH.CUSTOM_2, &lt;br /&gt;
TH.USAGE_TYPE,  &lt;br /&gt;
TD.LINE_NO, TD.COMMENT_FLAG, TD.UNIT_PRICE, &lt;br /&gt;
TD.QTY_SOLD, &lt;br /&gt;
TD.PRODUCT_CODE, TD.UNIT_OF_MEASURE, &lt;br /&gt;
TD.DESCRIPTION, &lt;br /&gt;
TD.TAX_CODE, TD.TAX_CODE_2, TD.TAX_CODE_3,  &lt;br /&gt;
TD.PRICE_SOURCE, &lt;br /&gt;
TD.GROSS_WEIGHT, TD.TARE_WEIGHT, TD.WEIGHT_UMS, &lt;br /&gt;
TD.SCALE_WEIGHT_FLAG, &lt;br /&gt;
TH.COMMENT_1, TH.COMMENT_2, TH.NOTES_1, TH.NOTES_2, TH.ORDER_BALANCE, &lt;br /&gt;
TH.AMT_TEND, TH.INV_ADJUST_FLAG, TH.CLOSED_FLAG, TD.UNIT_PCT_DISC, TD.QTY_DELIVERED, &lt;br /&gt;
TD.QTY_ORDERED, TD.ORDER_LINE_NO, &lt;br /&gt;
CU.NAME, CU.ADDRESS_1, CU.ADDRESS_2, CU.CITY, &lt;br /&gt;
CU.STATE, CU.ZIP, CU.TERMS_CLASS CUST_TERMS_CLASS, &lt;br /&gt;
CU.USER_1 CUST_USER_1, &lt;br /&gt;
CU.USER_2 CUST_USER_2, &lt;br /&gt;
CU.NOTES_1 CUST_NOTES_1, &lt;br /&gt;
CU.NOTES_2 CUST_NOTES_2, &lt;br /&gt;
CU.NOTES_3 CUST_NOTES_3, &lt;br /&gt;
CU.NOTES_4 CUST_NOTES_4, &lt;br /&gt;
TA.DESCRIPTION TAX_AUTHORITY_NAME,&lt;br /&gt;
PL.PLANT_NAME PLANT_ADDR1, PL.ADDRESS_1 PLANT_ADDR2, PL.ADDRESS_2 PLANT_ADDR3, &lt;br /&gt;
DR.DRIVER_NAME, &lt;br /&gt;
PR.PRODUCT_TYPE, &lt;br /&gt;
PR.ROLLUP_FLAG, &lt;br /&gt;
PR.DESCRIPTION_1 PROD_DESCRIPTION_1, &lt;br /&gt;
PR.DESCRIPTION_2 PROD_DESCRIPTION_2, &lt;br /&gt;
PR.BASE_PRODUCT, &lt;br /&gt;
CT.DESCRIPTION TERMS_CLASS_DESC, &lt;br /&gt;
PC.SUBTOTAL PCL_SUBTOTAL, &lt;br /&gt;
UM.SUBTOTAL UMS_SUBTOTAL, &lt;br /&gt;
UM.UMS_TYPE, UM.EXPANDED_UMS,  &lt;br /&gt;
TR.PLATE_NUMBER, TR.OWNER_CODE, &lt;br /&gt;
TR.LEGAL_MAX_WEIGHT, &lt;br /&gt;
TR.VIN_NUMBER, &lt;br /&gt;
TR.TRUCK_MAKE, TR.TRUCK_MODEL, TR.TRUCK_YEAR, &lt;br /&gt;
OW.OWNER_NAME, &lt;br /&gt;
UC.DESCRIPTION USAGE_DESC,  &lt;br /&gt;
SP.DESCRIPTION SALESPERSON_NAME,  &lt;br /&gt;
WM.NAME WM_NAME, WM.LICENSE_NO WM_LICENSE_NO, &lt;br /&gt;
WM.LICENSE_EXP_DATE WM_LICENSE_EXP_DATE, &lt;br /&gt;
WM.USER_1 WM_USER_1, WM.USER_2 WM_USER_2, &lt;br /&gt;
WM.SIGNATURE_IMAGE WM_SIGNATURE_IMAGE, &lt;br /&gt;
WM.SIGNATURE_IMAGE_EXT WM_SIGNATURE_IMAGE_EXT &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Calculated Fields==&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
CALC_CUSTADDR1 CALC_CUSTADDR2 CALC_CUSTADDR3 CALC_CUSTADDR4 &lt;br /&gt;
CALC_EXTAMOUNT&lt;br /&gt;
CALC_PRICEDTICKET &lt;br /&gt;
CALC_SUBTOTAL &lt;br /&gt;
CALC_SALESTAX&lt;br /&gt;
CALC_TICKETTOTAL &lt;br /&gt;
CALC_BALDUE&lt;br /&gt;
UNIT_PRICE &lt;br /&gt;
UNIT_PCT_DISC &lt;br /&gt;
TAX_CODE&lt;br /&gt;
CALC_TICKETSTODAY&lt;br /&gt;
CALC_MATLTOTAL&lt;br /&gt;
CALC_DELVTOTAL&lt;br /&gt;
CALC_WEIGHMASTER&lt;br /&gt;
COND_PRICEDTICKET&lt;br /&gt;
COND_WEIGHTS&lt;br /&gt;
COND_COMMENT&lt;br /&gt;
COND_LINE_1&lt;br /&gt;
COND_COD&lt;br /&gt;
COND_MANUALWEIGHT&lt;br /&gt;
COND_WEIGHMASTER&lt;br /&gt;
CALC_NONTAXTOTAL&lt;br /&gt;
ORDER_NOTES_1 ORDER_NOTES_2&lt;br /&gt;
CALC_PREVORDERBAL&lt;br /&gt;
CALC_NEWORDERBAL&lt;br /&gt;
COND_CONCRETETICKET&lt;br /&gt;
CALC_TAXABLETOTAL&lt;br /&gt;
CALC_CHANGEDUE&lt;br /&gt;
CALC_DISCTOTAL&lt;br /&gt;
CALC_NETDUEAFTERDISC&lt;br /&gt;
CALC_TICKETSTODATE&lt;br /&gt;
ORDER_DELV_TIME&lt;br /&gt;
COND_ORDER_PLUS&lt;br /&gt;
TAXCOL1_AMOUNT&lt;br /&gt;
TAXCOL2_AMOUNT&lt;br /&gt;
TAXCOL3_AMOUNT&lt;br /&gt;
TAXCOL1_LABEL&lt;br /&gt;
TAXCOL2_LABEL&lt;br /&gt;
TAXCOL3_LABEL&lt;br /&gt;
ORDER_CEMENT&lt;br /&gt;
ORDER_PCT_CALCIUM&lt;br /&gt;
ORDER_PCT_AIR&lt;br /&gt;
CALC_ORDERTOTAL&lt;br /&gt;
ORDER_TAKEN_BY&lt;br /&gt;
ORDER_TAKEN_ON&lt;br /&gt;
ORDER_CONTACT&lt;br /&gt;
ORDER_PHONE_NO&lt;br /&gt;
ORDER_PREV_TRUCK&lt;br /&gt;
ORDER_PREV_DRIVER&lt;br /&gt;
COND_PRODTYPE_MIX&lt;br /&gt;
COND_PRODTYPE_ING&lt;br /&gt;
COND_PRODTYPE_AGG&lt;br /&gt;
COND_PRODTYPE_DEL&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Calc Items with U/M===&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
CALC_NET_WEIGHT        Unit Type:Weight&lt;br /&gt;
GROSS_WEIGHT           Unit Type:Weight&lt;br /&gt;
TARE_WEIGHT            Unit Type:Weight&lt;br /&gt;
CALC_DELVTODATE        Unit Type:Quantity  (Qty for an order)&lt;br /&gt;
CALC_QTYTODAY          Unit Type:Quantity  (Qty by Job Name)&lt;br /&gt;
CALC_ORDQTYDELV        Unit Type:Quantity&lt;br /&gt;
CALC_ORDQTYREMAIN      Unit Type:Quantity&lt;br /&gt;
MILES                  Unit Type:Miles&lt;br /&gt;
QTY_SOLD               Unit Type:Quantity&lt;br /&gt;
QTY_DELIVERED          Unit Type:Quantity&lt;br /&gt;
QTY_ORDERED            Unit Type:Quantity&lt;br /&gt;
CALC_ORDQTYAMT         Unit Type:Quantity&lt;br /&gt;
LEGAL_MAX_WEIGHT       Unit Type:Weight&lt;br /&gt;
CALC_L1_QTY_ORDERED    Unit Type:Quantity&lt;br /&gt;
CALC_L1_QTY_DELIVERED  Unit Type:Quantity&lt;br /&gt;
CALC_L1_QTY_REMAINING  Unit Type:Quantity)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Copies, Multiple Copies, Samepage Copies &amp;amp; New Page==&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SAME PAGE COPIES&lt;br /&gt;
Top of Form            COPIES X, SAMEPAGE (Replace X with Number of copies)&lt;br /&gt;
Bottom of Form         BEGINCOPY X (ADD DETAIL BELOW) (Replace X with the copy number) (eg. BEGINGCOPY 1)&lt;br /&gt;
After Copy X           ENDCOPY X (Replace X with the copy number) (qg. ENDCOPY 1)&lt;br /&gt;
&lt;br /&gt;
NEWPAGE                NEWPAGE (ADD DETAIL BELOW)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Threading_Problems&amp;diff=652</id>
		<title>Threading Problems</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Threading_Problems&amp;diff=652"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
Symptoms&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Solution:&lt;br /&gt;
System Options - Run Queries in Main Thread&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Tempfilelist&amp;diff=650</id>
		<title>Tempfilelist</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Tempfilelist&amp;diff=650"/>
		<updated>2023-07-14T13:00:38Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[File:20040804.TKT.txt]]&lt;br /&gt;
*[[File:800px-DevAggMultCos2.png]]&lt;br /&gt;
*[[File:AlkTkt1.png]]&lt;br /&gt;
*[[File:BCQCI V3.pdf]]&lt;br /&gt;
*[[File:BatchDeviceVerifiLink.PNG]]&lt;br /&gt;
*[[File:CCDevAggWeb1.PNG]]&lt;br /&gt;
*[[File:CCDevAggWebConfig.PNG]]&lt;br /&gt;
*[[File:CTEPInfoGuide.pdf]]&lt;br /&gt;
*[[File:DC GPO.jpg]]&lt;br /&gt;
*[[File:DC GPO EDIT.jpg]]&lt;br /&gt;
*[[File:DS ar gl sumbysrc.PNG]]&lt;br /&gt;
*[[File:DevAggMultCos1.png]]&lt;br /&gt;
*[[File:Ds ap exp by ven.png]]&lt;br /&gt;
*[[File:Ds ap open yr mo.png]]&lt;br /&gt;
*[[File:Ds ar open days out.png]]&lt;br /&gt;
*[[File:Ds fica diag.png]]&lt;br /&gt;
*[[File:Ds gl fs1.png]]&lt;br /&gt;
*[[File:Ds gl fs2.png]]&lt;br /&gt;
*[[File:Ds gl fs3a.png]]&lt;br /&gt;
*[[File:Ds gl fs3b.png]]&lt;br /&gt;
*[[File:Frm ld img.png]]&lt;br /&gt;
*[[File:GHIBDataPump.zip]]&lt;br /&gt;
*[[File:GlfsBig1.png]]&lt;br /&gt;
*[[File:GlfsBig2.png]]&lt;br /&gt;
*[[File:GlfsBig3.png]]&lt;br /&gt;
*[[File:GlfsBig4.png]]&lt;br /&gt;
*[[File:Glfsbig5.png]]&lt;br /&gt;
*[[File:HC 2.jpg]]&lt;br /&gt;
*[[File:HC 3.jpg]]&lt;br /&gt;
*[[File:IBUsersINIChange.png]]&lt;br /&gt;
*[[File:IBXE7Finish.png]]&lt;br /&gt;
*[[File:IBXE7License.png]]&lt;br /&gt;
*[[File:IBXE7QueryWindow.PNG]]&lt;br /&gt;
*[[File:IBXE7Registration.png]]&lt;br /&gt;
*[[File:IBXE7ServerSlip.png]]&lt;br /&gt;
*[[File:IBXE7StartServer.png]]&lt;br /&gt;
*[[File:IBXE7TransactionEditor.PNG]]&lt;br /&gt;
*[[File:IBXE7TransactionError.PNG]]&lt;br /&gt;
*[[File:Insupbak.zip]]&lt;br /&gt;
*[[File:Integra XML V2.5.pdf]]&lt;br /&gt;
*[[File:Integra XML V2 5.pdf]]&lt;br /&gt;
*[[File:Invoice.pdf]]&lt;br /&gt;
*[[File:KSEmailConfig.PNG]]&lt;br /&gt;
*[[File:KSSupBak1.PNG]]&lt;br /&gt;
*[[File:KSSupBak2.PNG]]&lt;br /&gt;
*[[File:KS DB Backup.png]]&lt;br /&gt;
*[[File:KeystoneBackupFails.png]]&lt;br /&gt;
*[[File:KeystoneShortcutWindowsCompatibility.PNG]]&lt;br /&gt;
*[[File:Keystone DB Backup.zip]]&lt;br /&gt;
*[[File:Keystone Payroll Create Garn Fee Deduction.pdf]]&lt;br /&gt;
*[[File:Ks25update1.jpg]]&lt;br /&gt;
*[[File:Ks25update10.jpg]]&lt;br /&gt;
*[[File:Ks25update11.jpg]]&lt;br /&gt;
*[[File:Ks25update12.jpg]]&lt;br /&gt;
*[[File:Ks25update13.jpg]]&lt;br /&gt;
*[[File:Ks25update2.jpg]]&lt;br /&gt;
*[[File:Ks25update3.jpg]]&lt;br /&gt;
*[[File:Ks25update4.jpg]]&lt;br /&gt;
*[[File:Ks25update5.jpg]]&lt;br /&gt;
*[[File:Ks25update6.jpg]]&lt;br /&gt;
*[[File:Ks25update7.jpg]]&lt;br /&gt;
*[[File:Ks25update8.jpg]]&lt;br /&gt;
*[[File:Ks25update9.jpg]]&lt;br /&gt;
*[[File:Ks email2a.png]]&lt;br /&gt;
*[[File:Ks email ar inv setupb.png]]&lt;br /&gt;
*[[File:Ks email cu1.png]]&lt;br /&gt;
*[[File:Ks email cu2.png]]&lt;br /&gt;
*[[File:Link-20 Manual.pdf]]&lt;br /&gt;
*[[File:MS taxparam1.JPG]]&lt;br /&gt;
*[[File:MS taxparam2.JPG]]&lt;br /&gt;
*[[File:Message Queues.PNG]]&lt;br /&gt;
*[[File:PRFormV2Query.png]]&lt;br /&gt;
*[[File:PR taxben 01.JPG]]&lt;br /&gt;
*[[File:Payroll ACH Company Debit Record.png]]&lt;br /&gt;
*[[File:Payroll Local Tax Codes.pdf]]&lt;br /&gt;
*[[File:Payroll State Tax Codes.pdf]]&lt;br /&gt;
*[[File:Payroll XML.zip]]&lt;br /&gt;
*[[File:Pr.zip]]&lt;br /&gt;
*[[File:Prappay1.jpg]]&lt;br /&gt;
*[[File:Prappay2.jpg]]&lt;br /&gt;
*[[File:Prappay3.jpg]]&lt;br /&gt;
*[[File:Prappay4.jpg]]&lt;br /&gt;
*[[File:Prappay5.jpg]]&lt;br /&gt;
*[[File:Prappay6.jpg]]&lt;br /&gt;
*[[File:Prappay7.jpg]]&lt;br /&gt;
*[[File:PrintInvoicesException.PNG]]&lt;br /&gt;
*[[File:Pygh2008.pdf]]&lt;br /&gt;
*[[File:QBConfirm.JPG]]&lt;br /&gt;
*[[File:QBConfirm2.JPG]]&lt;br /&gt;
*[[File:QBConfirm3.JPG]]&lt;br /&gt;
*[[File:QG Example Excel Payimp.PNG]]&lt;br /&gt;
*[[File:QG Example Merge 1.PNG]]&lt;br /&gt;
*[[File:QG Example Merge 2.PNG]]&lt;br /&gt;
*[[File:QG Example Merge 3.PNG]]&lt;br /&gt;
*[[File:QG Excel Open.PNG]]&lt;br /&gt;
*[[File:QG IB Open.PNG]]&lt;br /&gt;
*[[File:QG ODBC text.jpg]]&lt;br /&gt;
*[[File:QG OpenText.jpg]]&lt;br /&gt;
*[[File:Qbconnector.zip]]&lt;br /&gt;
*[[File:Qg excel shtnm a.png]]&lt;br /&gt;
*[[File:Qg excel shtnm b.png]]&lt;br /&gt;
*[[File:Qg odbc1.jpg]]&lt;br /&gt;
*[[File:Qg openODBCa.jpg]]&lt;br /&gt;
*[[File:Qg openib.jpg]]&lt;br /&gt;
*[[File:Queue Properties.PNG]]&lt;br /&gt;
*[[File:Readmeta sql.txt]]&lt;br /&gt;
*[[File:RemoteLicenseSetup.PNG]]&lt;br /&gt;
*[[File:RemoteLocationSetup.PNG]]&lt;br /&gt;
*[[File:RemotePlantSetup.PNG]]&lt;br /&gt;
*[[File:ResetCache1.PNG]]&lt;br /&gt;
*[[File:ResetCache2.PNG]]&lt;br /&gt;
*[[File:SecuirtyRoles CCTROLE.png]]&lt;br /&gt;
*[[File:SecuirtyRoles CCTSECTL After.png]]&lt;br /&gt;
*[[File:SecuirtyRoles CCTSECTL Before.png]]&lt;br /&gt;
*[[File:SecuirtyRoles UserConfig.png]]&lt;br /&gt;
*[[File:Security Control in KEYSTONE.pdf]]&lt;br /&gt;
*[[File:SerialPortMonitor.zip]]&lt;br /&gt;
*[[File:Signalling Response.pdf]]&lt;br /&gt;
*[[File:Subscription API for signalling.pdf]]&lt;br /&gt;
*[[File:Taxben01.JPG]]&lt;br /&gt;
*[[File:Taxben02.JPG]]&lt;br /&gt;
*[[File:Taxben03.JPG]]&lt;br /&gt;
*[[File:Telemetry.png]]&lt;br /&gt;
*[[File:Ticketing-Api-1.3- Documentation 2018Jul13.pdf]]&lt;br /&gt;
*[[File:Tkt20.exp.txt]]&lt;br /&gt;
*[[File:Trimble Generic XML Integration Interface (2.17).pdf]]&lt;br /&gt;
*[[File:Trimble XML Integration Interface 2 15 draft.pdf]]&lt;br /&gt;
*[[File:UDI Comm Link Rev. C.pdf]]&lt;br /&gt;
*[[File:ULINK to KEYSTONE Field Mappings.pdf]]&lt;br /&gt;
*[[File:Universal Link TCPIP.pdf]]&lt;br /&gt;
*[[File:VirtualNullModem.zip]]&lt;br /&gt;
*[[File:WebUpdateTerminalServer.jpg]]&lt;br /&gt;
*[[File:Web Update.pdf]]&lt;br /&gt;
*[[File:Windows10Winver.png]]&lt;br /&gt;
*[[File:Windows Message Queuing Feature.PNG]]&lt;br /&gt;
*[[File:Windows Power Options.PNG]]&lt;br /&gt;
*[[File:XE7IBConsoleUpdateError.png]]&lt;br /&gt;
*[[File:Zonehistory.png]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Taxable_Benefit_0_Check&amp;diff=648</id>
		<title>Taxable Benefit 0 Check</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Taxable_Benefit_0_Check&amp;diff=648"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
See also [[Payroll: Taxable Benefits]]&lt;br /&gt;
&lt;br /&gt;
The TAXBEN Income and Deduction allows adding an amount to an employee's taxable gross without making a cash payment.  Using TAXBEN is preferable to adjusting employee balances for end of year Taxable Benefit posting in terms of:&lt;br /&gt;
*Calculating and posting taxes (especially Social Security and Medicare for both the employee and company portion)&lt;br /&gt;
*Creating a proper audit trail in the system.  &lt;br /&gt;
This page goes through the process for running a net 0 check for a Taxable Benefit posting when there is not a normal payroll amount to deduct the taxes from.&lt;br /&gt;
&lt;br /&gt;
==Setup==&lt;br /&gt;
*Activate TAXBEN  and TAXBENDED in Company Maintenance on the Income and Deductions tab.  Enter the &amp;quot;Payroll Expense&amp;quot; GL number in TAXBEN (debit) and TAXBENDED (credit).  Use the same GL number for TAXBEN and TAXBENDED.&lt;br /&gt;
*Activate TAXBEN and TAXBENDED in Employee Maintenance on the Income and Deductions tab.&lt;br /&gt;
*Modify the Payroll Formula *TAXBEN to check for and use override an value.&lt;br /&gt;
[[Image:PR_taxben_01.JPG]]&lt;br /&gt;
&lt;br /&gt;
==Processing==&lt;br /&gt;
*Setup Payroll with 0 for Deduction and Tax Periods.  (This example assumes the only deduction will be Social Security/Medicare).&lt;br /&gt;
*Enter Timecard(s).  The TAXBEN line will be the amount of the Taxable Benefit.  &lt;br /&gt;
[[Image:Taxben01.JPG]]&lt;br /&gt;
*Click Calculate.  &lt;br /&gt;
**Check the Override Adj tab. &lt;br /&gt;
**Override any unwanted deductions to 0.&lt;br /&gt;
**Override the TAXBENDED to TAXBEN - [any deductions].  In this example TAXBENDED = TAXBEN - SSTAX - MCTAX (i.e. gross-deductions i.e. the amount require to balance the GL transactions and set the check amount to 0)&lt;br /&gt;
[[Image:Taxben02.JPG]]&lt;br /&gt;
*Check the Warnings tab.  This should indicate NETPAY = 0.  If NETPAY is positive or negative, the override is not correct.&lt;br /&gt;
[[Image:Taxben03.JPG]]&lt;br /&gt;
*Calculate Payroll, run reports and print (0) check(s).&lt;br /&gt;
&lt;br /&gt;
==Note on Gross==&lt;br /&gt;
This procedure is an improvement of the previously posted procdedure in that the Employee's Gross pay is the expected amount (the previous GROSS plus the amount of the Taxable benefit in this payroll).  While both procedures resulted in a proper withholding for Social Security and Medicare, the previous procedure required adding an amount to the gross pay to cover the additional Social Security and Medicare tax that was generated.&lt;br /&gt;
&lt;br /&gt;
==Note on GL Transactions==&lt;br /&gt;
This revised procedure results in different values for TAXBEN and TAXBENDED.  For W-2 purposes the TAXBEN is the amount reported for earnings and TAXBENDED is not needed.  The GL is balanced by a net debit to &amp;quot;Payroll Expense&amp;quot; (the difference between TAXBEN and TAXBENDED) offset by the credit(s) to &amp;quot;Accrued SS/MC Tax withheld&amp;quot;.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Tags_%26_Formatting_Guide&amp;diff=646</id>
		<title>Tags &amp; Formatting Guide</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Tags_%26_Formatting_Guide&amp;diff=646"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: WIKI]]&lt;br /&gt;
=== Table of Contents ===&lt;br /&gt;
A Table of Contents box (see above) is generated automatically by Wiki based on how you define sections (see below).  You can suppress a table of contents on your current page by using two embedding NOTOC within two underscore characters.  Example: &amp;lt;nowiki&amp;gt;__NOTOC__&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may alter where a table of contents appears on your page by embedding TOC within two underscore characters at the desired location.  Example: &amp;lt;nowiki&amp;gt;__TOC__&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sections ===&lt;br /&gt;
Sections should be used to organize longer pages.  Sections are defined by putting three equal signs (===) on each side of your section heading.  You can create subsections by adding an equal sign before and after the section heading.  On this page, for example, '''Symbols''' is a subsection of '''Fonts &amp;amp; Formatting'''.  This was coded as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;===&amp;lt;/nowiki&amp;gt;Fonts &amp;amp; Formatting&amp;lt;nowiki&amp;gt;===&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
...&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;====&amp;lt;/nowiki&amp;gt;Symbols&amp;lt;nowiki&amp;gt;====&amp;lt;/nowiki&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Categories ===&lt;br /&gt;
Categories are a way of grouping pages (for example, Payroll) in a reference.  Any time a page is placed in a category, a link appears on the bottom of the page allowing the viewer to link back to that category.  A page can be in multiple categories as well, thus a page could be in both PAYROLL and SETUP, and a user browsing either of those categories could find their way to the page.  To include your page in a given category, use &amp;lt;nowiki&amp;gt;[[Category:&amp;lt;/nowiki&amp;gt;''CategoryName'']].  To include a page in multiple categories, simply add additional tags.&lt;br /&gt;
&lt;br /&gt;
To set up a page with a link to a category without including the page IN the category, prefix the word Category with a colon.  For example: &amp;lt;nowiki&amp;gt;[[:Category:&amp;lt;/nowiki&amp;gt;''Setup'']]&lt;br /&gt;
&lt;br /&gt;
When a browser views a category, all pages will be in alphabetical order based on the page title.  To change the sort order, add a pipe symbol following the category name.  For example: &amp;lt;nowiki&amp;gt;[[:Category:&amp;lt;/nowiki&amp;gt;''Users|Jones, Bill'']]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Comments ===&lt;br /&gt;
You can embed comments within the wiki code by using &amp;amp;lt;!-- (comment here) --&amp;amp;gt;  These comments WILL NOT appear on the wiki screen, but are stored in the code so subsequent editors can view your remarks.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Links ===&lt;br /&gt;
You can set up a link by embedding the word within double brackets and can be used in the flow of your text.&lt;br /&gt;
&lt;br /&gt;
For example &amp;lt;nowiki&amp;gt;[[Payroll Setup]] requires ... &amp;lt;/nowiki&amp;gt; will generate the text:&lt;br /&gt;
&lt;br /&gt;
[[Payroll Setup]] requires ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can also assign an alias to your link using the pipe symbol.  The page that is actually linked appears before the pipe symbol, while the text to display appears afterwards.&lt;br /&gt;
&lt;br /&gt;
For example &amp;lt;nowiki&amp;gt;[[Payroll Setup|Setup your payroll]] by clicking on...&amp;lt;/nowiki&amp;gt; will generate the following text:&lt;br /&gt;
&lt;br /&gt;
[[Payroll Setup|Setup your payroll]] by clicking on...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Transclusions ===&lt;br /&gt;
Transclusions are a way to embed entire pages within the current document.  This is accomplished by placing double braces and a leading colon around the link to be included in your current page.&lt;br /&gt;
&lt;br /&gt;
For example, &amp;lt;nowiki&amp;gt;{{:Transclusion Example}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Transclusion Example}}&lt;br /&gt;
&lt;br /&gt;
=== Images ===&lt;br /&gt;
Images must be uploaded using the UPLOAD FILE link on the Toolbox.  It is better to upload the image file prior to referencing the IMAGE tag.  The format for the IMAGE tag is as follows:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;[[IMAGE:{name}|{type}|{location}|{size}|{caption}]]&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
{name} is a required field.  It contains the image name as it is known to Wiki when imported.&lt;br /&gt;
&lt;br /&gt;
{type} is an optional field.  It may contain the word THUMB if you wish to show a thumbnail version of the image.&lt;br /&gt;
&lt;br /&gt;
{location} is an optional field.  It may contain the parameters LEFT, RIGHT or CENTER, representing the alignment of the image.&lt;br /&gt;
&lt;br /&gt;
{size} is an optional field representing the desired image size in pixels and must be suffixed with px.  For example: 120px.&lt;br /&gt;
&lt;br /&gt;
{caption} is an optional field containing the caption for the image.&lt;br /&gt;
&lt;br /&gt;
'''For more information on images, click here: http://en.wikipedia.org/wiki/Wikipedia:Extended_image_syntax'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Fonts &amp;amp; Formatting ===&lt;br /&gt;
'''Boldfaced text''' is accomplished by embedding text within three apostrophes (&amp;lt;nowiki&amp;gt;'''&amp;lt;/nowiki&amp;gt;), or you can use the standard HTML markup tags of &amp;amp;lt;b&amp;amp;gt; and &amp;amp;lt;/b&amp;amp;gt;.&lt;br /&gt;
&lt;br /&gt;
''Italicized text'' is accomplished by embedding text within two apostrohes (&amp;lt;nowiki&amp;gt;''&amp;lt;/nowiki&amp;gt;), or you can use the standard HTML markup tags of &amp;amp;lt;i&amp;amp;gt; and &amp;amp;lt;/i&amp;amp;gt;.&lt;br /&gt;
&lt;br /&gt;
'''''Boldfaced &amp;amp; Italicized text''''' is accomplished by embedding text within five apostrophes (&amp;lt;nowiki&amp;gt;'''''&amp;lt;/nowiki&amp;gt;), or you can use the standard HTML markup tags of &amp;amp;lt;b&amp;amp;gt;&amp;amp;lt;i&amp;amp;gt; and &amp;amp;lt;/i&amp;amp;gt;&amp;amp;lt;/b&amp;amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Underlining text is accomplished by embedding text within &amp;amp;lt;u&amp;amp;gt; and &amp;amp;lt;/u&amp;amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Typewriter font is accomplished by embedding text within &amp;amp;lt;tt&amp;amp;gt; and &amp;amp;lt;/tt&amp;amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;Centering text is accomplished by embedding text within &amp;amp;lt;center&amp;amp;gt; and &amp;amp;lt;/center&amp;amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strike&amp;gt;Strike-through&amp;lt;/strike&amp;gt; is accomplished by embedding text within &amp;amp;lt;strike&amp;amp;gt; and &amp;amp;lt;/strike&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can get &amp;lt;sup&amp;gt;Superscripts&amp;lt;/sup&amp;gt; by embedding text within &amp;amp;lt;sup&amp;amp;gt; and &amp;amp;lt;/sup&amp;amp;gt; and &amp;lt;sub&amp;gt;subscripts&amp;lt;/sub&amp;gt; by using &amp;amp;lt;sub&amp;amp;gt; and &amp;amp;lt;/sub&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can get &amp;lt;small&amp;gt;small text&amp;lt;/small&amp;gt; by embedding text within &amp;amp;lt;small&amp;amp;gt; and &amp;amp;lt;/small&amp;amp;gt; - this is especially useful for image captions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;blockquote is used to set up a paragraph which indent both margins when needed instead of the &lt;br /&gt;
left margin only as the colon does.  This is accomplished by embeddeding text with &amp;amp;lt;blockquote&amp;amp;gt; and &amp;amp;lt;/blockquote&amp;amp;gt;&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To disable any parsing of tags by Wiki, use the the &amp;amp;lt;nowiki&amp;amp;gt; and &amp;amp;lt;/nowiki&amp;amp;gt; tags around your text.  It will still reformat your text however.&lt;br /&gt;
&lt;br /&gt;
To disable parsing and text reformatting, use the &amp;amp;lt;PRE&amp;amp;gt; and &amp;amp;lt;/PRE&amp;amp;gt; tags around your text.  This will display all text within a box in the exact manner in which it is entered.&lt;br /&gt;
&lt;br /&gt;
For example, &amp;lt;nowiki&amp;gt;&amp;lt;pre&amp;gt;Code segment &lt;br /&gt;
goes in here&amp;lt;/pre&amp;gt;&amp;lt;/nowiki&amp;gt; generates :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;Code segment goes in here&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Symbols ====&lt;br /&gt;
Trademark &amp;amp;trade; is generated by embedded the word '''trade''' within &amp;amp; and ;&lt;br /&gt;
&lt;br /&gt;
Copyright &amp;amp;copy; is generated by embedding the word '''copy''' within &amp;amp; and ;&lt;br /&gt;
&lt;br /&gt;
Registered &amp;amp;reg; is generated by embedding the word '''reg''' within &amp;amp; and ;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tables ===&lt;br /&gt;
Tables are a combination of HTML and text code.  The table must {be enclosed within braces}&lt;br /&gt;
&lt;br /&gt;
HTML code can be used for setting border width, spacing, padding and alignment.&lt;br /&gt;
&lt;br /&gt;
Each new column must be preceeded by a pipe symbol (for normal text) or an exclamation point (for boldface text).&lt;br /&gt;
&lt;br /&gt;
Each new row entry must be preceeded by a hyphen.&lt;br /&gt;
&lt;br /&gt;
Note: There is no merge/split cells possible within a Wiki table as there is with HTML.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The table below was generated by the following code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{| border=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
! This&lt;br /&gt;
! is&lt;br /&gt;
|- &lt;br /&gt;
| a&lt;br /&gt;
| table&lt;br /&gt;
|-&lt;br /&gt;
|}&amp;lt;/pre&amp;gt;&lt;br /&gt;
{| border=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
! This&lt;br /&gt;
! is&lt;br /&gt;
|- &lt;br /&gt;
| a&lt;br /&gt;
| table&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[http://meta.wikimedia.org/wiki/Help:Table| Click here for more table help.]]&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Unordered Lists ===&lt;br /&gt;
Leading asterisks generate bullet points for unordered lists.  Additional asterisks generate indented bullet points.&lt;br /&gt;
* Element 1 (this element was preceeded by *)&lt;br /&gt;
** Sub-element of Element 1 (this element was preceeded by **)&lt;br /&gt;
* Element 2 (this element was preceded by *)&lt;br /&gt;
** Sub-element of Element  (this element was preceeded by **)&lt;br /&gt;
*** Sub-element of sub-element of Element 2 (this element was preceeded by ***)&lt;br /&gt;
* Element 3 (this element was preceeded by *)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Numbered Lists ===&lt;br /&gt;
Numbered lists work by using the pound sign.&lt;br /&gt;
# Item 1 (preceeded by #)&lt;br /&gt;
# Item 2 (preceeded by #)&lt;br /&gt;
## Item 2.1 (preceeded by ##)&lt;br /&gt;
### Item 2.1.1 (preceeded by ###)&lt;br /&gt;
## Item 2.2 (preceeded by ##)&lt;br /&gt;
# Item 3 (preceeded by #)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paragraph Indentation ===&lt;br /&gt;
Indenting sentences is equally easy, using a colon as a prefix.&lt;br /&gt;
&lt;br /&gt;
: Indent 1 (preceeded by :)&lt;br /&gt;
:: Indent 2 (preceeded by ::)&lt;br /&gt;
::: Indent 3 (preceeded by :::)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Terms &amp;amp; Definitions ===&lt;br /&gt;
Defining terms is accomplished by prefixing your term (word(s) to be defined) with a semi-colon, then prefixing the definition itself with a colon.  The term is automatically boldfaced and the definition is automatically indented on the line below.  For example:&lt;br /&gt;
&lt;br /&gt;
;squirrel-boy (preceeded by a ;)&lt;br /&gt;
: a male human obsessed or taunted by squirrels. (preceeded by a :)&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=System_Table_Querries_(RDB$_Tables)&amp;diff=644</id>
		<title>System Table Querries (RDB$ Tables)</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=System_Table_Querries_(RDB$_Tables)&amp;diff=644"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
Find all instances of a field:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
  SELECT *&lt;br /&gt;
  FROM RDB$RELATION_FIELDS&lt;br /&gt;
  where rdb$field_name='LAST_CHANGE_USER'&lt;br /&gt;
  ORDER BY RDB$RELATION_NAME&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=System_Diagnostic_Queries&amp;diff=642</id>
		<title>System Diagnostic Queries</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=System_Diagnostic_Queries&amp;diff=642"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:[[Security Report Queries]]&lt;br /&gt;
:[[Security - Options by Users Query / Report]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Support_Alerts&amp;diff=640</id>
		<title>Support Alerts</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Support_Alerts&amp;diff=640"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Batch weights cannot be seen in A/R Ticket Maintenance or A/R Ticket History Inquiry - 7/9/2020==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Plant tickets with batch weights seem to lose the batch weights once they are imported to the office.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: A new field (BW_RECKEY) was added to the ticket header tables in Keystone 3.6.11.1. This field links tickets and batch weights together. The A/R Ticket Maintenance, A/R Ticket History Inquiry and Dispatch Batch Weights Report options all use this field to lookup the batch weights.&lt;br /&gt;
&lt;br /&gt;
Due to a bug the &amp;quot;commit&amp;quot; logic in A/R Import Tickets does not copy this new field from the temporary table (Z$ARTPTKHD) to the office table (ARTTCKHD) when the user completes the import ticket process. (Note that the batch weights exist in the batch weights tables, it is just this new link field that doesn't get copied.)&lt;br /&gt;
&lt;br /&gt;
SOLUTION: This bug is fixed in Keystone 3.6.14.5. &lt;br /&gt;
&lt;br /&gt;
Here are three queries that can be run to re-link tickets with their associated batch weights:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Plant Tickets&amp;lt;/i&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
UPDATE ARTPTKHD TH SET TH.BW_RECKEY =&lt;br /&gt;
   (SELECT MAX(BH.RECKEY)&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7))&lt;br /&gt;
   WHERE (TH.VOID_FLAG = 'N') AND (TH.BW_RECKEY IS NULL) AND EXISTS&lt;br /&gt;
   (SELECT 1&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Office Tickets&amp;lt;/i&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
UPDATE ARTTCKHD TH SET TH.BW_RECKEY =&lt;br /&gt;
   (SELECT MAX(BH.RECKEY)&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7))&lt;br /&gt;
   WHERE (TH.VOID_FLAG = 'N') AND (TH.BW_RECKEY IS NULL) AND EXISTS&lt;br /&gt;
   (SELECT 1&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;Invoiced Tickets (this may take a while)&amp;lt;/i&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
UPDATE ARTSLSHD TH SET TH.BW_RECKEY =&lt;br /&gt;
   (SELECT MAX(BH.RECKEY)&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7))&lt;br /&gt;
   WHERE (TH.VOID_FLAG = 'N') AND (TH.BW_RECKEY IS NULL) AND EXISTS&lt;br /&gt;
   (SELECT 1&lt;br /&gt;
     FROM DITBWHD BH&lt;br /&gt;
      WHERE (BH.PLANT_NO = TH.PLANT_NO) AND (BH.TICKET_NO = TH.TICKET_NO) AND (CAST(BH.LOAD_DT AS DATE) BETWEEN TH.TICKET_DATE AND TH.TICKET_DATE+7));&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Keystone sends the same ticket to a batch control more than once - 11/7/2018==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Keystone sends the same ticket to a batch control more than once because the Device Aggregator takes too long to respond to the &amp;quot;send ticket&amp;quot; command from the client program.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: When Keystone Dispatch/Ticketing sends a ticket to the batch control (more correctly, to the Device Aggregator) it expects a response to the “send ticket” command within one (1) second. If it does not get a response in this timeframe, it will pause for 250 milliseconds and then re-send the ticket to the Device Aggregator. It will do this up to three times before giving up.&lt;br /&gt;
&lt;br /&gt;
Normally this should never be an issue. The Device Aggregator is always running on a server on the local network, and it should never take more than one second to respond to the Keystone client programs.&lt;br /&gt;
&lt;br /&gt;
However a situation was discovered at Vitale that caused the Device Aggregator to be “tied up” for about 4 seconds. During this time if a ticket was received the Keystone client program would timeout and re-send it.&lt;br /&gt;
&lt;br /&gt;
Vitale has three Keystone companies. After the last Keystone update (which required a database upgrade) only one of their companies was upgraded, the other two were not (because no one had logged into them.) One of those two companies was “Practice” which is ignored by the aggregator. The second of the two companies was “Mix Import Testing” which was used for their install but which the customer does not login to. This company was *not* flagged as a Practice company. Therefore the aggregator was trying to process any devices in this company, but could not because the company database had not yet been upgraded. This actually causes an error within the aggregator which will force the aggregator to retry loading all the devices from all the companies again one minute later. Each time the aggregator reloads the devices it takes about 4 seconds to complete. During this time “send ticket” commands from Keystone clients cannot be processed. This is what led to the aggregator taking too long to respond to the client.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: After a Keystone update, be sure to login to ALL the companies (even the “Practice” ones!)&lt;br /&gt;
&lt;br /&gt;
The next release build of Keystone (3.4.7) will handle this issue by increasing the client timeout value from one second to ten seconds. The aggregator will also respond immediately to the “send ticket” command instead of waiting until after it was able to send the command out to the device server (where the delay was happening.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==When changing the number of licensed InterBase users, you must edit CCWIBSV.INI - 10/2/2018==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When the number of licensed InterBase users is increased/decreased, Keystone 3.x does not recognize the change.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: Keystone 3.x performs a calculation ONCE to determine the number of licensed InterBase users. It stores the result of this calculation in CCWIBSV.INI.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Perform this procedure AFTER changing the number of licensed InterBase users:&lt;br /&gt;
&lt;br /&gt;
# Start Notepad, making sure to select “Run As Administrator.”&lt;br /&gt;
# Open the ccwibsv.ini file in the folder “C:\Program Files (x86)\GivenHansco\Keystone\Settings.” &lt;br /&gt;
# Delete the entire line that begins with “MaxConnections=” as shown below:&amp;lt;BR&amp;gt; [[File: IBUsersINIChange.png]]&lt;br /&gt;
# Save the file.&lt;br /&gt;
# Reboot the server.&lt;br /&gt;
&lt;br /&gt;
==Exception &amp;lt;i&amp;gt;EOleException violation of FOREIGN KEY constraint &amp;quot;Z$ARTINV_FKY_CUST_NO&amp;quot; on table &amp;quot;Z$ARTINV&amp;quot;&amp;lt;/i&amp;gt; when running Print Invoices - 1/17/2018==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When running Print Invoices, you get the following error:&lt;br /&gt;
&lt;br /&gt;
[[File:PrintInvoicesException.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: There is a field in the customer table called STMT_CUST_NO (Statement Customer). There is no integrity on this field -- the user can type whatever they want in it. At Invoicing time, the system checks to see if the STMT_CUST_NO exists, and issues the error above if it does not.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Use Customer Maintenance to fix the Statement Customer field so that it contains either nothing or a valid customer number.&lt;br /&gt;
&lt;br /&gt;
==A/P and Payroll ACH Export no longer export valid files in Keystone 3.0 thru 3.1 - 1/16/2017==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue has been fixed as of Keystone 3.1.1.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;NOTE: Not all ACH export files require a security record. If the first column of the first line of the ACH file is a '1', there is no security record and the export file should be accepted.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When generating an ACH export file in A/P or Payroll in Keystone 3.0 thru 3.1, the ACH file is rejected by the bank.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: Keystone 3.x is developed on a newer version of Delphi that uses Unicode strings. Each character in a Unicode string is 2 bytes instead of 1. The &amp;quot;security record&amp;quot; at the beginning of the ACH file needs to be output as the older Ansi string style (1 byte per character.) In Keystone 3.0 thru 3.1, this string is output as a Unicode string (2 bytes per character.) &lt;br /&gt;
&lt;br /&gt;
Here is an example of what the security record should look like in the export file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$$ADD ID=WARUSXXX BID='NWFACHXXXXXXXX'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is an example of what the security record looks like when exported with Keystone 3.0 thru 3.1:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$ $ A D D   I D = W A R U S X X X   B &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
WORKAROUND: &lt;br /&gt;
* Start IBCONSOLE.&lt;br /&gt;
* Go into the company database and open the 'CMTACCT' table.&lt;br /&gt;
* Locate the correct ACH bank account and scroll to the 'DD_SECURITY_REC' field.&lt;br /&gt;
* The field will display as '(MEMO)'. Double-click the field to open the memo editor.&lt;br /&gt;
* Select the *entire* field and copy it to the clipboard using CTRL+C.&lt;br /&gt;
* Open the ACH export file in Notepad.&lt;br /&gt;
* Select the *entire* first line and press CTRL+V. This will replace the incorrect header with the correct one.&lt;br /&gt;
* Save the ACH export file and resubmit.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Upgrade to Keystone 3.1.1.&lt;br /&gt;
&lt;br /&gt;
==Updating to Keystone 3.x gives message that your Windows version is not supported - 12/17/2016==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When starting a Workstation after the Server has been updated to Keystone 3.x, the workstation attempts to install the update but issues an error saying that your Windows version is not supported.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: The Keystone desktop shortcut has been configured for compatibility with Windows XP SP2 (see image below.) This &amp;quot;tricks&amp;quot; the update installer into thinking it is running on Windows XP instead of the actual version of Windows, and refuses to run since Keystone 3.x requires Windows Vista or higher.&lt;br /&gt;
&lt;br /&gt;
[[File:KeystoneShortcutWindowsCompatibility.PNG|400px]]&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Open the desktop shortcut properties, go to the &amp;quot;Compatibility&amp;quot; tab, and &amp;lt;b&amp;gt;un-check&amp;lt;/b&amp;gt; the box that says &amp;quot;Run this program in compatibility mode.&amp;quot; Restart Keystone and the update will install normally.&lt;br /&gt;
&lt;br /&gt;
==Backup/Restore when upgrading InterBase versions - 11/5/2016==&lt;br /&gt;
&lt;br /&gt;
When upgrading InterBase from one major version to another (for example, IB 7/2007/2009 -&amp;gt; IB XE7) you must backup and restore the Keystone databases (*.IB) as part of the process. You must backup &amp;lt;b&amp;gt;prior&amp;lt;/b&amp;gt; to upgrading InterBase, then restore &amp;lt;b&amp;gt;after&amp;lt;/b&amp;gt; the upgrade.&lt;br /&gt;
&lt;br /&gt;
There was a time when you could just upgrade InterBase and use the same *.IB file without doing this, but it was never recommended. Now it seems that bad things can happen (such as indexes getting corrupted which results in very slow Keystone performance.)&lt;br /&gt;
&lt;br /&gt;
The company database(s) can be easily done from the Keystone menu using the backup/restore options on the System Maintenance menu.&lt;br /&gt;
&lt;br /&gt;
The document imaging (CCWDOC.IB) and system databases (CCWSYS.IB) must be done manually as outlined at the wiki page below (NOTE: you can skip the company databases when you follow the wiki procedure and instead use the normal Keystone backup/restore options for them.)&lt;br /&gt;
&lt;br /&gt;
[[Interbase_XE_Update|InterBase XE Update]]&lt;br /&gt;
&lt;br /&gt;
==Device Aggregator and Multiple Companies (including Practice) - 8/1/2006==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue has been fixed as of Keystone 3.0 -- duplicate devices will be ignored by the Device Aggregator.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A very bizarre issue occurred at Environmental. For some unknown reason, status messages from GPS would suddenly cease to be processed by Keystone Dispatch.&lt;br /&gt;
&lt;br /&gt;
After digging through the logs, Craig and I discussed the issue and discovered this when looking at the Devices setup on their system:&lt;br /&gt;
&lt;br /&gt;
[[File:DevAggMultCos1.png|640px]]&lt;br /&gt;
&lt;br /&gt;
Environmental has their main company as 001 and their Practice company as 002. Looking into the company database configuration table in the Keystone system database, we see that BOTH companies are setup as “Normal” companies:&lt;br /&gt;
&lt;br /&gt;
[[File:DevAggMultCos2.png|800px]]&lt;br /&gt;
&lt;br /&gt;
The Device Aggregator by default will ignore Practice company types, which would have prevented this situation, had their company 002 been properly configured as a PRACTICE company.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Installers should add this to their checklist: ALWAYS configure practice companies as “PRACTICE” company type when adding!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Keystone 2.9.17 and Keystone Mobile (On-Demand) Server - 6/22/2016==&lt;br /&gt;
&lt;br /&gt;
Due to a combination of circumstances customers who use Keystone On-Demand and are not yet on Keystone 3.x will need to update to Keystone 3.x in order for Keystone On-Demand to work correctly.&lt;br /&gt;
&lt;br /&gt;
Customers who are still on 2.x but have not updated to 2.9.17 should continue to work normally. Once they update to 2.9.17, Keystone On-Demand will not function properly.&lt;br /&gt;
&lt;br /&gt;
My suggestion at this point would be to get any remaining customers who are using Keystone On-Demand but are not yet on 3.0 updated as soon as possible.&lt;br /&gt;
&lt;br /&gt;
==Keystone Updates and &amp;quot;Run As Administrator&amp;quot; - 2/26/2016==&lt;br /&gt;
&lt;br /&gt;
While getting Silvi updated today, Jeff mentioned that GH support had told him that if a Keystone update failed to install that he should right-click the Keystone icon and select “Run As Administrator.”&lt;br /&gt;
&lt;br /&gt;
First point: You should NEVER have to do this. The update is designed with Windows security in mind, and automatically starts itself with the necessary permissions.&lt;br /&gt;
&lt;br /&gt;
Second point: When installing a Keystone update, if you double-click the Keystone icon and the update fails to install, this is an indication of a Windows security configuration issue. If you right-click and select “Run as Administrator” to get the update installed, it will likely lead to problems down the road when users try to run Keystone.&lt;br /&gt;
&lt;br /&gt;
The bottom line is – if there is a problem with a Keystone update install, do not do the “Run as Administrator” shortcut, but work on getting the core Windows configuration issues resolved. In Silvi’s case, once we realized what was going on, it took their IT guy about 10 minutes to straighten this out.&lt;br /&gt;
&lt;br /&gt;
[[#Updating to Keystone 3.x gives message that your Windows version is not supported - 12/17/2016|See also this item for another potential issue with Keystone Updates.]]&lt;br /&gt;
&lt;br /&gt;
==Keystone 2.9.7 - Exception when starting Plant Maintenance - 2/19/2016==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.9.8.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
PROBLEM:&lt;br /&gt;
&lt;br /&gt;
When opening Plant Maintenance in 2.9.7, you may receive this error:&lt;br /&gt;
&lt;br /&gt;
:EDBException: cdsLookup3: Field ‘BILLING_PLANT_NO’ not found&lt;br /&gt;
&lt;br /&gt;
ANALYSIS:&lt;br /&gt;
&lt;br /&gt;
Note that it is difficult to re-create this in-house, because it requires that someone have started up one of the Dispatch/Ticketing options that also opens the plant lookup. The issue occurs because the office plant lookup query was changed to include the new BILLING_PLANT_NO field, but the Dispatch/Ticketing plant lookup queries were not. All three of these lookup queries share the same “cache key.” So if the Dispatch/Ticketing lookup is cached first, it does NOT contain the new BILLING_PLANT_NO field. When office Plant Maintenance is started, it determines that the plant lookup query does not need to be refreshed and uses the cached version instead. Unfortunately, the cached version does NOT have the new BILLING_PLANT_NO field, leading to the error.&lt;br /&gt;
&lt;br /&gt;
SOLUTION:&lt;br /&gt;
&lt;br /&gt;
This will be fixed in the next build of Keystone. As a workaround, you can check the “Disable Cache Datasets” option in the Keystone Application Server configuration page. (Please keep track of these if you do this as we will want to re-enable cache datasets when the fix is implemented.)&lt;br /&gt;
&lt;br /&gt;
==Trying to issue UPDATE/DELETE query in the XE7 version of IBConsole gets error - 2/11/2016==&lt;br /&gt;
&lt;br /&gt;
A change was made by Embarcadero to the XE7 version of IBConsole. When executing queries within IBConsole, by default only SELECT queries are allowed. Attempting to issue an UPDATE or DELETE query gives the following error:&lt;br /&gt;
&lt;br /&gt;
[[File:XE7IBConsoleUpdateError.png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[InterBase#Using UPDATE/DELETE queries in IBConsole XE7|Please see this topic for the solution.]]&lt;br /&gt;
&lt;br /&gt;
==Keystone 2.9.2 Installer Issue with InterBase XE7 64-bit - 1/7/2016==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.9.3&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A problem has been discovered in the Keystone 2.9.2 installer. The situation that occurs is this (assuming a new install on a clean machine):&lt;br /&gt;
 &lt;br /&gt;
#InterBase XE7 64-bit installed&lt;br /&gt;
#Keystone 2.9.2 installed&lt;br /&gt;
#After Keystone license screen, an error message appears indicating that the “ISQL.EXE” command could not be executed.&lt;br /&gt;
&lt;br /&gt;
The cause of this is that both InterBase XE7 and Keystone 2.9.2 rely on a shared Windows DLL (MSVCR120.DLL.) There are two versions of this file installed by InterBase XE7 64-bit: the 32-bit version installs into C:\WINDOWS\SYSWOW64 and the 64-bit version installs into C:\WINDOWS\SYSTEM32. After Keystone 2.9.2 is installed, the 32-bit version of MSVCR120.DLL remains but the 64-bit version of MSVCR120.DLL no longer exists. This causes the InterBase “ISQL.EXE” command to fail.&lt;br /&gt;
&lt;br /&gt;
To prevent more customers from experiencing this issue I have pulled the Keystone 2.9.2 update. I’ve got a fix in place and tested and am working on a Keystone 2.9.3 release build. Once this is ready I’ll send another email.&lt;br /&gt;
&lt;br /&gt;
If you encounter this issue on an existing customer after they update to Keystone 2.9.2, please contact me and I will implement a fix. (NOTE: If an existing customer has this problem and installs Keystone 2.9.3 it will NOT fix the issue.)&lt;br /&gt;
&lt;br /&gt;
==Double-click to edit items on-the-fly in Keystone - 8/13/2015==&lt;br /&gt;
&lt;br /&gt;
As of Keystone 2.8.2 there is a new system option (in the System-Wide section) called “Edit On The Fly”. &lt;br /&gt;
&lt;br /&gt;
This option defaults to True.&lt;br /&gt;
&lt;br /&gt;
You can set it to False, which will not allow that user to double-click a lookup item (e.g. Product Code) to launch the file maintenance program associated with that item. &lt;br /&gt;
&lt;br /&gt;
This will allow you to set this option to False for remote desktop users who get into trouble when they double-click a Product Code in Order Maintenance, but instead of double-clicking they triple or quad click.&lt;br /&gt;
&lt;br /&gt;
==Keystone Company Database Backup Fails - 4/9/2015==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.6.7&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An issue was discovered at Moritz Concrete that was causing backups of the company database within Keystone to fail with the following error:&lt;br /&gt;
&lt;br /&gt;
[[File:KeystoneBackupFails.png|400px]]&lt;br /&gt;
&lt;br /&gt;
Manually running the GBAK command from the command prompt worked fine.&lt;br /&gt;
&lt;br /&gt;
When Keystone backs up the company database, it first uses the InterBase GBAK command to make a backup of the database to a temporary file. This temporary file is (normally) located in the following subfolder underneath the Windows temporary folder:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;Windows Temp Folder&amp;gt;\GivenHansco\Keystone&lt;br /&gt;
&lt;br /&gt;
Because the “GivenHansco\Keystone” folder doesn’t exist on a new install, Keystone will create this folder the first time the user attempts to backup. &lt;br /&gt;
&lt;br /&gt;
Prior to Keystone 2.6.7, Keystone would “auto-create” this folder *once* for each Application Server run. (In other words, if you reboot the server, causing the Application Server to restart, it would “auto-create” this folder on the next attempt to backup.) As part of attempting to solve the problem at Moritz, Don deleted the files and sub-folders within the Windows temp folder. Since the Application Server was still running, it did not attempt to “auto-create” the necessary folder and this caused Keystone backup to fail.&lt;br /&gt;
&lt;br /&gt;
As of Keystone 2.6.7, this folder will be “auto-created” as needed for every attempt to backup the database. &lt;br /&gt;
&lt;br /&gt;
==Dispatch Schedule gets error &amp;quot;Multiple Rows for Singleton Select&amp;quot; at startup - 12/31/2013==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.7.2&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For customers that upgraded to versions 2.7.0 or 2.7.1, they may get the following error when they attempt to start the Dispatch Schedule:&lt;br /&gt;
&lt;br /&gt;
:“Multiple Rows for Singleton Select”&lt;br /&gt;
&lt;br /&gt;
To fix this, run the following SQL commands using IBConsole:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SET TERM ^ ;&lt;br /&gt;
&lt;br /&gt;
CREATE PROCEDURE IBCO1249_FIX_VOIDLOADS&lt;br /&gt;
AS&lt;br /&gt;
DECLARE VARIABLE ORDER_SESSION_NO INTEGER;&lt;br /&gt;
DECLARE VARIABLE ORDER_TRANS_NO INTEGER;&lt;br /&gt;
DECLARE VARIABLE ORDER_LOAD_NO INTEGER;&lt;br /&gt;
DECLARE VARIABLE TEMP_CNT INTEGER;&lt;br /&gt;
BEGIN&lt;br /&gt;
FOR SELECT ORDER_SESSION_NO, ORDER_TRANS_NO, ORDER_LOAD_NO, COUNT(*)&lt;br /&gt;
  FROM ARTPTKHD&lt;br /&gt;
   WHERE (ORDER_LOAD_NO IS NOT NULL)&lt;br /&gt;
    GROUP BY ORDER_SESSION_NO, ORDER_TRANS_NO, ORDER_LOAD_NO&lt;br /&gt;
     HAVING (COUNT(*) &amp;gt; 1)&lt;br /&gt;
      INTO :ORDER_SESSION_NO, :ORDER_TRANS_NO, :ORDER_LOAD_NO, :TEMP_CNT&lt;br /&gt;
DO&lt;br /&gt;
  UPDATE ARTPTKHD&lt;br /&gt;
   SET ORDER_LOAD_NO = NULL&lt;br /&gt;
    WHERE (ORDER_SESSION_NO = :ORDER_SESSION_NO) AND&lt;br /&gt;
          (ORDER_TRANS_NO = :ORDER_TRANS_NO) AND&lt;br /&gt;
          (ORDER_LOAD_NO = :ORDER_LOAD_NO) AND&lt;br /&gt;
          ((VOID_FLAG = 'Y') OR (VOID_SESSION_NO IS NOT NULL));&lt;br /&gt;
END&lt;br /&gt;
^&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
EXECUTE PROCEDURE IBCO1249_FIX_VOIDLOADS;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(be sure to COMMIT after this command)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DROP PROCEDURE IBCO1249_FIX_VOIDLOADS;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Print Invoices generates duplicate numbers when printing from the preview screen - 5/2/2013==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.6.1&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We have discovered a problem with Print Invoices (affects all reports but Print Invoices is the worst) when the user prints from the preview screen.&lt;br /&gt;
&lt;br /&gt;
If the user clicks the PRINT button while previewing invoices by using the F12 key, and then immediately hits the F12 key again, this will cause two runs of Print Invoices. Unfortunately only some of the temporary information is cleared between the runs, which causes duplicate invoice numbers and missing tax &amp;amp; g/l transactions.&lt;br /&gt;
&lt;br /&gt;
For now, users should NOT use F12 on the preview screen while previewing invoices. We are working on a fix for Keystone.&lt;br /&gt;
&lt;br /&gt;
==Extra products with strange descriptions appearing in Product Code drop-down list in Ticket Maintenance, Ticket Printing and Order Maintenance - 2/14/2013==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This issue was fixed in Keystone 2.5.24&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This was discovered at Twin Cities after updating to Keystone 2.5.23. &lt;br /&gt;
&lt;br /&gt;
There is a bug in the new database procedure that returns the list of products for the Product Code drop-down list. However, as a workaround you can do the following query on the customer’s system and it will fix the drop-down list:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
UPDATE ARTPROD&lt;br /&gt;
SET LINK_PRICE_PRODUCT = null&lt;br /&gt;
  WHERE (LINK_PRICE_PRODUCT = '');&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Dispatch Schedule gives never-ending Access Violation errors at startup - 12/17/2009==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When starting the Dispatch Schedule, you get a never-ending series of Access Violation error boxes. Also, Dispatch Order Maintenance does not start at all.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: There are old versions of some Keystone libraries (*.BPL) in the Keystone BIN directory. Files with the '.BPL' extension should exist only in the LIB directory.&lt;br /&gt;
 &lt;br /&gt;
SOLUTION: Check the BIN directory under the Keystone root directory for the presence of any files with a '.BPL' extension. If any are found, delete them. &lt;br /&gt;
&lt;br /&gt;
==Sales Tax Calculation Problems Converting to Keystone 2.2==&lt;br /&gt;
&lt;br /&gt;
New Diagnostic Query: [[Keystone 2.2 Sales Tax Conversion Diagnostics]]&lt;br /&gt;
&lt;br /&gt;
==Performance problem when closing out of menu options as of 2.2.4 - 12/10/2008==&lt;br /&gt;
&lt;br /&gt;
Keystone 2.2.4 introduced a performance problem when closing out of menu options. Due to a faulty database trigger, customers with large amounts of historical data would notice that the EXE continued to run for up to 20 seconds after the program was closed. When chaining from one program to another (i.e., editing a vendor from A/P inquiry) the calling program would have to wait for this delay before user input would be accepted. &lt;br /&gt;
&lt;br /&gt;
This performance problem has been fixed as of 2.2.15. It is highly recommended that all 2.2.x customers upgrade to this version as soon as possible.&lt;br /&gt;
&lt;br /&gt;
==Old Device Server (ccdevsv.exe) removed as of 2.2.4 - 10/14/2008==&lt;br /&gt;
&lt;br /&gt;
As of Keystone 2.2.4, the old device server (ccdevsv.exe) has been removed from the installer.&lt;br /&gt;
&lt;br /&gt;
Any customers using the old device server with Keystone 2.2.x should be moved to the new device server/aggregator as soon as possible.&lt;br /&gt;
&lt;br /&gt;
Going forward, there is no guarantee that the old device server will continue to work with Keystone.&lt;br /&gt;
&lt;br /&gt;
==Never copy IB database files between systems! - 10/10/2008==&lt;br /&gt;
&lt;br /&gt;
It is very important when moving Keystone database files between systems that you backup the database on the source system and restore it on the target system. &lt;br /&gt;
&lt;br /&gt;
NEVER COPY .IB FILES BETWEEN SYSTEMS! If the source system is running IB 2007 and the target is running IB 7, the copied .IB file will not work!&lt;br /&gt;
&lt;br /&gt;
==Dispatch - Lose trucks for active orders when End of Day is run on live tickets - 04/30/2008==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Dispatch End of Day causes trucks to disappear from Schedule Screen.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: End of Day removes tickets from ARTPTKHD.  Data in the ARTPTKHD/DT is required for the loads to show correctly on the schedule screen.  All loads for associated with missing tickets disappear.  If a truck is in the returning status, it will still show on available truck.  Any truck on a load that wasn't returning will disappear.&lt;br /&gt;
&lt;br /&gt;
THE FIX:&lt;br /&gt;
&lt;br /&gt;
View todays tickets that have been imported:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select ticket_no,order_code,order_load_no,truck_no,return_plant_dt from arttckhd t&lt;br /&gt;
where ticket_date='4/30'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
View the associated loads&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select l.* from ditprjld l&lt;br /&gt;
where&lt;br /&gt;
 exists (&lt;br /&gt;
select order_session_no,order_trans_no,ticket_no,order_code,order_load_no,truck_no,leave_job_dt from arttckhd t&lt;br /&gt;
where ticket_date='4/30' &lt;br /&gt;
 and t.order_session_no=l.order_session_no and t.order_trans_no=l.order_trans_no and l.load_no=t.order_load_no)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Review Today's loads with no associated plant ticket (revised way to view - 11/10/08)&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select l.* from ditprjld l&lt;br /&gt;
where tgt_depart_dt&amp;gt;cast('today' as date) and&lt;br /&gt;
 not exists (&lt;br /&gt;
select order_session_no,order_trans_no,ticket_no,order_code,order_load_no,truck_no,leave_job_dt from artptkhd t&lt;br /&gt;
where ticket_date=cast('today' as date)&lt;br /&gt;
 and t.order_session_no=l.order_session_no and t.order_trans_no=l.order_trans_no and l.load_no=t.order_load_no)&lt;br /&gt;
AND DEPART_DT IS NOT NULL&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fix any loads that are not Status 8&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
update ditprjld l&lt;br /&gt;
set return_dt=tgt_return_dt,status_col=8&lt;br /&gt;
where status_col&amp;lt;&amp;gt;8 and l.return_dt is null and &lt;br /&gt;
 exists (&lt;br /&gt;
select order_session_no,order_trans_no,ticket_no,order_code,order_load_no,truck_no,leave_job_dt from arttckhd t&lt;br /&gt;
where ticket_date='4/30' &lt;br /&gt;
 and t.order_session_no=l.order_session_no and t.order_trans_no=l.order_trans_no and l.load_no=t.order_load_no)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SOLUTION: An upcoming version of keystone will fix this problem.&lt;br /&gt;
&lt;br /&gt;
==A/R Void Invoices - Foreign key violation when using Automatic Reconcile option - 01/10/2008==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Foreign key violation exception when selecting the Automatic Reconciliation option.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: The user running the A/R Void Invoice program has never run Print Invoices. The Void Invoice program looks at the A/R G/L account system option that is saved by Print Invoices to determine the A/R G/L account to use for the automatic reconciliation.&lt;br /&gt;
&lt;br /&gt;
WORKAROUND: Login as the user who wants to void the invoice, and run Print Invoices in Preview mode. This will save the appropriate system option.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Version 2.1 will include a fix which will get the A/R G/L account from the invoice that is being voided.&lt;br /&gt;
&lt;br /&gt;
==HIT User only for GivenHansco Staff - 01/04/2008==&lt;br /&gt;
&lt;br /&gt;
Never give customers the HIT user name and password.  The HIT user has special function and security settings, including the bypassing of automatic backups when upgrading database versions.&lt;br /&gt;
&lt;br /&gt;
==Remote Ticketing Systems - Do Not Install by Backup up Office Data - 11/07/2007==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Remote Ticketing Systems created with an office backup expose the customers system to security risk.  Sensitive data can end up at remote locations.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Follow standard procedure for creating Remote Ticketing Systems.  This starts with a clean database.  We need to identify all remote systems that may have office data and provide an cleaning script.&lt;br /&gt;
&lt;br /&gt;
==Where are my Trucks?!?!?! - 10/16/2007==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Truck Disapears while dispatching.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: The most common cause of this is caused when:&lt;br /&gt;
a truck in returning status is assigned to a pre-ticket then&lt;br /&gt;
the pre-ticket load is voided then &lt;br /&gt;
the Return Truck to Previous order option is selected.&lt;br /&gt;
&lt;br /&gt;
This combinition of events leaves pointers in ARTTRUCK pointing to a voided record, and leaves the load record in a quasi-delivered state.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Development is redesigning the truck pointer logic to fix this.  In the mean time, when possible these problems can be passed to development for further diagnosis.&lt;br /&gt;
&lt;br /&gt;
NOTE: Manipulating Dispatch Data can have severe consequences.  The following update will only help specific situations.  It is presented here for only emergency cases.&lt;br /&gt;
&lt;br /&gt;
'''The Fix Process:'''&lt;br /&gt;
Note: Make sure this is the correct fix for the situation.  If the load actually shipped you should try to fix it up.  If the load hasn't shipped you can clear it as below.&lt;br /&gt;
&lt;br /&gt;
Examine the truck record...&lt;br /&gt;
&amp;lt;PRE&amp;gt;select * from arttruck where truck_no='XXX'&amp;lt;/PRE&amp;gt;&lt;br /&gt;
Record the Current Order and Load and Last Ticket Information.&lt;br /&gt;
&lt;br /&gt;
Reset the Truck pointers:&lt;br /&gt;
&amp;lt;PRE&amp;gt;UPDATE ARTTRUCK&lt;br /&gt;
SET LAST_TICKET_SESSION_NO=NULL, LAST_TICKET_TRANS_NO=NULL,CUR_ORDER_SESSION_NO=NULL,CUR_ORDER_TRANS_NO=NULL,CUR_ORDER_LOAD_NO=NULL&lt;br /&gt;
WHERE TRUCK_NO='91'&amp;lt;/PRE&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Examine the load.  If the load is partially completed reset it:&lt;br /&gt;
&amp;lt;PRE&amp;gt;UPDATE DITPRJLD&lt;br /&gt;
SET STATUS_COL=NULL,STATUS_DATETIME=NULL,TRUCK_NO=NULL,DEPART_DT=NULL,RETURN_DT=NULL&lt;br /&gt;
WHERE ORDER_SESSION_NO=94019 AND ORDER_TRANS_NO=7 AND LOAD_NO=1&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;select * from gptstatus where truck_no='91' order by seq_no desc&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Product Cost Rollup Doesn't seem to be working - 10/12/2007==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: Customer will run product cost rollup, but many of the costs will not be accurately calculated.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: &lt;br /&gt;
&lt;br /&gt;
Product cost rollup gets the cost from a Cost transaction in the table artprtrx.  For several versions of CompuCrete 1.6.x there was a bug where cost changes where not triggering the cost record to be written to Artprtrx.  The result is that cost changes were not updated for existing products, and never written at all for older products.&lt;br /&gt;
&lt;br /&gt;
As far as we know, there is no actual bug in Product Cost Rollup.  If one is found please advise support.  The problem that we see is that even though the product maintenance bug has been fixed for a long time, there will be some lingering products with incorrect or missing costs.&lt;br /&gt;
&lt;br /&gt;
SOLUTION:&lt;br /&gt;
Read through [[Identify and Fix Products With No Standard Cost Records]] and check for both missing and out of date costs.  If only a few products are problems, you can fix them by changing the cost to a lower cost, then resetting to the current cost.  If several products are wrong, then you will need to run the fix query.&lt;br /&gt;
&lt;br /&gt;
==Restore Database leads to Stream Error - 09/13/2007==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: When attempting to restore a company database backup, an error indicating &amp;quot;Stream Read Error&amp;quot; occurs.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION: &lt;br /&gt;
&lt;br /&gt;
The database restore code prior to version 2.0.16 would not properly handle a database size &amp;gt; 2GB. &amp;lt;b&amp;gt;The database would backup correctly&amp;lt;/b&amp;gt;, but when attempting to restore will incorrectly state the size of the original database, causing the error.&lt;br /&gt;
&lt;br /&gt;
SOLUTION: Upgrade to Keystone 2.0.16 or later.&lt;br /&gt;
&lt;br /&gt;
==System Lockup after Logging off Server - 05/01/2007==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: After logging off the server while KEYSTONE users are active, the following may occur:&lt;br /&gt;
&lt;br /&gt;
1. Users can no longer log in. The splash screen appears and then hangs.&lt;br /&gt;
&lt;br /&gt;
2. Users who were logged in cannot start additional menu options. The selected option never starts.&lt;br /&gt;
&lt;br /&gt;
3. Users who were logged in cannot log out of KEYSTONE. The message saying that KEYSTONE is ending hangs.&lt;br /&gt;
&lt;br /&gt;
EXPLANATION:&lt;br /&gt;
&lt;br /&gt;
The KEYSTONE Application Server is a DCOM server application. When the server is logged off, the Application Server is sent a message notifying it that the server is logging off. Shortly thereafter, a termination code is sent to the application, which is only partially processed. The Application Server continues to run and service any existing connections, but no new connections are accepted. &lt;br /&gt;
&lt;br /&gt;
PREVENTION:&lt;br /&gt;
&lt;br /&gt;
Once a user logs in to the server, they should never log out. The alternative is to use the &amp;quot;Lock Computer&amp;quot; function in Windows for security.&lt;br /&gt;
&lt;br /&gt;
SOLUTION:&lt;br /&gt;
&lt;br /&gt;
The only solution is to tell the currently logged in users to get out of KEYSTONE as much as possible. Then:&lt;br /&gt;
&lt;br /&gt;
1. On the server where the KEYSTONE Application Server is running, issue the DOS command:  &amp;lt;PRE&amp;gt;TELNET 127.0.0.1 6600&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. You will see a message from the Application Server. Type:  &amp;lt;PRE&amp;gt;KILLSERVER&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. You will see a warning message asking you to terminate the Application Server. Type: &amp;lt;PRE&amp;gt;Y&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. Now you need to check the Windows Task Manager and verify that the &amp;quot;ccasib6.exe&amp;quot; process is not running. If it is still running, repeat from step 1 until you have verified that the Application Server has terminated.&lt;br /&gt;
&lt;br /&gt;
5. Stop and Restart the Borland Socket Server service through Control Panel-&amp;gt;Administrative Tools-&amp;gt;Services.&lt;br /&gt;
&lt;br /&gt;
==Classic Conversions - 12/1/2006==&lt;br /&gt;
&lt;br /&gt;
Since the 1.8 classic conversion program has not been (nor will be) updated, the procedure going forward when upgrading a Compucrete classic customer will be to upgrade them from classic to 1.6, then web update to 1.8.&lt;br /&gt;
&lt;br /&gt;
==Web Update Problem - 11/30/2006==&lt;br /&gt;
&lt;br /&gt;
In builds 1.8.14 and 1.8.15, there is a problem with Web Update.&lt;br /&gt;
&lt;br /&gt;
Some symptoms are:&lt;br /&gt;
&lt;br /&gt;
1. The customer previously updated to 1.8.14, they successfully download 1.8.15, release it, restart CC, but it never installs.&lt;br /&gt;
&lt;br /&gt;
2. On multi-user systems, the clients may see &amp;quot;Application Server is older than client&amp;quot; or &amp;quot;Application Server is newer than client&amp;quot; depending on the order they installed the update.&lt;br /&gt;
&lt;br /&gt;
The correct solution is:&lt;br /&gt;
&lt;br /&gt;
1. Open IBConsole&lt;br /&gt;
&lt;br /&gt;
2. Open the CCWSYS.IB database&lt;br /&gt;
&lt;br /&gt;
3. Open the CCTUPD table&lt;br /&gt;
&lt;br /&gt;
4. Verify/change the UPDATE_VERSION field to the correct value &lt;br /&gt;
&lt;br /&gt;
5. Verify/change the PENDING_FLAG field is set to &amp;quot;Y&amp;quot;&lt;br /&gt;
&lt;br /&gt;
6. Commit the change&lt;br /&gt;
&lt;br /&gt;
==CompuCrete 1.8 Upgrades - 11/26/2006==&lt;br /&gt;
&lt;br /&gt;
As a precautionary measure, the following procedure should be done immediately prior to releasing the 1.8 upgrade.&lt;br /&gt;
&lt;br /&gt;
For each company database:&lt;br /&gt;
&lt;br /&gt;
1. Login to the company.&lt;br /&gt;
&lt;br /&gt;
2. Backup the company to hard disk. If any errors occur, STOP!!!&lt;br /&gt;
&lt;br /&gt;
3. Restore the company from the hard disk backup just created.&lt;br /&gt;
&lt;br /&gt;
Once this has been done for each company, release the 1.8 upgrade and login to each company, verifying that the company database upgrade completes without error.&lt;br /&gt;
&lt;br /&gt;
==Interbase fails to accept network connections - 11/3/2006==&lt;br /&gt;
&lt;br /&gt;
PROBLEM: There is a potential issue with Interbase 7.1 refusing to accept incoming network connections. &lt;br /&gt;
&lt;br /&gt;
SYMPTOMS: When the user starts CompuCrete, they see the Activation dialog.&lt;br /&gt;
&lt;br /&gt;
A message in the interbase.log file says:&lt;br /&gt;
&lt;br /&gt;
:Unable to complete network request to host &amp;quot;(servername)&amp;quot;.&lt;br /&gt;
:Error while listening for an incoming connection.&lt;br /&gt;
:An attempt was made to access a socket in a way forbidden by its access permissions.&lt;br /&gt;
&lt;br /&gt;
SOLUTION:&lt;br /&gt;
&lt;br /&gt;
This problem appears to be prevalent in Windows Server 2003. You need to modify the following registry key:&lt;br /&gt;
&lt;br /&gt;
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters&lt;br /&gt;
&lt;br /&gt;
Look for a key named &amp;quot;ReservedPorts&amp;quot;. If you don't see one, create a new multi-string value and give it this name.&lt;br /&gt;
&lt;br /&gt;
Right-click and select Modify.&lt;br /&gt;
&lt;br /&gt;
Add the following line to the end of the list (if there are existing entries):&lt;br /&gt;
:3050-3050&lt;br /&gt;
&lt;br /&gt;
Close the registry editor and reboot the server.&lt;br /&gt;
&lt;br /&gt;
==System Tables - 11/30/2005==&lt;br /&gt;
&lt;br /&gt;
It is VERY important that the CCTLIC and CCTUSER tables in the CompuCrete system database NEVER EVER be edited using IBConsole!&lt;br /&gt;
&lt;br /&gt;
These tables contain encoded security fields that are (partially) based on the content of several other fields within the table. If any of those fields are edited with IBConsole, the encoded security fields are no longer valid, and the user will receive the 'User table corrupt' error when they try to log in.&lt;br /&gt;
&lt;br /&gt;
If this happens, the only solution is to delete the affected user records out of CCTUSER and then use CompuCrete User Maintenance to add the users back in.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Stonemont_QC_Interface&amp;diff=638</id>
		<title>Stonemont QC Interface</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Stonemont_QC_Interface&amp;diff=638"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
==About the Interface==&lt;br /&gt;
&lt;br /&gt;
The Stonemont interface is a JSON REST server.  This sounds complicated but it's really just a web server that takes in requests like a web browser and serves back data in the JSON format.&lt;br /&gt;
&lt;br /&gt;
The specification [[Keystone Batch Control Quality Control Interface REST API]] gives you all the details you want (and more).&lt;br /&gt;
&lt;br /&gt;
==Preparing Keystone Data==&lt;br /&gt;
Keystone Setup doesn't require anything out of the ordinary but it does require an accurate, consistent and thoughtful setup.  The guidelines for a customer can be found on the Keytone Help site:  http://keystonehelp.compucrete.com/Creating_Mix_Designs&lt;br /&gt;
&lt;br /&gt;
The principles are:&lt;br /&gt;
*Separate product codes by plant&lt;br /&gt;
*Clean Mix Product IDs and Ingredient Product IDs&lt;br /&gt;
*Good choice of delimiter&lt;br /&gt;
*Accurately configure Product Base and Plant ID to match the product code&lt;br /&gt;
*Get the details correct (product class, product type etc.)&lt;br /&gt;
&lt;br /&gt;
You '''Do''' need to setup all mix product codes and all ingredient codes.&lt;br /&gt;
You '''Do Not''' need to setup the mix design.  The Stonemont system can handle this.&lt;br /&gt;
&lt;br /&gt;
==Install Rest Server==&lt;br /&gt;
New system interfaces installed in 2019 and beyond should be configured using KServer.&lt;br /&gt;
&lt;br /&gt;
Sample Kserver.INI&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[config]&lt;br /&gt;
&lt;br /&gt;
ports=8211,8212&lt;br /&gt;
[config_8212]&lt;br /&gt;
logevents=SERVER,ERROR,REQUEST,RESPONSE,QUERY&lt;br /&gt;
CoId=001&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can test the interface from a web browser (IE on a server is tough to use - try to use chrome if possible).  Try something like the following command:&lt;br /&gt;
&amp;lt;PRE&amp;gt;http://127.0.0.1:8212/rest/kbcqciapi1/001/connection&amp;lt;/PRE&amp;gt;&lt;br /&gt;
Obviously change the ip address and 001 to refer to a different computer and company ID&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then test the data setup using more advanced items.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
For a list of materials in company 002, plant 04:&lt;br /&gt;
&amp;lt;PRE&amp;gt;http://127.0.0.1:8212/rest/kbcqciapi1/002/materials/04&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For a list of mix designs in company 003, plant 10:&lt;br /&gt;
&amp;lt;PRE&amp;gt;http://127.0.0.1:8212/rest/kbcqciapi1/003/mixdesigns/10&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Statement_Laser&amp;diff=636</id>
		<title>Statement Laser</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Statement_Laser&amp;diff=636"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;PRE&amp;gt;&lt;br /&gt;
! ARSTM.FRM&lt;br /&gt;
! Standard Plain Paper Statement&lt;br /&gt;
!	12/17/04 PTM - New Layout&lt;br /&gt;
!			(Boxes, Proportional Font, Color)&lt;br /&gt;
!&lt;br /&gt;
&lt;br /&gt;
!&lt;br /&gt;
!   AVAILABLE CALCULATED FIELDS&lt;br /&gt;
!   ===========================&lt;br /&gt;
!&lt;br /&gt;
!  Field Name           Data Type	Description&lt;br /&gt;
!  -------------------- --------------- ---------------------------------------------------&lt;br /&gt;
!  CALC_AGDATEHI1	String		Aging 1 Ending Date&lt;br /&gt;
!  CALC_AGDATEHI2	String		Aging 2 Ending Date&lt;br /&gt;
!  CALC_AGDATEHI3	String		Aging 3 Ending Date&lt;br /&gt;
!  CALC_AGDATEHI4	String		Aging 4 Ending Date&lt;br /&gt;
!  CALC_AGDATEHI5	String		Aging 5 Ending Date&lt;br /&gt;
!  CALC_AGDATELO1	String		Aging 1 Beginning Date&lt;br /&gt;
!  CALC_AGDATELO2	String		Aging 2 Beginning Date&lt;br /&gt;
!  CALC_AGDATELO3	String		Aging 3 Beginning Date&lt;br /&gt;
!  CALC_AGDATELO4	String		Aging 4 Beginning Date&lt;br /&gt;
!  CALC_AGDATELO5	String		Aging 5 Beginning Date&lt;br /&gt;
!  CALC_AGING1		Currency	Aging 1 Total (most current)&lt;br /&gt;
!  CALC_AGING2		Currency	Aging 2 Total&lt;br /&gt;
!  CALC_AGING3		Currency	Aging 3 Total&lt;br /&gt;
!  CALC_AGING4		Currency	Aging 4 Total&lt;br /&gt;
!  CALC_AGING4&amp;amp;5	Currency	Aging 4 Total + Aging 5 Total&lt;br /&gt;
!  CALC_AGING5		Currency	Aging 5 Total (least current)&lt;br /&gt;
!  CALC_CREDITLIMITMSG	String		Credit Limit message ([LIMIT] = credit limit, [AVAIL] = available credit)&lt;br /&gt;
!  CALC_CREDITTERMS	String		Customer Terms&lt;br /&gt;
!  CALC_CUSTADDR1	String		Customer Name &amp;amp; Address Line 1&lt;br /&gt;
!  CALC_CUSTADDR2	String		Customer Name &amp;amp; Address Line 2&lt;br /&gt;
!  CALC_CUSTADDR3	String		Customer Name &amp;amp; Address Line 3&lt;br /&gt;
!  CALC_CUSTADDR4	String		Customer Name &amp;amp; Address Line 4&lt;br /&gt;
!  CALC_DISCBALDUE	Currency	Discounted Balance Due (CALC_TOTALDUE - CALC_DISCTOTAL)&lt;br /&gt;
!  CALC_DISCDATE	String		Discount Valid Until Date&lt;br /&gt;
!  CALC_DISCOUNTMSG	String		Discount Message ([AMOUNt] = disc avail, [DATE] = discount valid date)&lt;br /&gt;
!  CALC_DISCTOTAL	Currency	Discount Total&lt;br /&gt;
!  CALC_DUNNINGMSG	String		Dunning Message&lt;br /&gt;
!  CALC_FINCHGBAL	Currency	Finance Charge Total&lt;br /&gt;
!  CALC_INVOICEBAL	Currency	Invoice Balance for current line&lt;br /&gt;
!  CALC_JOBTOTAL	Currency	Total Invoices for job&lt;br /&gt;
!  CALC_LASTJOB		String		Last Job Desc/Id processed&lt;br /&gt;
!  CALC_NFAGING1	Currency	Non-finance charge Aging 1 Total (most current)&lt;br /&gt;
!  CALC_NFAGING2	Currency	Non-finance charge Aging 2 Total&lt;br /&gt;
!  CALC_NFAGING3	Currency	Non-finance charge Aging 3 Total&lt;br /&gt;
!  CALC_NFAGING4	Currency	Non-finance charge Aging 4 Total&lt;br /&gt;
!  CALC_NFAGING4&amp;amp;5	Currency	Non-finance charge Aging 4 Total + Aging 5 Total&lt;br /&gt;
!  CALC_NFAGING5	Currency	Non-finance charge Aging 5 Total (least current)&lt;br /&gt;
!  CALC_PAIDTHISMOMSG	String		Total payments this month ([AMOUNT] = total payments)&lt;br /&gt;
!  CALC_PLANTTOTAL	Currency	Total Invoices for plant&lt;br /&gt;
!  CALC_PREVBALAMT	Currency	Previous Balance (balance forward only)&lt;br /&gt;
!  CALC_PREVBALDATE	String		Previous Balance Date (Aging 1 Beginning Date)&lt;br /&gt;
!  CALC_RETADDR1	String		Company Address Line 1&lt;br /&gt;
!  CALC_RETADDR2	String		Company Address Line 2&lt;br /&gt;
!  CALC_RETADDR3	String		Company Address Line 3&lt;br /&gt;
!  CALC_RETADDR4	String		Company Address Line 4&lt;br /&gt;
!  CALC_RUNNINGTOTAL	Currency	Cumulative invoice total&lt;br /&gt;
!  CALC_STMTDATE	String		Statement Date&lt;br /&gt;
!  CALC_STMTMSG1	String		Statement Message Line 1&lt;br /&gt;
!  CALC_STMTMSG2	String		Statement Message Line 2&lt;br /&gt;
!  CALC_STMTMSG3	String		Statement Message Line 3&lt;br /&gt;
!  CALC_STMTMSG4	String		Statement Message Line 4&lt;br /&gt;
!  CALC_TOTALDUE	Currency	Grand Total&lt;br /&gt;
&lt;br /&gt;
!  COND_PRINTCREDITLIMIT Boolean	True to print credit limit&lt;br /&gt;
!  COND_PRINTDISCOUNT	Boolean		True to print discount message&lt;br /&gt;
!  COND_PRINTDUNNING	Boolean		True to print dunning message &lt;br /&gt;
!  COND_PRINTPAIDTHISMO Boolean		True to print payments this month&lt;br /&gt;
!  COND_TAXABLE		Boolean		True if invoice has non-zero tax amount&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
FORM&lt;br /&gt;
        TITLE Plain Paper Statement&lt;br /&gt;
&lt;br /&gt;
        LENGTH 66       WIDTH 80        PRINTER ARStatement&lt;br /&gt;
	NEWPAGE&lt;br /&gt;
	FONTNAME Verdana&lt;br /&gt;
&lt;br /&gt;
HEADING &lt;br /&gt;
	LINE 2 COLUMN 4&lt;br /&gt;
	LEFT 24 IMAGE c:\xfr\ghlogo.jpg&lt;br /&gt;
&lt;br /&gt;
	FONTNAME Times New Roman&lt;br /&gt;
	FONTSIZE 36&lt;br /&gt;
	BOLD ON&lt;br /&gt;
		COLUMN 1	RIGHT 77 TEXT STATEMENT&lt;br /&gt;
	BOLD OFF&lt;br /&gt;
	FONTNAME Default&lt;br /&gt;
&lt;br /&gt;
	LINE +1&lt;br /&gt;
	FONTSIZE 6&lt;br /&gt;
		COLUMN 30				FIELD CALC_RETADDR2&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
	LINE +1&lt;br /&gt;
	FONTSIZE 6&lt;br /&gt;
		COLUMN 30				FIELD CALC_RETADDR3&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
	LINE +1&lt;br /&gt;
	FONTSIZE 6&lt;br /&gt;
		COLUMN 30				FIELD CALC_RETADDR4&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
&lt;br /&gt;
		COLUMN 56				TEXT As Of&lt;br /&gt;
							FIELD CALC_STMTDATE&lt;br /&gt;
&lt;br /&gt;
        LINE +5 COLUMN 12                               FIELD CALC_CUSTADDR1&lt;br /&gt;
&lt;br /&gt;
        LINE +1 COLUMN 12                               FIELD CALC_CUSTADDR2&lt;br /&gt;
&lt;br /&gt;
        LINE +1 COLUMN 12                               FIELD CALC_CUSTADDR3&lt;br /&gt;
&lt;br /&gt;
        LINE +1 COLUMN 12                               FIELD CALC_CUSTADDR4&lt;br /&gt;
&lt;br /&gt;
	LINE +2	COLUMN 58				TEXT Your Terms Are&lt;br /&gt;
        LINE +1 COLUMN 12				TEXT Account #&lt;br /&gt;
							FIELD CUST_NO&lt;br /&gt;
		COLUMN 58                               FIELD CALC_CREDITTERMS&lt;br /&gt;
&lt;br /&gt;
	LINE +2 COLUMN 4&lt;br /&gt;
	BOX 1,74,0,20&lt;br /&gt;
	BOX 32,74&lt;br /&gt;
	BOX 32,9&lt;br /&gt;
	BOX 32,17&lt;br /&gt;
	BOX 32,30&lt;br /&gt;
	BOX 32,43&lt;br /&gt;
	BOX 32,56&lt;br /&gt;
		COLUMN 4	CENTER 8		TEXT Date&lt;br /&gt;
		COLUMN 13	RIGHT 7			TEXT Invoice&lt;br /&gt;
		COLUMN 21	RIGHT 12		TEXT Charges&lt;br /&gt;
		COLUMN 34	RIGHT 12		TEXT Credits&lt;br /&gt;
		COLUMN 47	RIGHT 12		TEXT Balance&lt;br /&gt;
		COLUMN 61				TEXT Job Id&lt;br /&gt;
	&lt;br /&gt;
DETAIL&lt;br /&gt;
        LENGTH 30&lt;br /&gt;
&lt;br /&gt;
	LINE +1&lt;br /&gt;
                COLUMN 4        RIGHT 8 FORMAT m/dd/yy  FIELD INVOICE_DATE&lt;br /&gt;
                COLUMN 13       RIGHT 7                 FIELD INVOICE_NO &lt;br /&gt;
		COLUMN 21	FORMAT #########.00	FIELD DEBIT_AMOUNT&lt;br /&gt;
		COLUMN 34	FORMAT #########.00	FIELD CREDIT_AMOUNT	&lt;br /&gt;
		COLUMN 47	FORMAT #########.00	FIELD CALC_INVOICEBAL	&lt;br /&gt;
                COLUMN 61                               FIELD JOB_PO_LOC &lt;br /&gt;
&lt;br /&gt;
DETAIL 2&lt;br /&gt;
	LINE +1 COLUMN 47	FORMAT #########.00	FIELD CALC_JOBTOTAL&lt;br /&gt;
		COLUMN 61	TEXT SUB-TOTAL&lt;br /&gt;
&lt;br /&gt;
DETAIL 3&lt;br /&gt;
	LINE +1&lt;br /&gt;
                COLUMN 4        RIGHT 8 FORMAT m/dd/yy  FIELD CALC_PREVBALDATE&lt;br /&gt;
		COLUMN 13	TEXT Previous&lt;br /&gt;
		COLUMN 21	TEXT Balance&lt;br /&gt;
		COLUMN 47	FORMAT #########.00	FIELD CALC_PREVBALAMT&lt;br /&gt;
                COLUMN 61                               FIELD CALC_LASTJOB&lt;br /&gt;
&lt;br /&gt;
DETAIL 4&lt;br /&gt;
	LINE +1 COLUMN 4	TEXT PLANT:&lt;br /&gt;
                COLUMN 13                               FIELD PLANT_NAME&lt;br /&gt;
                COLUMN 47	FORMAT #########.00	FIELD CALC_PLANTTOTAL&lt;br /&gt;
		COLUMN 61	TEXT SUB-TOTAL&lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
TOTAL  &lt;br /&gt;
	LINE 50 COLUMN 1&lt;br /&gt;
	FONTSIZE 8&lt;br /&gt;
                COLUMN 1 	CENTER 80               FIELD CALC_STMTMSG1&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
	LINE +1 COLUMN 1&lt;br /&gt;
	FONTSIZE 8&lt;br /&gt;
                COLUMN 1 	CENTER 80               FIELD CALC_STMTMSG2&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
	LINE +1 COLUMN 1&lt;br /&gt;
	FONTSIZE 8&lt;br /&gt;
                COLUMN 1 	CENTER 80               FIELD CALC_STMTMSG3&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
	LINE +1 COLUMN 1&lt;br /&gt;
	FONTSIZE 8&lt;br /&gt;
                COLUMN 1 	CENTER 80               FIELD CALC_STMTMSG4&lt;br /&gt;
	FONTSIZE 0&lt;br /&gt;
&lt;br /&gt;
        LINE +1 COLUMN 4&lt;br /&gt;
	BOX 2,74,0,20&lt;br /&gt;
	BOX 3,74&lt;br /&gt;
		COLUMN 5        RIGHT 12                FIELD CALC_AGDATELO1&lt;br /&gt;
                COLUMN 17       RIGHT 12                FIELD CALC_AGDATELO2&lt;br /&gt;
                COLUMN 29       RIGHT 12                FIELD CALC_AGDATELO3&lt;br /&gt;
                COLUMN 41       RIGHT 12                FIELD CALC_AGDATELO4&lt;br /&gt;
                COLUMN 53       RIGHT 12                FIELD CALC_AGDATELO5&lt;br /&gt;
&lt;br /&gt;
        LINE +1 COLUMN 5        RIGHT 12                FIELD CALC_AGDATEHI1&lt;br /&gt;
                COLUMN 17       RIGHT 12                FIELD CALC_AGDATEHI2&lt;br /&gt;
                COLUMN 29       RIGHT 12                FIELD CALC_AGDATEHI3&lt;br /&gt;
                COLUMN 41       RIGHT 12                FIELD CALC_AGDATEHI4&lt;br /&gt;
                COLUMN 53       RIGHT 12                FIELD CALC_AGDATEHI5&lt;br /&gt;
	BOLD ON&lt;br /&gt;
		COLUMN 65	RIGHT 12 		TEXT Total Due&lt;br /&gt;
	BOLD OFF&lt;br /&gt;
&lt;br /&gt;
	LINE +1 COLUMN 5	FORMAT #########.00	FIELD CALC_AGING1&lt;br /&gt;
		COLUMN 17	FORMAT #########.00	FIELD CALC_AGING2&lt;br /&gt;
		COLUMN 29	FORMAT #########.00	FIELD CALC_AGING3&lt;br /&gt;
		COLUMN 41	FORMAT #########.00	FIELD CALC_AGING4&lt;br /&gt;
		COLUMN 53	FORMAT #########.00	FIELD CALC_AGING5&lt;br /&gt;
	BOLD ON&lt;br /&gt;
		COLUMN 65	FORMAT #########.00	FIELD CALC_TOTALDUE&lt;br /&gt;
	BOLD OFF&lt;br /&gt;
&lt;br /&gt;
   IF COND_PRINTDUNNING&lt;br /&gt;
	COLOR clRed&lt;br /&gt;
        LINE +2 COLUMN 1        CENTER 80               FIELD CALC_DUNNINGMSG&lt;br /&gt;
	COLOR clBlack&lt;br /&gt;
   ENDIF&lt;br /&gt;
&lt;br /&gt;
   IF COND_PRINTPAIDTHISMO&lt;br /&gt;
        LINE +1 COLUMN 1        CENTER 80               FIELD CALC_PAIDTHISMOMSG&lt;br /&gt;
   ENDIF&lt;br /&gt;
  &lt;br /&gt;
   IF COND_PRINTCREDITLIMIT&lt;br /&gt;
        LINE +1 COLUMN 1        CENTER 80               FIELD CALC_CREDITLIMITMSG&lt;br /&gt;
   ENDIF&lt;br /&gt;
&lt;br /&gt;
   IF COND_PRINTDISCOUNT&lt;br /&gt;
        LINE +1 COLUMN 1        CENTER 80               FIELD CALC_DISCOUNTMSG&lt;br /&gt;
   ENDIF&lt;br /&gt;
&lt;br /&gt;
TOTAL 2&lt;br /&gt;
	LINE +2 COLUMN 36	TEXT CONTINUED&lt;br /&gt;
&lt;br /&gt;
TOTAL 4&lt;br /&gt;
	LINE +6 COLUMN 26	TEXT GRAND TOTAL&lt;br /&gt;
		COLUMN 45	FIELD DUE_NOW_TOTAL	FORMAT PIC(ZZZZZZZZZZ.ZZ-)&lt;br /&gt;
	LINE +2 COLUMN 26	TEXT FUTURE TOTAL&lt;br /&gt;
		COLUMN 45	FIELD FUTURE_DUE	FORMAT PIC(ZZZZZZZZZZ.ZZ-)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=State_FIPS_Codes&amp;diff=634</id>
		<title>State FIPS Codes</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=State_FIPS_Codes&amp;diff=634"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| {{table}}&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''State Abbreviation'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''FIPS Code'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''State Name'''&lt;br /&gt;
|-&lt;br /&gt;
| AK||2||ALASKA&lt;br /&gt;
|-&lt;br /&gt;
| AL||1||ALABAMA&lt;br /&gt;
|-&lt;br /&gt;
| AR||5||ARKANSAS&lt;br /&gt;
|-&lt;br /&gt;
| AS||60||AMERICAN SAMOA&lt;br /&gt;
|-&lt;br /&gt;
| AZ||4||ARIZONA&lt;br /&gt;
|-&lt;br /&gt;
| CA||6||CALIFORNIA&lt;br /&gt;
|-&lt;br /&gt;
| CO||8||COLORADO&lt;br /&gt;
|-&lt;br /&gt;
| CT||9||CONNECTICUT&lt;br /&gt;
|-&lt;br /&gt;
| DC||11||DISTRICT OF COLUMBIA&lt;br /&gt;
|-&lt;br /&gt;
| DE||10||DELAWARE&lt;br /&gt;
|-&lt;br /&gt;
| FL||12||FLORIDA&lt;br /&gt;
|-&lt;br /&gt;
| GA||13||GEORGIA&lt;br /&gt;
|-&lt;br /&gt;
| GU||66||GUAM&lt;br /&gt;
|-&lt;br /&gt;
| HI||15||HAWAII&lt;br /&gt;
|-&lt;br /&gt;
| IA||19||IOWA&lt;br /&gt;
|-&lt;br /&gt;
| ID||16||IDAHO&lt;br /&gt;
|-&lt;br /&gt;
| IL||17||ILLINOIS&lt;br /&gt;
|-&lt;br /&gt;
| IN||18||INDIANA&lt;br /&gt;
|-&lt;br /&gt;
| KS||20||KANSAS&lt;br /&gt;
|-&lt;br /&gt;
| KY||21||KENTUCKY&lt;br /&gt;
|-&lt;br /&gt;
| LA||22||LOUISIANA&lt;br /&gt;
|-&lt;br /&gt;
| MA||25||MASSACHUSETTS&lt;br /&gt;
|-&lt;br /&gt;
| MD||24||MARYLAND&lt;br /&gt;
|-&lt;br /&gt;
| ME||23||MAINE&lt;br /&gt;
|-&lt;br /&gt;
| MI||26||MICHIGAN&lt;br /&gt;
|-&lt;br /&gt;
| MN||27||MINNESOTA&lt;br /&gt;
|-&lt;br /&gt;
| MO||29||MISSOURI&lt;br /&gt;
|-&lt;br /&gt;
| MS||28||MISSISSIPPI&lt;br /&gt;
|-&lt;br /&gt;
| MT||30||MONTANA&lt;br /&gt;
|-&lt;br /&gt;
| NC||37||NORTH CAROLINA&lt;br /&gt;
|-&lt;br /&gt;
| ND||38||NORTH DAKOTA&lt;br /&gt;
|-&lt;br /&gt;
| NE||31||NEBRASKA&lt;br /&gt;
|-&lt;br /&gt;
| NH||33||NEW HAMPSHIRE&lt;br /&gt;
|-&lt;br /&gt;
| NJ||34||NEW JERSEY&lt;br /&gt;
|-&lt;br /&gt;
| NM||35||NEW MEXICO&lt;br /&gt;
|-&lt;br /&gt;
| NV||32||NEVADA&lt;br /&gt;
|-&lt;br /&gt;
| NY||36||NEW YORK&lt;br /&gt;
|-&lt;br /&gt;
| OH||39||OHIO&lt;br /&gt;
|-&lt;br /&gt;
| OK||40||OKLAHOMA&lt;br /&gt;
|-&lt;br /&gt;
| OR||41||OREGON&lt;br /&gt;
|-&lt;br /&gt;
| PA||42||PENNSYLVANIA&lt;br /&gt;
|-&lt;br /&gt;
| PR||72||PUERTO RICO&lt;br /&gt;
|-&lt;br /&gt;
| RI||44||RHODE ISLAND&lt;br /&gt;
|-&lt;br /&gt;
| SC||45||SOUTH CAROLINA&lt;br /&gt;
|-&lt;br /&gt;
| SD||46||SOUTH DAKOTA&lt;br /&gt;
|-&lt;br /&gt;
| TN||47||TENNESSEE&lt;br /&gt;
|-&lt;br /&gt;
| TX||48||TEXAS&lt;br /&gt;
|-&lt;br /&gt;
| UT||49||UTAH&lt;br /&gt;
|-&lt;br /&gt;
| VA||51||VIRGINIA&lt;br /&gt;
|-&lt;br /&gt;
| VI||78||VIRGIN ISLANDS&lt;br /&gt;
|-&lt;br /&gt;
| VT||50||VERMONT&lt;br /&gt;
|-&lt;br /&gt;
| WA||53||WASHINGTON&lt;br /&gt;
|-&lt;br /&gt;
| WI||55||WISCONSIN&lt;br /&gt;
|-&lt;br /&gt;
| WV||54||WEST VIRGINIA&lt;br /&gt;
|-&lt;br /&gt;
| WY||56||WYOMING&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Spectrum_Ticket_-_Extended_Format&amp;diff=632</id>
		<title>Spectrum Ticket - Extended Format</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Spectrum_Ticket_-_Extended_Format&amp;diff=632"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the much less common extneded format:&lt;br /&gt;
&lt;br /&gt;
{| {{table}}&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''FIELD'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''LENGTH'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''POS'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TYPE'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''FORMAT'''&lt;br /&gt;
|-&lt;br /&gt;
| DATE||8||1||C||MM/DD/YY&lt;br /&gt;
|-&lt;br /&gt;
| TIME||5||9||C||HH:MM&lt;br /&gt;
|-&lt;br /&gt;
| CUSTOMER CODE||10||14||C||&lt;br /&gt;
|-&lt;br /&gt;
| ACCOUNT #||10||24||C||&lt;br /&gt;
|-&lt;br /&gt;
| CUSTOMER NAME||30||34||C||&lt;br /&gt;
|-&lt;br /&gt;
| ADDRESS_1||30||64||C||&lt;br /&gt;
|-&lt;br /&gt;
| ADDRESS_2||30||94||C||&lt;br /&gt;
|-&lt;br /&gt;
| CITY||15||124||C||&lt;br /&gt;
|-&lt;br /&gt;
| STATE||3||139||C||&lt;br /&gt;
|-&lt;br /&gt;
| ZIP||10||142||C||&lt;br /&gt;
|-&lt;br /&gt;
| NOTES||30||152||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV1||30||182||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV2||30||212||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV3||30||242||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV4||30||272||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV5||30||302||C||&lt;br /&gt;
|-&lt;br /&gt;
| DELV6||30||332||C||&lt;br /&gt;
|-&lt;br /&gt;
| P.O.#||10||362||C||&lt;br /&gt;
|-&lt;br /&gt;
| S.O.#||10||372||C||&lt;br /&gt;
|-&lt;br /&gt;
| JOB #||2||382||C||&lt;br /&gt;
|-&lt;br /&gt;
| C.O.D.||1||384||C||&lt;br /&gt;
|-&lt;br /&gt;
| CREDIT CODE||4||385||C||&lt;br /&gt;
|-&lt;br /&gt;
| TAX CODE||4||389||C||&lt;br /&gt;
|-&lt;br /&gt;
| ProjectCode||9||393||C||&lt;br /&gt;
|-&lt;br /&gt;
| BATCH COST||8.2||402||C||&lt;br /&gt;
|-&lt;br /&gt;
| FORMULA||10||410||C||&lt;br /&gt;
|-&lt;br /&gt;
| form_desc||40||420||C||&lt;br /&gt;
|-&lt;br /&gt;
| LOAD SIZE||5.2||460||||&lt;br /&gt;
|-&lt;br /&gt;
| delv_add_1_ext||19||465||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE PER UNIT||7.2||484||||&lt;br /&gt;
|-&lt;br /&gt;
| ORDERED||7.2||491||||&lt;br /&gt;
|-&lt;br /&gt;
| DELIVERED||7.2||498||||&lt;br /&gt;
|-&lt;br /&gt;
| LOADS||5||505||||&lt;br /&gt;
|-&lt;br /&gt;
| TRUCK #||4||510||||&lt;br /&gt;
|-&lt;br /&gt;
| DRIVER #||5||514||||&lt;br /&gt;
|-&lt;br /&gt;
| DRIVERNAME||15||519||||&lt;br /&gt;
|-&lt;br /&gt;
| SLUMP||4.1||534||||&lt;br /&gt;
|-&lt;br /&gt;
| BATCH #||6||538||||&lt;br /&gt;
|-&lt;br /&gt;
| REMOTE_TKT_NO||7||544||||&lt;br /&gt;
|-&lt;br /&gt;
| PLANT #||2||551||||&lt;br /&gt;
|-&lt;br /&gt;
| TAX CHARGE||8.2||553||||&lt;br /&gt;
|-&lt;br /&gt;
| PREV TOTAL||8.2||561||||&lt;br /&gt;
|-&lt;br /&gt;
| SUB TOTAL||8.2||569||||&lt;br /&gt;
|-&lt;br /&gt;
| DISCOUNT||8.2||577||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL CHARGE||8.2||585||||&lt;br /&gt;
|-&lt;br /&gt;
| GRAND TOTAL||8.2||593||||&lt;br /&gt;
|-&lt;br /&gt;
| PCT_DISC||6||601||||&lt;br /&gt;
|-&lt;br /&gt;
| CALCIUM||4||607||||&lt;br /&gt;
|-&lt;br /&gt;
| MEMO1||19||611||||&lt;br /&gt;
|-&lt;br /&gt;
| MEMO2||19||630||||&lt;br /&gt;
|-&lt;br /&gt;
| TRUCK LEFT PLANT||5||649||||HH:MM 24 HR&lt;br /&gt;
|-&lt;br /&gt;
| TRUCK ON JOB||5||654||||HH:MM 24 HR&lt;br /&gt;
|-&lt;br /&gt;
| TRUCK LEFT JOB||5||659||||HH:MM 24 HR&lt;br /&gt;
|-&lt;br /&gt;
| TRUCK RETURN||5||664||||HH:MM 24 HR&lt;br /&gt;
|-&lt;br /&gt;
| DELV_ADD_2_EXT||19||669||||&lt;br /&gt;
|-&lt;br /&gt;
| DELV_ADD_3_EXT||19||688||||&lt;br /&gt;
|-&lt;br /&gt;
| USER 1||10||707||||&lt;br /&gt;
|-&lt;br /&gt;
| USER 2||10||717||||&lt;br /&gt;
|-&lt;br /&gt;
| USER 3||10||727||||&lt;br /&gt;
|-&lt;br /&gt;
| USER 4||10||737||||&lt;br /&gt;
|-&lt;br /&gt;
| USER 5||10||747||||&lt;br /&gt;
|-&lt;br /&gt;
| PRODUCT CODE 1||10||757||||&lt;br /&gt;
|-&lt;br /&gt;
| PRDESC1||30||767||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY ORDERED 1||7.2||797||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY DELIVERED 1||7.2||804||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY THIS BATCH 1||7.2||811||||&lt;br /&gt;
|-&lt;br /&gt;
| TXBL1||1||818||||&lt;br /&gt;
|-&lt;br /&gt;
| DISC1||1||819||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE 1||6.2||820||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL PRICE 1||7.2||826||||&lt;br /&gt;
|-&lt;br /&gt;
| PRODUCT CODE 2||10||833||||&lt;br /&gt;
|-&lt;br /&gt;
| PRDESC2||30||843||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY ORDERED 2||7.2||873||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY DELIVERED 2||7.2||880||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY THIS BATCH 2||7.2||887||||&lt;br /&gt;
|-&lt;br /&gt;
| TXBL2||1||894||||&lt;br /&gt;
|-&lt;br /&gt;
| DISC2||1||895||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE 2||6.2||896||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL PRICE 2||7.2||902||||&lt;br /&gt;
|-&lt;br /&gt;
| PRODUCT CODE 3||10||909||||&lt;br /&gt;
|-&lt;br /&gt;
| PRDESC3||30||919||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY ORDERED 3||7.2||949||||Y/N&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY DELIVERED 3||7.2||956||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY THIS BATCH 3||7.2||963||||&lt;br /&gt;
|-&lt;br /&gt;
| TXBL3||1||970||||&lt;br /&gt;
|-&lt;br /&gt;
| DISC3||1||971||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE 3||6.2||972||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL PRICE 3||7.2||978||||&lt;br /&gt;
|-&lt;br /&gt;
| PRODUCT CODE 4||10||985||||&lt;br /&gt;
|-&lt;br /&gt;
| PRDESC3||30||995||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY ORDERED 4||7.2||1025||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY DELIVERED 4||7.2||1032||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY THIS BATCH 4||7.2||1039||||&lt;br /&gt;
|-&lt;br /&gt;
| TXBL4||1||1046||||&lt;br /&gt;
|-&lt;br /&gt;
| DISC4||1||1047||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE 4||6.2||1048||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL PRICE 4||7.2||1054||||&lt;br /&gt;
|-&lt;br /&gt;
| PRODUCT CODE 5||10||1061||||&lt;br /&gt;
|-&lt;br /&gt;
| PRDESC5||30||1071||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY ORDERED 5||7.2||1101||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY DELIVERED 5||7.2||1108||||&lt;br /&gt;
|-&lt;br /&gt;
| QUANTITY THIS BATCH 5||7.2||1115||||&lt;br /&gt;
|-&lt;br /&gt;
| TXBL5||1||1122||||&lt;br /&gt;
|-&lt;br /&gt;
| DISC5||1||1123||||&lt;br /&gt;
|-&lt;br /&gt;
| PRICE 5||6.2||1124||||&lt;br /&gt;
|-&lt;br /&gt;
| TOTAL PRICE 5||7.2||1130||||&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Spectrum_Ticket_-_Accounting_Format&amp;diff=630</id>
		<title>Spectrum Ticket - Accounting Format</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Spectrum_Ticket_-_Accounting_Format&amp;diff=630"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This is the most common export for Alkon Spectrums.  It is known as the Accounting, Hansco or 822 Character format.&lt;br /&gt;
&lt;br /&gt;
Variations between versions affect the location of the Job, typically either pos 64 or 94.  In later versions the user defined fields can vary as 2 20 character fields and a 10 charater field.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
DATE                        1        C       8         MMDDYY  &lt;br /&gt;
TIME                        9        C       5         HH:MM  &lt;br /&gt;
CUSTOMER CODE              14        C      10         Your Code&lt;br /&gt;
ACCOUNT #                  24        C      10         &lt;br /&gt;
CUSTOMER NAME              34        C      30  &lt;br /&gt;
JOB NAME                   64        C&lt;br /&gt;
DELIVERY INST 1            94        C&lt;br /&gt;
P.O.#                     124        C      10  &lt;br /&gt;
S.O.#                     134        C      10  &lt;br /&gt;
N/A                       144        N       2  &lt;br /&gt;
C.O.D.                    146        C       1         Y/N  &lt;br /&gt;
N/A                       147        C       4  &lt;br /&gt;
TAX CODE                  151        C       4  &lt;br /&gt;
N/A                       155        N       8.2  &lt;br /&gt;
MIX DESIGN                163        C      10  &lt;br /&gt;
LOAD SIZE                 173        N       5.2  &lt;br /&gt;
PRICE PER UNIT            178        N       7.2  &lt;br /&gt;
N/A                       185        N       7.2  &lt;br /&gt;
DELIVERED                 192        N       7.2  &lt;br /&gt;
N/A                       199        N       5  &lt;br /&gt;
TRUCK #                   204        N       4  &lt;br /&gt;
DRIVER #                  208        C       5  &lt;br /&gt;
SLUMP                     213        N       4.1  &lt;br /&gt;
TKT   #                   217        N       6  &lt;br /&gt;
PLANT #                   223        N       2  &lt;br /&gt;
TAX CHARGE                225        N       8.2      &lt;br /&gt;
PREV TOTAL                233        N       8.2  &lt;br /&gt;
SUB TOTAL                 241        N       8.2  &lt;br /&gt;
DISCOUNT                  249        N       8.2  &lt;br /&gt;
TOTAL CHARGE              257        N       8.2  &lt;br /&gt;
GRAND TOTAL               265        N       8.2  &lt;br /&gt;
CALCIUM                   273        N       3.1  &lt;br /&gt;
TRUCK LEFT PLANT          277        C       5         HH:MM 24 HR  &lt;br /&gt;
TRUCK ON JOB              282        C       5         HH:MM 24 HR  &lt;br /&gt;
TRUCK LEFT JOB            287        C       5         HH:MM 24 HR  &lt;br /&gt;
TRUCK RETURN              292        C       5         HH:MM 24 HR  &lt;br /&gt;
USER 1                    297        C      10  &lt;br /&gt;
USER 2                    307        C      10  &lt;br /&gt;
USER 3                    317        C      10  &lt;br /&gt;
USER 4                    327        C      10  &lt;br /&gt;
USER 5                    337        C      10&lt;br /&gt;
PRODUCT CODE 1            347        C      10&lt;br /&gt;
QUANTITY ORDERED 1        357        N       7.2  &lt;br /&gt;
QUANTITY DELIVERED  1     364        N       7.2  &lt;br /&gt;
QUANTITY THIS BATCH 1     371        N       7.2  &lt;br /&gt;
PRICE 1                   378        N       6.2  &lt;br /&gt;
&lt;br /&gt;
TOTAL PRICE 1             384        N       7.2&lt;br /&gt;
PRODUCT CODE 2            391        C      10  &lt;br /&gt;
QUANTITY ORDERED 2        401        N       7.2  &lt;br /&gt;
QUANTITY DELIVERED 2      408        N       7.2  &lt;br /&gt;
QUANTITY THIS BATCH 2     415        N       7.2  &lt;br /&gt;
PRICE 2                   421        N       6.2  &lt;br /&gt;
&lt;br /&gt;
TOTAL PRICE 2             428        N       7.2&lt;br /&gt;
PRODUCT CODE 3            435        C      10&lt;br /&gt;
QUANTITY ORDERED 3        445        N       7.2&lt;br /&gt;
QUANTITY DELIVERED 3      452        N       7.2  &lt;br /&gt;
QUANTITY THIS BATCH 3     459        N       7.2  &lt;br /&gt;
PRICE 3                   466        N       6.2  &lt;br /&gt;
TOTAL PRICE 3             472        N       7.2&lt;br /&gt;
&lt;br /&gt;
PRODUCT CODE 4            479        C      10&lt;br /&gt;
QUANTITY ORDERED 4        489        N       7.2  &lt;br /&gt;
QUANTITY DELIVERED  4     496        N       7.2  &lt;br /&gt;
QUANTITY THIS BATCH 4     503        N       7.2  &lt;br /&gt;
PRICE 4                   510        N       6.2  &lt;br /&gt;
TOTAL PRICE 4             516        N       7.2&lt;br /&gt;
&lt;br /&gt;
PRODUCT CODE 5            523        C      10  &lt;br /&gt;
QUANTITY ORDERED 5        533        N       7.2  &lt;br /&gt;
QUANTITY DELIVERED 5      540        N       7.2  &lt;br /&gt;
QUANTITY THIS BATCH 5     547        N       7.2  &lt;br /&gt;
PRICE 5                   554        N       6.2  &lt;br /&gt;
TOTAL PRICE 5             560        N       7.2  &lt;br /&gt;
&lt;br /&gt;
N/A                       568        C       5         Y/N  &lt;br /&gt;
&lt;br /&gt;
TAXABLE 1                 573        C       1         Y/N  &lt;br /&gt;
TAXABLE 2                 574        C       1  &lt;br /&gt;
TAXABLE 3                 575        C       1  &lt;br /&gt;
TAXABLE 4                 576        C       1  &lt;br /&gt;
TAXABLE 5                 577        C       1  &lt;br /&gt;
&lt;br /&gt;
CUST ADDRESS 1            578        C      30  &lt;br /&gt;
CUST ADDRESS 2            608        C      30  &lt;br /&gt;
CITY                      638        C      15  &lt;br /&gt;
STATE                     653        C       3  &lt;br /&gt;
ZIP                       656        C      10  &lt;br /&gt;
DESCRIPTION               667        C      30   &lt;br /&gt;
DESCRIPTION 2             697        C      30  &lt;br /&gt;
DESCRIPTION 3             727        C      30&lt;br /&gt;
DESCRIPTION 4             757        C      30&lt;br /&gt;
DESCRIPTION 5             787        C      30  &lt;br /&gt;
PERCENT DISCOUNT          817        N       6.2&lt;br /&gt;
TICKET SIZE               822&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Sitenotice&amp;diff=628</id>
		<title>Sitenotice</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Sitenotice&amp;diff=628"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Copyright GivenHansco 2005-2011&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Setup_for_Accounts_Receivable_and_Billing_System&amp;diff=626</id>
		<title>Setup for Accounts Receivable and Billing System</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Setup_for_Accounts_Receivable_and_Billing_System&amp;diff=626"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Updating the Base Product Code for 1.8 System]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Setting_up_a_TRANSNET_batch_control_interface_in_Keystone&amp;diff=624</id>
		<title>Setting up a TRANSNET batch control interface in Keystone</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Setting_up_a_TRANSNET_batch_control_interface_in_Keystone&amp;diff=624"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Setting up a TRANSNET batch control interface in CompuCrete GH=&lt;br /&gt;
&lt;br /&gt;
#Log in to CCGH as ADMIN.&lt;br /&gt;
#From the System Maintenance menu, select Device Maintenance.&lt;br /&gt;
#Add a new device with fields as follows:&lt;br /&gt;
*Device Id--by convention, use the letters BC followed by a 2 letter location code&lt;br /&gt;
*Description--enter a meaningful description, usually indicating the location&lt;br /&gt;
*Type--select &amp;quot;Batch Control&amp;quot;&lt;br /&gt;
*IP Address--leave blank&lt;br /&gt;
*IP Port--leave blank&lt;br /&gt;
*Device Configuration--		(the following parameters are required:)&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
		Protocol=TRANSNET&lt;br /&gt;
		COMPort=1 (or 2,3,4 etc.)&lt;br /&gt;
		BaudRate=9600 (or whatever baud rate is appropriate)&lt;br /&gt;
		DataBits=8&lt;br /&gt;
		StopBits=1&lt;br /&gt;
		Parity=N (or O for Odd, E for Even)&lt;br /&gt;
&lt;br /&gt;
		(the following parameters are optional:)&lt;br /&gt;
		EOLHex=0D0A  (CR/LF is the default)&lt;br /&gt;
		Timeout=5  (5 secs is the default)&lt;br /&gt;
		Retry=3  (the default)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
#Log in to CCGH as a normal user.&lt;br /&gt;
#Select Plants from the File Maintenance menu.&lt;br /&gt;
#For each plant that will send tickets to the batch control:&lt;br /&gt;
*Click on the Devices tab&lt;br /&gt;
*Check the box next to the batch control you just created&lt;br /&gt;
#Using Ticket Printing, select a plant that you chose to send tickets to the batch control. Enter a manual ticket and key in a single product (it would be helpful if this product also exists on the batch control.) Print the ticket. You should see activity on the batch control.&lt;br /&gt;
#After testing, go back into Device Maintenance and add the following parameter to the end of the Device Configuration box:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
	ProductClass=nn,nn,nn... &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
This indicates that only products in one of the listed product classes will be sent to the batch control. Other products will not.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Setting_up_a_TRANSNET_batch_control_interface_in_CompuCrete_GH&amp;diff=622</id>
		<title>Setting up a TRANSNET batch control interface in CompuCrete GH</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Setting_up_a_TRANSNET_batch_control_interface_in_CompuCrete_GH&amp;diff=622"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Setting up a TRANSNET batch control interface in Keystone]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Setting_up_Default_Quantities_to_Optimize_Dispatch&amp;diff=620</id>
		<title>Setting up Default Quantities to Optimize Dispatch</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Setting_up_Default_Quantities_to_Optimize_Dispatch&amp;diff=620"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Keystone Dispatch performance is greatly affected by default the default quantity setting in ARTPROD.  When the AUTO_QTY is set to N, the quantity for any product after line 1 (the mix) will be 0.&lt;br /&gt;
&lt;br /&gt;
Auto Quantity values:&lt;br /&gt;
*Yes (Y): The quantity for each ticket will be set to the Default Quantity.&lt;br /&gt;
:Good for Load Delivery Charge &lt;br /&gt;
*Bringdown (B): Carry down quantity from the main product.&lt;br /&gt;
:Good for admixes by the Yard&lt;br /&gt;
*Order Remaining (R): Will put all undelivered quantity on the ticket.  If the quantity is lowered the remaining will end up on the next ticket.  &lt;br /&gt;
:Good for Rebar, Expansion joints, etc.&lt;br /&gt;
*Order Quantity: The quantity for each ticket gets set to the Order Quantity for every load.  &lt;br /&gt;
:Good for Transportation by the Hour (e.g. 1.5 Hours per ticket).&lt;br /&gt;
:and Test Cylinder (e.g. set to 1)&lt;br /&gt;
&lt;br /&gt;
Simple Default Quantity Review query:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select p.product_class,p.product_code,unit_of_measure,auto_qty,default_qty,p.DESCRIPTION_1 from artprod p&lt;br /&gt;
WHERE product_class&amp;lt;&amp;gt;'CO'&lt;br /&gt;
order by product_class,unit_of_measure,auto_qty,default_qty&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
Update artprod&lt;br /&gt;
set AUTO_qty='B' WHERE PRODUCT_CLASS='AD' AND UNIT_OF_MEASURE='YD'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Alternative to above script...  This one assumes if it is an additive and it is less than $10, it is likely a per-yard based price.  Check this with client before executing, as it is hardly foolproof.)&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
Update artprod&lt;br /&gt;
set AUTO_qty='B' WHERE PRODUCT_CLASS='AD' LIST_PRICE &amp;lt; 10.00&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
Update artprod&lt;br /&gt;
set AUTO_QTY='Y' , default_qty=1, WHERE PRODUCT_CLASS='TR' AND UNIT_OF_MEASURE='LD'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See: [[Dispatch Data Setup ]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Security_Report_Queries&amp;diff=618</id>
		<title>Security Report Queries</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Security_Report_Queries&amp;diff=618"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select USER_GROUP_ID &amp;quot;User&amp;quot;,OPTION_NAME &amp;quot;Option Name&amp;quot;,OPTION_VALUE &amp;quot;Option Value&amp;quot;,LAST_CHANGE_DATETIME &amp;quot;Last Changed&amp;quot;,Last_change_user &amp;quot;Last Change User&amp;quot; from cctoptn &lt;br /&gt;
where option_name in &lt;br /&gt;
('GLSYSTEM','CMSYSTEM','ARSYSTEM','APSYSTEM','PRSYSTEM','DATASCOPE','INVENTORYACTIVE','TISYSTEM')&lt;br /&gt;
order by user_group_id,option_name&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select security_class &amp;quot;Sec Class&amp;quot;,&lt;br /&gt;
user_id &amp;quot;User Override&amp;quot;,&lt;br /&gt;
Section_Name &amp;quot;Sec Section&amp;quot;,group_name &amp;quot;Sec Group&amp;quot;,Option_name &amp;quot;Sec Group&amp;quot; from cctsectl&lt;br /&gt;
order by security_class,section_name&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Security_-_Options_by_Users_Query_/_Report&amp;diff=616</id>
		<title>Security - Options by Users Query / Report</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Security_-_Options_by_Users_Query_/_Report&amp;diff=616"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;PRE&amp;gt;&lt;br /&gt;
select USER_GROUP_ID &amp;quot;User&amp;quot;,OPTION_NAME &amp;quot;Option Name&amp;quot;,OPTION_VALUE &amp;quot;Option Value&amp;quot;,LAST_CHANGE_DATETIME &amp;quot;Last Changed&amp;quot;,Last_change_user &amp;quot;Last Change User&amp;quot; from cctoptn&lt;br /&gt;
where option_name in &lt;br /&gt;
('GLSYSTEM','CMSYSTEM','ARSYSTEM','APSYSTEM','PRSYSTEM','DATASCOPE','INVENTORYACTIVE','TISYSTEM')&lt;br /&gt;
order by user_group_id,option_name&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select user_group_id,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='ARSYSTEM' and c2.user_group_id=c1.user_group_id) AR,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='APSYSTEM' and c2.user_group_id=c1.user_group_id) AP,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='GLSYSTEM' and c2.user_group_id=c1.user_group_id) GL,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='PRSYSTEM' and c2.user_group_id=c1.user_group_id) Payroll,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='CMSYSTEM' and c2.user_group_id=c1.user_group_id) Cash_Mgt,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='QYSYSTEM' and c2.user_group_id=c1.user_group_id) Quoting,&lt;br /&gt;
(select sum(option_value) from cctoptn c2&lt;br /&gt;
     where c2.option_name='TISYSTEM' and c2.user_group_id=c1.user_group_id) Ticketing&lt;br /&gt;
from cctoptn c1&lt;br /&gt;
group by user_group_id&lt;br /&gt;
order by user_group_id&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Scale_Setup&amp;diff=614</id>
		<title>Scale Setup</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Scale_Setup&amp;diff=614"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Tools=&lt;br /&gt;
&lt;br /&gt;
*HyperTerminal (for viewing and capturing scale output)&lt;br /&gt;
*[https://notepad-plus-plus.org/ Notepad++] (for decoding special control characters in scale output)&lt;br /&gt;
&lt;br /&gt;
=Procedure=&lt;br /&gt;
&lt;br /&gt;
===Setup Keystone Device Server===&lt;br /&gt;
&lt;br /&gt;
On the PC connected to the scale, either Keystone must be installed (with the Device Server service running) or the Keystone Device Server must be manually installed (for example if the PC uses Remote Desktop to run Keystone.) If you need to manually install Keystone Device Server, use the following procedure:&lt;br /&gt;
#Create a folder in the root of the C: drive called &amp;quot;CCDeviceServer&amp;quot;&lt;br /&gt;
#Copy the CCDeviceServer.exe from a PC at the site that has Keystone installed (located in C:\Program Files (x86)\Keystone\Bin) into the C:\CCDeviceServer folder&lt;br /&gt;
#Run a Command Prompt as Administrator&lt;br /&gt;
#Type: C:\CCDeviceServer\CCDeviceServer.exe /install&lt;br /&gt;
#Start the &amp;quot;Keystone Device Server&amp;quot; service&lt;br /&gt;
&lt;br /&gt;
===Configure Keystone Device Server===&lt;br /&gt;
&lt;br /&gt;
#Open a web browser&lt;br /&gt;
#Navigate to &amp;quot;http://127.0.0.1:6021&amp;quot;&lt;br /&gt;
#Click &amp;quot;Configuration&amp;quot;&lt;br /&gt;
#Setup a unique Device Server ID (DS followed by plant number is usually a good choice)&lt;br /&gt;
#Enter the WAN IP address of the main server in the Aggregator IP Address field&lt;br /&gt;
#Click &amp;quot;Submit&amp;quot;&lt;br /&gt;
[[File:DeviceServerRemoteConfig.PNG|480px]]&lt;br /&gt;
&lt;br /&gt;
===Capture Scale Output===&lt;br /&gt;
&lt;br /&gt;
#Using HyperTerminal, connect to the scale&lt;br /&gt;
#Once the scale is reading properly,  select Transfer-&amp;gt;Capture Text, select a filename to save the scale output and click Start&lt;br /&gt;
#Let the scale read for about 10 seconds (it is useful to have some weight on the scale if possible)&lt;br /&gt;
#Select Transfer-&amp;gt;Capture Text-&amp;gt;Stop&lt;br /&gt;
[[File:HyperTerminalScale.PNG|480px]]&lt;br /&gt;
&lt;br /&gt;
===View Scale Output===&lt;br /&gt;
&lt;br /&gt;
#Open the file in Notepad++&lt;br /&gt;
#Select View-&amp;gt;Show Symbol-&amp;gt;Show All Characters (this will allow you to see any special characters in the scale output)&lt;br /&gt;
[[File:NotepadPlusPlusScale.PNG|480px]]&lt;br /&gt;
&lt;br /&gt;
===Determine End of Line and Record Length===&lt;br /&gt;
&lt;br /&gt;
#On a complete scale data line, hit the END key and note the &amp;quot;Col&amp;quot; number in the status bar&lt;br /&gt;
#Add the number of end of line characters to the value from step #1 (for example, is you see CRLF you would add 2)&lt;br /&gt;
#This number is the RECL device parameter&lt;br /&gt;
#[Keystone 4.3.6+] If there are end of line characters after the cursor, these will become the EOLHEX device parameter (convert to hex)&lt;br /&gt;
&lt;br /&gt;
===Determine Check Code===&lt;br /&gt;
&lt;br /&gt;
#Look for one or more characters that are repeated on each line of the scale output (preferably before the weight)&lt;br /&gt;
#Note the starting position of the repeated characters, this will become the CHECKCOL device parameter&lt;br /&gt;
#Note the characters themselves, this will become the CHECKCODE or CHECKCODEHEX device parameter (if the check code contains special control codes, use the chart below to determine the hex values for the characters)&lt;br /&gt;
[[File:ASCIIControlCodes.png|720px]]&lt;br /&gt;
&lt;br /&gt;
===Determine Weight===&lt;br /&gt;
&lt;br /&gt;
#Look for the weight (if the weight is zero or a low number, allow for at least 6 digits)&lt;br /&gt;
#Note the starting position of the weight, this will become the WEIGHTCOL device parameter&lt;br /&gt;
#Note the length of the weight (usually 6), this will become the WEIGHTLEN device parameter&lt;br /&gt;
&lt;br /&gt;
===Configure Unit of Measure===&lt;br /&gt;
&lt;br /&gt;
#The default U/M for scales is LB (pounds.)&lt;br /&gt;
#If the scale sends weight in a different U/M, set the UNITOFMEASURE device parameter to the U/M that the scale is sending.&lt;br /&gt;
&lt;br /&gt;
===Determine Overcapacity Indicator===&lt;br /&gt;
&lt;br /&gt;
(Keystone 4.3.9.5+)&lt;br /&gt;
#Consult the scale documentation to determine which character(s)/code(s) indicate an over-capacity condition&lt;br /&gt;
#Note the starting position of this indicator, this will become the OVERCAPCOL device parameter&lt;br /&gt;
#Note the characters themselves, this will become the OVERCAPCODE or OVERCAPCODEHEX device parameter (if the over-capacity code contains special control codes, use the chart in the &amp;quot;Determine Check Code&amp;quot; section to determine the hex values for the characters)&lt;br /&gt;
&lt;br /&gt;
===Update Keystone Device Information===&lt;br /&gt;
&lt;br /&gt;
#Open Device Maintenance&lt;br /&gt;
#Select or create the scale device&lt;br /&gt;
#Enter the scale parameters in the Device Configuration tab (sample below)&lt;br /&gt;
[[File:DeviceMaintenanceScale.PNG|480px]]&lt;br /&gt;
&lt;br /&gt;
===Start/Restart Services===&lt;br /&gt;
&lt;br /&gt;
#On the main server, start or restart the Device Aggregator&lt;br /&gt;
#Wait a few seconds, then start or restart the Device Server&lt;br /&gt;
#On the PC connected to the scale, start or restart the Device Server&lt;br /&gt;
&lt;br /&gt;
=Old outdated information=&lt;br /&gt;
&lt;br /&gt;
Sample scale settings using classic device server (pre aggregator):&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
Start Device server on computer that will be connected to the scale:&lt;br /&gt;
Start/Run &amp;quot;c:\program files\GivenHansco\cc\bin\ccdevsv&amp;quot; /i /l &lt;br /&gt;
Login as ADMIN&lt;br /&gt;
Open Device Maint. off of the System Maint Menu&lt;br /&gt;
Create new device:&lt;br /&gt;
Device ID e.g.: SCALE01&lt;br /&gt;
Description: e.g. SMITHFIELD SCALE&lt;br /&gt;
type: SCALE&lt;br /&gt;
Dev Server ID: Leave Blank (Used for Device Server/Aggregator)&lt;br /&gt;
In Device Aggregator Box:&lt;br /&gt;
 ip address -- if stand alone 127.0.0.1&lt;br /&gt;
 port 6000&lt;br /&gt;
&lt;br /&gt;
Copy and paste the sample device config settings&lt;br /&gt;
&lt;br /&gt;
COMPort=1&lt;br /&gt;
BaudRate=9600&lt;br /&gt;
DataBits=8&lt;br /&gt;
StopBits=1&lt;br /&gt;
Parity=N&lt;br /&gt;
CheckCode=LB&lt;br /&gt;
CheckCol=9&lt;br /&gt;
WeightCol=2&lt;br /&gt;
WeightLen=6&lt;br /&gt;
RECL=17&lt;br /&gt;
UnitOfMeasure=LB&lt;br /&gt;
&lt;br /&gt;
modify baud, databits, stopbits, parity to match what scale guy tells you.&lt;br /&gt;
&lt;br /&gt;
Make sure scale is connected&lt;br /&gt;
F5 - test &lt;br /&gt;
Automatic &lt;br /&gt;
F2 TEST&lt;br /&gt;
&lt;br /&gt;
hopefully it finds it&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Sample_KServer_Reports&amp;diff=612</id>
		<title>Sample KServer Reports</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Sample_KServer_Reports&amp;diff=612"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[CATEGORY: KSERVER]]&lt;br /&gt;
Here are a few examples from Keystone showing some KServer reports. These examples show the complete endpoint syntax. The examples range from simple to complex.&lt;br /&gt;
&lt;br /&gt;
== A/R Salesperson List ==&lt;br /&gt;
&lt;br /&gt;
This example is a basic report with the following features: &lt;br /&gt;
*Query on a single table&lt;br /&gt;
*Report supports active/inactive selection&lt;br /&gt;
*Report selection on one field&lt;br /&gt;
*Report supports two sequences&lt;br /&gt;
*Fields and labels specified&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;URI&amp;quot;: &amp;quot;/ARSalespersonList&amp;quot;,&lt;br /&gt;
  &amp;quot;query&amp;quot;: [&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;name&amp;quot;: &amp;quot;ARSalespersonList&amp;quot;,&lt;br /&gt;
      &amp;quot;table&amp;quot;: &amp;quot;artslspn&amp;quot;,&lt;br /&gt;
      &amp;quot;sql&amp;quot;: &amp;quot;SELECT SP.* FROM ARTSLSPN SP&amp;quot;,&lt;br /&gt;
      &amp;quot;params&amp;quot;: [&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;filter&amp;quot;: &amp;quot;range&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;ACTIVE_FLAG&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;ACTIVE_FLAG&amp;quot; }&lt;br /&gt;
      ],&lt;br /&gt;
      &amp;quot;record&amp;quot;: {&lt;br /&gt;
        &amp;quot;fields&amp;quot;: []&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  ],&lt;br /&gt;
  &amp;quot;report&amp;quot;: {&lt;br /&gt;
    &amp;quot;title&amp;quot;: &amp;quot;A/R Salesperson List&amp;quot;,&lt;br /&gt;
    &amp;quot;activefieldcount&amp;quot;: 1,&lt;br /&gt;
    &amp;quot;selection&amp;quot;: [&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Salesperson Id&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;type&amp;quot;: &amp;quot;lookup&amp;quot;, &amp;quot;lookup&amp;quot;: { &amp;quot;type&amp;quot;: &amp;quot;ARSalesperson&amp;quot; } }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;sequence&amp;quot;: [&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Salesperson Id&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot; },&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Name&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;DESCRIPTION&amp;quot; }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;fields&amp;quot;: [&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Sls Id&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;DESCRIPTION&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Name&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;JOB_TITLE&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Job Title&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;PHONE_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Phone&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;CELL_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Mobile&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;FAX_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Fax&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;EMAIL&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Email&amp;quot; }&lt;br /&gt;
    ]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== A/R Product Class List ==&lt;br /&gt;
&lt;br /&gt;
This example is a slightly more complex report with the following features: &lt;br /&gt;
*Query on a single table&lt;br /&gt;
*Report supports active/inactive selection&lt;br /&gt;
*Report selection on two fields&lt;br /&gt;
*Report supports two sequences&lt;br /&gt;
*Report has two options, one hidden (setparam) and one visible (list)&lt;br /&gt;
**The setparam option is used to read a Keystone system option (in this case to determine if G/L is active)&lt;br /&gt;
**The list option is used to select between Summary/Detail report types&lt;br /&gt;
*Two report fields have calculated values&lt;br /&gt;
**The translate function converts a code value into a descriptive value&lt;br /&gt;
*Some fields only print when a condition is satisfied&lt;br /&gt;
**Several fields print only for the Detail report type&lt;br /&gt;
**The two G/L account fields print only for the Detail report type and only if G/L is active&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;URI&amp;quot;: &amp;quot;/ARProductClassList&amp;quot;,&lt;br /&gt;
  &amp;quot;query&amp;quot;: [&lt;br /&gt;
    {&lt;br /&gt;
      &amp;quot;name&amp;quot;: &amp;quot;ARProductClassList&amp;quot;,&lt;br /&gt;
      &amp;quot;table&amp;quot;: &amp;quot;artprcls&amp;quot;,&lt;br /&gt;
      &amp;quot;sql&amp;quot;: &amp;quot;SELECT PC.* FROM ARTPRCLS PC&amp;quot;,&lt;br /&gt;
      &amp;quot;params&amp;quot;: [&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;filter&amp;quot;: &amp;quot;list&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;PLANT_NO&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;PLANT_NO&amp;quot;, &amp;quot;filter&amp;quot;: &amp;quot;range&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;ACTIVE_FLAG&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;ACTIVE_FLAG&amp;quot; },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;REPORT_TYPE&amp;quot;, &amp;quot;proc&amp;quot;: true },&lt;br /&gt;
        { &amp;quot;name&amp;quot;: &amp;quot;OPT_GL_ACTIVE&amp;quot;, &amp;quot;proc&amp;quot;: true }&lt;br /&gt;
      ],&lt;br /&gt;
      &amp;quot;record&amp;quot;: {&lt;br /&gt;
        &amp;quot;fields&amp;quot;: []&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  ],&lt;br /&gt;
  &amp;quot;report&amp;quot;: {&lt;br /&gt;
    &amp;quot;title&amp;quot;: &amp;quot;A/R Product Class List&amp;quot;,&lt;br /&gt;
    &amp;quot;activefieldcount&amp;quot;: 1,&lt;br /&gt;
    &amp;quot;selection&amp;quot;: [&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Product Class&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;type&amp;quot;: &amp;quot;lookupchecklist&amp;quot;, &amp;quot;lookup&amp;quot;: { &amp;quot;type&amp;quot;: &amp;quot;ARProductClass&amp;quot; } },&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Plant Id&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;PLANT_NO&amp;quot;, &amp;quot;type&amp;quot;: &amp;quot;lookup&amp;quot;, &amp;quot;lookup&amp;quot;: { &amp;quot;type&amp;quot;: &amp;quot;ARPlant&amp;quot; } }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;sequence&amp;quot;: [&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Product Class&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot; },&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Description&amp;quot;, &amp;quot;field&amp;quot;: &amp;quot;DESCRIPTION&amp;quot; }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;options&amp;quot;: [&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Opt G/L Active&amp;quot;, &amp;quot;type&amp;quot;: &amp;quot;setparam&amp;quot;, &amp;quot;param&amp;quot;: &amp;quot;OPT_GL_ACTIVE&amp;quot;, &lt;br /&gt;
        &amp;quot;setparam&amp;quot;: {&lt;br /&gt;
          &amp;quot;calc&amp;quot;: &amp;quot;ne(sysopt('SYSTEM','GLActive','0'), '0')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;title&amp;quot;: &amp;quot;Report Type&amp;quot;, &amp;quot;type&amp;quot;: &amp;quot;list&amp;quot;, &amp;quot;param&amp;quot;: &amp;quot;REPORT_TYPE&amp;quot;,&lt;br /&gt;
        &amp;quot;list&amp;quot;: {&lt;br /&gt;
          &amp;quot;items&amp;quot;: [&lt;br /&gt;
            { &amp;quot;title&amp;quot;: &amp;quot;Summary&amp;quot;, &amp;quot;value&amp;quot;: &amp;quot;1&amp;quot; },&lt;br /&gt;
            { &amp;quot;title&amp;quot;: &amp;quot;Detail&amp;quot;, &amp;quot;value&amp;quot;: &amp;quot;2&amp;quot; }&lt;br /&gt;
          ]&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;fields&amp;quot;: [&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;CLASS_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Class&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;DESCRIPTION&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Description&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;PLANT_NO&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Plant&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;SUBTOTAL&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Subtot?&amp;quot; },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_AUTO_QTY&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Auto Qty&amp;quot;, &amp;quot;calc&amp;quot;: &amp;quot;translate([STD_AUTO_QTY], 'ARProdAutoQty')&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_DEFAULT_QTY&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Def Qty&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_PRODUCT_TYPE&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Prod Type&amp;quot;, &amp;quot;calc&amp;quot;: &amp;quot;translate([STD_PRODUCT_TYPE], 'ARProdType')&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_STOCKED&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Stock?&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_UNIT_OF_MEASURE&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;U\/M&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_TAX_CODE&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Tx&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;WEIGHT_FLAG&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Weight?&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;in([REPORT_TYPE], '2')&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_SALES_GL&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;Sales Account&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;and([OPT_GL_ACTIVE], in([REPORT_TYPE], '2'))&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;STD_COSTOFSALES_GL&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;COGS Account&amp;quot;,&lt;br /&gt;
        &amp;quot;detail&amp;quot;: {&lt;br /&gt;
          &amp;quot;condition&amp;quot;: &amp;quot;and([OPT_GL_ACTIVE], in([REPORT_TYPE], '2'))&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
      },&lt;br /&gt;
      { &amp;quot;field&amp;quot;: &amp;quot;NON_TAX_AMOUNT&amp;quot;, &amp;quot;label&amp;quot;: &amp;quot;NonTax Amt&amp;quot;, &amp;quot;format&amp;quot;: &amp;quot;#.00&amp;quot;&lt;br /&gt;
      }&lt;br /&gt;
    ]&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Sample_Forms&amp;diff=610</id>
		<title>Sample Forms</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Sample_Forms&amp;diff=610"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[CATEGORY: FORMS]]&lt;br /&gt;
=== Samples ===&lt;br /&gt;
(these are on the old side)&lt;br /&gt;
:[[Invoice Laser]]&lt;br /&gt;
:[[Invoice PDF Optimized]]&lt;br /&gt;
:[[Statement Laser]]&lt;br /&gt;
&lt;br /&gt;
=== Installing Graphics ===&lt;br /&gt;
&lt;br /&gt;
In form Maintenance, select '''Load''' on the Images tab.&amp;lt;BR&amp;gt;&lt;br /&gt;
[[Image:Frm ld img.png]]&lt;br /&gt;
Load the image.&lt;br /&gt;
&lt;br /&gt;
When Setting up the form, refer to the image by number.  The following code places an image in column 3, scaled to be 12 characters wide:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
LINE 2 COLUMN 3&lt;br /&gt;
LEFT 12 IMAGE 2&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
:[[Keystone_Forms]]&lt;br /&gt;
:[[Payroll: Form Versions]]&lt;br /&gt;
:[[Invoice Form Fields]] &lt;br /&gt;
:[[Ticket Form Fields]]&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Sales_Tax_On_Collection&amp;diff=608</id>
		<title>Sales Tax On Collection</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Sales_Tax_On_Collection&amp;diff=608"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;(This is a copied from keystone help wiki - removing tech info from keystone help version)&lt;br /&gt;
&lt;br /&gt;
Sales Tax handling in Keystone 2.3 builds on the changes from Keystone 2.2, where sales tax transactions are created for all invoices.  In 2.3, sales tax changes resulting from cash posting transactions are also included in the tax transaction table.  This is the latest design to accurately calculate sales tax based on collections, and for reporting sales tax adjustments for customers who report sales tax on invoices.&lt;br /&gt;
&lt;br /&gt;
==ARTTAXTRX: The Sales Tax Transaction tabale==&lt;br /&gt;
:SEQ_NO : Unique number for every transactions&amp;lt;br&amp;gt;&lt;br /&gt;
:TAX_LOCALITY :&amp;lt;br&amp;gt;&lt;br /&gt;
:TRX_DATE :Date of Invoice or Payment&amp;lt;br&amp;gt;&lt;br /&gt;
:TRX_TYPE : I for Invoice, C standard cash, D discount, A: allowance, and T for Tax adjustments&amp;lt;br&amp;gt;&lt;br /&gt;
:TAXABLE :Taxable amount of Invoice &amp;lt;br&amp;gt;&lt;br /&gt;
:EXEMPT_1-9 : &amp;lt;br&amp;gt;&lt;br /&gt;
:TAX : Tax from invoice, Tax collected for C record, Tax Adjustment for T records &amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_TAXABLE: Taxable portion of a discount. &amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_EXEMPT: Exempt Portion of Discount&amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_TAX : &amp;lt;br&amp;gt;&lt;br /&gt;
:AR_SESSION_NO :Points to invoice&amp;lt;br&amp;gt;&lt;br /&gt;
:AR_TRANS_NO&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_SESSION_NO: Points to Cash Transaction&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_TRANS_NO&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_LINE_NO&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===I Transactions===&lt;br /&gt;
I transactions result from invoices.&lt;br /&gt;
&lt;br /&gt;
I transactions are consider taxable to customers who pay tax on invoicing, but not to customers who pay tax on receipts.&lt;br /&gt;
&lt;br /&gt;
===C Transactions===&lt;br /&gt;
C Transactions include:&lt;br /&gt;
:Cash Payment&lt;br /&gt;
:Discounts (Note: if Discounts reduce sales tax, the tax incurred from paying the invoice will be reported as tax incurred, and the the resulting tax adjustment will be reported separately)&lt;br /&gt;
:Allowances that are not exempt, and portions some Exempt Alowances.&lt;br /&gt;
&lt;br /&gt;
C transactions are consider taxable to customers who pay tax on receipts, but not to customers who pay tax on invoicing.&lt;br /&gt;
&lt;br /&gt;
===T Transactions===&lt;br /&gt;
T Transactions are used to represent a change in Tax, Taxable and Exempt amounts, resulting from either a &amp;quot;Exempt&amp;quot; allowance or a &amp;quot;Tax Only&amp;quot; Allowance.&lt;br /&gt;
&lt;br /&gt;
T transactions are considered as a sales tax adjustment to customers who pay tax on invoicing, but ignored for customers who pay tax on receipts.  The changes from T transactions affect future C transactions, and in come cases will result in adjusting C transactions.&lt;br /&gt;
&lt;br /&gt;
===A Transactions===&lt;br /&gt;
A transactions are the allowance component for  a cash posting Allowance.&lt;br /&gt;
&lt;br /&gt;
Allowances that have no tax adjustment are treated similar to a Cash transaction.&lt;br /&gt;
&lt;br /&gt;
Allowances that affect Tax Balances result in adjusting &amp;quot;C&amp;quot; type transactions to bring the tax collected balance in line with the invoice.  One &amp;quot;C&amp;quot; transaction reverses all A, C and D transactions, then another reapplies the A,C and D total with based on the new adjusted tax balance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===D Transactions===&lt;br /&gt;
&lt;br /&gt;
For sales tax based on collection Discount transactions are treated similarly to cash transactions.&lt;br /&gt;
&lt;br /&gt;
Discount Tax Adjustments are handled as a separate tax calculation.&lt;br /&gt;
&lt;br /&gt;
==Calculations==&lt;br /&gt;
&lt;br /&gt;
===Common Cash Posting Case===&lt;br /&gt;
For most cases, the calculation for tax collections is a simple ratio:&lt;br /&gt;
Tax Collected=Invoice Tax X (Amount Paid / Invoice Gross)&lt;br /&gt;
Taxable Sales Collected=Invoice Taxable X (Amount Paid / Invoice Gross)&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax totals to 1050.  If you receive a $500 payment then:&lt;br /&gt;
:Tax Collected=50*(500/1050)  --&amp;gt; $23.80952 which rounds to $23.81.&lt;br /&gt;
:Taxable Sales Collected=1000 x (500/1050) --&amp;gt; $476.1905 --&amp;gt;$476.19.&lt;br /&gt;
So the numbers reported to the state would be a $476.19 sale with $23.81 tax.&lt;br /&gt;
&lt;br /&gt;
For a partially taxable invoice the same rules apply, but now we'll need to calculate the exempt sales collected too.&lt;br /&gt;
Exempt Sales Collected=Invoice Exempt X (Amount Paid / Invoice Gross)&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax, $600 taxable and $400 exempt totals to 1030.  If you receive a $500 payment then:&lt;br /&gt;
:Tax Collected=30*(500/1030)  --&amp;gt; $14.56311 which rounds to $14.56&lt;br /&gt;
:Taxable Sales Collected=500 x (600 /1030) --&amp;gt; $291.2621 --&amp;gt;$291.26&lt;br /&gt;
:Exempt Sales Collected=500 x (400 /1030) --&amp;gt; $194.1748 --&amp;gt;$194.17&lt;br /&gt;
So the numbers reported to the state would be 291.26 taxable, 194.17 exempt sales with $14.56 tax.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Discount Tax Adjustments===&lt;br /&gt;
&lt;br /&gt;
When a discount is posted to an invoice, two distinct transactions can occur...&lt;br /&gt;
*For systems with &amp;quot;Sales Tax Based on Collections&amp;quot; set, the portion of the invoice paid will be reported as paid along with the corresponding portion of sales tax due.&lt;br /&gt;
*For all systems, a sales tax adjustment calculation will be performed to determin if a tax reduction applies.&lt;br /&gt;
&lt;br /&gt;
====Discount Tax Fields====&lt;br /&gt;
At the time of invoicing, the discount tax fields are calculated and entered into an &amp;quot;I&amp;quot; tax transaction record whenever a discount is offered.  Every line of the invoice is analyzed.&lt;br /&gt;
*If either the &amp;quot;Discount Includes Tax&amp;quot; option is set in [[AR Tax Rate Maintenance|Tax Rate Maintenance]], or a discount is on an exempt line, then the whole discount will be entered into the discount exempt line.&lt;br /&gt;
*If the &amp;quot;Discount Includes Tax&amp;quot; option is set in Tax Rate Maintenance then all discounts on taxable lines will included in the Disc Taxable and the Disc Tax fields.  (The discount is apportioned based on the tax rate between the Disc Taxable and Disc Tax fields)&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax, $600 taxable and $400 exempt totals to 1030.  If a $21 discount is offered on taxable items then then Disc Exempt= $0, Disc Taxable =$20.00 and Disc Tax=$1.00&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax, $600 taxable and $400 exempt totals to 1030.  If a $20 discount is offered on exempt items then then Disc Exempt= $20.00, Disc Taxable =$0.00 and Disc Tax=$0.00&lt;br /&gt;
&lt;br /&gt;
====Calculating the Adjustment====&lt;br /&gt;
At the time a discount is taken, the system calculates the percentage of discount taken, and determines the amound if discount tax adjustment.  By applying bounds checking,  the total amount of discount taken on an invoice is limited to between 0-100% of the original discount offered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Boundary Checking==&lt;br /&gt;
&lt;br /&gt;
Sales tax boundary checking is the method the system never reports either negative more tax than was originally charged on an invoice (for positive invoices).  This is to handle cases where invoices are either overpaid, or where a negative payment is applied to a postive invoice.&lt;br /&gt;
&lt;br /&gt;
The basic rules (for a postive invoice)&lt;br /&gt;
*Tax collected is between 0 and tax charged.&lt;br /&gt;
*Taxable is between 0 and invoice sale amount (Original Invoice Amount lest Invoice tax charged).&lt;br /&gt;
*Exempt total is between 0 and invoice sale amount.&lt;br /&gt;
*Exempt 1-9 must be between 0 and invoice sale amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Diagnostics==&lt;br /&gt;
&lt;br /&gt;
===Diagnostic Detail:===&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select &lt;br /&gt;
x.tax_locality &amp;quot;Tax Loc&amp;quot;,&lt;br /&gt;
case trx_type &lt;br /&gt;
when 'I' THEN 'Invoicing' else 'Csh Post' end &amp;quot;Source&amp;quot;,&lt;br /&gt;
x.trx_date,&lt;br /&gt;
i.cust_no,h.check_no, h.check_amount,  i.invoice_no &amp;quot;Inv No&amp;quot;, i.debit_amount &amp;quot;Inv Amt&amp;quot;, i.credit_amount &amp;quot;Inv Paid&amp;quot;, &lt;br /&gt;
case i.invoice_type when 'I' THEN 'Inv' when 'S' then 'Svc Chg' when 'C' THEN 'Opn Crdt' else '??' end &amp;quot;Inv Typ&amp;quot;,&lt;br /&gt;
Case trx_type &lt;br /&gt;
when 'I' then '.Inv' when 'C' THEN 'Cash' WHEN 'A' THEN 'Allow' WHEN 'D' then 'Disc' when 'T' THEN 'Tax Adj' end &amp;quot;Trx Type&amp;quot;,&lt;br /&gt;
x.taxable, x.tax,&lt;br /&gt;
EXEMPT_1 + EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 &amp;quot;Exempt&amp;quot;, &lt;br /&gt;
case x.trx_type&lt;br /&gt;
when 'C' THEN CD.CREDIT_AMOUNT-DISC_AMOUNT-ALLOW_AMOUNT&lt;br /&gt;
WHEN 'A' THEN CD.ALLOW_AMOUNT&lt;br /&gt;
WHEN 'T' THEN CD.ALLOW_AMOUNT&lt;br /&gt;
WHEN 'D' THEN CD.DISC_AMOUNT END &amp;quot;Post Det Amt&amp;quot;,&lt;br /&gt;
case trx_type when 'I' THEN 0 ELSE&lt;br /&gt;
TAXABLE + EXEMPT_1 + EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 + tax - disc_taxable - disc_exempt - disc_tax END  &amp;quot;Cash Match&amp;quot;,&lt;br /&gt;
disc_taxable + disc_exempt + disc_tax &amp;quot;Disc&amp;quot;,x.seq_no,x.cash_session_no,x.cash_trans_no&lt;br /&gt;
from arttaxtrx x&lt;br /&gt;
left outer join artcshhd h on x.cash_session_no = h.session_no and x.cash_trans_no = h.trans_no&lt;br /&gt;
left outer join artcshdt cd on x.cash_session_no = cd.session_no and x.cash_trans_no = cd.trans_no and x.cash_line_no=cd.line_no&lt;br /&gt;
inner join artinv i on i.session_no=x.ar_session_no and i.trans_no=x.ar_trans_no&lt;br /&gt;
where x.trx_date between :&amp;quot;Beginning&amp;quot; and :&amp;quot;Ending&amp;quot; &lt;br /&gt;
order by 1,2 desc,3,4,5&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This works nicely in datascope reports - Put Tax,Taxable,Exempt and Cash Match all as Data column.  Set Row headers as Trx Type, Allow Code etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Cash Received vs Sales Tax Cash Recorded:'''&lt;br /&gt;
Quickly find total cash recieved compared to the total received recognized by the sales tax table.  The most likely issues are open credits and &amp;quot;out of bounds&amp;quot; posting to standard invoices (like when you post $1100 to a $1000 invoice).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT 'CSH' &amp;quot;SRC&amp;quot;,&lt;br /&gt;
ch.post_date,cd.ar_session_no,cd.ar_trans_no,cd.session_no,cD.trans_no,cd.line_no,cd.credit_amount&lt;br /&gt;
,i.invoice_no,i.invoice_type&lt;br /&gt;
 FROM ARTCSHHD CH&lt;br /&gt;
INNER JOIN ARTCSHDT CD ON CH.SESSION_NO=CD.SESSION_NO AND CD.TRANS_NO=CH.TRANS_NO&lt;br /&gt;
INNER JOIN ARTINV I ON I.SESSION_NO=CD.AR_SESSION_NO AND I.TRANS_NO=CD.AR_TRANS_NO&lt;br /&gt;
WHERE POST_DATE BETWEEN '2/1/19' AND '2/28/19'&lt;br /&gt;
union all&lt;br /&gt;
SELECT 'TAX',&lt;br /&gt;
x.trx_date,x.ar_session_no,x.ar_trans_no,x.cash_session_no,x.cash_trans_no,x.cash_line_no,&lt;br /&gt;
x.TAX + x.TAXABLE +  x.EXEMPT_1 + x.EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 TOTAL&lt;br /&gt;
,i.invoice_no,i.invoice_type&lt;br /&gt;
 from arttaxtrx x&lt;br /&gt;
INNER JOIN ARTINV I ON I.SESSION_NO=x.AR_SESSION_NO AND I.TRANS_NO=x.AR_TRANS_NO&lt;br /&gt;
WHERE TRX_DATE BETWEEN '2/1/19' AND '2/28/19'  AND X.TRX_TYPE NOT IN ('I')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use in datacsope.  Put &amp;quot;Credit Amount&amp;quot; as data column.  Src as the column Field.  Set Row field to trx date,  Optionally add Invoice number etc to drill further.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sales Tax History for a Customer/Invoice:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select i.cust_no &amp;quot;Cust:&amp;quot;,i.invoice_no &amp;quot;Inv#:&amp;quot;,&lt;br /&gt;
i.credit_amount &amp;quot;InvAmt:&amp;quot;,i.debit_amount &amp;quot;Paid:&amp;quot;,i.sales_tax_due &amp;quot;InvTax:&amp;quot;,I.DISC_OFFERED &amp;quot;DiscOfrd:&amp;quot;,&lt;br /&gt;
tx.taxable,tx.tax,&lt;br /&gt;
EXEMPT_1, EXEMPT_2,  EXEMPT_3, EXEMPT_4, EXEMPT_5, EXEMPT_6, EXEMPT_7, EXEMPT_8, EXEMPT_9,&lt;br /&gt;
Case trx_type &lt;br /&gt;
when 'I' then '.Inv' when 'C' THEN 'Cash' WHEN 'A' THEN 'Allow % Method' WHEN 'D' then 'Disc' when 'T' THEN 'Allow Tax Method' end &amp;quot;Trx Type&amp;quot;&lt;br /&gt;
  from artinv i&lt;br /&gt;
inner join arttaxtrx tx on  TX.ar_session_no=I.SESSION_no and tx.AR_trans_no=I.trans_no&lt;br /&gt;
where i.cust_no=:cust_no and invoice_no=:inv_no&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use in query export.  Set the break and group of invoice fields to 1.  Set total on all detail fields but &amp;quot;Trx Type&amp;quot;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Sales_Tax_Handling_in_Keystone_2.3&amp;diff=606</id>
		<title>Sales Tax Handling in Keystone 2.3</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Sales_Tax_Handling_in_Keystone_2.3&amp;diff=606"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sales Tax handling in Keystone 2.3 builds on the changes from Keystone 2.2, where sales tax transactions are created for all invoices.  In 2.3, sales tax changes resulting from cash posting transactions are also included in the tax transaction table.  This is the latest design to accurately calculate sales tax based on collections, and for reporting sales tax adjustments for customers who report sales tax on invoices.&lt;br /&gt;
&lt;br /&gt;
==ARTTAXTRX: The Sales Tax Transaction table==&lt;br /&gt;
:SEQ_NO : Unique number for every transactions&amp;lt;br&amp;gt;&lt;br /&gt;
:TAX_LOCALITY :&amp;lt;br&amp;gt;&lt;br /&gt;
:TRX_DATE :Date of Invoice or Payment&amp;lt;br&amp;gt;&lt;br /&gt;
:TRX_TYPE : I for Invoice, C standard cash, D discount, A: allowance, and T for Tax adjustments&amp;lt;br&amp;gt;&lt;br /&gt;
:TAXABLE :Taxable amount of Invoice &amp;lt;br&amp;gt;&lt;br /&gt;
:EXEMPT_1-9 : &amp;lt;br&amp;gt;&lt;br /&gt;
:TAX : Tax from invoice, Tax collected for C record, Tax Adjustment for T records &amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_TAXABLE: Taxable portion of a discount. &amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_EXEMPT: Exempt Portion of Discount&amp;lt;br&amp;gt;&lt;br /&gt;
:DISC_TAX : &amp;lt;br&amp;gt;&lt;br /&gt;
:AR_SESSION_NO :Points to invoice&amp;lt;br&amp;gt;&lt;br /&gt;
:AR_TRANS_NO&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_SESSION_NO: Points to Cash Transaction&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_TRANS_NO&amp;lt;br&amp;gt;&lt;br /&gt;
:CASH_LINE_NO&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===I Transactions===&lt;br /&gt;
I transactions are created during the Print Invoices process.&lt;br /&gt;
&lt;br /&gt;
For Tax on Invoicing systems, this is the main source of data for sales tax, indicating the exempt, taxable and tax amounts of the sale.  The discount portion of the record is used as a basis, since discounts are only reported as taken.&lt;br /&gt;
&lt;br /&gt;
For tax on receipts systems, the values in the I record work as the basis for all collection calculations.&lt;br /&gt;
&lt;br /&gt;
'''Example:'''&lt;br /&gt;
{| {{table}}&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''SEQ_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''SESSION_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TAX_LOCALITY'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TRX_DATE'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TRX_TYPE'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''AR_SESSION_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''AR_TRANS_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''CASH_SESSION_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''CASH_TRANS_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''CASH_LINE_NO'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TAXABLE'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''EXEMPT_1'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''EXEMPT_2'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''…'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''EXEMPT_9'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''TAX'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''DISC_TAXABLE'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''DISC_EXEMPT'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''DISC_TAX'''&lt;br /&gt;
|-&lt;br /&gt;
| 400||2568||CT||1/9/2009||I||2568||7||||||||30||0||265||||0||2.1||2.34||10||0.16&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
This is an example '''I''' record with taxable and exempt sales, as well as taxable and exempt discount.&lt;br /&gt;
&lt;br /&gt;
===C Transactions===&lt;br /&gt;
C Transactions include:&lt;br /&gt;
:Cash Payment&lt;br /&gt;
:Discounts (Note: if Discounts reduce sales tax, the tax incurred from paying the invoice will be reported as tax incurred, and the the resulting tax adjustment will be reported separately)&lt;br /&gt;
:Allowances that are not exempt, and portions some Exempt Alowances.&lt;br /&gt;
&lt;br /&gt;
C transactions are consider taxable to customers who pay tax on receipts, but not to customers who pay tax on invoicing.&lt;br /&gt;
&lt;br /&gt;
===T Transactions===&lt;br /&gt;
T Transactions are used to represent a change in Tax, Taxable and Exempt amounts, resulting from either a &amp;quot;Exempt&amp;quot; allowance or a &amp;quot;Tax Only&amp;quot; Allowance.&lt;br /&gt;
&lt;br /&gt;
T transactions are considered as a sales tax adjustment to customers who pay tax on invoicing, but ignored for customers who pay tax on receipts.  The changes from T transactions affect future C transactions, and in come cases will result in adjusting C transactions.&lt;br /&gt;
&lt;br /&gt;
===A Transactions===&lt;br /&gt;
A transactions are the allowance component for  a cash posting Allowance.&lt;br /&gt;
&lt;br /&gt;
Allowances that have no tax adjustment are treated similar to a Cash transaction.&lt;br /&gt;
&lt;br /&gt;
Allowances that affect Tax Balances result in adjusting &amp;quot;C&amp;quot; type transactions to bring the tax collected balance in line with the invoice.  One &amp;quot;C&amp;quot; transaction reverses all A, C and D transactions, then another reapplies the A,C and D total with based on the new adjusted tax balance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===D Transactions===&lt;br /&gt;
&lt;br /&gt;
For sales tax based on collection Discount transactions are treated similarly to cash transactions.&lt;br /&gt;
&lt;br /&gt;
Discount Tax Adjustments are handled as a separate tax calculation.&lt;br /&gt;
&lt;br /&gt;
==Calculations==&lt;br /&gt;
&lt;br /&gt;
===Common Cash Posting Case===&lt;br /&gt;
For most cases, the calculation for tax collections is a simple ratio:&lt;br /&gt;
Tax Collected=Invoice Tax X (Amount Paid / Invoice Gross)&lt;br /&gt;
Taxable Sales Collected=Invoice Taxable X (Amount Paid / Invoice Gross)&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax totals to 1050.  If you receive a $500 payment then:&lt;br /&gt;
:Tax Collected=50*(500/1050)  --&amp;gt; $23.80952 which rounds to $23.81.&lt;br /&gt;
:Taxable Sales Collected=1000 x (500/1050) --&amp;gt; $476.1905 --&amp;gt;$476.19.&lt;br /&gt;
So the numbers reported to the state would be a $476.19 sale with $23.81 tax.&lt;br /&gt;
&lt;br /&gt;
For a partially taxable invoice the same rules apply, but now we'll need to calculate the exempt sales collected too.&lt;br /&gt;
Exempt Sales Collected=Invoice Exempt X (Amount Paid / Invoice Gross)&lt;br /&gt;
&lt;br /&gt;
For example a 1000 sale with 5% tax, $600 taxable and $400 exempt totals to 1030.  If you receive a $500 payment then:&lt;br /&gt;
:Tax Collected=30*(500/1030)  --&amp;gt; $14.56311 which rounds to $14.56&lt;br /&gt;
:Taxable Sales Collected=500 x (600 /1030) --&amp;gt; $291.2621 --&amp;gt;$291.26&lt;br /&gt;
:Exempt Sales Collected=500 x (400 /1030) --&amp;gt; $194.1748 --&amp;gt;$194.17&lt;br /&gt;
So the numbers reported to the state would be 291.26 taxable, 194.17 exempt sales with $14.56 tax.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Boundary Checking==&lt;br /&gt;
&lt;br /&gt;
Sales tax boundary checking is the method the system never reports either negative more tax than was originally charged on an invoice (for positive invoices).  This is to handle cases where invoices are either overpaid, or where a negative payment is applied to a postive invoice.&lt;br /&gt;
&lt;br /&gt;
The basic rules (for a postive invoice)&lt;br /&gt;
*Tax collected is between 0 and tax charged.&lt;br /&gt;
*Taxable is between 0 and invoice sale amount (Original Invoice Amount lest Invoice tax charged).&lt;br /&gt;
*Exempt total is between 0 and invoice sale amount.&lt;br /&gt;
*Exempt 1-9 must be between 0 and invoice sale amount.&lt;br /&gt;
&lt;br /&gt;
==Diagnostic Notes==&lt;br /&gt;
&lt;br /&gt;
One of the key things to understand is that the sales tax based on collection calculation is more complex than it might seem at first.   We had to enhance the logic behind this over the years to take into account all type of scenarios such as overpayments, negative payments etc.  We always need to make sure we never attempt to calculate tax that wasn’t originally on an invoice.  Therefore we only record transaction that are between 0 and 100% of the invoice amount.&lt;br /&gt;
&lt;br /&gt;
If you have an invoice for $100 with 8$ of tax &lt;br /&gt;
If you pay $108 we will report $100 Taxable and $8 tax.&lt;br /&gt;
…you pay $54 we report $50 Taxable and $4 Tax&lt;br /&gt;
…you pay $200 we report $100 Taxable and $8 tax (we won’t go over 100% of the original amount)&lt;br /&gt;
…you pay -$50 we report $0 taxable and $tax (you can’t go the negative of the invoice)&lt;br /&gt;
&lt;br /&gt;
ON top of this we keep track of every transaction to date and apply these rules to the accumulative balance.&lt;br /&gt;
*You pay $108 on the invoice – ($100 Taxable + $8 tax)&lt;br /&gt;
*You then pay $10 more – ($0 Taxable and $0 tax ) because you are accumulatively over the balance.&lt;br /&gt;
&lt;br /&gt;
The bottom line we report NO TAX unless it’s on an invoice.&lt;br /&gt;
&lt;br /&gt;
So this leads to a tricky issue – Open Credits in cash posting.   These are $0 invoices with $0 tax.   It’s OK to sue Open Credits so long as you do them in a balanced way and either clear them at the end of the month OR understand that any money applied to an open credit will show up on cash posting reports but not on sales tax reports.   This can be considered an explainable discrepancy.&lt;br /&gt;
&lt;br /&gt;
==Diagnostics==&lt;br /&gt;
&lt;br /&gt;
'''Sales Tax Diagnostics''' (10/12/17)&lt;br /&gt;
This works well for single level.&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select x.trx_date,x.tax_locality,&lt;br /&gt;
case trx_type when 'I' THEN 'Invoicing' else 'Csh Post' end &amp;quot;Source&amp;quot;,&lt;br /&gt;
i.cust_no,h.check_no, h.check_amount,  i.invoice_no &amp;quot;Inv No&amp;quot;, i.debit_amount &amp;quot;Inv Amt&amp;quot;, i.credit_amount &amp;quot;Inv Paid&amp;quot;, &lt;br /&gt;
case i.invoice_type when 'I' THEN 'Inv' when 'S' then 'Svc Chg' when 'C' THEN 'Opn Crdt' else '??' end &amp;quot;Inv Typ&amp;quot;,&lt;br /&gt;
Case trx_type &lt;br /&gt;
when 'I' then 'Inv' when 'C' THEN 'Cash' WHEN 'A' THEN 'Allow' WHEN 'D' then 'Disc' when 'T' THEN 'Tax Adj' end &amp;quot;Trx Type&amp;quot;,&lt;br /&gt;
x.taxable, x.tax, &lt;br /&gt;
TAXABLE + EXEMPT_1 + EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 + tax &amp;quot;Gross&amp;quot;,&lt;br /&gt;
case x.trx_type&lt;br /&gt;
when 'C' THEN CD.CREDIT_AMOUNT-DISC_AMOUNT-ALLOW_AMOUNT&lt;br /&gt;
WHEN 'A' THEN CD.ALLOW_AMOUNT&lt;br /&gt;
WHEN 'T' THEN CD.ALLOW_AMOUNT&lt;br /&gt;
WHEN 'D' THEN CD.DISC_AMOUNT END &amp;quot;Post Det Amt&amp;quot;,&lt;br /&gt;
casE trx_type when 'I' THEN 0 ELSE&lt;br /&gt;
TAXABLE + EXEMPT_1 + EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 + tax - disc_taxable - disc_exempt - disc_tax END  &amp;quot;Cash Match&amp;quot;,&lt;br /&gt;
EXEMPT_1 + EXEMPT_2 + EXEMPT_3 + EXEMPT_4 + EXEMPT_5 + EXEMPT_6 + EXEMPT_7 + EXEMPT_8 + EXEMPT_9 &amp;quot;Exempt&amp;quot;,&lt;br /&gt;
disc_taxable + disc_exempt + disc_tax &amp;quot;Disc&amp;quot;&lt;br /&gt;
from arttaxtrx x&lt;br /&gt;
left outer join artcshhd h on x.cash_session_no = h.session_no and x.cash_trans_no = h.trans_no&lt;br /&gt;
left outer join artcshdt cd on x.cash_session_no = cd.session_no and x.cash_trans_no = cd.trans_no and x.cash_line_no=cd.line_no&lt;br /&gt;
inner join artinv i on i.session_no=x.ar_session_no and i.trans_no=x.ar_trans_no&lt;br /&gt;
where x.trx_date between :&amp;quot;Beginning&amp;quot; and :&amp;quot;Ending&amp;quot; &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
Compare &amp;quot;Gross to &amp;quot;Post Det Amt.&amp;quot;  These 2 values should match.&lt;br /&gt;
&lt;br /&gt;
Variations of this query can be used:&lt;br /&gt;
*One Cash Posting:  (Where cash_session_no = :&amp;quot;Cash Session&amp;quot; and cash_trans_no = :&amp;quot;Cash Trans&amp;quot;)&lt;br /&gt;
*One Invoice: (Where AR_Session_no = :&amp;quot;AR Session and AR_TRANS_NO = :&amp;quot;AR Trans&amp;quot;)&lt;br /&gt;
*Or Invoice by cust/invoice number (Where i.cust_no = :&amp;quot;Cust No&amp;quot; and i.invoice_no = :&amp;quot;Invoice No&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Reasons they won't match:&lt;br /&gt;
*Posting outside of the 0-100% range of invoice balance&lt;br /&gt;
*Posting against an open credit invoice (which is $0 so has a range of $0 to $0)&lt;br /&gt;
&lt;br /&gt;
This works well as a report grouped by 1: Date, 2: Source, 3:  Cust, Check #, Amt.  In this case the &amp;quot;Cash Match&amp;quot; should match the check amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Sales Tax History for a Customer/Invoice:'''&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
select i.cust_no,i.invoice_no,tx.*,i.credit_amount,i.debit_amount,i.sales_tax_due&lt;br /&gt;
  from artinv i&lt;br /&gt;
inner join artcshdt cd on cd.ar_session_no=i.session_no and cd.ar_trans_no=i.trans_no&lt;br /&gt;
inner join arttaxtrx tx on tx.trx_type IN ('A','C','T') AND TX.cash_session_no=cd.session_no and tx.cash_trans_no=cd.trans_no&lt;br /&gt;
where i.invoice_date = :&amp;quot;inv date&amp;quot;&lt;br /&gt;
  union all&lt;br /&gt;
select i.cust_no,i.invoice_no,tx.*,i.credit_amount,i.debit_amount,i.sales_tax_due&lt;br /&gt;
  from artinv i&lt;br /&gt;
inner join arttaxtrx tx on tx.trx_type='I' AND TX.ar_session_no=I.session_no and tx.ar_trans_no=I.trans_no&lt;br /&gt;
where i.invoice_date = :&amp;quot;inv date&amp;quot;&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=SUTA_Electronic_Filing_Guides&amp;diff=604</id>
		<title>SUTA Electronic Filing Guides</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=SUTA_Electronic_Filing_Guides&amp;diff=604"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''CO'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.colorado.gov/cs/Satellite/CDLE-UnempBenefits/CDLE/1248095315811 &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''CT'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.ctdol.state.ct.us/uitax/magnetic.htm &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''GA'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.dol.state.ga.us/pdf/forms/dol4606.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
(see NASWA Y2K Code S section)&lt;br /&gt;
&lt;br /&gt;
'''IA'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.iowaworkforce.org/ui/stawrs/wagefileimportinstructionsa.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''IL'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.ides.illinois.gov/Custom/Library/publications/Publications/FileFormatGuide_pdf.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''KS'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.dol.ks.gov/ui/quarterlywage/NASWA.html &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''KY'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.oet.ky.gov/ui/tax/media/magindex.asp &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''LA'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.laworks.net/Downloads/UI/LAWATS.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''MA'''&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''MN'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.uimn.org/tax/forms/Delimited_format_7-1-2005.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''MS'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://mdes.ms.gov/Home/docs/Employer/wagereport.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''MT'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://uid.dli.mt.gov/TAX/Forms/magneticmediahandbook.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''NE'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.dol.nebraska.gov/employers/tax/FTPSpecs/CSVAmendedSpecs.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''OH'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.odjfs.state.oh.us/forms/file.asp?id=1420&amp;amp;type=application/pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''OK'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.ok.gov/oesc_web/Services/Unemployment_Insurance/OES-3_Quarterly_Report.html &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''PA'''&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''TX'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://www.twc.state.tx.us/ui/tax/mm_specs.pdf &amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''WI'''&amp;lt;BR&amp;gt;&lt;br /&gt;
http://dwd.wisconsin.gov/uiben/wagefmt2.htm &amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Restoring_the_Empty_Database_Template&amp;diff=602</id>
		<title>Restoring the Empty Database Template</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Restoring_the_Empty_Database_Template&amp;diff=602"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;From: C:\Program FIles\Borland\Interbase\Bin directory&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
gbak -r -user CCWIN -password &amp;lt;pwd&amp;gt; c:\progra~1\givenh~1\cc\template\ccwmco.ibt c:\progra~1\givenh~1\cc\cust\data\ccw001.ib&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Emergency Restore Batch File:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
c:&lt;br /&gt;
CD \Progra~1\Borland\Interbase\Bin&lt;br /&gt;
gbak -r -user CCWIN -password &amp;lt;pwd&amp;gt; c:\progra~1\givenh~1\cc\template\ccwmco.ibt c:\progra~1\givenh~1\cc\cust\data\ccw099.ib&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Resend_Order_Complete_Emails&amp;diff=600</id>
		<title>Resend Order Complete Emails</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Resend_Order_Complete_Emails&amp;diff=600"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Resend ALL Order Complete Emails ==&lt;br /&gt;
&lt;br /&gt;
Sometimes it is necessary to re-send order complete emails for a specific customer, order and/or date range.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Some email servers limit the number of emails that can be sent within a short timeframe. It may be necessary to add a SENDSPACING parameter to the notification device configuration.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Be careful! Always run the first query so you can confirm that the number of emails to be sent is correct!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This first query will tell you the number of emails that fit the criteria you specify (customer, order, date range).&lt;br /&gt;
Notice that the &amp;quot;order_code&amp;quot; parameter is done as a LIKE within the query. You can use % to indicate all orders for the customer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT COUNT(*)&lt;br /&gt;
FROM ARTORDHD OH&lt;br /&gt;
INNER JOIN ARTORDCMPNOTIFY OC ON (OC.SESSION_NO = OH.SESSION_NO) AND (OC.TRANS_NO = OH.TRANS_NO)&lt;br /&gt;
WHERE&lt;br /&gt;
 (OH.CUST_NO = :cust_no) AND&lt;br /&gt;
 (OH.ORDER_CODE LIKE :order_code) AND&lt;br /&gt;
 (OH.DELIVERY_DATE BETWEEN :BEG_DELIVERY_DATE AND :END_DELIVERY_DATE)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This query will configure the selected order complete emails to be re-sent automatically:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DELETE FROM ARTORDCMPNOTIFY&lt;br /&gt;
WHERE ((SESSION_NO || 'K' || TRANS_NO) IN&lt;br /&gt;
(SELECT OH.SESSION_NO || 'K' || OH.TRANS_NO&lt;br /&gt;
FROM ARTORDHD OH&lt;br /&gt;
INNER JOIN ARTORDCMPNOTIFY OC ON (OC.SESSION_NO = OH.SESSION_NO) AND (OC.TRANS_NO = OH.TRANS_NO)&lt;br /&gt;
WHERE&lt;br /&gt;
 (OH.CUST_NO = :cust_no) AND&lt;br /&gt;
 (OH.ORDER_CODE LIKE :order_code) AND&lt;br /&gt;
 (OH.DELIVERY_DATE BETWEEN :BEG_DELIVERY_DATE AND :END_DELIVERY_DATE)))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The final step is to issue the following request from the customer's KServer using Postman or the REST Debugger:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
http://&amp;lt;server_ip_address&amp;gt;:8211/rest/ktrapi1/ordcmpautonotify?LO_DATE=&amp;lt;BEG_DELIVERY_DATE&amp;gt;&amp;amp;HI_DATE=&amp;lt;END_DELIVERY_DATE&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will trigger the emails to be sent, usually within an hour.&lt;br /&gt;
&lt;br /&gt;
== Resend Order Complete Emails that failed to send ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This procedure is supported for Keystone 3.6.30 and higher.&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sometimes it is necessary to re-send the order complete emails that failed to send for a specific customer, order and/or date range.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Some email servers limit the number of emails that can be sent within a short timeframe. It may be necessary to add a SENDSPACING parameter to the notification device configuration.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Be careful! Always run the first query so you can confirm that the number of emails to be sent is correct!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This first query will tell you the number of emails that fit the criteria you specify (customer, order, date range).&lt;br /&gt;
Notice that the &amp;quot;order_code&amp;quot; parameter is done as a LIKE within the query. You can use % to indicate all orders for the customer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SELECT COUNT(*)&lt;br /&gt;
FROM ARTORDHD OH&lt;br /&gt;
INNER JOIN ARTORDCMPNOTIFY OC ON (OC.SESSION_NO = OH.SESSION_NO) AND (OC.TRANS_NO = OH.TRANS_NO)&lt;br /&gt;
WHERE&lt;br /&gt;
 (OH.CUST_NO = :cust_no) AND&lt;br /&gt;
 (OH.ORDER_CODE LIKE :order_code) AND&lt;br /&gt;
 (OH.DELIVERY_DATE BETWEEN :BEG_DELIVERY_DATE AND :END_DELIVERY_DATE) AND&lt;br /&gt;
 (OH.OC_EMAIL_STATUS LIKE 'ERROR%')&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This query will configure the selected order complete emails to be re-sent automatically:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DELETE FROM ARTORDCMPNOTIFY&lt;br /&gt;
WHERE ((SESSION_NO || 'K' || TRANS_NO) IN&lt;br /&gt;
(SELECT OH.SESSION_NO || 'K' || OH.TRANS_NO&lt;br /&gt;
FROM ARTORDHD OH&lt;br /&gt;
INNER JOIN ARTORDCMPNOTIFY OC ON (OC.SESSION_NO = OH.SESSION_NO) AND (OC.TRANS_NO = OH.TRANS_NO)&lt;br /&gt;
WHERE&lt;br /&gt;
 (OH.CUST_NO = :cust_no) AND&lt;br /&gt;
 (OH.ORDER_CODE LIKE :order_code) AND&lt;br /&gt;
 (OH.DELIVERY_DATE BETWEEN :BEG_DELIVERY_DATE AND :END_DELIVERY_DATE) AND&lt;br /&gt;
 (OH.OC_EMAIL_STATUS LIKE 'ERROR%')&lt;br /&gt;
))&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The final step is to issue the following request from the customer's KServer using Postman or the REST Debugger:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
http://&amp;lt;server_ip_address&amp;gt;:8211/rest/ktrapi1/ordcmpautonotify?LO_DATE=&amp;lt;BEG_DELIVERY_DATE&amp;gt;&amp;amp;HI_DATE=&amp;lt;END_DELIVERY_DATE&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will trigger the emails to be sent, usually within an hour.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=598</id>
		<title>Replicating Keystone Data with QueryGen</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=598"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[CATEGORY: QueryGen]]&lt;br /&gt;
&lt;br /&gt;
This covers the process of using QueryGen to selectively replicate data from one Keystone company to another.  This process is useful when you need to copy a good portion but not all.   &lt;br /&gt;
&lt;br /&gt;
Querygen compared to other tools can take a little more work but gives more flexibility to select individual records.&lt;br /&gt;
&lt;br /&gt;
==Make it easy on yourself==&lt;br /&gt;
&lt;br /&gt;
===Keep the data in Interbase===&lt;br /&gt;
Do '''NOT''' export the data then import it.  This is a waste of time and effort.  It introduces data errors.&lt;br /&gt;
&lt;br /&gt;
===Let QueryGen do the hard work===&lt;br /&gt;
Take advantage of the Make Selection Query and Build Query options.&lt;br /&gt;
&lt;br /&gt;
==QueryGen Process==&lt;br /&gt;
&lt;br /&gt;
===Selection Query===&lt;br /&gt;
90% of the time you simply make a 'Select * from' query.  E.G. &amp;lt;PRE&amp;gt;Select * from artloc&amp;lt;/PRE&amp;gt; or &amp;lt;Select * from &amp;lt;PRE&amp;gt;ARTPLANT where ACTIVE_FLAG='Y'&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you want to select some of the data use the MK SEL QRY option.  This gives you a list of fields where you can delete the unwanted ones and generate a customized select query.&lt;br /&gt;
&lt;br /&gt;
===Build Query===&lt;br /&gt;
The BLD QRY tool is your friend.  In most cases you do not need to touch the default options for non-transaction tables (e.g. customers, products etc.)&lt;br /&gt;
&lt;br /&gt;
====Generators(Session Numbers)====&lt;br /&gt;
See: [[QueryGen#Generators]]&lt;br /&gt;
&lt;br /&gt;
====Incrementors(Transactions and Line Numbers)====&lt;br /&gt;
See: [[QueryGen#Incrementors]]&lt;br /&gt;
&lt;br /&gt;
==Get your data in Order==&lt;br /&gt;
&lt;br /&gt;
The trick is to find dependencies.  You can't add products without plants, product classes, gl accounts etc.  You can't add plants without locations.  You can't add gl account without gl groups.&lt;br /&gt;
&lt;br /&gt;
The general sequence:&lt;br /&gt;
*Categories,Classes&lt;br /&gt;
*Locations,Plants&lt;br /&gt;
*Commonly referred to master tables (GL Accounts)&lt;br /&gt;
*Common master tables&lt;br /&gt;
*Highly dependent tables (Pricing)&lt;br /&gt;
*Transactions&lt;br /&gt;
&lt;br /&gt;
===Sample Sequence===&lt;br /&gt;
&lt;br /&gt;
This is a sample import sequence.  This list would be expanded if other modules such as PO or CM were involved.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
ARTLOC&lt;br /&gt;
GLTACGRP&lt;br /&gt;
GLTACCT&lt;br /&gt;
GLTSEG&lt;br /&gt;
GLTFSDEF&lt;br /&gt;
ARTTXAUT&lt;br /&gt;
ARTTXLOC&lt;br /&gt;
ARTTXSTR&lt;br /&gt;
ARTPLANT (some default svc chg &amp;amp; def disc gl could be missing if inactive)&lt;br /&gt;
ARTEXCLS&lt;br /&gt;
ARTUMS  (Merge Method for autogenerated)&lt;br /&gt;
ARTPRCLS&lt;br /&gt;
ARPRGRP&lt;br /&gt;
ARTSLSPN&lt;br /&gt;
ARTTRCLS&lt;br /&gt;
ARTDRIV&lt;br /&gt;
ARTOWNER&lt;br /&gt;
ARTTRUCK&lt;br /&gt;
ARTCTCLS&lt;br /&gt;
ARTCUCLS&lt;br /&gt;
ARTPRICE&lt;br /&gt;
ARTARCLS&lt;br /&gt;
ARTCUST&lt;br /&gt;
DITEVENTTYPE&lt;br /&gt;
QTTREASONS&lt;br /&gt;
CCTOPTN (SECTION_NAME=SYSTEM), (USER DEFAULT, NOT SYSTEM)&lt;br /&gt;
APTPTCLS (merge)&lt;br /&gt;
APTTNCLS&lt;br /&gt;
APTTXAUT&lt;br /&gt;
APTVEND&lt;br /&gt;
PRTWKCOMPCLASS&lt;br /&gt;
PRTDEPT&lt;br /&gt;
PRTSTCODE&lt;br /&gt;
PRTFORMULA&lt;br /&gt;
PRTFORMFACT&lt;br /&gt;
PRTLINKS&lt;br /&gt;
PRTCOMPDEF&lt;br /&gt;
PRTEVENTYPE (Consider autogenerated)&lt;br /&gt;
PRTDEPTGLXREF&lt;br /&gt;
PRTEMPLOYEE&lt;br /&gt;
PRTEMPDEF (AutoCreated - Update Values)&lt;br /&gt;
PRTEMPFACT (AuotCreated - Update Values)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Special Cases==&lt;br /&gt;
&lt;br /&gt;
===ARTPRICE - GROUPS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM ARTPRICE&lt;br /&gt;
WHERE PRICE_TYPE='G' AND ACTIVE_FLAG='Y'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
MODEL HEADER:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
CREATE  TABLE TMP_SNO(SNO INTEGER);&lt;br /&gt;
INSERT INTO TMP_SNO (SNO)  SELECT session_no FROM CCP_SESSION_BEGIN('ADMIN', 'NEW SCRIPT', '127.0.0.1', '2.9.91.0');&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
Model&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
INSERT INTO ARTPRICE&lt;br /&gt;
( SESSION_NO, TRANS_NO, PRICE_TYPE, CUST_NO, GROUP_NO, PRICE_CODE, PRICE_ZONE, PRODUCT_CLASS, PRICE_PLANT_NO, PRODUCT_CODE, UNIT_OF_MEASURE, QTY_LEVEL, UNIT_PRICE, UNIT_PCT_DISC, IMPORTED_FLAG, MEMO, LAST_CHANGE_DATETIME, LAST_CHANGE_USER, ACTIVE_FLAG )  VALUES &lt;br /&gt;
( (SELECT SNO FROM TMP_SNO), {TRANS_NO|INC=1}, '{PRICE_TYPE}', '{CUST_NO}', '{GROUP_NO}', '{PRICE_CODE}', '{PRICE_ZONE}', '{PRODUCT_CLASS}', '{PRICE_PLANT_NO}', '{PRODUCT_CODE}', '{UNIT_OF_MEASURE}', {QTY_LEVEL}, {UNIT_PRICE}, '{UNIT_PCT_DISC}', '{IMPORTED_FLAG}', '{MEMO}', CAST('TODAY' AS TIMESTAMP), 'HIT', '{ACTIVE_FLAG}'    );&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===PRTPOP===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT POP. * FROM PRTPOP POP&lt;br /&gt;
  INNER JOIN PRTFORMULA F   ON F.FORMULA_ID=POP.FORMULA_ID AND F.ACTIVE_FLAG='Y'&lt;br /&gt;
  ORDER BY F.FORMULA_ID,POP.SEQUENCE&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
===PRTFORMFACT===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT FF. * FROM PRTFORMFACT FF&lt;br /&gt;
  INNER JOIN PRTFORMULA F   ON F.FORMULA_ID=FF.FORMULA_ID AND F.ACTIVE_FLAG='Y'&lt;br /&gt;
  ORDER BY F.FORMULA_ID  &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
===PRTLINKS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT L.* FROM PRTLINKS L&lt;br /&gt;
WHERE EXISTS (SELECT * FROM PRTCOMPDEF CD WHERE CD.LINK_ID=L.LINK_ID AND CD.ACTIVE_FLAG='Y')&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===CCTOPTN===&lt;br /&gt;
Select System:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM CCTOPTN&lt;br /&gt;
WHERE &lt;br /&gt;
 SECTION_NAME='SYSTEM'&lt;br /&gt;
AND OPTION_NAME NOT IN ('SYSTEMDATE','FOREGROUNDQUERIES','PREVIEWZOOM','PREVIEWFONTNAME')&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Select Default:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM CCTOPTN&lt;br /&gt;
WHERE &lt;br /&gt;
 SECTION_NAME&amp;lt;&amp;gt;'SYSTEM'&lt;br /&gt;
AND USER_GROUP_ID='DEFAULT'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Inactive GL in ARALCLS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT A.* FROM GLTACCT A&lt;br /&gt;
 INNER JOIN ARTALCLS AC ON AC.ALLOW_GL=A.GL_ACCOUNT AND A.ACTIVE_FLAG='N'&lt;br /&gt;
 (use default build create to add accts go gltacct)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Remote_Plant_Ticketing_Setup&amp;diff=596</id>
		<title>Remote Plant Ticketing Setup</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Remote_Plant_Ticketing_Setup&amp;diff=596"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Setting up remote ticketing systems can be a complex process. Here are some guidelines to simpify the process.&lt;br /&gt;
&lt;br /&gt;
==Initial Keystone Setup==&lt;br /&gt;
&lt;br /&gt;
When you first install Keystone on the remote system, you will need to enter information on the Keystone Activation form.&lt;br /&gt;
&lt;br /&gt;
*Use the same Serial No. as the office system.&lt;br /&gt;
*Use a unique System Location for each remote system (never zero!)&lt;br /&gt;
&lt;br /&gt;
[[Image:RemoteLicenseSetup.PNG]]&lt;br /&gt;
&lt;br /&gt;
==Configuring the Location==&lt;br /&gt;
&lt;br /&gt;
Using Location Maintenance add a new location for the remote system.&lt;br /&gt;
&lt;br /&gt;
*Use the Location Id that was entered in the Keystone Activation form.&lt;br /&gt;
*Select &amp;lt;i&amp;gt;Remote Ticketing&amp;lt;/i&amp;gt; for the Type.&lt;br /&gt;
*Select &amp;lt;i&amp;gt;File&amp;lt;/i&amp;gt; for both Transfer In Via and Transfer Out Via.&lt;br /&gt;
*You should rarely have to setup LOCALTABLES in the Xfr In parameters on the remote system (see [[#Default Tables|Default Tables]] for the list of tables that are copied from the office and preserved at the remote.)&lt;br /&gt;
&lt;br /&gt;
[[Image:RemoteLocationSetup.PNG]]&lt;br /&gt;
&lt;br /&gt;
===Default Tables===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;3&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; &lt;br /&gt;
! Keytone Table&lt;br /&gt;
! Description&lt;br /&gt;
! Copied from Office?&lt;br /&gt;
! Preserved at Remote?&lt;br /&gt;
|-&lt;br /&gt;
| ARTCTCLS&lt;br /&gt;
| A/R Credit Terms Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTCUCLS&lt;br /&gt;
| A/R Customer Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTCUST&lt;br /&gt;
| A/R Customers&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTDIV&lt;br /&gt;
| A/R Divisions&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTDRIV&lt;br /&gt;
| A/R Drivers&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTEXCLS&lt;br /&gt;
| A/R Tax Exempt Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTJOBCL&lt;br /&gt;
| A/R Job Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTJOBDT&lt;br /&gt;
| A/R Job Prices (Detail)&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTJOBHD&lt;br /&gt;
| A/R Job Prices (Header)&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTLOC&lt;br /&gt;
| System Locations&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTORDDT&lt;br /&gt;
| A/R Remote Orders (Detail)&lt;br /&gt;
| &lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTORDHD&lt;br /&gt;
| A/R Remote Orders (Header)&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTOWNER&lt;br /&gt;
| A/R Owners&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPLANT&lt;br /&gt;
| A/R Plants&lt;br /&gt;
| &lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTPLTCK&lt;br /&gt;
| A/R Plants Last Used Ticket Numbers&lt;br /&gt;
| &lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTPRAUT&lt;br /&gt;
| A/R Automatic Products&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPRCLS&lt;br /&gt;
| A/R Product Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPRGRP&lt;br /&gt;
| A/R Price Groups&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPRICE&lt;br /&gt;
| A/R Special Prices&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPROD&lt;br /&gt;
| A/R Products&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPRSTR&lt;br /&gt;
| A/R Product Structure&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPTKCK&lt;br /&gt;
| A/R Remote Tickets Processed by Office&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTPTKDT&lt;br /&gt;
| A/R Remote Plant Tickets (Detail)&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTPTKHD&lt;br /&gt;
| A/R Remote Plant Tickets (Header)&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| ARTSLSPN&lt;br /&gt;
| A/R Salespeople&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTRAIL&lt;br /&gt;
| A/R Trailers&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTRCLS&lt;br /&gt;
| A/R Truck Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTRUCK&lt;br /&gt;
| A/R Trucks&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTXAUT&lt;br /&gt;
| A/R Tax Authorities&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTXLOC&lt;br /&gt;
| A/R Tax Localities&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTTXSTR&lt;br /&gt;
| A/R Tax Structure&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTUMS&lt;br /&gt;
| A/R Units of Measure&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| ARTZONE&lt;br /&gt;
| A/R Zones&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| CCTDEVICE&lt;br /&gt;
| System Devices&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| CCTFORM&lt;br /&gt;
| System Forms&lt;br /&gt;
| Yes (a/o Keystone 3.1.2)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| CCTOPTN&lt;br /&gt;
| System Options&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| CCTSECTL&lt;br /&gt;
| System Security Control&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| CCTSESSN&lt;br /&gt;
| System Sessions&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| DITPRJLD&lt;br /&gt;
| Dispatch Projected Loads&lt;br /&gt;
|&lt;br /&gt;
| Yes&lt;br /&gt;
|-&lt;br /&gt;
| DITUSECL&lt;br /&gt;
| Dispatch Usage Classes&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GLTACCT&lt;br /&gt;
| G/L Accounts&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GLTACGRP&lt;br /&gt;
| G/L Account Groups&lt;br /&gt;
| Yes&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| Z$ARTPRTRX&lt;br /&gt;
| A/R Product Transactions (Summarized)&lt;br /&gt;
| Yes&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Configuring the Plant==&lt;br /&gt;
&lt;br /&gt;
Using Plant Maintenance add a new plant for the remote system. You will need to use SuperUser mode to access Plant Maintenance.&lt;br /&gt;
&lt;br /&gt;
*Set the Location Id to the same value entered in Location Maintenance.&lt;br /&gt;
&lt;br /&gt;
[[Image:RemotePlantSetup.PNG]]&lt;br /&gt;
&lt;br /&gt;
==Transferring Data==&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;Never use Backup/Restore to bring data to a remote system!&amp;lt;/b&amp;gt; This has negative security and performance implications.&lt;br /&gt;
*&amp;lt;b&amp;gt;Never edit a ticket form on a remote system!&amp;lt;/b&amp;gt; Ticket forms should always be setup on the office system. They will then transfer to the plant as part of Beginning of Day (a/o Keystone 3.1.2.) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
As we all know, setting up and supporting remote ticketing systems can be a truly painful process.  I’m throwing together some notes here to see if we can make things easier on ourselves.&lt;br /&gt;
&lt;br /&gt;
When installing a new stand alone ticketing system make sure to setup:&lt;br /&gt;
* Identical System ID as office&lt;br /&gt;
* Unique Location ID – make sure there is never more than one system with same location ID in the company.&lt;br /&gt;
&lt;br /&gt;
Create the company and setup the basic data.&lt;br /&gt;
* Location Maintenance (see below)&lt;br /&gt;
* Plant Maintenance&lt;br /&gt;
Setup&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
NOTE: DO NOT BACKUP OFFICE DATA AND USE RESTORE AT THE PLANT!!!!!!&lt;br /&gt;
This has both security and performance implications.&lt;br /&gt;
&lt;br /&gt;
Location Maintenance Specifics:&lt;br /&gt;
&lt;br /&gt;
Diskette vs. File:&lt;br /&gt;
There is a difference between how CompuCrete handles the Diskette and File Settings.  When you choose Diskette, special handling is put in place to break the transfer file into as many separate diskettes as needed.  &lt;br /&gt;
&lt;br /&gt;
Local Files:&lt;br /&gt;
* TRUCKS&lt;br /&gt;
&lt;br /&gt;
Forms:&lt;br /&gt;
* All forms should be in the database&lt;br /&gt;
&lt;br /&gt;
Menus:&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Remote_Desktop_Tips&amp;diff=594</id>
		<title>Remote Desktop Tips</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Remote_Desktop_Tips&amp;diff=594"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;WikiAdmin: 1 revision imported&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Adding a Logoff Icon ==&lt;br /&gt;
&lt;br /&gt;
Because users could potentially hit the SHUTDOWN button from the Windows Start menu resulting in accidental server shutdown, I've created an Icon called &amp;quot;Logoff Server&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Create a shortcut with a command line of &amp;quot;SHUTDOWN.EXE -L&amp;quot; and change the icon to use the Logoff Icon.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Disabling the SHUTDOWN option ==&lt;br /&gt;
To remove the SHUTDOWN option from the menu when a user logs into the Terminal Services, do the following:&lt;br /&gt;
&lt;br /&gt;
# Go to '''Control Panel''', '''Administrative Tools''', and look for '''Local Security Settings'''.&lt;br /&gt;
# Click on '''Local Policies''' tree and then to the &amp;quot;'''Users Right Assignment'''&amp;quot; subtree.&lt;br /&gt;
# Search for &amp;quot;'''Shut Down the System'''&amp;quot; option.&lt;br /&gt;
# Add to this option all the users or groups you wish to give the option to '''Shutdown the System'''. All the users or groups excluded from the list will not have permissions to shutdown the system. &lt;br /&gt;
&lt;br /&gt;
This applies whether the user excluded from the list login locally or through Terminal Services.&lt;/div&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
</feed>