E10 DMT Error Input array is longer than the number of columns

It resolves the CustNum fro the CustID

My case may have been specific. We were seeding E10 with data exported from V8. And even though we supplied the CustNum when uploading the customers, it was ignored and new CustNum’s were assigned (sequentially starting with 1). Therefore any Order data that we exported from V8 - using CustNum to specify the customer - no longer lined up with the CustNum in E10.

But referencing the customer on the Order by the CustID, did work.

In the SalesOrderCombined the field should be CustomerCustID. This represents the CustomerID, which in turn makes the custnum irrelvant as the logic that is fired behind the DMT (Update or UpdateExt. I have not done a trace). This way you can import your customers then do related transactions based on the customerID. I believe the CustomerCustID is a required field.

Getting back to the problem at hand, perhaps we need to try a different approach. I would suggest that you start off with the required fields and expand from there until you get your result. Don’t forget to disable your BPMs. You may want to look at the next ordernum arrangement. For our purposes we were importing orders from our old system so we set the next ordernum to a value greater than the largest number we were importing.

Based on 4.0.36.0 for 10.1.600 they are:

  1. Company
  2. OrderNum
  3. CustomerCustID
  4. OrderDtl#OrderLine
  5. OrderDtl#PartNum
  6. OrderDtl#LineDesc
  7. OrderDtl#SellingQuantiy
  8. OrderRel#OrderRelNum

Rows 4 to 8 are optional

I know we have spent a fair bit of time with our Epicor consultant testing dmt templates and using the “Get it working, then add to” approach. Yes it can take time, but now with the addition of BAQs, playbooks and powershell you can really add some automation around it. It does take time to get it right, in some instances the errors that are produced during your testing can be less than helpful. I think I’ve put a feature request in on that.

1 Like

I wonder if you have any User Defined Column on the OrderHed that has the Required ticked.

My suggestion is to try to DMT the file in the Demo database, so that we know it is not a bug in DMT as I do not have any issue importing the two lines using the template I provided above.

Simon,

Based on 4.0.37.0 for 10.2.200 requirements are the same as you listed. Below is what I limited my template to. I get through 1 - 6 successfully for the first line and the error is thrown on the second line. Every one of my attempts results in an order with only one line item.

  1. Company
  2. OrderNum
  3. CustomerCustID
  4. PONum
  5. OrderDtl#OrderLine
  6. OrderDtl#PartNum

All BPMs are disabled (even the ones that have nothing to do with Order Entry).
I can’t set the order number to the next available number as it throws an error and states to enter an order number less than 150000 or set the order number to 0 and the system will generate the next available order number. I set the order number to 100 and still receive the input array error. Though I did notice the error changed ever so slightly when I used the order number of 100. ‘100 Input array is longer than the number of columns in this table.’

I checked under Extended Properties and UD Defined Column Maintenance to make sure we didn’t have any UD fields/columns marked as required and we do not. Is there somewhere else I should check?

I do have a ticket submitted with Epicor, their first response was to send me version 4.0.37.0 as I was using 4.0.36.0, however, my issue still remains and I’ve not heard back from them.

Appreciate the assistance!

Have you tried just creating the Orders with numbers 1 - 4 of your list above?

If it makes them, then try an upload with fields 1 - 6 But change the OrderNum field from 0 to whatever was created from the upload to just OrderHed.

Darn, starting to really scratch my head
Have you tried enabling tracing in the DMT?
image

The other thing that would be nice to do is what happens when you enter in the order manually with that customer, apologies if you’ve already tried that.

Is the Customer on Credit hold? I think the DMT does actually tell you that, but sometimes the errors can be misleading.

My only other thought is if you have some problem with your Xasyst table, which is where the starting order number is stored. I know in 10.1.600 I had to change the format in extended properties to allow me to change to increase the number of digits 9 instead of 6 which is standard for the XaSyst.StartOrderNum. Funnily the default format in OrderHed.OrderNum is 9. So someone was having a bad day somewhere. Not sure if this has been changed in later versions.

I did notice today that there is also a TmpStartOrderNum with some a description of “Used to establish the beginning Sales Order #. When the system generates a new order it will assign the greater of (StartOrderNum) or (the last orders # on file + 1) as the order number.”

There is an old post here about it:
E10 Starting Sales Order Number - Yahoo Archive - Epicor User Help Forum, which I think @ckrusen posted a looooong time ago.

As I said changing the format on StartOrderNum fixed that limitation for me.

This could be a red herring so sorry if it is. I might even be worth just altering your starting ordernum saving and setting it back to the original.

As Calvin mentioned about how the next order number is obtained

So perhaps you have something not correct in your OrderHed table.

I can’t remember if you mentioned it works in one environment and not another. Did you try replicating in a different environment (Pilot or Test)? As @TobyLai and I mentioned our templates work so I’m pretty sure the problem is environment based .

I can create 1 to 4 and when there is only one line item on the order I can do that too. I receive the error when entering multiple lines on one order.

I cannot DMT OrderDtl to bring in multiple lines after the header information is created as I get the same error.

Krista Preda

Software Systems Coordinator

P: 330.628.9245 ext.113

kpreda@tenpointcrossbows.com

www.tenpointcrossbows.com

Confidentiality Notice: The information in this email and its attachments is confidential and intended solely for the attention and use of the named addressee(s), and is protected by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521. This information may be subject to legal professional or other privilege or may otherwise be protected by work product, immunity or other legal rules. It must not be disclosed to any person without the authority and consent of the sender. If you are not the intended recipient, you are not authorized to disclose, and must not disclose, copy, distribute or retain this message or its attachments without contacting the sender at the above address and phone number for permission for same.

I did run the tracing, but didn’t see anything unusual.

I can manually enter orders with multiple lines without an issue.

The customer is not on credit hold.

I’ll poke around with the order number tomorrow. It can’t hurt to try.

I’ve been doing all this in my test environment and it fails just as epically in my live environment.

Krista Preda

Software Systems Coordinator

P: 330.628.9245 ext.113

kpreda@tenpointcrossbows.com

www.tenpointcrossbows.com

Confidentiality Notice: The information in this email and its attachments is confidential and intended solely for the attention and use of the named addressee(s), and is protected by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521. This information may be subject to legal professional or other privilege or may otherwise be protected by work product, immunity or other legal rules. It must not be disclosed to any person without the authority and consent of the sender. If you are not the intended recipient, you are not authorized to disclose, and must not disclose, copy, distribute or retain this message or its attachments without contacting the sender at the above address and phone number for permission for same.

Out of curiosity, what version of E10 are you on?

My DMT is 4.0.37.0 and E10.2.200.7

Are we working with the same thing? I don’t think TobyLai and I are in the same versions.

Krista Preda

Software Systems Coordinator

P: 330.628.9245 ext.113

kpreda@tenpointcrossbows.com

www.tenpointcrossbows.com

Confidentiality Notice: The information in this email and its attachments is confidential and intended solely for the attention and use of the named addressee(s), and is protected by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521. This information may be subject to legal professional or other privilege or may otherwise be protected by work product, immunity or other legal rules. It must not be disclosed to any person without the authority and consent of the sender. If you are not the intended recipient, you are not authorized to disclose, and must not disclose, copy, distribute or retain this message or its attachments without contacting the sender at the above address and phone number for permission for same.

Shot in the dark, but have you checked your part descriptions for hidden characters? I know they aren’t in your DMT , but they will be brought into the order when the line is created, maybe they could cause a problem there?

1 Like

Thought I mentioned it earlier 10.1.600

This should be your point of focus.
Try to make and OdrerDtl upload file with the bare bones info: Company, OrderNum, OrderLine, PartNum, and PartDesc.

A Couple of points to double check:

  • Make sure OrderNum matches the OrderNum created when you just uploaded the Header info.
  • The OrderLine is value is not always respected. If the current line exists, the DMT info will overwrite it. If it does not, the next available LineNum is used. You might want to go into the Order and see if any lines already, and delete them before trying to DMT in the OdrerDtls.
  • Open your CSV file in Excel, and make suer none of the records inadvertantly span more than one column or or.

I deleted the part descriptions and retyped them in, I even omitted any special characters making it purely alpha numeric. No dice.

I made an OrderDtl DMT template with only the required fields which are company, ordernum, orderline and partnum. I had an order already started with all the header information and no lines. No dice on that one either. Error message is 348517 1 Input array blah blah blah. The 348517 is my order number and the 1 (I’m assuming) is the line number.

Company,OrderNum,OrderLine,PartNum
HM,348517,1,HEA-002.6

I tried setting my starting order number to 0 and changing it back. My extended properties show the format as 9.

One thing I CAN do is copy multiple lines from Excel and do a paste insert into the Line Detail grid on the bottom of the summary sheet. So I have that going for me.

another shot in the dark, but what if you put quotes around your part numbers?

" " or ’ ’

I think " ", double quotes. (I think SQL is the only area that uses singles) You could try both though.

You’ll probably have to make that edit in a text editor

Well at this point, it certainly can’t hurt

on the line that does come in, have you checked to make sure that the part number is 100% correct? I’m just wondering if it’s getting cut off somehow.

Quotes did not work and part number is correct.

bummer, worth a shot I guess…

1 Like