Extending NetSuite's default business logic - netsuite

I am new to NetSuite and am trying to get an understanding of how it works in the area of business rules. So sorry if these are questions with obvious answers.
I understand a user/consultant can extend/customize it to fit with my business needs.
My questions therefore are:
Presumably a default instance of NetSuite contains various business
rules that will fit some business needs. As a user/consultant can
you view this default business logic?
Can a consultant change the core business logic? Or is it more a case of adding code before and after the default logic fires?
Is the default business logic/rules written in SuiteScript, or is SuiteScript only used by 3rd parties when extending/overriding the default logic?
Thanks

We cannot view the code that governs the default NetSuite logic and business rules, but the NetSuite Help documentation has a ton of information about how vanilla NetSuite works. All users can view and study the Help files to become more familiar with NetSuite and its default processes.
We cannot change the default code, but we can absolutely add code before and after many different events.
The default business logic is written in SuiteScript, but again, we cannot view that code. Third parties utilize SuiteScript to extend the default NetSuite functionality.
SuiteScript is not the only option for customizing NetSuite. There is also SuiteFlow, which provides users with the capability of graphically building workflows to define business rules based on user actions. No code is required (though under the covers, workflows essentially build hidden SuiteScript). There are several things that can only be accomplished in workflows and not in SuiteScript, and vice versa.

Netsuite's ERP, CRM, eCommerce modules have predefined standard rules which are acccording to industry standard. But customers have sometimes different business needs. For that we can customize Netsuite. There are various customization tools available in Netsuite. It supports to extend standard functionality as well as implement our custom logic. It provides suite scripts,a java script based API which can be used in almost every where in Netsuite for customization. Along with that it provides UI based customization in the form of SuiteBuilder. We can fire script before any standard business logic, after standard business logic run. We can add client side validations, schedule our application to trigger at specific time and many more. The standard business logic is written by Netsuite, we cant alter them, we cant see the code. It is the way it works. If you are new to Netsuite, it is suggested to read netsuite help guide. There is no online help other than Netsuite available. So you must go through them. If you have other query, feel free to ask.

Related

NetSuite external form

I need to present a form to customers to allow interaction with regard to back orders ... Cancel, wait, fill or Add to, etc. What facility does NetSuite offer for things like online forms or Suitelets and if so, do I need a site external to NetSuite?
thanks in advance for any help
Customer Center is included in Netsuite. It is possible to inject links to Suitelets into this to provide any missing functionality.
The devil is in the details though in terms of achieving any particular level of functionality and design.
External customer forms are meant as marketing tools.

Branding (White-Labeling) the B2C Login

How would one effectively implement a custom sign-in experience for multiple clients/customers while adhering to the DRY principle?
Requirements
The look and feel needs to be customized to our design but the same* for all customers
*The logo needs to be specific to the customer
Implementation Idea 1
I could create a policy for each customer/client and then a custom HTML page with the img/logo different in each page but this doesn't scale very well.
Idea
Is there a way to pass along parameter(s) to the Custom Page URI defined here?
Reference: I've gone through this demo example.
Unfortunately, multiple policies would be the only approach that would work to enable your scenario. The only fields we pass through right now is ui-locales, used to localize your HTML content based on the requested language.
If you're interested in bringing attention to this feature to the product team, please create an entry on https://feedback.azure.com/. You will also be notified by the product team if there is any change for that feature.

Automating Approval Processes in Dynamics CRM

A bit of background before I begin.
Background:
I am working on migrating an existing .NET based system to Dynamics CRM and one of its key feature is its 'Request Approval Process'. I have implemented some simpler versions of such approval processes in past but this one is a bit complex since it involves multi-level approvals, multiple approvers at one level, amendment logic, delegation functionality, etc.
Analysis Till Now:
Before pushing this question at SO, I did a fair analysis of the requirements from my end and have come up with few possible approaches:
Workflow based approach (something on lines of this)
Complete custom logic using Plugins/Web Resources (something on lines of this)
I am not explaining the details of these approaches as of now but the core issue is that none of these two approaches are fitting correctly to my requirements.
Queries:
While analyzing these approaches I came across some newer functionalities added to CRM (listed below) but did not get any additional resources to explore them further. I just want to confirm that I am not trying to achieve something which is already present out-of-the-box or going in the incorrect direction.
1. Internal Process Automation:
Reference: Here
Any leads/thoughts on this approach? I am not able to find any good documentation/articles around this.
2. Graphical Approval Workflow:
Reference: Here
This feature seems to be useful but it is mentioned to be a part of Dynamics Marketing. With the new structuring of Dynamics 365, will this feature be a part of Dynamics CRM by default?
Also, the Prerequisites section of this link mentions certain Item Types for which you can configure this functionality. So can't we use this functionality for any entity records?
Any kind of help/inputs would be appreciated.
I'd suggest the best of both worlds: using out-of-box Workflows along with custom Workflow activities that you can write with C#. Use as much out-of-box functionality as you can, but when you need to query records or run custom logic, create a custom workflow activity that can be used in your out-of-box Workflow. Custom workflow activities are similar to plugins in that they are written using C#. You can have custom inputs and custom outputs for your activity.
For example, maybe your approval process needs to look up the appropriate approving user for this record. You could write a custom workflow activity that takes an input (the record being approved) and an output (the user that has the ability to approve). Then in your Workflow, you'd add your custom activity as a step. After that step, you could send an email to the approver by using the output of that custom step.
More information about custom workflow activities: https://msdn.microsoft.com/en-us/library/gg309745.aspx

How do I build custom workflows in SharePoint?

I need to learn how to build custom workflows in SharePoint. In addition to basic stuff like having legal sign-off on documents, I need to be able to execute arbitrary custom code at certain points. For example, after legal signs off it should export the document and update a database table indicating that a new version is ready.
Is this possible using SharePoint? If so, where can I find the documentation or tutorials I would need to get started?
Getting Started Link 1,Getting Started Link 2 links will help you to get started with the SharePoint Custom Workflows. And also it is possible to do any arbitrary code inside the workflow. Also there is another type of work flow called State machine for which there is a class one article
Workflow as the whole is built using sub parts called Activities which dictates what the workflow should do at a particular point of time, I remember you have an activity called Code Activity which will help you to achieve what you want.
Robert Shelton's Workflow Video Tutorial series is very helpful:
http://rshelton.com/Tags/Workflow/default.aspx

can i Programatically Change Sharepoint OOB document approval workflow

I have document library where I am using the Out-Of-the box document approval workflow.
I need to allow users to delegate their tasks to another person during a certain period. This delegation is on workflow level not on item level. something that can be used for example where someone will be out of the office for a long period and needs to assign a delegate to approve documents.
I was thinking of changing the list of approvers programatically to allow someone to use a custom form to enable that delegation.
Can this be done? is there a better way?
My suggestion would be to actually create your own workflow. Much better than trying to hack the OOB workflow. In my experience messing with a running workflow is never good and prone to complications / failures.
If you are wary of/restricted building workflows with VS then using a tool such as Nintex (Nintex.com) is a great option, I haved used it a few projects now.
Sorry I could'nt be more use.

Resources