3
0

Remove baked in CRM and SS

This commit is contained in:
Tomaž Jerman
2024-10-03 15:19:15 +02:00
committed by Jože Fortun
parent 5bf50e8563
commit 7a2ccfed79
14 changed files with 0 additions and 41840 deletions

View File

@@ -1,22 +0,0 @@
templates:
quote:
type: text/html
template: "<h1>Details of Quote: {{.quote.values.QuoteNumber}} - {{.quote.values.Name}}</h1>\r\n<br>\r\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\" style=\"min-width:100%;\">\r\n <tr>\r\n <td valign=\"top\">\r\n <strong>Quote Information</strong>\r\n <br><br>\r\n <strong>Quote Number:</strong> {{.quote.values.QuoteNumber}}<br>\r\n <strong>Quote Name:</strong> {{.quote.values.Name}}<br>\r\n <strong>Expiration Date:</strong> {{.quote.values.ExpirationDate}}<strong><br>\r\n <strong>Description:</strong> {{.quote.values.Description}}\r\n </td>\r\n <td valign=\"top\">\r\n <strong>Primary contact data</strong>\r\n <br><br>\r\n <strong>Contact Name:</strong> {{.quote.values.ContactId}}<br>\r\n <strong>Email:</strong> {{.quote.values.Email}}<br>\r\n <strong>Phone:</strong> {{.quote.values.Phon}}\r\n </td>\r\n <td valign=\"top\">\r\n <strong>Totals</strong><br>\r\n <br>\r\n <strong>Subtotal:</strong> {{.quote.values.Subtotal}}<br>\r\n <strong>Additional Discount:</strong> {{.quote.values.Discount}}<br>\r\n <strong>Shipping and Handling:</strong> {{.quote.values.ShippingHandling}}<br>\r\n <strong>Total Price:</strong> {{.quote.values.TotalPrice}}<br>\r\n <strong>Tax:</strong> {{.quote.values.Tax}}<br>\r\n <strong>Grand Total:</strong> {{.quote.values.GrandTotal}}\r\n </td>\r\n </tr>\r\n <tr>\r\n <td colspan='3'>\r\n <strong>Products</strong>\r\n <br><br>\r\n {{range $index, $element := .lineItems}}\r\n <strong>Price:</strong>{{$element.values.UnitPrice}}<br>\r\n <strong>Quantity:</strong>{{$element.values.Quantity}}<br>\r\n <strong>Subtotal:</strong>{{$element.values.Subtotal}}<br>\r\n <strong>Discount:</strong>{{$element.values.Discount}}<br>\r\n <strong>Total Price:</strong>{{$element.values.TotalPrice}}<br>\r\n -------------------------<br>\r\n {{end}}\r\n </td>\r\n </tr>\r\n <tr>\r\n <td valign=\"top\">\r\n <strong>Bill To</strong><br>\r\n <br>\r\n <strong>Bill to Name:</strong> {{.quote.values.BillingName}}<br>\r\n <strong>Bill to Street:</strong> {{.quote.values.BillingStreet}}<br>\r\n <strong>Bill to City:</strong> {{.quote.values.BillingCity}}<br>\r\n <strong>Bill to State:</strong> {{.quote.values.BillingState}}<strong><br>\r\n <strong>Bill to Postal Code:</strong> {{.quote.values.BillingPostalCode}}<br>\r\n <strong>Bill to Country:</strong> {{.quote.values.BillingCountry}}\r\n </td>\r\n <td valign=\"top\">\r\n <strong>Quote To</strong><br>\r\n <br>\r\n <strong>Quote to Name:</strong> {{.quote.values.QuoteToName}}<br>\r\n <strong>Quote to Street:</strong> {{.quote.values.QuoteToStreet}}<br>\r\n <strong>Quote to City:</strong> {{.quote.values.QuoteToCity}}<br>\r\n <strong>Quote to State:</strong> {{.quote.values.QuoteToState}}<strong><br>\r\n <strong>Quote to Postal Code:</strong> {{.quote.values.QuoteToPostalCode}}<br>\r\n <strong>Quote to Country:</strong> {{.quote.values.QuoteToCountry}}\r\n </td>\r\n <td valign=\"top\">\r\n <strong>Ship To</strong><br>\r\n <br>\r\n <strong>Ship to Name:</strong> {{.quote.values.ShippingName}}<br>\r\n <strong>Ship to Street:</strong> {{.quote.values.ShippingStreet}}<br>\r\n <strong>Ship to City:</strong> {{.quote.values.ShippingCity}}<br>\r\n <strong>Ship to State:</strong> {{.quote.values.ShippingState}}<strong><br>\r\n <strong>Ship to Postal Code:</strong> {{.quote.values.ShippingPostalCode}}<br>\r\n <strong>Ship to Country:</strong> {{.quote.values.ShippingCountry}}\r\n </td>\r\n </tr>\r\n</table>"
meta:
short: quote
description: quote
lead_converted_content:
type: text/html
template: |
<h2 style="color: #568ba2;text-align: center;">The following lead has been converted:</h2>
{{template "record_table" .account }}
meta:
short: Lead Converted (Content)
description: The lead was converted
lead_converted_subject:
type: text/plain
template: Lead {{ .lead.values.FirstName }} {{ .lead.values.LastName }} from {{ .lead.values.Company }} has been converted
meta:
short: Lead Converted (subject)
description: lead_converted_subject

View File

@@ -1,12 +0,0 @@
namespaces:
crm:
(envoy): { onExisting: "skip" }
name: CRM
enabled: true
allow:
authenticated:
- module.create
- read
deny:
authenticated:
- delete

File diff suppressed because it is too large Load Diff

View File

@@ -1,999 +0,0 @@
namespace: crm
charts:
AccountsByRating:
(envoy): { onExisting: "skip" }
name: Accounts by rating
config:
reports:
- dimensions:
- conditions: {}
field: Rating
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- aggregate: AVG
field: count
fill: true
fixTooltips: false
label: Number of Accounts
lineTension: 0.4
type: line
module: Account
renderer: {}
yAxis:
label: Accounts
colorScheme: tableau.Tableau10
AccountsByType:
(envoy): { onExisting: "skip" }
name: Accounts by type
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
fixTooltips: false
relativeValue: true
type: doughnut
module: Account
renderer: {}
colorScheme: tableau.Tableau10
ActiveCampaignsByType:
(envoy): { onExisting: "skip" }
name: Active campaigns by type
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
filter: IsActive = 1
metrics:
- field: count
type: pie
module: Campaigns
renderer: {}
colorScheme: tableau.Tableau20
CampaignAmountAllOpportunitiesVsTarget:
(envoy): { onExisting: "skip" }
name: Campaign amount all opportunities vs target
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta:
steps:
- value: "15000"
- value: "30000"
- value: "60000"
modifier: (no grouping / buckets)
filter: AmountAllOpportunities IS NOT NULL
metrics:
- aggregate: SUM
field: AmountAllOpportunities
type: gauge
module: Campaigns
renderer: {}
colorScheme: tableau.Traffic9
CampaignAmountAllWonOpportunitiesVsTarget:
(envoy): { onExisting: "skip" }
name: Campaign amount all won opportunities vs target
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta:
steps:
- value: "10000"
- value: "20000"
- value: "40000"
modifier: (no grouping / buckets)
filter: AmountWonOpportunities IS NOT NULL
metrics:
- aggregate: SUM
field: AmountWonOpportunities
type: gauge
module: Campaigns
renderer: {}
colorScheme: tableau.Traffic9
CampaignCostVsRevenue:
(envoy): { onExisting: "skip" }
name: Campaign cost vs revenue
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ActualCost IS NOT NULL
metrics:
- aggregate: SUM
field: BudgetedCost
label: Budgeted Cost
type: bar
- aggregate: SUM
field: ActualCost
label: Actual Cost
type: bar
- aggregate: SUM
field: ExpectedRevenue
label: Expected Revenue
type: bar
- aggregate: SUM
field: AmountAllOpportunities
label: Amount All Opportunities
type: bar
- aggregate: SUM
field: AmountWonOpportunities
label: Amount All Won Opportunities
type: bar
module: Campaigns
renderer: {}
yAxis:
beginAtZero: true
label: Euro
colorScheme: tableau.Tableau10
CampaignCosts:
(envoy): { onExisting: "skip" }
name: Campaign costs
config:
reports:
- dimensions:
- conditions: {}
field: Name
meta: {}
modifier: (no grouping / buckets)
filter: recordID = ${recordID}
metrics:
- aggregate: SUM
field: NumberOfLeads
type: bar
- aggregate: SUM
field: NumberOfOpportunities
type: bar
module: Campaigns
renderer: {}
yAxis:
beginAtZero: true
label: Value
colorScheme: tableau.Tableau10
CasesByOrigin:
(envoy): { onExisting: "skip" }
name: Cases by origin
config:
reports:
- dimensions:
- conditions: {}
field: Origin
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: pie
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CasesByPriority:
(envoy): { onExisting: "skip" }
name: Cases by priority
config:
reports:
- dimensions:
- conditions: {}
field: Priority
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
type: pie
module: Case
renderer: {}
colorScheme: office.Wisp6
CasesByStatus:
(envoy): { onExisting: "skip" }
name: Cases by status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: pie
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CasesByType:
(envoy): { onExisting: "skip" }
name: Cases by type
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: pie
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CasesPerMonth:
(envoy): { onExisting: "skip" }
name: Cases per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
label: Cases per month
lineTension: 0.4
type: bar
- field: count
fill: true
fx: m?m+n:n
label: Cumulative number of cases
type: line
module: Case
renderer: {}
yAxis:
beginAtZero: true
label: Cases
colorScheme: tableau.Tableau20
ContactsPerCountry:
(envoy): { onExisting: "skip" }
name: Contacts per country
config:
reports:
- dimensions:
- conditions: {}
field: MailingCountry
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
label: Contacts per country
lineTension: 0.4
type: line
module: Contact
renderer: {}
yAxis:
beginAtZero: true
label: Contacts
colorScheme: tableau.Tableau20
ContactsPerSeniorLeveltitle:
(envoy): { onExisting: "skip" }
name: Contacts per senior level title
config:
reports:
- dimensions:
- conditions: {}
default: None
field: Title
meta: {}
modifier: (no grouping / buckets)
filter: Title = 'CEO' OR Title = 'Owner' OR Title = 'Founder' OR Title
= 'President' OR Title = 'Director' OR Title = 'CEO' OR Title = 'COO'
OR Title = 'CFO' OR Title = 'CIO' OR Title = 'CLO' OR Title = 'CHRO'
OR Title = 'CMO' OR Title = 'CRO' OR Title = 'CCO' OR Title = 'CSO'
OR Title = 'CIO' OR Title = 'CSO' OR Title = 'CTO' OR Title = 'VP'
metrics:
- field: count
type: doughnut
module: Contact
renderer: {}
colorScheme: tableau.Tableau10
ContractsByStatus:
(envoy): { onExisting: "skip" }
name: Contracts by Status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: doughnut
module: Contract
renderer: {}
colorScheme: tableau.Tableau10
ContractsPerStartingMonth:
(envoy): { onExisting: "skip" }
name: Contracts per starting month
config:
reports:
- dimensions:
- conditions: {}
field: StartDate
meta: {}
modifier: MONTH
skipMissing: true
filter: Status = 'Activated'
metrics:
- field: count
fill: true
label: Activated contract per month
lineTension: 0.4
type: bar
- field: count
fill: true
fx: m?m+n:n
label: Cumulative number of contracts
type: line
module: Contract
renderer: {}
yAxis:
beginAtZero: true
label: Activated contracts
colorScheme: tableau.Tableau20
Dealsize:
(envoy): { onExisting: "skip" }
name: Dealsize
config:
reports:
- dimensions:
- conditions: {}
field: CloseDate
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- aggregate: AVG
field: Amount
fill: true
label: Average Dealsize per month
lineTension: 0.4
type: line
- aggregate: MAX
field: Amount
label: Max Dealsize
lineTension: 0.4
type: line
- aggregate: MIN
field: Amount
label: Min Dealsize
lineTension: 0.4
type: line
module: Opportunity
renderer: {}
yAxis:
beginAtZero: true
label: Euro
colorScheme: tableau.Tableau10
EventsPerMonth:
(envoy): { onExisting: "skip" }
name: Events per month
config:
reports:
- dimensions:
- conditions: {}
field: ActivityDate
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
lineTension: 0.4
type: line
module: Event
renderer: {}
yAxis:
beginAtZero: true
label: Events
colorScheme: tableau.Tableau10
EventsPerType:
(envoy): { onExisting: "skip" }
name: Events per type
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: doughnut
module: Event
renderer: {}
colorScheme: tableau.Tableau10
LeadFunnel:
(envoy): { onExisting: "skip" }
name: Lead funnel
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta:
fields:
- text: New
value: New
- text: Assigned
value: Assigned
- text: In Progress
value: In Progress
- text: Converted
value: Converted
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: funnel
module: Lead
renderer: {}
colorScheme: tableau.ClassicMedium10
LeadsByCountry:
(envoy): { onExisting: "skip" }
name: Leads by country
config:
reports:
- dimensions:
- conditions: {}
field: Country
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
fixTooltips: null
lineTension: 0.4
type: line
module: Lead
renderer: {}
yAxis:
axisType: linear
beginAtZero: true
label: Leads per country
colorScheme: tableau.Tableau10
LeadsByRating:
(envoy): { onExisting: "skip" }
name: Leads by rating
config:
reports:
- dimensions:
- conditions: {}
field: Rating
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
lineTension: 0.4
type: line
module: Lead
renderer: {}
colorScheme: tableau.Tableau10
LeadsBySource:
(envoy): { onExisting: "skip" }
name: Leads by source
config:
reports:
- dimensions:
- conditions: {}
field: LeadSource
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
fixTooltips: null
type: doughnut
module: Lead
renderer: {}
colorScheme: tableau.Tableau20
LeadsByType:
(envoy): { onExisting: "skip" }
name: Leads by type
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- backgroundColor: '#31d9dd'
beginAtZero: true
field: count
fixTooltips: false
label: Number of leads
relativeValue: true
type: doughnut
module: Lead
renderer: {}
colorScheme: tableau.Tableau10
LeadsPerMonth:
(envoy): { onExisting: "skip" }
name: Leads per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
label: Leads per month
type: bar
- field: count
fill: true
fixTooltips: null
fx: m?m+n:n
label: Cumulative number of leads
lineTension: 0.4
type: line
module: Lead
renderer: {}
yAxis:
beginAtZero: true
label: Leads
colorScheme: tableau.Tableau20
MonthlySales:
(envoy): { onExisting: "skip" }
name: Monthly sales
config:
reports:
- dimensions:
- autoSkip: true
conditions: {}
field: CloseDate
meta: {}
modifier: MONTH
skipMissing: true
filter: StageName = 'Closed Won' and Amount IS NOT NULL
metrics:
- aggregate: SUM
field: Amount
fill: true
fixTooltips: null
fx: ""
label: Monthly Sales
type: bar
- aggregate: SUM
field: Amount
fill: true
fx: m?m+n:n
label: Cumulative Sales
lineTension: 0.4
type: line
module: Opportunity
renderer: {}
yAxis:
beginAtZero: true
label: Euro
max: ""
colorScheme: tableau.Tableau20
NumberOfOpportunitiesVsTarget:
(envoy): { onExisting: "skip" }
name: Number of opportunities vs target
config:
reports:
- dimensions:
- conditions: {}
field: StageName
meta:
steps:
- value: "20"
- value: "50"
- value: "100"
modifier: (no grouping / buckets)
filter: YEAR(created_at) = YEAR(NOW())
metrics:
- field: count
type: gauge
module: Opportunity
renderer: {}
colorScheme: tableau.Traffic9
OpportunitiesCreatedPerMonth:
(envoy): { onExisting: "skip" }
name: Opportunities created per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
fx: m?m+n:n
label: Cumulative number of opportunities
lineTension: 0.4
type: line
- field: count
fill: false
label: Opportunities per month
lineTension: 0.4
type: bar
module: Opportunity
renderer: {}
yAxis:
beginAtZero: true
label: Opportunities
OpportunityLineItemsValue:
(envoy): { onExisting: "skip" }
name: Opportunity line items value
config:
reports:
- dimensions:
- conditions: {}
field: Name
meta: {}
modifier: (no grouping / buckets)
filter: OpportunityId = ${recordID}
metrics:
- aggregate: SUM
field: TotalPrice
type: bar
module: OpportunityLineItem
renderer: {}
yAxis:
beginAtZero: true
label: value
colorScheme: tableau.Tableau20
OpportunitySalesPipeline:
(envoy): { onExisting: "skip" }
name: Opportunity sales pipeline
config:
reports:
- dimensions:
- conditions: {}
field: StageName
meta:
fields:
- text: Qualification
value: Qualification
- text: Need Analysis
value: Need Analysis
- text: Proposal
value: Proposal
- text: Negotiation
value: Negotiation
- text: Closed Won
value: Closed Won
modifier: (no grouping / buckets)
filter: YEAR(created_at) = YEAR(NOW()) AND Amount IS NOT NULL
metrics:
- aggregate: SUM
field: Amount
type: funnel
module: Opportunity
renderer: {}
colorScheme: tableau.ClassicMedium10
OpportunityStatusFunnel:
(envoy): { onExisting: "skip" }
name: Opportunity status funn
config:
reports:
- dimensions:
- conditions: {}
field: StageName
meta:
fields:
- text: Qualification
value: Qualification
- text: Need Analysis
value: Need Analysis
- text: Proposal
value: Proposal
- text: Negotiation
value: Negotiation
- text: Closed Won
value: Closed Won
modifier: (no grouping / buckets)
filter: YEAR(created_at) = YEAR(NOW())
metrics:
- field: count
type: funnel
module: Opportunity
renderer: {}
colorScheme: tableau.ClassicMedium10
PriceBookEntriesPerMonth:
(envoy): { onExisting: "skip" }
name: Price book entries per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
label: Price book entries
lineTension: 0.4
type: line
module: PricebookEntry
renderer: {}
yAxis:
beginAtZero: true
label: Price book entries
colorScheme: tableau.Tableau10
PriceBooksCreatedPerMonth:
(envoy): { onExisting: "skip" }
name: Price books created per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
label: Number of Price Books
lineTension: 0.4
type: line
module: Pricebook
renderer: {}
yAxis:
beginAtZero: true
label: Price books
colorScheme: tableau.Tableau10
ProductsAddedPerMonth:
(envoy): { onExisting: "skip" }
name: Products added per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
lineTension: 0.4
type: line
module: Product
renderer: {}
yAxis:
beginAtZero: true
label: Products
colorScheme: tableau.Tableau10
ProductsPerFamily:
(envoy): { onExisting: "skip" }
name: Products per family
config:
reports:
- dimensions:
- conditions: {}
default: None
field: Family
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: doughnut
module: Product
renderer: {}
colorScheme: tableau.Tableau10
QuotesByStatus:
(envoy): { onExisting: "skip" }
name: Quotes by status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
type: doughnut
module: Quote
renderer: {}
colorScheme: tableau.Tableau20
QuotesPerMonth:
(envoy): { onExisting: "skip" }
name: Quotes per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
label: Quotes per month
lineTension: 0.4
type: bar
- field: count
fill: true
fx: m?m+n:n
label: Cumulative number of quotes
lineTension: 0.4
type: line
module: Quote
renderer: {}
yAxis:
beginAtZero: true
label: Quotes
colorScheme: tableau.Tableau20
SalesVsTarget:
(envoy): { onExisting: "skip" }
name: Sales vs target
config:
reports:
- dimensions:
- conditions: {}
field: StageName
meta:
steps:
- value: "100000"
- value: "250000"
- value: "500000"
modifier: (no grouping / buckets)
filter: YEAR(created_at) = YEAR(NOW()) AND Amount IS NOT NULL
metrics:
- aggregate: SUM
field: Amount
fx: ""
type: gauge
module: Opportunity
renderer: {}
colorScheme: tableau.Traffic9
SalesYTD:
(envoy): { onExisting: "skip" }
name: Sales YTD
config:
reports:
- dimensions:
- conditions: {}
field: LeadSource
meta:
steps:
- value: "150000"
- value: "500000"
- value: "1000000"
modifier: (no grouping / buckets)
filter: YEAR(created_at) = YEAR(NOW()) AND Amount IS NOT NULL
metrics:
- aggregate: SUM
field: Amount
type: gauge
module: Opportunity
renderer: {}
colorScheme: tableau.Traffic9
SolutionsByStatus:
(envoy): { onExisting: "skip" }
name: Solutions by status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- field: count
type: doughnut
module: Solution
renderer: {}
colorScheme: tableau.Tableau10
SolutionsCreatedPerMonth:
(envoy): { onExisting: "skip" }
name: Solutions created per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- field: count
fill: true
label: Solutions created per month
lineTension: 0.4
type: line
module: Solution
renderer: {}
yAxis:
beginAtZero: true
label: Solutions
colorScheme: tableau.Tableau10
TasksByStatus:
(envoy): { onExisting: "skip" }
name: Tasks by status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- field: count
type: doughnut
module: Task
renderer: {}
colorScheme: tableau.ClassicGreenOrange6
TasksPerMonth:
(envoy): { onExisting: "skip" }
name: Tasks per month
config:
reports:
- dimensions:
- conditions: {}
field: ActivityDate
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
label: Tasks per month
lineTension: 0.4
type: line
module: Task
renderer: {}
yAxis:
beginAtZero: true
label: Tasks
colorScheme: tableau.Tableau10

File diff suppressed because it is too large Load Diff

View File

@@ -1,27 +0,0 @@
namespace: crm
records:
Settings:
- (envoy): { skipIf: "!missing" }
values:
QuoteExpirationDays: "30"
QuoteNextNumber: "1"
OpportunityCloseDateDays: "30"
OpportunityProbability: "10"
OpportunityForecaseCategory: "Pipeline"
OpportunityStagename: "Qualification"
ContractNextNumber: "1"
ContractDefaultTime: "12"
CaseNextNumber: "1"
SolutionNextNumber: "1"
ScoreBudget: "1"
ScoreAuthority: "1"
ScoreNeed: "1"
ScoreTimescale: "1"
ScoreTurnover: "0"
ScoreYearsInBusiness: "1"
ScoreSource: "0"
ScoreProductKnowlege: "0"
ScoreTechnicalDepth: "0"
ScoreCompetition: "1"
ScoreCriticality: "1"
ScoreRepeatPurchase: "1"

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +0,0 @@
templates:
case_update_subject:
type: text/plain
template: 'Case: [{{.case.values.Number}}] {{.case.values.Subject}}'
meta:
short: case_update_subject
description: case_update_subject
case_update_content:
type: text/html
template: "<p>\n Dear {{.contact.values.FirstName}},\n\n We are contacting you with regard to the case \"{{.case.values.Subject}}\".\n \n {{.reason}}\n \n You can reply directly to this email. When replying, please make sure the ticket ID is kept in the subject so we can track your replies.\n \n Kind regards,\n \n The service team\n</p>"
meta:
short: case_update_content
description: case_update_content

View File

@@ -1,5 +0,0 @@
namespaces:
service-solution:
(envoy): { onExisting: "skip" }
name: Case management
enabled: true

File diff suppressed because it is too large Load Diff

View File

@@ -1,449 +0,0 @@
namespace: service-solution
charts:
ActiveEntitlements:
(envoy): { onExisting: "skip" }
name: Number of active entitlements
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- backgroundColor: '#11ff57'
field: count
fixTooltips: true
type: pie
module: Entitlement
renderer: {}
colorScheme: tableau.Tableau10
AverageTimeSpentPerCase:
(envoy): { onExisting: "skip" }
name: Average time spent per case
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- aggregate: AVG
field: TotalTime
fixTooltips: null
label: Average case time (in hours)
type: bar
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CaseUpdatesPerType:
(envoy): { onExisting: "skip" }
name: Case updates per type
config:
reports:
- dimensions:
- conditions: {}
field: Type
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- backgroundColor: '#b51392'
field: count
fixTooltips: true
relativeValue: true
type: doughnut
module: Update
renderer: {}
colorScheme: tableau.Tableau10
CasesByCategory:
(envoy): { onExisting: "skip" }
name: Cases by category
config:
reports:
- dimensions:
- conditions: {}
field: Category
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- backgroundColor: '#ff0074'
field: count
fixTooltips: true
label: Category
relativePrecision: "2"
relativeValue: true
type: doughnut
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CasesByPriority:
(envoy): { onExisting: "skip" }
name: Cases by priority
config:
reports:
- dimensions:
- conditions: {}
field: Priority
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- backgroundColor: '#f50d23'
field: count
fixTooltips: true
label: Priority
relativeValue: true
type: doughnut
module: Case
renderer: {}
colorScheme: tableau.Tableau10
CasesByStatus:
(envoy): { onExisting: "skip" }
name: Cases by status
config:
reports:
- dimensions:
- conditions: {}
field: Status
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- backgroundColor: '#13b1dc'
field: count
fixTooltips: true
label: Cases by status
relativeValue: true
type: doughnut
module: Case
renderer: {}
colorScheme: tableau.Tableau10
ClosedCasesPerMonth:
(envoy): { onExisting: "skip" }
name: Closed cases per month
config:
reports:
- dimensions:
- conditions: {}
field: CloseDate
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
fixTooltips: null
label: Closed cases
lineTension: 0.4
type: line
module: Case
renderer: {}
yAxis:
beginAtZero: true
label: Cases
colorScheme: tableau.Tableau10
CostPerCategory:
(envoy): { onExisting: "skip" }
name: Total cost per category
config:
reports:
- dimensions:
- conditions: {}
field: Category
meta: {}
modifier: (no grouping / buckets)
skipMissing: false
filter: ""
metrics:
- aggregate: SUM
field: TotalCost
fixTooltips: null
label: Cost per category (in $)
type: bar
module: Case
renderer: {}
yAxis:
beginAtZero: true
label: $
colorScheme: tableau.Tableau10
CostPerProductFamily:
(envoy): { onExisting: "skip" }
name: Cost per product family
config:
reports:
- dimensions:
- conditions: {}
field: Family
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- aggregate: SUM
field: TotalCost
fixTooltips: null
label: Total
type: bar
module: Product
renderer: {}
yAxis:
beginAtZero: true
label: $
colorScheme: tableau.Tableau10
CostsPerAccount:
(envoy): { onExisting: "skip" }
name: Total costs per account
config:
reports:
- dimensions:
- conditions: {}
field: AccountName
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- aggregate: SUM
field: TotalCost
fixTooltips: null
label: Total cost
type: bar
module: Account
renderer: {}
yAxis:
beginAtZero: true
label: $
colorScheme: tableau.Tableau10
KnowledgeBaseArticlesPerType:
(envoy): { onExisting: "skip" }
name: Knowledge Base articles per type
config:
reports:
- dimensions:
- conditions: {}
field: Category
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- backgroundColor: '#ffc623'
field: count
fixTooltips: true
label: Knowledge Base articles per type
relativeValue: false
type: pie
module: KnowledgeBase
renderer: {}
colorScheme: tableau.Tableau10
KnowledgeBaseItemsCreatedPerDay:
(envoy): { onExisting: "skip" }
name: Knowledge Base items created per day
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: DATE
filter: ""
metrics:
- field: count
fill: true
label: Total per day
lineTension: 0.4
type: line
module: KnowledgeBase
renderer: {}
yAxis:
beginAtZero: true
label: KB Items
colorScheme: tableau.Tableau10
NewCasesByMonth:
(envoy): { onExisting: "skip" }
name: New cases per month
config:
reports:
- dimensions:
- autoSkip: true
conditions: {}
field: created_at
meta: {}
modifier: MONTH
skipMissing: true
filter: ""
metrics:
- field: count
fill: true
fixTooltips: null
label: New cases
lineTension: 0.2
type: line
module: Case
renderer: {}
yAxis:
beginAtZero: true
label: Cases
colorScheme: tableau.Tableau10
TimePerAccount:
(envoy): { onExisting: "skip" }
name: Total time spend per account
config:
reports:
- dimensions:
- conditions: {}
field: AccountName
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- aggregate: SUM
backgroundColor: '#41aeee'
field: TotalTime
fixTooltips: true
label: Hours
type: pie
module: Account
renderer: {}
colorScheme: tableau.Tableau20
TimeSpentPerProductFamily:
(envoy): { onExisting: "skip" }
name: Time Spent per Product Family
config:
reports:
- dimensions:
- conditions: {}
field: Family
meta: {}
modifier: (no grouping / buckets)
filter: ""
metrics:
- aggregate: SUM
axisType: null
backgroundColor: '#03ad3b'
beginAtZero: true
field: TotalTime
fixTooltips: true
label: Time spent (in hours)
relativeValue: false
type: pie
module: Product
renderer: {}
colorScheme: tableau.ClassicMedium10
TotalCostPerDepartment:
(envoy): { onExisting: "skip" }
name: Total costs per department
config:
reports:
- dimensions:
- conditions: {}
field: Name
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- aggregate: SUM
field: TotalCost
fixTooltips: null
label: Total
type: bar
module: Department
renderer: {}
yAxis:
beginAtZero: true
label: $
colorScheme: tableau.Tableau10
TotalCostPerMonth:
(envoy): { onExisting: "skip" }
name: Total cost per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- aggregate: SUM
field: Cost
label: Total cost per month
type: bar
module: Update
renderer: {}
yAxis:
beginAtZero: true
label: $
colorScheme: tableau.Tableau10
TotalTimeSpentPerCategory:
(envoy): { onExisting: "skip" }
name: 'Total time spent per category '
config:
reports:
- dimensions:
- conditions: {}
field: Category
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- aggregate: SUM
backgroundColor: '#ffac45'
field: TotalTime
fixTooltips: true
label: Total time spent per category (in hours)
type: pie
module: Case
renderer: {}
colorScheme: tableau.Tableau10
TotalTimeSpentPerDepartment:
(envoy): { onExisting: "skip" }
name: Total time spent per department
config:
reports:
- dimensions:
- conditions: {}
field: Name
meta: {}
modifier: (no grouping / buckets)
skipMissing: true
filter: ""
metrics:
- aggregate: SUM
backgroundColor: '#bf94ff'
field: TotalTime
fixTooltips: true
label: Total
type: pie
module: Department
renderer: {}
colorScheme: tableau.Tableau10
TotalTimeSpentPerMonth:
(envoy): { onExisting: "skip" }
name: Total time spent per month
config:
reports:
- dimensions:
- conditions: {}
field: created_at
meta: {}
modifier: MONTH
filter: ""
metrics:
- aggregate: SUM
field: TimeSpend
fixTooltips: null
label: Total time spent (in hours)
type: bar
module: Update
renderer: {}
yAxis:
beginAtZero: true
label: Hours
colorScheme: tableau.Tableau10

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +0,0 @@
namespace: service-solution
records:
Department:
- (envoy): { skipIf: "!missing" }
values:
Name: "Service"
HourCost: "50"
Settings:
- (envoy): { skipIf: "!missing" }
values:
KBNextNumber: "1"
DefaultCostPerHour: "50"
DefaultTimeUpdate: "0.25"

File diff suppressed because it is too large Load Diff