Well, I feel like typing something, since I just spent a good half hour figuring it out.
The question was going to be, Where are inspection processing reason codes stored? (The one you picked; I’m not asking where you create new ones.) Apparently it’s PartTran. (In a BAQ, link PartTran.NonConfID with NonConf.TranID.)
So I thought instead I’d write a little blurb on the QA flow, because I’m rehashing how convoluted it is, since we hired a new person. Hopefully this helps someone.
==============================================
The basic idea of QA flow is:
(something) Inspection Entry DMR DMR action(s) (some kind of credit, if applicable)
The (something) is a PO receipt, RMA or Nonconformance.
The (credit) is an AP debit memo if it your supplier is giving you credit (yes, a debit memo is for supplier credit), or it’s an AR credit memo if this is tied to an RMA that you issued to your customer.
Of course, if you accept a part anywhere in this flow, you break the chain and the part goes to stock or wherever. But you might still give the RMA customer credit, anyway.
==============================================
Reason Codes
More than just information, they can be tied to GL controls, to determine what accounts to hit.
WARNING: On the subject of accounting: deleting a DMR rejection reverses the transaction quantity properly, but it will probably hit the wrong accounts because it looks a level higher in the hierarchy. If someone remembers the details of that, please comment.
Nonconformance reason codes are of type Scrap. Let that sink in.
Check the appropriate boxes.
Inspection Entry reason codes are of type DMR. Let that sink in.
Check only these boxes:
DMR reason codes are of type… DMR. Finally one that makes sense.
Check the appropriate boxes. (If it’s a failure DMR reason code, check off the 4 boxes on the bottom right.)
==============================================
Part Transactions
Again, the flow is:
(something) Inspection Entry DMR DMR action(s) (some kind of credit, if applicable)
Walking through this:
(something)
- PUR-INS for a PO receipt straight to inspection
- Parts are NOT in inventory OH qty at this point
- RMA-INS for an RMA
- STK-INS, MTL-INS for a nonconformance
- It is at this moment that the parts come out of inventory OH qty
Inspection Entry
- INS-DMR if failed
- INS-STK, INS-MTL, INS-SUB, (INS-ASM?) if accepted
- Once you account for all quantity, the inspection is closed and irreversible)
DMR actions
- DMR-REJ if rejected (this is reversible [can be deleted])
- DMR-STK (etc.) if accepted (this is not reversible)
==============================================
Return to vendor
- If this is a return for credit, make a new “Reject Material” in the DMR
- This is horribly named, since “material” usually means part of a job, but this goes for any reject
- You may need to tweak the cost on the debit memo
- AP Invoice; Actions > Get DMR Debit Memos
- If this is to be reworked by the supplier at your expense, you will make a new “Accept – Job Material”
- First, of course, you need to make a job. It needs a subcontract operation and you’ll do the PO against it. For us, we use a special product group to route the variance as rework costs
- If this is to be returned so that the supplier can rework it at their expense without giving us a credit, you will still make a new “Accept – Job Material”
- In other words, do not reject it, even though that makes sense
- You could reject it and then just delete the rejection when it is returned and do an acceptance instead. But again beware of what accounts it hits when deleting the rejection! You’d be surprised.
- I really hate the visibility you lose here either way, since it was the vendor’s fault but it always results in an “accept” disposition
==============================================
RMAs
- Open RMA Processing (It’s called RMA Processing in the menus, but Return Material Authorization when you open the screen)
a. New RMA; Enter invoice number; customer auto-populates
b. On Detail tab, enter/find the line; enter reason and quantity; save
c. New Receipt; normal stuff; probably want to uncheck Request Move (I warned you) - Open RMA Dispositions
a. Click the binoculars icon; choose RMA
b. Click New button; normal stuff -
Generating the credit
a. Back to RMA Processing
b. Picture below - it’s tricky; pay attention
c. No matter what you do, the credit is generated - Applying the credit
a. AR Invoice Entry; Actions > Get > RMA and Demand Credits
b. NOTE: If you do another RMA line against the same order (without posting between), and create a credit memo against it, it will add the memo as another line on the same memo as before
==============================================
The data
The way this is all linked in the system is miserable, so it takes a lot of effort to extract data for analysis.
NOTE: I strongly recommend only one nonconformance per DMR if you want to analyze by nonconformance reason codes later. Yes, you can tie two nonconformances to one DMR if the parts are the same. But just don’t.
Nonconformance
- Table is NonConf
- The Nonconformance number is called TranID and it is WAYYYY down the list of fields
PO inspection
- Table is RcvDtl
Inspection Processing
- A lot of the info is in the NonConf table, i.e.
- PartNum
- PassedQty and PsdCommentText
- FailedQty and FldCommentText
- DMRNum
- But a lot is in PartTran
- Link them as such: PartTran.NonConfID with NonConf.TranID (and on Company, of course)
- InvAdjReason is the inspection reason code
- SysDate or TranDate is the inspection date (you can’t backdate an inspection!)
DMR
- DMRHead is what you expect
- DMRActn is all actions, including rejections, debit memos and acceptances
Supplier credit
- The actual debit memo is an AP Invoice
- This is linked to the DMR action of the debit memo. Sure, that’s obvious, but this means you can’t link the DMR rejection itself directly to the accounting side, to verify that you actually got the credit for the parts. You’d just have to look at the total dollars on the DMR vs. the total of all linked invoices.