Great Plains Dexterity Dynamics eEnterprise Microsoft CRM Microsoft RMS Crystal Reports SQL .Net C# International Chicago Illinois Customizations Great Plains Programming Development Offshore Programming FRx ReportWriter Integration Manager POS Upgrade Data Recovery Conversion EDI Barcoding SQL Multicurrency Microsoft Business Solutions Great Plains Certified Master FAQ Forum Continuum for VB Btrieve Ctree Pervasive SQL.2000 Great Plains Business Portal eOrder eView eRequisition Intellisol Kampdata Mekorma Horizon Wennsoft Naperville Schaumburg Lombard Hinsdale Aurora Rockford Downers Grove Brazil Moscow Montreal Mexico USA Canada California
Issue
Error - "Your previous transaction-level posting session has not finished
processing. Please allow time for it to finish. If you believe it has failed,
log out of Dynamics and log back in to recover transactions." occurs when
accessing the Sales Transaction Entry window (Transactions | Sales | Sales Trx
Entry).
Resolutions
Resolution 1 - If you are using Btrieve or c-tree.
Try setting up a new User ID in User Setup, Setup | System | User. Delete the
old User ID and set up a new one for this user.
Note - If the User ID is 'sa',
do not delete the user. Call System Manager Technical Support for assistance.
Resolution 2 - If you are using SQL Server.
The main reason this error appears for users is because records get locked in
the SY00500, SY00800, or SOP10100 tables. Records will have a Batch Number that
is blank or it will actually have the User ID as the Batch Number.
1. Get all users out of eEnterprise and make a backup.
2. In SQL Query Analyzer, run this delete statement on the SY00800 against
DYNAMICS database:
DELETE SY00800
3. Look for the problem records in the SY00500 by running either of these
statements against the company database:
SELECT * from SY00500 where BACHNUMB = ''
SELECT * from SY00500 where BACHNUMB = 'enter the User ID with error'
4. If you have records returned, delete either of these records from the
SY00500:
DELETE SY00500 where BACHNUMB = ''
DELETE SY00500 where BACHNUMB ='enter the User ID with error'
5. Find either of these problem records from the SOP10100 table by running the
script against the company database:
SELECT BACHNUMB,* from SOP10100 where BACHNUMB = ''
SELECT BACHNUMB,* from SOP10100 where BACHNUMB = 'enter the User ID with
error'
6. Verify the results and delete the problem records. The error message should
not appear when you enter the Sales Transaction Entry window, but it will not
bring back the transaction that was posted. You may need to re-enter, or more
likely just make sure that it was posted. You may also want to check out the
SOP10200 to see if the one of these details is there or not.
DELETE SOP10100 where BACHNUMB = ''
DELETE SOP10100 where BACHNUMB = 'enter the User ID with error'
Issue
The taxes on sales transactions do not seem to be calculating correctly. How are taxes calculated in Receivables, Sales Order Processing and Invoicing?
Resolution
As a general rule, taxes are calculated based on the shipping method assigned to the transaction.
TROUBLESHOOTING TAXES THAT ARE NOT CALCULATING OR ARE CALCULATING INCORRECTLY:
Verify Setup information
Issue
What steps need to be taken when a posting interruption occurs while posting a
batch in Sales Order Processing?
Resolution
When a posting interruption occurs on a Sales Order Processing batch, the
transactions that were posted before the interruption will not have the error
message "this transaction has already been posted", on the Edit
List/Posting Journal, when posting the batch again. These transactions will
post. 001 gets appended to the Document Number and gets posted in RM and GL,
resulting in a double posting (since the original document already posted in RM
and GL).
Listed below is a diagnostic script to help identify SOP Invoices/Returns that
got posted prior to the interruption, so that their information can be validated
in RM and GL and if appropriate, removed from the SOP batch before the next
posting attempt. This script is only helpful after a posting interruption, but
before the batch is posted again. Please see the comments at the beginning of
the script for more information.
Execute the following SQL commands against the appropriate Company database
using the SQL Query window:
/* Beginning of SOP Diagnostic √ Batch Interruption */
Print 'This is a diagnostic script to help identify SOP documents that posted
into RM and GL'
Print 'prior to an SOP posting interruption. RM and GL information on these
documents should'
Print 'be verified in RM/GL for completeness, and the transaction removed from
the SOP batch if'
Print 'necessary. This does not address Inventory. It is still recommended to
restore and'
Print 'post the original batch in its entirety, rather than risk any data
issues.'
/* SOP Invoice in RM */
print ' '
print 'Invoice in RM Open:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, RM20101 where
SOPTYPE = 3 and
RMDTYPAL = 1 and
SOPNUMBE = DOCNUMBR
go
/* SOP Invoice unposted in GL */
print ' '
print 'Invoice Unposted in GL:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, GL10001 where
SOPTYPE = 3 and
SOPTYPE = ORTRXTYP and
SOPNUMBE = ORDOCNUM
go
/* SOP Invoice posted in GL */
print ' '
print 'Invoice Posted in GL:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, GL20000 where
SOPTYPE = 3 and
SOPTYPE = ORTRXTYP and
SOPNUMBE = ORDOCNUM
go
/* SOP Return in RM */
print ' '
print 'Return in RM Open:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, RM20101 where
SOPTYPE = 4 and
RMDTYPAL = 8 and
SOPNUMBE = DOCNUMBR
go
/* SOP Return unposted in GL */
print ' '
print 'Return Unposted in GL:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, GL10001 where
SOPTYPE = 4 and
SOPTYPE = ORTRXTYP and
SOPNUMBE = ORDOCNUM
go
/* SOP Return posted in GL */
print ' '
print 'Return Posted in GL:'
select distinct(SOPNUMBE) as 'SOP Document Number' from SOP10100, GL20000 where
SOPTYPE = 4 and
SOPTYPE = ORTRXTYP and
SOPNUMBE = ORDOCNUM
go
/* End of SOP Diagnostic √ Batch Interruption */
Question:
The error Transaction Level Posting Has Not Completed appears for a specific user when going into the Sales Transaction Entry window (Transactions - Sales - Sales Trx Entry). What is causing this and what can I do?
Answer:
In this case, there was a stranded record in the SY00500 that had a Batch ID of the user name. To delete the batch out of the SY00500 table, perform the following statement in Query Analyzer: delete SY00500 where BACHNUMB = 'X'
Replace X with the username of the user that is receiving the error.
If the error continues to appear, follow the steps in TechKnowledge #22667.
Issue Summary:
SOP posting interruption - Can"t recover.
Issue Detail:
Follow these steps to recreate:
1. Enter and save 10 invoices in a batch in SOP.
2. Go to: Trx > Sales > Sales Batches. Timing is crucial on the following steps.
3. Pull up the batch and click post.
4. Print the posting journals to the screen.
5. When the batch is posting, you will receive a progress window.
6. When the progress window is at 100% and the first posting journal just begins
to print. Shut the machine off.
7. Bring machine back up.
8. Go to file manager and in the Dynamics System folder, delete the activity
files and the sy00800 files.
9. In the Two, Inc. Company folder, delete the sy00500 files.
10. Launch Dynamics
11. Go to: File>Maintenance>Checklinks
12. Checklink the Sales Work file.
13. Go to: Trx > Sales > Sales Trx Entry.
14. Click the document number lookup.
15. You will see your 10 trx here. Attempt to pull one up. You will receive a
message that the document has been posted.
16. You cannot delete the batch either.
17. Go to: Inquiry > Sales > Sales Documents
18. Mark History and click Redisplay.
19. You will see your 10 trx here also.
20. At this point the trx are in both the work and history files in SOP.
21. General ledger has been posted to correctly and Receivables and Inventory
have both been updated correctly.
Results: The problem is this - checklinks or reconciling does not remove the
documents from the work file. There is no way to remove the trx that are still
saved in the batch. The documents are marked as posted, so we can"t do anything
with them.
Expected: The checklinks process should go through the sales work file and any
documents that are marked as posted should be removed from the work file.
Notes: This is a very common occurance in SOP. I have not been able to narrow it
down to see why people are getting the posting interruptions or even if it is
more common on certain configurations. I do know that several customers do call
in with the problem and there is no way to recover. Restoring or deleting the
work file is not an option, these are large customers with hundreds of orders,
invoices, back orders etc. We need to beef up checklinks to fix this.
Status of Resolution:
This problem report is scheduled for a service pack.
Issue
My workstation locked while I was entering transactions in Sales Order Processing. Now when I try to select the transaction I was working on I receive the following message: Sorry, another user is editing this document. How do I get this transaction unlocked so I can finish it?
Resolution
Follow these steps: (make a backup before starting)
1. Have all users exit eEnterprise.
2. Within the SQL Query Tool, execute this statement against the DYNAMICS database to delete all records in the specified tables:
DELETE SY00800
DELETE SY00801
DELETE ACTIVITY
3. Within the SQL Query Tool, execute this statement against the tempdb database to delete all records in the specified tables:
DELETE DEX_LOCK
DELETE DEX_SESSION
Issue
How to have more than four lines of Line Item Comments on a graphical SOP Blank
Packing Slip form without white space appearing between lines?
Resolution
1. Go to Report Writer (Tools | Customize | Report Writer). Open the SOP Blank
Packing Slip Form and go into the Layout.
2. Select Tools from the menu bar, then Report Section Options. In the
Additional Footers section, highlight Comment 0, Comment 1, Comment 2, and
Component Footer and Remove them.
3. Modifying Calculated Fields:
A. Open (C) Suppress Comment 1.
B. Change the Conditional Expression type to Calculated.
C. Go to the Constants tab, select Integer and choose to Add the 0.
D. Repeat with (C) Suppress Comment 2, (C) Suppress Comment 3, and (C) Suppress
Comment 4 calculated fields.
4. Layout:
A. In the Layout, enlarge section H7 to 3 lines.
B. In the H7 section, drag in the Comment field from the Sales Line Comment Work
and History table 3 times.
C. Select array 1, 2, and 3 for each field.
D. In an available area in H4, drag the Comment field from the Sales Line
Comment Work and History table and select array 4.
E. Double click on the field and select Invisible.
F. Enlarge section H8 to the maximum number of Line Item Comments you would like
to print.
G. In the H8 section, drag the Comment Text from the Sales Line Comment Work
and History. Make the field as wide as the section.
5. Creating Calculated Fields:
A. First New Calculated Field:
a. Name the calculated field Comment.
b. Result type is Integer.
c. Expression type is Conditional.
d. Expression: From the Fields tab, select Sales Line Comment Work and History.
For the field, select Comment, the array will be 1. Add.
e. Select the <> Operator. From the Constants tab, select String and leave
the Constant blank. Add.
f. Select the AND Operator.
g. From the Fields tab, select Sales Line Comment Work and History. For the
field, select Comment, the array will be 4. Add.
h. Select the = sign in the Operators section.
i. From the Constants tab, select String to leave the Constant blank. Add.
j. True Case: Select the Constants tab. Select Integer. Add a 1.
k. False Case: Select the Constants tab. Select Integer. Add a 0.
l. Select OK to save the calculated field.
B. Second New Calculated Field:
a. Name the calculated field Comment 2.
b. Result type is Integer.
c. Expression type is Conditional.
d. Expression: From the Fields tab, select Sales Line Comment Work and History.
For the field, select Comment, the array will be 4. Add.
e. Select the = sign in the Operators section.
f. From the Constants tab, select String to leave the Constant blank. Add.
g. True Case: Select the Constants tab. Select Integer. Add a 0.
h. False Case: Select the Constants tab. Select Integer. Add a 1.
i. Select OK to save the calculated field.
6. Report Section Options:
A. Go to Report Section Options (Tools | Section Options).
B. In the Additional Header section, choose Dummy 2 and then choose Open.
C. Ensure the Suppress When Field Is Empty checkbox is marked.
D. In the dropdown box, select Comment (calculated field that was created
above).
E. Choose OK.
F. Choose the Break Field 2 Additional Header.
G. Ensure the Suppress When Field Is Empty checkbox is marked.
H. In the dropdown box, select Comment 2 calculated field.
I. Save your changes.
7. Save your changes and return to Dynamics (File | Great Plains Dynamics).
8. Give yourself security to the report (Setup | System | Security).
9. When selecting to print the Packing Slip, you will not have to select Include
Line Item Comments from the Packing Slip section.
Note - If you are using a graphical report you will have to make the Comment
Text field as wide as the Line Items you need in the report or it will only
print the first line of your Comment.
Question:
How do I void Invoices and Returns in Sales Order Processing?
Answer:
1. Remove SOP history (Utilities - Sales - Remove Sales History).
2. If this is an invoice, enter an increase adjustment in Inventory.
If this is a return, enter a decrease adjustment in Inventory.
3. Now you can void the transaction in Receivables Management (Transactions - Sales - Posted Transactions).
Issue:
Can you clarify the difference between Allocation and Fulfillment?
Resolution:
Allocation is a way of telling
the Inventory module that the items entered are spoken for or reserved. For each
document type setup in Sales Order Processing Setup (Setup|Sales|Sales Order
Processing), you can specify whether to allocate by Line Item or by
Document/Batch. If Line Item is specified, then as soon as entry of a Sales line
item is completed within Sales Transaction Entry (Transaction|Sales|Sales Trx
Entry), the item is allocated from inventory. If Document/Batch is specified,
you can allocate entire documents or batches using the Sales
Allocation/Fulfillment Options window. (With the Sales Trx Entry or Sales
Batches Entry window open, select Options from the menu bar, then Allocate or
Fulfill.) An advantage of allocating by Line Item is you know right away if it
is not in stock. Allocating by Document/Batch allows faster data entry because
items are not checked for quantity shortages until the entire document or batch
is allocated; however, you could oversell an item (because you are not informed
of any shortages when keying in the order/invoice).
Fulfillment is the process of marking an order or invoice as
complete. This status indicates that the items have been picked and are ready
for delivery. For each document type setup in Sales Order Processing Setup (Setup|Sales|Sales
Order Processing), you can specify whether to use a separate fulfillment
process. If not marked (the default), the item is fulfilled at the same time it
is allocated. If marked, then you can fulfill using the Sales
Allocation/Fulfillment Options window. Separate fulfillment is done for a
business reason. It requires more resources (because it requires more work to
key in/process in the application). Most customers do not have a separate
fulfillment process
Question:
We are receiving "A unique document number could not be found. Please check setup" error and have located the Techknowledge entitled, "Unique Document Number Cannot be Found" (3691) that provides several solutions. How can we narrow down the responsible field and get an idea of what value should be entered in the Sales Order Processing Setup window.
Answer:
Start by running a dexsql.log of the event (see Techknowledge entitled, "Dexsql.log - The Complete Reference"). In the dexsql.log a noticeable pattern should emerge like the example provide below (unnecessary dexsql.log data removed for this example).
/* Date: 03/18/2002 Time: 9:22:11
stmt(24523872):*/
EXEC TWO.dbo.zDP_SOP40500SS_1 12081
/* Date: 03/18/2002 Time: 9:22:11
stmt(24523872):*/
EXEC TWO.dbo.zDP_SOP40500SS_1 12082
.
.
.
/* Date: 03/18/2002 Time: 9:22:11
stmt(24523872):*/
EXEC TWO.dbo.zDP_SOP40500SS_1 12499
In this example, the stored procedure, zDP_SOP40500SS_1, performs a number of repetitive selects on table SOP40500. SQL object SOP40500 is the ⌠Sales Master Number Setup■ table and the repetitive selects are an attempt to find an unused document number (e.g. 12081, 12082...12499). A look at the table or at the stored procedure informs us that field MSTRNUMB is the holder of numeric value being queried. In this example, the following two selects were run to determine what number should be employed in the SOP Setup.
select count(*) from SOP40500
-----------
101,046 (total number of rows in this table)
(1 row(s) affected)
select MAX(MSTRNUMB) from SOP40500
-----------
101,102 (greatest value of field MSTRNUMB in this table)
(1 row(s) affected)
Given the results of those two queries, a
MSTRNUMB greater than 101,102 will resolve the issue.
Issue
The error Batch level errors were encountered occurs when users attempt to print an edit list. I want to set security for users so they can just print edit lists, but not post. What do I need to do?
Resolution
Be sure the user has access to the correct Series Posting Permissions for
that series.
For example, to print the Sales Edit List you would need to go to
Setup | System | Security, select the appropriate user, company and
product. For the Type select Series Posting Permissions, then select Sales for
Series and grant access to Sales Transaction Entry, Sales Voided Transactions
and Sales Deposits. This will allow the user to print the Edit List.