Summary
NetSuite is a great product, combining so many disparate parts together into one streamlined system — CRM/ERP/Web Store, and so on. But since every business that uses the system is unique, it's not uncommon to find reasons why they need either customizations or automations to make their processes even more efficient. Workflows are great for approval and for many other processes where we just want a relatively simple condition applied to some data. They include branching flows in one of multiple directions so we can really model the system's behaviors closely on what they need.
However, when a workflow can't do what is needed, we turn to SuiteApps from partners, and then to creating our own custom scripts. They add complexities and schedule delays and usually also costs to an implementation project, so we keep scripts as a last resort in all cases, but sometimes there is no alternative. NetSuite doesn't charge extra to have a script running in...