Shout out to Hand Held Users Job Receipt to Job

Hello all Handheld users. I’m trying to work through an issue where selecting Job Receipt to Job (3,1,2) I get an Object Reference not set to an instance of an object. The form still opens after you click ok on the error. But on a handheld it will be unacceptable.

image

seeing this on 10.1.600.6, 10.1.600.25 and 10.1.600…34 it does not show on 10.1.600.4 or 10.2.100. 22.

So if anyone has 5 minutes to let me know what version you are on and if you see the error when going through the handheld menu (Material Management->Data Collection->Handheld->Handheld Menu (3,1,2) , I’d really appreciate it.

I meant to mention this does not appear happen when you access the form directly via Material Management->Data Collection->Handheld->Material Handling->Job Receipt to Job.

Would need to test, but haven’t seen this in 10.1.400.30 and now on 10.2.300.7. Again, have not tested on 10.2.300.7. Do not do a ton of these moves anymore, but they still occur and i have not heard anything.

1 Like

Thanks @jeowings

I went off to support and after looking at the release notes again and I do see a fix in 10.600.10 for “an error” on opening that particular form. But I can’t understand why we have the error considering we are on 10.1.600.25. I thought all resolved issues in the release notes were cumulative.

Does not occur in 10.2.300.9

1 Like

Currently on 10.2.200.11 and I did not receive an error upon opening Job Receipt to Job when going through the Handheld Menu.

1 Like

Thanks everyone who has replied. I new the community would not let me down :slight_smile:

An update on this. I logged it with Epicor and waiting to hear back from them with regards to more detail.

Are there any customizations on the form?

No that’s a plain one. Erp.Menu.Handheld is customised, but even with plain vanilla it still throws and Epicor has confirmed that it is happening in 10.1.600.35.

If it helps them, it also happens in 10.1.600.0

Here’s my stab (some irrelevant code removed because it’s irrelavant I dont want to get in trouble):
At this method, the lfo is not detected as RcptsToJobEntryArgs (Line A).
This means rcptArgs is never assigned (Line B)

protected override void LaunchForm(object options)
		{
			if (options is RcptsToJobEntryArgs)  //Line A
			{
				this.rcptArgs = (RcptsToJobEntryArgs)options; //Line B
			}

		}

Later: At Line C - we crash because this.rcptArgs is null, and attempts to access it fail

protected override void OnFormLoaded()
		{
			if (this.LaunchFormOpts != null && !string.IsNullOrEmpty(this.rcptArgs.JobNum))  //Line C
			
		}

Changing this line to this would probably fix it:

if (this.rcptArgs != null && !string.IsNullOrEmpty(this.rcptArgs.JobNum))

Also ensuring the lfo passed in (in Epicor code) was RcptsToJobEntryArgs should also fix it.

And one final thing if you are impatient and willing - maybe getting access to rcptArgs (via reflection since it’s private) in Initialize, then creating a blank one would make it go away.

void Initialize()
{
//reflection to get rcptArg here, then
 rcptArgs = new  RcptsToJobEntryArgs(oTrans);
}

Hint: RcptToJobEntryArgs is defined in RecieptsFromMfgAdapter

I can confirm my reflection method works.

If you have this error - try this:
App.RcptToJobEntry.HHRcptToJobForm_Customization_HALLY_TEST_CustomExport.xml (7.1 KB)

2 Likes

I can confirm this works too. Thanks @Chris_Conn Your efforts are duly noted and appreciated.