Customer 360 Analytical Record Types
Here is a list of analytical record types:
-
OpportunitiesAndEstimates
-
OrdersAndReturns
-
OrdersAndReturnsLineLevel
-
RecentActivity
-
RecentTransactions
-
Receivables
-
ReceivablesLineLevel
-
SalesOverview
-
TopSellingItems
-
TopSellingItemsBase
OpportunitiesAndEstimates
transaction.type IN ('Estimate', 'Opprtnty')
Field |
Source Record Type |
Source Field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
transaction |
id |
N/A |
transactionNumber |
transaction |
transactionNumber |
N/A |
type |
transaction |
type |
N/A |
title |
transaction |
title |
N/A |
tranDate |
transaction |
tranDate |
N/A |
status |
transaction |
status |
BUILTIN.DF(" +TableAlias.TRANSACTION +"." +FieldId.STATUS +") |
statusCode |
transaction |
status |
BUILTIN.CF(" +TableAlias.TRANSACTION +"." +FieldId.STATUS +") |
dueDate |
transaction |
dueDate |
N/A |
expectedCloseDate |
transaction |
expectedCloseDate |
N/A |
forcastType |
transaction |
forcastType |
N/A |
probability |
transaction |
probability |
N/A |
projectedTotal |
transaction |
N/A |
(CASE WHEN transaction.type ='Opprtnty' THEN transaction.projectedTotal ELSE transaction.foreignTotal END) * transaction.exchangeRate if (session. recordType. |
weightedTotal |
transaction |
N/A |
(CASE WHEN transaction.type ='Opprtnty' THEN transaction.projectedTotal ELSE transaction.foreignTotal END) * transaction.exchangeRate * transaction.probability if (session. recordType. Transaction.FieldId.EXCHANGE_RATE +" * " +TableAlias.TRANSACTION +"." +Transaction.FieldId.PROBABILITY);, TableAlias.TRANSACTION +"." +Transaction.FieldId.FOREIGN_TOTAL +" * " +TableAlias.TRANSACTION +"." +Transaction.FieldId.EXCHANGE_ |
entity |
transaction |
entity |
N/A |
opportunity |
transaction |
opportunity |
N/A |
subsidiary |
transaction |
subsidiary |
N/A |
OrdersAndReturns
• Same criteria as OrdersAndReturnsLineLevel plus:
• GROUP BY transaction, transactionnumber, id, entity, subsidiary, type, trandate, status, ponumber
Field |
Source Record Type |
Source Field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
Orders |
id |
N/A |
amount |
Orders |
amount |
ABS(SUM(amount)) |
transaction |
Orders |
transaction |
N/A |
entity |
Orders |
entity |
N/A |
subsidiary |
Orders |
subsidiary |
N/A |
type |
Orders |
type |
N/A |
tranDate |
Orders |
tranDate |
N/A |
status |
Orders |
status |
BUILTIN.DF(" +TableAlias.TABLE_ID +"." +FieldId.STATUS +") |
statusCode |
Orders |
statusCode |
TableAlias.TABLE_ID +"." +FieldId.TYPE +" || ':' || " +TableAlias.TABLE_ID +"." +FieldId.STATUS |
poNumber |
Orders |
poNumber |
N/A |
transactionNumber |
Orders |
transactionNumber |
N/A |
OrdersAndReturnsLineLevel
• Same criteria as SalesBase plus:
• Exclude tranline.nid = 0
• Exclude lines where kacct is null (like subtotals)
• TableAlias.TRANSACTION + "." + Transaction.FieldId.TYPE + " IN ('SalesOrd','RtnAuth')
• No null amounts (except for Work Orders)
Field |
Source Record Type |
Source Field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
transaction |
id |
N/A |
total |
transaction |
foreignTotal |
N/A |
status |
transaction |
status |
N/A |
amount |
transactionAccountingLine |
amount |
N/A |
transactionNumber |
transaction |
transactionNumber |
N/A |
RecentActivity
Field |
Source Record Type |
Source Field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
union |
id |
N/A |
entity |
union |
N/A |
If the record is SupportCase or Activity then entity is sourced from the field "company". Otherwise entity sourced from the base record field "entity". |
type |
union |
type |
If the record is Message then type is set to literal "Message", and if the record is SupportCase then type is set to literal "SupportCase". If the record is Activity then type is sourced from the formula INITCAP("type"). Otherwise the type is sourced from the base record field "type". |
typeCode |
union |
typeCode |
If the record is Message, then typeCode is set to literal "Message", and if the record is SupportCase thentypeCode is set to literal "SupportCase". If the record is Activity then type is sourced from the formula INITCAP("typeCode"). Otherwise the typeCode is sourced from the base record field "typeCode". |
transactionNumber |
union |
N/A |
If the record is Activity or Message then transactionNumber is set to NULL. If the record is SupportCase then transactionNumber is sourced from the field "caseNumber". Otherwise the transactionNumber is sourced from the base record field "transactionNumber". |
status |
union |
status |
If the record is Message then status is set to NULL. If the record is SupportCase then status is sourced from the formula BUILTIN.DF(status). Otherwise the status is sourced from the base record field "status". |
statusCode |
union |
statusCode |
If the record is Message then statusCode is set to NULL. Otherwise the statusCode is sourced from the base record field "statusCode". |
createdDate |
union |
N/A |
If the record is SupportCase then createdDate is sourced from the field "dateCreated". If the record is Message then createdDate is sourced from the field "dateTime". Otherwise createdDate sourced from the base record field "createdDate". |
lastModifiedDate |
union |
lastModifiedDate |
N/A |
amount |
union |
amount |
If the record is Activity or Message or SupportCase then amount is set to NULL. Otherwise the amount is sourced from the base record field "amount". |
subsidiary |
union |
subsidiary |
If the record is Activity or Message or SupportCase then subsidiary is set to NULL. Otherwise the subsidiary is sourced from the base record field "subsidiary". |
details |
union |
N/A |
If the record is SupportCase then details is set to NULL. If the record is Activity then details is sourced from the field "title". If the record is Message then details is sourced from the field "subject". Otherwise the details is sourced from the base record field "details". |
subdetails |
union |
author |
If the record is Message then subdetails is sourced from the formula BUILTIN.DF(author). Otherwise the subdetails is set to NULL. |
quantity |
union |
quantity |
If the record is Message or SupportCase or Activity then quantity is set to NULL. Otherwise quantity is sourced from the base record field "quantity". |
RecentTransactions
transaction.type IN ( 'CardChrg', 'CardRfnd', 'CashRfnd', 'CashSale', 'Check', 'CustChrg', 'CustCred', 'CustDep', 'CustInvc', 'CustPymt', 'CustRfnd', 'DepAppl', 'Estimate', 'FftReq', 'ItemRcpt', 'ItemShip', 'Journal', 'Opprtnty', 'PurchOrd', 'RtnAuth', 'SalesOrd', 'VendAuth', 'VendBill', 'VendCred', 'VendPymt', 'WorkOrd' )
line.mainLine = 'T'
id |
transaction |
id |
N/A |
entity |
transaction |
entity |
CASE WHEN transaction.type ='Journal' THEN line.entity ELSE transaction.entity END |
type |
transaction |
type |
BUILTIN.DF(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.TYPE +") |
typeCode |
transaction |
typeCode |
BUILTIN.CF(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.TYPE +") |
transactionNumber |
transaction |
N/A |
NVL(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.TRAN_ID +", " +TableAlias.TRANSACTION +"." +Transaction.FieldId.TRANSACTION_NUMBER +") |
status |
transaction |
status |
BUILTIN.DF(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.STATUS +") |
statusCode |
transaction |
statusCode |
BUILTIN.CF(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.STATUS +") |
createdDate |
transaction |
createdDate |
N/A |
lastModifiedDate |
transaction |
lastModifiedDate |
N/A |
amount |
transaction |
N/A |
CASE WHEN transaction.type ='FftReq' THEN NULL WHEN transaction.type ='ItemRcpt' THEN NULL WHEN transaction.type ='ItemShip' THEN NULL WHEN transaction.type ='Journal' THEN line.foreignAmount * transaction.exchangeRate WHEN transaction.type ='Opprtnty' THEN transaction.projectedTotal * transaction.exchangeRate WHEN transaction.type ='WorkOrd' THEN NULL ELSE transaction.foreignTotal * transaction.exchangeRate END |
subsidiary |
transaction |
subsidiary |
N/A |
details |
transaction/ |
N/A |
CASE WHEN transaction.type ='FftReq' THEN BUILTIN.DF(transaction.fulfillmentType) WHEN transaction.type ='ItemRcpt' THEN BUILTIN.DF(line.createdFrom) WHEN transaction.type ='ItemShip' THEN BUILTIN.DF(line.createdFrom) WHEN transaction.type ='WorkOrd' THEN TO_CHAR(line.quantity) END |
quantity |
transactionLine |
quantity |
N/A |
Receivables
• Same criteria as ReceivablesLineLevel plus:
• GROUP BY entity, subsidiary, transaction, tranId, type, tranDate, dueDate, otherRefNum, status, tranStatusName, total
Field |
Source Record Type |
Source field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
ReceivablesLineLevel |
id |
N/A |
entity |
ReceivablesLineLevel |
entity |
N/A |
transaction |
ReceivablesLineLevel |
transaction |
N/A |
subsidiary |
ReceivablesLineLevel |
subsidiary |
N/A |
tranId |
ReceivablesLineLevel |
tranId |
N/A |
type |
ReceivablesLineLevel |
type |
N/A |
tranDate |
ReceivablesLineLevel |
tranDate |
N/A |
total |
ReceivablesLineLevel |
accountingLineAmount |
SUM(accountingLineAmount) |
unappliedAmount |
ReceivablesLineLevel |
unappliedAmount |
SUM(unappliedAmount) |
unpaidAmount |
ReceivablesLineLevel |
unpaidAmount |
SUM(unpaidAmount) |
dueDate |
ReceivablesLineLevel |
dueDate |
N/A |
otherRefNum |
ReceivablesLineLevel |
otherRefNum |
N/A |
tranStatusName |
ReceivablesLineLevel |
tranStatusName |
N/A |
status |
ReceivablesLineLevel |
status |
N/A |
statusCode |
ReceivablesLineLevel |
statusCode |
N/A |
ReceivablesLineLevel
• transactionLine.mainLine = " + NLSQLConstants.SQL_TRUE + " AND transactionLine.entity IS NOT NULL" + " AND EXISTS(SELECT 1" + " FROM TransactionAccountingLine tal" + " WHERE tal.transaction = transactionLine.transaction" + " AND tal.accountType = '" + NLReportConstants.ACCOUNT_ACCTREC + "'" + " AND tal.posting = " + NLSQLConstants.SQL_TRUE + ")
• accountingBook.isPrimary = " + NLSQLConstants.SQL_TRUE
Field |
Source Record Type |
Source field |
Custom Formula or Feature Dependency |
---|---|---|---|
id |
transactionLine |
uniqueKey |
N/A |
entity |
transactionLine |
entity |
N/A |
transaction |
transactionLine |
transaction |
N/A |
subsidiary |
transactionLine |
subsidiary |
N/A |
tranId |
transaction |
N/A |
NVL(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.TRAN_ |
type |
transaction |
type |
N/A |
tranDate |
transaction |
tranDate |
N/A |
total |
transaction |
foreignTotal |
N/A |
accountingLineAmount |
tranAcctLine |
amount |
N/A |
unappliedAmount |
tranAcctLine |
paymentAmountUnused |
N/A |
unpaidAmount |
tranAcctLine |
amountUnpaid |
N/A |
dueDate |
transaction |
dueDate |
N/A |
otherRefNum |
transaction |
otherRefNum |
N/A |
tranStatusName |
transactionStatus |
name |
N/A |
status |
transaction |
N/A |
BUILTIN.DF(" +TableAlias.TRANSACTION +"." +Transaction.FieldId.STATUS +") |
statusCode |
transaction |
N/A |
BUILTIN.CF(" +TableAlias.TRANSACTION +"." +FieldId.STATUS +") |
SalesOverview
• Same criteria as SalesBase
Field |
Source Record Type |
Source field |
Custom Formula or Feature Dependency |
---|---|---|---|
amount |
transaction |
amount |
( -" +TableAlias.TRAN_ACCOUNTING_LINE +"." +TransactionAccountingLine.FieldId.AMOUNT +") |
accountingBook |
transaction |
accountingBook |
N/A |
subsidiary |
transaction |
subsidiary |
N/A |
postingPeriod |
transaction |
postingPeriod |
N/A |
TopSellingItems
• Same criteria as TopSellingItemsBase plus:
• Exclude tranline.nid = 0
• Exclude lines where kacct is null (like subtotals)
Field |
Source Record Type |
Source field |
Custom Formula or Feature Dependency |
---|---|---|---|
entity |
transactionLine |
entity |
N/A |
item |
transactionLine |
item |
N/A |
itemQuantity |
transactionLine |
quantity |
-1 * " +TableAlias.TRAN_LINE +"." +TransactionLine.FieldId.QUANTITY |
itemId |
item |
itemId |
N/A |
itemType |
item |
itemType |
N/A |
amount |
transaction |
netAmount |
-1 * " +TableAlias.TRAN_ACCOUNTING_LINE +"." +TransactionAccountingLine.FieldId.NET_ |
transaction |
transactionLine |
transaction |
N/A |
account |
transactionLine |
account |
N/A |
subsidiary |
transactionLine |
subsidiary |
N/A |
postingPeriod |
transaction |
postingPeriod |
N/A |
accountingBook |
transaction |
accountingBook |
N/A |
subsidiary |
transaction |
subsidiary |
N/A |
TopSellingItemsBase
• transaction.type NOT IN ('Check','Deposit','InvAdjst','InvReval','InvDistr','InvWksht','Build','Unbuild','WOIssue','WOCompl','WOClose','VendPymt','BinTrnfr','BinWksht','Commissn','FxReval','CustDep','CustRfnd','DepAppl','InvTrnfr','ItemShip','ItemRcpt','CustPymt','YtdAdjst','PurchOrd','TaxPymt','TaxLiab','Transfer','TrnfrOrd','VendAuth','WorkOrd','Payrll','Paycheck','LiaAdjst','LiabPymt','Sync','RevComm','RevComRv','Custom','Opprtnty','Estimate','SalesOrd','RtnAuth') • item.id IS NOT NULL AND item.itemType != 'ShipItem' • nvl(transactionAccountingLine.posting, 'T') = 'T'" + " AND (" + " transactionAccountingLine.accountType IN ('Income', 'OthIncome', 'DeferRevenue', 'UnbilledRec') " + " OR ( " + " transactionAccountingLine.accountType IN ('Expense', 'OthExpense') " + " AND ( " + " EXISTS ( " + " SELECT 1 " + " FROM nextTransactionLineLink reimbTranLink " + " WHERE reimbTranLink.nextDoc = transactionLine.transaction " + " AND reimbTranLink.nextLine = transactionLine.id " + " AND reimbtranlink.linkType = 'Reimb' " + " ) " + " OR transactionLine.isFxVariance = 'T') " + " ) " + ")
No fields are used in the record. It is only for filtering.