I am trying to produce an RMA Receipt Label payload to Bartender for tagging a received part. Tried a few ways to do this and have a fine collection of RDD attempts and accompanying errors. Had a heck of a time getting RMARcpt data (required) to appear on output, works fine if only RMAHead and RMADtl data on it but not when adding RMARcpt table into the mix
Shifted to a BAQ RDD to see if I could get the task done that way.
Simple BAQ of RMARcpt, RMADtl, RMAHead, with Customer, Part and SerialNo joins at their natural joins to the first 3 tables respectively. The BAQ has 3 Criteria with prompts by parameters - RMANum, RMALine, and RMAReceipt values and does return one row as it should.
Hooked in all up in the RDD, saved etc. I think I am close but I get a consistent and vague error in Sys Mon.
Can anyone suggest a direction to resolve meaning of this mystery missing Parameter âkeyâ reference? I believe my parameters are working.
"
Program Ice.Services.Lib.RunTask when executing task 6827 raised an unexpected exception with the following message: RunTask:
System.ArgumentNullException: Value cannot be null. (Parameter âkeyâ)
at System.Collections.Generic.Dictionary2.FindValue(TKey key) at System.Collections.Generic.Dictionary
2.TryGetValue(TKey key, TValue& value)
at Ice.Core.RptTaskBase`1.XMLDumpTable(IRow row, String rptTableId) in C:_releases\ICE\ICE4.3.200.8\Source\Server\Internal\Lib\TaskLib\RptBase\RptTaskBase.cs:line 270
at Erp.Internal.OM.RMAForm.RunProcess(Int64 instanceTaskNum, String outputFileName) in C:_releases\ERP\ERP11.3.200.0\Source\Server\Internal\OM\RMAForm\RMAForm.cs:line 128
at Ice.Hosting.TaskCaller.InnerExecuteTask(IceDataContext newContext) in C:_releases\ICE\ICE4.3.200.8\Source\Server\Framework\Epicor.Ice\Hosting\TaskCaller\TaskCaller.cs:line 70
at Ice.Hosting.TaskCaller.ExecuteTask() in C:_releases\ICE\ICE4.3.200.8\Source\Server\Framework\Epicor.Ice\Hosting\TaskCaller\TaskCaller.cs:line 61
at Ice.Lib.RunTask.BpmFriendlyTaskLauncher.Run(String sessionIdPrefix, IceContext db, Action taskRunner) in C:_releases\ICE\ICE4.3.200.8\Source\Server\Services\Lib\RunTask\BpmFriendlyTaskLauncher.cs:line 57
at Ice.Services.Lib.RunTaskSvc.InnerRunTask(Int64 ipTaskNum, Boolean suppressTransaction) in C:_releases\ICE\ICE4.3.200.8\Source\Server\Services\Lib\RunTask\RunTask.cs:line 462
"
What reportstyle are you using.
A quick search on Epiccare tends to indicate that there is mismatch between the report style and the RDD, which seems a bit odd considering you said that RMAHead/Detail works, but as soon as you ad the rcpt it does notâŚ
I am using a bartender configured print style. Paths work when printing a simpler file, prior to adding RMARcpt table. Iâve changed the output from plaintext to xml with no change, same error.
I have been diligent to keep Print Style in synch with the various attempted RDDs. I also out of caution, have deleted client cache, browser cache, and hit the refresh after saving and saving again after that (Living by the epi-gospel according to Mr. Anderson and Rich Riley - âSave and Save Oftenâ ;-).
I get what youâre saying, but perhaps there are more than one error and I am stuck at the top most one. I cannot find the mysterious Parameter Key in question. I got the SecTeam to permit the Kinetic UI Trace ext hoping it might reveal something I am missing about this error hitting the System Monitor History tab by seeing more detail in these new types of tracing. I am new to dev tools tracing and Kinetic in general so that is also on the learning curve and coming up short atm.
Hey Simon, I missed that KB initially, but changed my search terms and located the KB perhaps you were referencing (Problem PRB0188994), and I agree it seems like it is not a categorical incompatibility but must occur at some degree of complexity or modification from a standard RDD. It looked like a promising workflow but it apparently has a showstopper within. Oh, Well, on to a BPM then.
Iâd be inclined to do it as a function and if you need to call it from a bpm you can
When I was referring to the report style. I was meaning are you using one of the report styles starting with GEN which are the default bartender labels in Kinetic.
My understanding now though is that you can create your own report style set it as bartender, then hookup a BAQ rdd and it will generate the files with the complete header, (if you have workstation configured). In earlier versions it would not add the relevant data to the header of the BT file.
Yes, Apparently this was fixed is a recent update. But with one missing peice it seemsâŚWhat you describe is exactly how I did it to this point and almost working. I am new to this approach. A colleague more familiar with it pointed out a shortcoming which brings me to where I am now.
So, I am back to combing the posts including this one from Hannah-wan ⌠âThe Force is strong in one!â aka @hmwillett
Now that I am this far into it, it seems just a little farther to grab the results of the BAQ and pipe them into a same mechanism in Report Styles > snowman > âGenerate Formâ produces, makes into the BT Output folder (I cannot believe its there but I cannot get it there by printing with the standard print mechanism. Will next be trying to identify that with this new tracing approach. Any suggestions or refs are welcome!
For others that might want to or need to do this at some (Why would you knowingly do this to yourself?), here are the exact steps to an adhoc label prep, prior to being able to actually print it:
- Created the BAQ, which returns the record data to print, with Parameters for the Keys that identify the record uniquely, in this case, RMARcpt.RMANum, RMARcpt.RMALine, and RMARcpt.RMAReceipt. It does facilitate prompts to run the BAQ Designer when you first test it. I thought âAwesomeââŚsaved.
- Launched the RDD form, Created a new RDD from scratch, with Report Type = Bartender Labels, saved.
- Added the BAQ in Step 1 as the data source, (No relationships needed), saved.
- Within this RDD, next defined new Report Criteria ID, saved, saw that it now appears as a link, drilled into it. This step surprised me a little. It gleans, the parameters from the BAQ as source mappings. âCoolâ. After a bit of poking around and a couple of mistakes, I found in its elipsis (snowman), the command âCreate Report Criteria Prompts from Selectedâ, and backed up.
- Selected the three gleaned Criteria Mappings check boxes. Saved.
- Now used that âCreate Report Criteria PromptsâŚâ command. It creates the basic Prompts in the panel layer above called Criteria Prompts.They are links so drilled in.
- Double checked each of the data types, sequence etc, saved, Up and into next one, repeat. Saving each time.
- Launched Report Styles and created a New Report ID, (not a style on an existing Report). Save. Created its report Style. Report Type = Bartender Labels. Ref the RDD in the Data Definition dropdown. Ref Report Location on Bartender server. Ref output location on BT server.Save. Form changes a bit and Report Criteria appears. Select the Report Criteria defined in step 4. Go to "Generate Form and get my prompts, fill them in and finally get a well formed BT file in the output folder. âWow! Iâm thinking those BAQ prompts are going to flow all the way to this Report style and âautomagicallyâ present at print time⌠super cool.â
- Go to RMA Receipt line I have been using and print, selecting the Report Style in step 8, with great confidence that the missing parameter key issue has been resolved. No prompts presented. Hmm? Same error as all the other times. Grrr!
Silly Me! My naive assumption was that the BAQ parameters/prompts have carried through to this end and that the standard Print mechanism would prompt and print. But as it turns out, the standard print mechanism has no idea whatsoever that there are parameters now containing keys or what to do with them anyway. It has no sight into those or the dataset in general as evidenced from other print attempts using an modified RMAForm, I tried to leverage that but found no way to add the necessary tables and provide the specific record keys. I presumed too much. Honestly, if there was just a little more awareness in the printing mechanism working with the Report Style chosen, to also do some criteria gleaning from the report style, it would be a decent adhoc label creation work flow.
Now, my goal is to convey those parameters to something⌠and then print that, and not with the standard print mechanism!
Nice write up!,
Two approaches off the top of my head.
Add a button to the page and call the reports style with baq and itâs criteria. You can preview the submission form in the RDD setup.
Or add the new version of the report to the action menu (not sure how you can do that to the overflow menu)⌠Possibly hide the old one.
Thanks! Hope to get it fully developed so that others can make use of it.
I am more a handyman than a programmer though.
I added the custom report on the menu for manual printing, as an intermediate solution to allow a receipt record to be printed. User needs to enter the 3 keys to the record and print.
Within RMA Processing, at the Receipt form in the workflow, I added a button through App Studio that is currently sitting there waiting for an Onclick job to do⌠now I need to find those job tasks.
I traced w/ F12 and the Devtools, thanks to some great guidance by Hannah thank you, again.
The trace is quite overwhelming initially and lots of ânoiseâ warnings and errors loading in the Issues Tab of the console - and yet everything âworksâ.
Iâve identified the program that is called - âErp.UIDynRpt.RMARcptTagâ
I would think my next step is to have the button OnClick action acquire the 3 keys needed from within the current dataset and assign to variables and/or pass those in the correct order to an invocation of the custom menu program directly and execute. Or as you suggested in option2, to bring that functionality directly into the RMA Processing for use with the button? I think the replacement on the overflow would be daunting for me. The end goal being to save the users from having to do the tag print from a separate menu id and action. This is my first foray into the new UI and App Studio. And I may to walking around the shortest path to success⌠But the journey begins with the 1st steps and experience is what you have, right after you need it.