AssetSheet
Backend
1. AssetSheet
// fields ending with "*" suffix are required
ensure spreadsheet: AssetSheet
withFields: [
"CurrentUser*",
"NetAsset*"
]
ofTypes: [userId, logDecimal]
label: "Food Item Master"
modules: ["Expense"]
readRoleSet: [Member]
insertRoleSet: [Member]
updateRoleSet: [Member]
removeRoleSet: [Member]
clearRoleSet: [Member]
ensrue spreadsheet AssetSheet
searchables: [Details.CurrentUser]
queryables: [Details.CurrentUser]
uniques: [Details.CurrentUser]
ensure layoutSpreadsheet ListLayout kind: list
firstLine.first.lineFields: [Details.CurrentUser]
firstLine.middle.lineFields: [Details.NetAsset]
ensure form EntityAsset
modules: ["Expense"]
ensure section: Details
ensure field CurrentUser
permissionMatrix: {
'defaultPermission': 'writeOnInsert'
}
required: true
defaultValue: createdBy
ensure field NetAsset
permissionMatrix: {
'defaultPermission': 'writeOnce'
}
required: true
logReadRoleSet: [Member]
Frontend
1. Actions
a. SetAsset
Implement an SetAsset action to add a net asset to the AssetSheet spreadsheet.
ensure action SetAsset kind: rowInsert
label: "Set Net Asset"
modules: ["Expense"]
icon: "AddCardRounded"
spreadsheet: AssetSheet
sendMessageToInbox: true
b. Assets
Implement an Assets action to view existing assets in the AssetSheet spreadsheet.
ensure action Assets kind: spreadsheetEditor
label: "Net Assets"
modules: ["Expense"]
icon: "ListRounded"
spreadsheet: AssetSheet
layoutSpreadsheet: ListLayout
2. Group actions
Group these actions under a section named QuickBooks for easy access.
ensure group QuickBooks
actionPermission: {
'SetAsset': {
'menuGroup': '1',
'roles': [
'Member'
]
},
'Assets': {
'menuGroup': '1',
'roles': [
'Member'
]
}
}