Quote Entry - Index X is either negative or above rows count (AttachmentPanel)

Hi everyone, first post here.

We migrated to Epicor10 in August 2015 and now running 10.1.400.22 in our Production environment. We have recurring “- Index” errors popping up to our Quote Entry screen users pretty much since the beginning. Assuming here that you’ve seen it also before, maybe in other screens as the error seems pretty generic. It seems less frequent since a while (10.1 maybe?) but a frequent one seems to still haunt us. The detail of the error is at the end of this post.

We identify this particular one by the “AttachmentPanel” keyword at second line of Client Stack Trace (since various types of “- Index” error occurs from time to time for that same screen, but those being less frequent in our case). Error was generated using base form with no personalization for the user getting the error.

Obviously, the users cannot reproduce the error at will, neither by trying the exacts step back, which makes it hard to report to Epicor support. The last time it was reported, it was after doing a “Get Detail” on one of the sub-assemblies in the Mfg Details section. Seems also that “Get Detail” is the action the more prone to generate the error.

Hoping to see if anyone here already experienced it or if error says something to you. Maybe you can assist to put the finger on the problem.

thank you very much!

Application Error

Exception caught in: System.Data

Error Detail

Message: Index 5 is either negative or above rows count.
Program: System.Data.dll
Method: GetRow

Client Stack Trace

at System.Data.DataView.GetRow(Int32 index)
at Ice.Lib.Framework.Attachments.AttachmentPanel.parentView_EpiViewNotification(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiViewNotification.Invoke(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.OnEpiViewNotification(EpiNotifyArgs e)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.SetChildFilterAndNotifyChildViewWhenHasCurrentRow(EpiDataView childView, EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.SetChildFiltersAndNotifyChildViews(EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Erp.UI.App.QuoteEntry.Transaction.GetQuoteData(Int32 quoteNum)

Are you getting this on the base form or are you getting this with a custom form? Secondly, is there a personification layer built on there?

Thanks for replying Aaron. As stated in my original post:

Error was generated using base form without personalization for the user getting the error.

thanks,

We have seen the Index is either negative or above rows count frequently when users are paging between list of records, such as they brought in several quotes and are using record selectors to move between, and they had been on a quote maybe on line 6 and then the next quote in record selection list only has one line. It’s as if the system is looking for line 6 on the quote and there isnt one.
Could this be the problem?

Nancy

Thanks for you input Nancy.

I also think it is related to a record position the screen assumes that exist …and on a refresh of the screen, that record position isnt anymore existing. Sounds like a lack of error catching to me.

I did more tests today after reading your post in my test environment (10.1.400.23). With the help of your comment and with my observations for the last reported quote generating the issue, ive been able to reproduce it on my end for the first time! The frustrating part is im not able recreate it after trying it again anymore for the same quotes/steps. Here are the details:

The last quote that my user reported had lines that were deleted. So QuoteDtl.QuoteLine #s were the following: 1, 10, 11, 12, 13, 14. Maybe the screen tried to list a line not there anymore (2 to 9)? Ive then tried to open two other existing quotes at same time (using CTRL key in the search list, in order to be able to switch over from one to another using the selector in top toolbar). Let’s call them quote A and quote B.

Quote A already had 1 line and B had none. Ive added a second line (#2) to A, switched over to B and added 3 new to it (#1, 2, 3). I then deleted line 2 for B (resulting #1 and 3). Switched back to A, highlighted line 2 (the whole record in blue, on Line->List tab) and switched over to B-> Got the error (details pasted at bottom)!!! I even got it a second time when selecting line 3 of B and switching over to A.

However for that occurrence, I was using one of our customized version of App.QuoteEntry.QuoteForm that also had personalization existing for the current user. However, im very confident it would have occurred with a clean base version. Im now trying to replicate it with exact same conditions (same customized screen) but no luck so far, same thing with base screen.

thanks,

Application Error

Exception caught in: System.Data

Error Detail

Message: Index -1 is either negative or above rows count.
Program: System.Data.dll
Method: GetRow

Client Stack Trace

at System.Data.DataView.GetRow(Int32 index)
at Ice.Lib.Framework.Attachments.AttachmentPanel.parentView_EpiViewNotification(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiViewNotification.Invoke(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.OnEpiViewNotification(EpiNotifyArgs e)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.SetChildFilterAndNotifyChildViewWhenHasCurrentRow(EpiDataView childView, EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.SetChildFiltersAndNotifyChildViews(EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Erp.UI.App.QuoteEntry.Transaction.GetQuoteData(Int32 quoteNum)

UPDATE: Now able to reproduce the error as wanted using 10.1.400.24. Ive open a case with Epicor support. Steps below. Fingers crossed!

0-Open Opportunity/Quote (Base mode)

1-create a new quote (any customer)

2-add three new lines to the quote at step 1 (any part)

3-delete line 2 from quote created at step 1

4-create a second quote (any customer)

5-add two new lines to the quote created at step 4 (any part)

6-delete line 1 from quote created at step 4

7-open quote create at step 1

8-From Line->List tab, change PartNum on last line (click No if it asks to refresh break quantities)

9-Click Save

10-Open quote created at step 4

11-change Description on its only line (from either List or Detail tab)

12-Click Save

13-Open quote created at step 1, following error appears:

Application Error

Exception caught in: System.Data

Error Detail

Message: Index 0 is either negative or above rows count.
Program: System.Data.dll
Method: GetRow

Client Stack Trace

at System.Data.DataView.GetRow(Int32 index)
at Ice.Lib.Framework.Attachments.AttachmentPanel.parentView_EpiViewNotification(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiViewNotification.Invoke(EpiDataView view, EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.OnEpiViewNotification(EpiNotifyArgs e)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Ice.Lib.Framework.EpiDataView.SetChildFilterAndNotifyChildViewWhenHasCurrentRow(EpiDataView childView, EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.SetChildFiltersAndNotifyChildViews(EpiNotifyArgs args, Boolean forceIt)
at Ice.Lib.Framework.EpiDataView.Notify(EpiNotifyArgs args)
at Erp.UI.App.QuoteEntry.Transaction.GetQuoteData(Int32 quoteNum)

Were you able to work with Epicor Support at all with this issue? I believe I have a user with the same issue. They described this issue when working with multiple Sales Orders and changing / deleting lines. I’m guessing I’ll be able to reproduce the issue using your same method.

Hi Gary,

For Opportunity / Quote Entry screen, we did. They created problem PRB0183067 and finally replied:

Development confirmed this is corrected in 10.1.600 and 10.1.500.13. As this is not an issue in the current service pack and patch, an SCR has not been written.

We are currently running 10.1.400.25 so cannot confirm at this point if solved in the mentionned versions.

thanks,

1 Like