Posts

Convert Campaign Response Summary Into a Saved Search

Customizing the standard Campaign Response Summary report has its limits. Meanwhile, you can create a Campaign search, allowing you to add formulas in the criteria, and get much more targeted results. Once you have defined your criteria, head over to the Results tab and simply follow the table below. Field Summary Type Formula Summary Label Recipient Group     Campaign ID Count     Response Detail       Formula (Numeric)...

Created By in Email Templates

User wants to send an email that pulls the creator of a sales order via Freemarker. It is currently not possible to pull the creator of a sales order onto an email without customization. Navigate to Lists > Search > Saved Searches > New Click Transaction Search Title: Enter a title Public: Enter Checkmark Click Criteria Filter: Select System Notes System Notes Filter: Select Type Type: Select Create Click Set Click Results Click Remove All Field: Select Formula (Text) Summary Type: Select Maximum Formula: Enter {systemnotes.name} Click Available Filters Filter: Select Internal ID Click Save & Run Navigate to Customization > Lists, Records, & Fields > Transaction Body Fields > New Label: Enter a label Type: Select Free-Form Text Store Value: Remove Checkmark Click Applies To Sale: Enter Checkmark Click Display Subtab: Select Main Display Type: Select Inline Text Click Validation & Defaulting Search: Select the search that was created Click Save View any Sal...

I Must Be Crazy

It's actually 4:14AM on a Monday, and I've been doing a lot of thinking about work. So I've spoken with a couple of senior managers and it seems like they're willing to help me get into SuiteCloud. I'm looking forward to it. The SuiteAnalytics SME team met, after I provided my inputs, and people have been more active in the channel now. I'm excited about the Knowledge Management task force I'm setting up. I just need to train them on December 1, and do one-on-one discussions with each to ensure everything is in place. Progress! While a few things are moving along nicely, there are a few things that I am quite worried about. Becoming a linchpin actually opens your eyes to the reality that there are really those who choose to be cogs, and don't want anything more. You get to identify who those people are, and become more concerned about the other potential linchpins out there, who are getting affected by the lousy work the cogs bring to the table. Being a ...

What I've Been Up To

Image
 So just an update of what I've been doing daily at work. A lot of things really. Apart from my regular tasks on taking cases, calling customers, and filing defects, I've been doing extra for no recompense. A 'gift' if you may. I've been trying to get the aging cases of my colleagues in the CRM product area down. There are a lot of cases where reps may have felt stuck, or untrained to complete the task. So I've been teaching them how to work on such cases. There are indeed some cases on niche features, like the Dunning Letters bundle, that come once in a blue moon, so it's not very often reps get familiar with how to help customers with concerns on these features.  Consultations have not been limited to CRM. People from SuiteBuilder and SuiteCloud have also approached me for consultation. A lot of people have been consulting lately about saved searches, especially in the SuiteAnalytics Subject-Matter Expert (SME) Slack channel. I'm unfortunately the only...

NetSuite: Saved Search Alerts When Record is Updated ONLY

Image
Saved Searches have the capability to send email alerts when records are created or updated. But what if you only need email alerts to be sent when records are updated. To be more specific, if you want to be notified when the Sales Rep field on a customer record is updated, then you would set the relevant fields like so: If you try this setup, you will likely see that notifications still get sent when records are created. Shouldn't adding a field on the Updated Fields tab prevent that from happening? To explain this behavior, it is likely that once the record gets created, Sales Territories takes over and updates the record and sets the Sales Rep field immediately. This would be considered an update, and therefore would trigger the email alert, at the same time as the date created . The timestamps between the update and the date created are so similar, that they appear to be the same in the system notes. This makes us believe that the email is sent on create, when in reality, the e...

NetSuite: Saved Search to Return One of Two Aggregated Values

Let's begin with a simple query. In an opportunity search, one field aggregates Estimated Gross Profit of each line item, while another aggregates the Actual Profit of each line item. Let's label each field {custcol1} and {custcol2}. We set the summary types to Sum. Simple. Now we'd want a Formula (Currency) that returns {custcol2}, but if that has 0 or null values, we return {custcol1}. So... case when nvl({custcol2},0) = 0 then nvl({custcol1},0) else nvl({custcol2},0)) end ...would work, but would likely cause duplicates. Using max on each variable could be a solution to that, but then again, there could be some opportunities with multiple line items. Using max would only get the biggest of those line items, missing out on the smaller lines. A better solution would be using sum distinct instead: case when sum(distinct nvl({custcol2},0)) = 0 then sum(distinct nvl({custcol1},0)) else sum(distinct nvl({custcol2},0)) end In most cases, this would work. But there would be extr...

NetSuite: Item Saved Search With Three Dimensions

Image
Okay, so here's an interesting dilemma. A customer created an item saved search using the joined fields Inventory Number/Bin on Hand and, Inventory Number. He wanted to retrieve the Expiration date from the Lot Number Record, but that resulted to each Lot Number Record compare itself to each Bin. This in turn bloated the results from 8 rows to 40. Pulling 3 dimensions to a search, can get messy, since search results are only capable of returning 2 dimensions. Luckily, there's a solution. It seems you have to find fields from each record type that return the same value. This would be your primary key. Then, you use that key as a condition on a case when statement. case when {inventorynumber.inventorynumber} = {inventorynumberbinonhand.inventorynumber} then {inventorynumber.expirationdate} end Also set the Summary Type to Maxmimum for that formula, then Group the rest of the fields. The down side is, since setting summary types forces drill down reports; you can't easily acce...