The Need for Structure
In my years of working with M2M, one of my biggest frustrations is that it allows you to do almost whatever you want with it. There is a lack of structure, required workflows, etc. This makes data analysis difficult to impossible at times.
I’ll just name a few examples from the sales module.
- M2M doesn’t really have a beginning and end to orders. You can open any order at any time, even after it’s been completely shipped and invoiced.
- Sales order line items and releases have no real structure either. You can continue to add quantities or change prices on line items which have already been shipped or invoiced. M2M doesn’t track those changes either and the only “Order Date” you have is in the Sales Order Master table. This means that if you added items today to an order which was placed last year, there’s no way to determine when those items were actually added.
- Sales, Quotes, Purchasing, Receiving modules are not transactional in nature so tracking history is nearly impossible.
- You can change ship to addresses of sales order line items which have already shipped.
- You can choose to invoice a shippable product from a shipper or directly from the sales order.
- You cannot invoice a product from a shipper and a sales order on the same invoice. Therefore, if you have an order with both shippable and non-shippable items, an accounts receiving clerk will most likely invoice the shipped item from the shipper, and then add the sales order line item as a miscellaneous line item (in order to send the customer one invoice). This miscellaneous item doesn’t point back to the original sales order so it looks as if that line item was cancelled.
Suppose your company decided to study sales metrics and wanted to know how long it took to make and ship Widget A products? It’s nearly impossible to figure that out unless the users follow a standard procedure every single time. As a business intelligence specialist who works with M2M, I am forced to lecture users (like the Soup Nazi) to follow these procedures and spend a great deal of time with VBA customizations forcing my users to follow them so their data is as clean as possible.
I could elaborate further on nearly every module of M2M, but I’m just belaboring the point. The problem with M2M is actually that it is too permissive, not too rigid.
This has become particularly important to me as I work on that super secret project which I’m about to release on the world. Mwahahah!!!!
What do you think? Is M2M too rigid or too permissive?