I started my career as the head developer for a major partner here in Canada. The biggest hurdle I had when starting out was not “learning how to use the SDK objects” (although that was hard enough since it was full bugs back then. No the biggest challenge in being an effective SDK Developper was understanding the ERP System I was trying to interface with.
When I started I barely knew what an invoice was, let alone what financial statements or landed cost were.
It is highly recommended for a developer to understand the consequences of the object they are playing with. You should know what happens if you create a sales order (stock is committed) versus if you create a delivery (Inventory is deducted). Both in regards to inventory and in accounting.
Though, even if you don’t know all the in’s and outs of the system, you should know how to complete any transaction you are trying to do with code, from within in the client.
This will give you many answer and insights when receiving error messages you don’t understand.
If for example, you are trying to create an inventory transfer with a batch managed item and you keep changing the code around but nothing works. Stop for a second and try it in the client. You might notice then that the item you are using has been blocked or maybe the warehouse you are using has been frozen for an inventory count or the batch you are using is reserved on another order.
The SDK messages have come a long way, but there are still many scenarios where the messages are cryptic at best and nonsensical at worst.
Hope this helps someone in the inter-web,
Originally posted on my Blog B1Tech.tips
Certified ERP Consultant, Acabuco Inc.