ID,Name,Category,"Business Question","Record Type","Formula Type",Formula,Criteria/Config,"Expected Output",Placeholders,Limitations,Dependencies,"Oracle Source",Classification,"Last Verified" days-open-overdue-filter,"Days a Record Has Been Open (+ Overdue Filter)",dates-periods-ageing,"How many days has this case/task/transaction been open, and how do I filter for records open longer than N days?","Case, Task, or any record with a start date field","Formula (Numeric)",{today}-{startdate},"To filter instead of display: use the same expression as a Formula (Numeric) criteria field, e.g. ({today}-{startdate}) > 3, to return only records open more than 3 days.","Whole number of days between the start date and today.","Replace {startdate} with the actual start-date field ID for the record type you are searching (e.g. {createddate}, or a custom field ID).","Returns a raw day count, not a business-day count; does not account for holidays or weekends.","None beyond the field existing on the record type searched.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/article_5143710889.html,ORACLE_EXAMPLE,2026-08-28 day-of-week-custom-record,"Day of the Week for a Custom Record Date",dates-periods-ageing,"What day of the week does a date field on a custom record fall on?","Custom record with a date field","Formula (Text)","TO_CHAR ({custrecordname_date}, 'DAY - DD Mon')","No special criteria configuration required; add as a results column.","Text such as 'MONDAY - 15 Jan'.","Replace {custrecordname_date} with your actual custom date field ID.","Output capitalization/format follows the TO_CHAR format mask exactly as written; adjust the mask string for a different display format.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663243.html,ORACLE_EXAMPLE,2026-08-28 days-remaining-task,"Days Remaining Until Task Complete",dates-periods-ageing,"How many days remain before a task’s due date?",Task,"Formula (Numeric)",ROUND({enddate}-{today}),"Add as a results column on a Task search; no special criteria required.","Whole number of days remaining (negative if the due date has passed).","{enddate} is the Task record’s Due Date field ID as documented; no substitution needed for a standard Task search.","Does not distinguish business days from calendar days.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663340.html,ORACLE_EXAMPLE,2026-08-28 days-sale-in-effect,"Days a Sale/Contract Is In Effect",dates-periods-ageing,"How many days has a promotion or contract been active, including ones already canceled?","Custom record tracking a sale or contract with start/cancellation dates","Formula (Numeric)","ABS({custom_field_startdate}-nvl({custom_field_cxldate},{today}))","Add as a results column; no special criteria required.","Whole number of days the record has been (or was) in effect.","Replace {custom_field_startdate} and {custom_field_cxldate} with your actual start-date and cancellation-date custom field IDs.","If the cancellation-date field does not exist on your record, this formula errors. Confirm the field ID first.","Requires the two named custom date fields to exist on the record.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663716.html,ORACLE_EXAMPLE,2026-08-28 first-day-this-month,"First Day of This Month",dates-periods-ageing,"What is the first calendar day of the current month, for use as a period-start filter?","SuiteAnalytics Workbook dataset/search formula field (any record with dates)","Formula, output type Date","TRUNC(LAST_DAY(CURRENT_DATE)-1, 'MONTH')","Use as a computed date value in criteria or results; typically compared against a transaction or record date field.","A date value equal to the 1st of the current month.","None. The formula is self-contained.","Documented for SuiteAnalytics Workbook formula fields; verify the same output type option is available in your specific search/dataset builder before relying on it.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161608343585.html,ORACLE_EXAMPLE,2026-08-28 last-day-this-month,"Last Day of This Month",dates-periods-ageing,"What is the last calendar day of the current month, for a period-end filter?","SuiteAnalytics Workbook dataset/search formula field","Formula, output type Date",LAST_DAY(CURRENT_DATE),"Use as a computed date value in criteria or results.","A date value equal to the last day of the current month.",None.,"Same Workbook-context note as First Day of This Month.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161608343585.html,ORACLE_EXAMPLE,2026-08-28 first-day-last-month,"First Day of Last Month",dates-periods-ageing,"What is the first calendar day of the prior month, for month-over-month comparisons?","SuiteAnalytics Workbook dataset/search formula field","Formula, output type Date","TRUNC(LAST_DAY(ADD_MONTHS(CURRENT_DATE,-1)), 'MONTH')","Use as a computed date value in criteria or results.","A date value equal to the 1st of the previous month.",None.,"Same Workbook-context note as First Day of This Month.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161608343585.html,ORACLE_EXAMPLE,2026-08-28 last-day-last-month,"Last Day of Last Month",dates-periods-ageing,"What is the last calendar day of the prior month?","SuiteAnalytics Workbook dataset/search formula field","Formula, output type Date","LAST_DAY(ADD_MONTHS(CURRENT_DATE,-1))","Use as a computed date value in criteria or results.","A date value equal to the last day of the previous month.",None.,"Same Workbook-context note as First Day of This Month.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161608343585.html,ORACLE_EXAMPLE,2026-08-28 fiscal-ytd-july-current,"Current Fiscal-Year-to-Date Amount (Fiscal Year Starts in July)",ap-ar-finance,"What is the transaction total for the current fiscal year to date, when the fiscal year starts in July?","Transaction search","Formula (Numeric), Summary Type: Sum","DECODE(TO_CHAR(ADD_MONTHS({trandate},6),'YYYY'), TO_CHAR(ADD_MONTHS({today},6),'YYYY'),{amount},0)","Check ""Use Expressions"" and set: Date is within this fiscal year to date OR Date is within last fiscal year to date.","Summed transaction amount for the current fiscal year to date; 0 for transactions outside that range.","None if your fiscal year genuinely starts in July; otherwise use the calendar-year variant or adjust the ADD_MONTHS offset to your fiscal start month.","The 6-month offset is specific to a July fiscal-year start. Do not reuse it as-is for a different fiscal calendar.","Company fiscal calendar must actually start in July for this exact offset to be correct.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663440.html,ORACLE_EXAMPLE,2026-08-28 fiscal-ytd-july-prior,"Prior Fiscal-Year-to-Date Amount (Fiscal Year Starts in July)",ap-ar-finance,"What was the same-period total for the prior fiscal year, for a year-over-year comparison?","Transaction search","Formula (Numeric), Summary Type: Sum","DECODE(TO_CHAR(ADD_MONTHS({trandate},6),'YYYY'), TO_CHAR(ADD_MONTHS({today},-6),'YYYY'),{amount},0)","Same criteria as the current-year variant (Use Expressions: this fiscal year to date OR last fiscal year to date).","Summed transaction amount for the prior fiscal year, same period.","Adjust the offsets if your fiscal year does not start in July.","Same fiscal-start assumption as the current-year variant.","Company fiscal calendar must start in July.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663440.html,ORACLE_EXAMPLE,2026-08-28 fiscal-ytd-calendar-current,"Current Fiscal-Year-to-Date Amount (Calendar-Year Fiscal Calendar)",ap-ar-finance,"What is the transaction total for the current year to date, when the fiscal year equals the calendar year?","Transaction search","Formula (Numeric), Summary Type: Sum","DECODE(TO_CHAR({trandate},'YYYY'),TO_CHAR({today},'YYYY'),{amount},0)","Check ""Use Expressions"" and set: Date is within this fiscal year to date OR Date is within last fiscal year to date.","Summed transaction amount for the current calendar year to date.","None, for a true calendar-year fiscal calendar.","Do not use if the company fiscal year does not equal the calendar year.","Company fiscal calendar must equal the calendar year.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663440.html,ORACLE_EXAMPLE,2026-08-28 fiscal-ytd-calendar-prior,"Prior Fiscal-Year-to-Date Amount (Calendar-Year Fiscal Calendar)",ap-ar-finance,"What was the same-period total last calendar year?","Transaction search","Formula (Numeric), Summary Type: Sum","DECODE(TO_CHAR({trandate},'YYYY'), TO_CHAR(ADD_MONTHS({today} ,-12),'YYYY'),{amount},0)","Same criteria as the current-year calendar variant.","Summed transaction amount for the same period last calendar year.","None, for a true calendar-year fiscal calendar.","Do not use if the fiscal year does not equal the calendar year.","Company fiscal calendar must equal the calendar year.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663440.html,ORACLE_EXAMPLE,2026-08-28 amount-last-year-to-date,"Transaction Amount: Last Year to Date",ap-ar-finance,"What was the transaction total from the start of last year through the equivalent day this year?","SuiteAnalytics Workbook dataset (transaction-based)","Formula, output type Float","CASE WHEN (ADD_MONTHS({trandate}, 12) <= CURRENT_DATE) AND (EXTRACT(YEAR FROM {trandate}) + 1 = EXTRACT(YEAR FROM CURRENT_DATE)) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field; no additional criteria required beyond the transaction filters you already have.","The transaction amount when it falls in last-year-to-date, otherwise NULL (excluded from sums).","Replace {foreigntotal} with {amountnet} for Sales (Ordered) or Sales (Invoiced) analytical record types, per Oracle’s own guidance.","Documented for SuiteAnalytics Workbook, not confirmed identical in classic Saved Search builder.","None beyond the transaction date and amount fields existing on the dataset.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-this-year-to-date,"Transaction Amount: This Year to Date",ap-ar-finance,"What is the transaction total from the start of this year through today?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN {trandate} <= CURRENT_DATE AND EXTRACT(YEAR FROM {trandate}) = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when it falls in this-year-to-date, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Workbook-documented context.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-this-year,"Transaction Amount: This Year (Full)",ap-ar-finance,"What is the transaction total for the entirety of this year?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN EXTRACT(YEAR FROM {trandate}) = EXTRACT(YEAR FROM CURRENT_DATE) THEN {foreigntotal} END","Use directly as a results/summary field.","The transaction amount when created this year, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Workbook-documented context.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-last-year,"Transaction Amount: Last Year (Full)",ap-ar-finance,"What is the transaction total for the entirety of last year?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN EXTRACT(YEAR FROM {trandate}) + 1 = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when created last year, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Workbook-documented context.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-this-quarter-to-date,"Transaction Amount: This Quarter to Date",ap-ar-finance,"What is the transaction total for the current quarter so far?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN TO_CHAR({trandate},'Q') = TO_CHAR(CURRENT_DATE,'Q') AND EXTRACT(YEAR FROM {trandate}) = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when it falls in the current quarter, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Uses calendar quarters (Q1=Jan-Mar); adjust if your fiscal quarters differ.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-last-quarter,"Transaction Amount: Last Quarter (Full)",ap-ar-finance,"What was the transaction total for the previous full quarter, including the year-boundary case (Q4 to Q1)?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN TO_NUMBER(TO_CHAR(CURRENT_DATE,'Q')) > 1 AND TO_NUMBER(TO_CHAR({trandate},'Q')) = TO_NUMBER(TO_CHAR(CURRENT_DATE,'Q'))-1 AND EXTRACT(YEAR FROM {trandate}) = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) WHEN TO_NUMBER(TO_CHAR(CURRENT_DATE,'Q')) = 1 AND TO_NUMBER(TO_CHAR({trandate},'Q')) = 4 AND EXTRACT(YEAR FROM {trandate})+1 = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when it falls in the previous quarter (correctly handling the Q4-to-Q1 year rollover), otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Uses calendar quarters.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-this-month-to-date,"Transaction Amount: This Month to Date",ap-ar-finance,"What is the transaction total for the current month so far?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN {trandate} <= CURRENT_DATE AND EXTRACT(Month FROM {trandate}) = EXTRACT(Month FROM CURRENT_DATE) AND EXTRACT(YEAR FROM {trandate}) = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when it falls in month-to-date, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Workbook-documented context.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 amount-last-month-to-date,"Transaction Amount: Last Month to Date",ap-ar-finance,"What was the transaction total for the equivalent period last month?","SuiteAnalytics Workbook dataset","Formula, output type Float","CASE WHEN (ADD_MONTHS({trandate}, 1) <= CURRENT_DATE) AND EXTRACT(Month FROM ADD_MONTHS({trandate}, 1)) = EXTRACT(Month FROM CURRENT_DATE) AND EXTRACT(YEAR FROM ADD_MONTHS({trandate}, 1)) = EXTRACT(YEAR FROM CURRENT_DATE) THEN TO_NUMBER({foreigntotal}) END","Use directly as a results/summary field.","The transaction amount when it falls in last-month-to-date, otherwise NULL.","Replace {foreigntotal} with {amountnet} for Sales analytical record types as needed.","Workbook-documented context.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_161418884855.html,ORACLE_EXAMPLE,2026-08-28 ar-ap-aging-bucket,"AR/AP Aging Bucket Classification (Composed)",ap-ar-finance,"Which standard aging bucket (Current, 1-30, 31-60, 61-90, 90+) does an open invoice or bill fall into?","Transaction search (Invoice or Vendor Bill)","Formula (Text), using CASE","CASE WHEN ({today}-{duedate}) <= 0 THEN 'Current' WHEN ({today}-{duedate}) BETWEEN 1 AND 30 THEN '1-30' WHEN ({today}-{duedate}) BETWEEN 31 AND 60 THEN '31-60' WHEN ({today}-{duedate}) BETWEEN 61 AND 90 THEN '61-90' ELSE '90+' END","Filter to open (unpaid) transactions first (e.g. Status is not Paid In Full); add as a results column, optionally with Summary Type: Group to count/sum by bucket.","Text label of the bucket the transaction currently falls into.","Replace {duedate} with {duedate} (standard) or your own due-date field if customized; adjust the day boundaries if your company uses different aging intervals.","This exact composite is not a named Oracle example. It combines the documented days-difference pattern with CASE syntax and the standard 1-30/31-60/61-90/90+ bucket boundaries used in NetSuite’s own A/R Aging Summary and A/P Aging Detail reports. Verify against your own Aging Reports preference (Setup > Accounting > Preferences > Accounting Preferences, Aging Reports Use: Due Date or Transaction Date) before relying on it, since that preference changes which date field is correct.","Assumes standard {duedate} field; multi-book or custom aging preferences may require a different field.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N1531392.html,COMPOSED_FROM_ORACLE_DOCS,2026-08-28 time-to-approve-order,"Time Taken to Approve a Sales Order",transactions-line-level,"How long did it take a sales order to move from creation to Pending Fulfillment (i.e., approval)?","Transaction search (Sales Order)","Formula (Numeric)",{systemnotes.date}-{datecreated},"Type is Sales Order; Main Line is true; System Notes: Field is Document Status; System Notes: New Value is Pending Fulfillment.","Number of days (fractional if using time) between creation and the approval status change.","None for a standard Sales Order approval workflow; adjust the System Notes ""New Value"" filter if your approval flow uses a different status.","Relies on System Notes being enabled/retained for status-field changes; very old records may have purged system notes.","Sales Order approval workflow must actually transition through a Document Status change NetSuite logs in System Notes.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663826.html,ORACLE_EXAMPLE,2026-08-28 transaction-line-numbering,"Continuous Line Numbering in Transaction Searches",transactions-line-level,"How do I show a clean, continuous line-item number (1, 2, 3…) in a transaction search, since NetSuite’s own line sequence numbers can have gaps?","Transaction search (line-level)","Formula (Numeric)","RANK() OVER (PARTITION by {internalid} ORDER BY {linesequencenumber})","Set Main Line = No; filter out tax lines; add Item and Amount (Gross), not Amount, as results columns alongside this formula.","A continuous rank (1, 2, 3…) per transaction, ordered by the line’s actual sequence.","None. Uses standard internalid and linesequencenumber fields.","Must use Amount (Gross) rather than Amount per Oracle’s own guidance for correct line-level results in this configuration.","None beyond a line-level (Main Line = No) transaction search.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N662963.html,ORACLE_EXAMPLE,2026-08-28 joined-vendor-credit-limit,"Pulling a Related Record’s Field via a Joined Formula",customers-vendors,"How do I reference a field from a related record (e.g. a vendor’s credit limit) inside a search on a different record type (e.g. a contact)?","Any record with a defined join to another record type","Any formula type (used as a field reference)",{vendor.creditlimit},"No special configuration is required. Joined fields appear at the end of the Field dropdown in the Formula popup, and NetSuite fills in the correct ID once you select one.","The related vendor record's credit limit value.","Replace vendor and creditlimit with the actual join name and field ID for your specific related-record relationship. The join name is not universal across record type pairs.","Only works where NetSuite defines an actual join between the two record types; not every pair of record types has one.","A defined join path between the searched record and the related record.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663183.html,ORACLE_EXAMPLE,2026-08-28 cost-to-price-multiplier,"Cost-to-Base-Price Multiplier for Items",inventory-items,"What is the markup multiplier between an item’s cost and its base price, so I can spot inconsistent markup across similar items?","Item search","Formula (Numeric)","ROUND({price}/nvl({cost},1),2)","No special criteria required; typically filtered to a specific item type or category to compare like-for-like items.","A rounded multiplier (e.g. 2.15 means price is 2.15x cost).","None. Uses standard price and cost fields.","Defaults cost to 1 when null (via nvl), which prevents a divide-by-zero error but produces a misleadingly large multiplier for items with a genuinely blank cost. Review any item priced with no cost separately rather than trusting this multiplier at face value.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663389.html,ORACLE_EXAMPLE,2026-08-28 divide-by-zero-avoidance,"Avoiding Divide-by-Zero Errors",performance-troubleshooting,"How do I stop a formula from erroring when the denominator can be zero?","Any search using division","Any numeric formula pattern","Y/nullif(X,0)","Not applicable. This is a defensive pattern to wrap around any division, not a standalone search.","NULL instead of a divide-by-zero error when X is 0; the normal division result otherwise.","Replace Y and X with your actual numerator and denominator field IDs or sub-expressions.","Produces NULL, not 0, when the denominator is 0. Decide whether that is the correct downstream behavior for your report.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663159.html,ORACLE_EXAMPLE,2026-08-28 case-when-season,"CASE WHEN Multi-Branch Classification (Season Example)",conditional-null,"How do I classify a record into one of several text labels based on multiple conditions?","SuiteAnalytics Workbook dataset (pattern applies to any date/value classification)","Formula, output type String","CASE WHEN EXTRACT(Month FROM {trandate})= 12 THEN 'winter' WHEN EXTRACT(Month FROM {trandate})= 6 THEN 'summer' ELSE 'it was fall or spring' END","Use directly as a results field; add further WHEN branches for additional categories as needed.","A text label ('winter', 'summer', or 'it was fall or spring') per record.","Replace the EXTRACT(Month FROM {trandate}) condition and label strings with your own classification logic.","This specific example only distinguishes two named months. A real seasonal classification needs a WHEN branch per month or a range check; treat it as the general CASE-branching pattern, not a ready-made season calendar.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_159302146246.html,ORACLE_EXAMPLE,2026-08-28 null-handling-reference,"Choosing the Right Null-Handling Function (NVL / NVL2 / COALESCE / NULLIF)",conditional-null,"A field is sometimes blank. How do I substitute a default value, branch on whether it’s blank, or deliberately force a value to NULL so it’s excluded from a sum?","Any search","Formula (Numeric) or (Text), depending on the field","NVL({quantity},'0') : substitute 0 when quantity is null NVL2({location},1,2) : return 1 if location is set, else 2 COALESCE({quantitycommitted}, 0) : first non-null value in the list NULLIF({price}, 0) : return NULL if price equals 0 (useful to exclude zero-price rows from an average)","Use whichever function matches the need directly in a results or criteria formula field.","Varies by function; see each line above.","Replace the example field IDs ({quantity}, {location}, {quantitycommitted}, {price}) with your own.","NVL2 and COALESCE both handle nulls but are not interchangeable. NVL2 is a fixed two-branch conditional; COALESCE returns the first non-null value across any number of arguments.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N2833020.html,ORACLE_EXAMPLE,2026-08-28 most-recent-record-updater,"Name of the Most Recent Record Updater",summary-aggregation,"Who most recently updated this record, when a record may have many system-note entries?","Any record with System Notes","Formula (Text), Summary Type: Minimum","min({systemnotes.name}) keep (dense_rank last order by {systemnotes.date})","Summary Type on the formula field set to Minimum, as documented (the MIN wrapper is required for the KEEP clause to function as a summary field).","The name of the user associated with the most recent system-note entry.","None. Uses standard systemnotes join fields.","Reflects the most recent System Notes entry, not necessarily every kind of field edit if system note logging is restricted for that field type.","System Notes must be populated for the record type/field being tracked.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663659.html,ORACLE_EXAMPLE,2026-08-28 duration-to-number,"Converting a Duration Field to a Usable Number",numeric-percentage-currency,"A duration field, such as time elapsed, won’t convert directly with TO_NUMBER. How do I get a usable number out of it?","Case or any record with a Duration-type field","Formula (Numeric), output type Float",TO_NUMBER(TO_NCHAR({timeelapsed})),"Use directly as a results field; set output type to Float.","The elapsed time as a numeric value (hours), suitable for further math.","Replace {timeelapsed} with your actual Duration-type field ID.","Duration fields must be cast through TO_NCHAR first. Passing a Duration field directly to TO_NUMBER fails.","Field must genuinely be a Duration type.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_156460411506.html,ORACLE_EXAMPLE,2026-08-28 duration-days-hours-format,"Displaying a Duration as ""Days: X Hours: Y""",text-formatting,"How do I show an elapsed-time duration in a readable ""Days: X Hours: Y"" format instead of a raw number?","Case or any record with a Duration-type field","Formula (Text), output type String","CONCAT(CONCAT('Days: ',TO_NCHAR(FLOOR(TO_NUMBER(TO_NCHAR({timeelapsed}/24))))), CONCAT(' Hours: ',TO_NCHAR(MOD(TO_NUMBER(TO_NCHAR({timeelapsed})),24))))","Use directly as a results field.","A string such as ""Days: 2 Hours: 5"".","Replace {timeelapsed} with your actual Duration-type field ID.","Assumes the underlying duration value represents hours before the /24 division. Confirm your field’s base unit before reusing this exact formula.","Field must genuinely be a Duration type.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_156528520694.html,ORACLE_EXAMPLE,2026-08-28 percentage-variance,"Percentage Variance Between Two Custom Record Values",numeric-percentage-currency,"What is the percentage difference between two numeric values on a custom record (e.g. budget vs. actual)?","Custom record with two comparable numeric fields","Formula (Percent), Summary Type: Group, Function: Round to Hundredths","ROUND ( ({custrecord_value1} / {custrecord_value2} - 1.00 ) * 100, 2)","Results subtab: Formula Type = Formula (Percent); Summary Type = Group; Function = Round to Hundredths.","A percentage value representing how much value1 differs from value2.","Replace {custrecord_value1} and {custrecord_value2} with your actual custom field IDs.","Divides by {custrecord_value2} directly. Wrap it in nullif() (see the divide-by-zero pattern) if that field can be zero.","Both custom fields must exist on the record.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/bridgehead_N663290.html,ORACLE_EXAMPLE,2026-08-28 string-utilities,"Common String-Formatting Building Blocks (LPAD, RPAD, CONCAT, REGEXP_REPLACE)",text-formatting,"How do I zero-pad a line number, join two text fields together, or strip a prefix out of a text field?","Any search","Formula (Text)","LPAD({line},3,'0') : zero-pad a line number to 3 digits CONCAT({number},CONCAT('_',{line})) : join two fields with an underscore REGEXP_REPLACE({name}, '^.*:', '') : strip everything up to and including the last colon","Use directly as results fields.","Varies by function; see each line above.","Replace {line}, {number}, {name} with your own field IDs.","REGEXP_REPLACE patterns are regular expressions. Test the exact pattern against your real data before relying on it broadly.",None.,https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N2833020.html,ORACLE_EXAMPLE,2026-08-28 currency-consolidation,"Currency Consolidation for Multi-Subsidiary Reporting",subsidiary-multicurrency,"How do I get a transaction accounting line amount consolidated into a single reporting currency across subsidiaries?","Transaction Accounting Line (SuiteAnalytics Workbook dataset)","Formula, output type Float (via TO_NUMBER)",TO_NUMBER({transactionlines.accountingimpact.netamount#currency_consolidated}),"Use directly as a results field; applies only to amount fields from the transaction accounting line record type.","The net amount consolidated into the reporting currency.","None for this specific field; the #currency_consolidated suffix pattern generalizes to other transaction accounting line amount fields.","TO_NUMBER() is required because the Formula Builder does not support a native Currency output type.","Multi-subsidiary / OneWorld consolidation must be enabled.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_160406520801.html,ORACLE_EXAMPLE,2026-08-28 currency-conversion,"Currency Conversion for a Transaction Amount Field",subsidiary-multicurrency,"How do I convert a transaction amount field into a specified currency?","Transaction or transaction line record (SuiteAnalytics Workbook dataset)","Formula, output type Float (via TO_NUMBER)",TO_NUMBER({foreignamountpaid#converted}),"Use directly as a results field; applies only to amount fields from the transaction and transaction line record types.","The amount converted to the target currency.","The #converted suffix pattern generalizes to other transaction/transaction-line amount fields.","TO_NUMBER() required; distinct from consolidation, which applies only to transaction accounting line fields.","Multi-currency feature must be enabled.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/subsect_160406520801.html,ORACLE_EXAMPLE,2026-08-28 duplicate-bill-detection,"Flagging Potential Duplicate Vendor Bills (Composed)",duplicate-detection,"Are there vendor bills that share the same vendor and vendor invoice number more than once, suggesting a possible duplicate entry?","Transaction search (Vendor Bill)","Formula (Numeric), analytic function","COUNT(*) OVER (PARTITION BY {entity}, {tranid})","Type is Vendor Bill; Main Line is true; add this formula as a results column, then filter/sort results where the value is greater than 1.","A count of how many bills share the same vendor + reference number; values greater than 1 indicate a possible duplicate.","Replace {tranid} with the specific reference-number field your process actually uses for the vendor’s invoice number if it differs from the standard field.","This exact composite is not a named Oracle example. It applies the documented `OVER (PARTITION BY ...)` analytic-function syntax (used elsewhere in Oracle’s own line-numbering example) to a duplicate-flagging use case. A count greater than 1 is a candidate for manual review, not proof of a duplicate; legitimate vendors sometimes reuse similar reference formats.","Assumes vendor + reference number is a meaningful duplicate signal for your AP process; adjust the partition fields if a different combination (e.g. + amount) is more appropriate.",https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N2833020.html,COMPOSED_FROM_ORACLE_DOCS,2026-08-28