In the operations portal, many grid columns have a filter dropdown that allow you to view and filter the records by value and count. For example, on the tickets screen the Assignee Names column displays a list of assignees along with a count of how many tickets each assignee has. In this release, we've added another filter option called [Empty]. This option shows you how many records have no value. So in our ticket assignees example, we can filter down on all tickets where there is no assignee. This new option is available on all the grids in the operations portal.
CRM
Streamline activity logging with activity templates
Previously, we released CRM Activities which you can use to track and manage customer relationships, prospects, and opportunities. In this release, we've added Activity Templates so you can streamline each type of activity you enter. An activity template is a special type of activity that is used to pre-populate new activities with default values. For example, if you enter customer call activities, you can create a customer call template with pre-filled data such as status, comments, dates, etc. Once you've created this template, you can select it whenever you log a new call for a customer. The new call will be pre-filled with the values from your template and you can edit as needed.
To create an activity template, log in to the operations portal and click on CRM, and then Activity Templates. On this screen, click the '+' sign on the top right-hand corner. Then enter a title and click Add. After adding the template you will be taken to the details screen where you can enter the default values for your template.
To use an activity template, click Start Activity. A form will open where you can enter your activity title. A template dropdown will also display where you can select the activity template you'd like to use. When you are finished filling out the form, click Add and your activity will start with the default values from the template.
Commerce
Hide filter categories from customers on category and search pages
In this release, we've added a new Display field to filter categories which determines whether the filter category will be shown to users on the commerce site. Non-displayed filter categories can be used for a wide range of purposes including regional availability, product detail attributes, or any other case where you want to group products. For example, if you restrict a line of products to be sold only in the state of Georgia, you can group this line of products into a non-displayed Georgia filter category. This filter category will not show up in the commerce search pages but is used to show these products to only customers in Georgia.
Regional product availability
Over the past few months, we've been working on an exciting new feature for your commerce: regional product availability. You can use regional availability to restrict product lines to certain sales territories, countries, states and more! For example, you may have a line of products you can legally sell within a certain geographic range. Using regional availability, you can show these products to only customers within that area. An extensive second phase is planned for regional ability that includes search enhancements along with more purchasing updates. Please reach out if you have any questions or you would like to try this feature on your commerce website.
Customer Portal
View order items in a spreadsheet
In this release, we've added a new Items tab to the order screen where customers can view the order items in a spreadsheet view. Customers can use this to personalize the order item view to themselves by removing and adding columns. They can also export and copy/paste items from the spreadsheet to other systems.
Tickets
KOD-12479: Re-add the Download icon in Company Catalog UX
When exporting the price list in Company Catalog Category the export file should contain the products
KOD-11159: Add Expenses and Expenses Settings
No UX testing.
New CRUD added: Account and expenses
KOD-11022: Account, Journal, Journal Items Full Crud
No testing, new CRUD added: Journal, JournalItem, Account, AccountSetting.
KOD-13459: Update menu
KOD-14143: Spreadsheet View of Order Line Items in Customer Portal
Flow 1
Login into Customer portal
Case 1
Open Orders -> Order details page.
"Items" tab appears -> Click on "Items" tab.
Grid with all Order items from Order invoice on "Details" page.
Check for display
KOD-14303: Update creditAccountActivation
KOD-14320: Update creditAppCompletedPDF
KOD-14453: Configuration - Release customer app
KOD-14460: QA - Customer App on android
KOD-14497: Banner Added to Category Pages
Case 1 - Navigate to a category page.
Log in as an employee to the store. There should be a "Manage Banner Button" near the category name.
"Banner Image" and "Banner Link" should appear including 'remove' and 'save'. Banner Link input field will be pre-filled if there is such setting in the Operations Portal.
Case 2.1: Remove Data with "Manage Banner Button" "Remove"
1. Click the remove button on the modal.
2. The page should reload.
3. After reloading, no banner on category page should be seen. The "Manage Banner Button" should persist on the page.
Case 2.2: Add data with "Manage Banner Button" "Save"
1. After case 2.1, click "Manage Banner Button" with no data pre-filled.
2. Select an image from your computer by clicking Choose File.
3. Fill in the banner link input field.
4. Press the Save button. The page should reload.
5. After reloading, a banner that has a link should persist on the page.
6. Go to OP Public Files Tab and the image uploaded will appear in file tables.
Case 3. No Manage Banner button.
1. Log out from operations and customer portal, and reload the store page.
Open any category page to view existing link
Check that the Manage Banner button is not seen for non-employee user.
KOD-14511: CRM - Create Activity Types and Templates
Activity templates screen - Add and view activity templates
Activity type screen - Add and view activity types
Company screen allows selecting a template from the dropdown option
Add activity button in the top right corner of the screen.
KOD-14519: New User Added to Your Account Email Logos Not Visible in Outlook
KOD-14532: Configuration - Release customer app
KOD-14539: QA - Customer App on android
KOD-14556: QA - Customer portal
KOD-14555: QA - Commerce as a logged in user
KOD-14554: QA - Commerce as a public user
KOD-14560: QA - Payments
KOD-14558: QA - Customer App on android
KOD-14557: QA - DDA app on android
KOD-14581: Manage checkout carts for regional availability
Complete tests for both logged in customer and guest checkout.
Regression:
Make sure that showing Items in Cart works as expected.
Case 1:
1. Cart is cart.
2. Cart validation error is shown on the Cart Payment Page.
Delivery Address Check:
Case 2:
1. Start cart flow.
2. Select delivery address from the list.
3. selectedCompanyAddress.backorder was set to false.
4. Cart validation error is shown on the Cart Payment Page.
Case 2.1
1. Complete Case 2.
2. Remove items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order
Case 2:
1. Start cart flow.
2. Select delivery company address from the list.
3. selectedCompanyAddress.companyAddressSettings.orderdisp was set to ’s’.
4. Cart validation error is shown on the Cart Payment Page.
5. Change the setting from #3 to uppercase - ’S’.
6. Cart validation error is shown on the Cart Payment Page.
7. Unable to place an order
Case 3.1
1. Complete Case 3.
2. Remove items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order.
Case 3:
1. Start cart flow.
2. Select delivery company address from the list.
3. selectedCompanyAddress.companyAddressSettings.user5 was set to ’no’.
4. Cart validation error is shown on the Cart Payment Page.
5. Change the setting from $3 to:
6. 5.1 ‘No’
7. 5.2 ‘nO’
8. 5.3 ‘NO’
9. Cart validation error is shown on the Cart Payment Page.
10. Unable to place an order
Case 4.1
1. Complete Case 4.
2. Remove direct shipped items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order
Case 4:
1. Start cart flow.
2. Select delivery company Add new Address on One Time Delivery
3. Cart validation error is not shown
4. Able to place an order
Company Check:
Case 5:
1. Selected company has backorder set to false.
2. Start cart flow.
3. Cart validation error is shown on the Cart Payment Page.
4. Unable to place an order
Case 5.1
1. Complete Case 5.
2. Remove items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order
Case 6:
1. Start cart flow.
2. Select delivery company address from the list.
3. selectedCompany.companySettings.orderdisp was set to ’s’.
4. Cart validation error is shown on the Cart Payment Page.
5. Change the setting from #3 to uppercase - ’S’.
6. Cart validation error is shown on the Cart Payment Page.
7. Unable to place an order
Case 6.1
1. Complete Case 6.
2. Remove items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order
Case 7:
1. Start cart flow.
2. Select delivery company address from the list.
3. selectedCompany.companySettings.user5 was set to ’no’.
4. Cart validation error is shown on the Cart Payment Page.
5. Change the setting from $3 to:
6. 5.1 ‘No’
7. 5.2 ‘nO’
8. 5.3 ‘NO’
9. Cart validation error is shown on the Cart Payment Page.
10. it’s not possible to place an order.
Case 7.1
1. Complete Case 7.
2. Remove items from the cart.
3. Navigate to Cart Payments page.
4. There is no error message any more.
5. Able to place an order.
KOD-14597: Add Single Keyword Rule Processor to Search Function
KOD-14625: Customer Portal Set Up
KOD-14705: Create Server Side Import for Shipping Methods
For shipping methods import use following mapping codes can be used:
mapping-basicShippingMethodUploadByCode
mapping-basicShippingMethodUploadCreateOnlyByCode
mapping-basicShippingMethodUploadUpdateOnlyByCode
CSV sample file can be found in the attachment
mapping-basicShippingMethodUploadByCode - shipping methods will be updated if they found in the db or added as new otherwise
mapping-basicShippingMethodUploadCreateOnlyByCode - shipping methods will be ignored if they exist in db or added as new otherwise
mapping-basicShippingMethodUploadUpdateOnlyByCode - shipping methods will be updated if they found or ignored otherwise
KOD-14743: Add Option to Choose Delivery Yard in Templates
1. Go to Operations Portal. Select the company under which you are logged in Customer Portal. In custom fields add the setting allowChooseDeliveryLocation, which should be integerValue. Set it to 1.
2. Go to the store cart. Choose Delivery & Payment.
3. Under Select Shipping Option select a Delivery option. After you select it, Select a Yard (select input) should be shown. You should be able to select a yard.
4. allowChooseDeliveryLocation is set to 0.
5. Under Select Shipping Option select a Delivery option. After you select it, Select a yard should not be shown. You should not be able to select a yard.
Regression test -> test checking out as guest and logged in user
KOD-14747: Customer Portal - check fields if indexed
1. Open Company Account Lists in Customer Portal. Click the columns tab at the right center. There shouldn't be a Customer ID checkbox.
2. Open Employees Tab in Customer Portal. Click columns. Select Primary Email And Secondary Email Columns. (email1 and email2 respectively). After selection, these columns should appear in Employees Table.
KOD-14755: Add Full Width CMS Page Template
Please create a page via CMS Gutenberg.
Pick full page template from Templates
Check the page to make sure that it doesn't have the sidebar.
Also test normal pages where full page is not selected. Make sure it works as normal and it uses the sidebar
KOD-14785: script changes
KOD-14798: Initial Setup - Spin up system
KOD-14877: Add email1 and email2 fields to the Customer View
KOD-14901: Email on Delivery Address Removed when Pushing to ERP
KOD-14933: Add Ability to Filter on Blank Assignees
Go to tickets -> search screen -> open assignee names filter -> filter by empty value should be available with label [Empty], if in the list there are no nullable results, this facet shouldn't be shown
By clicking on filter (facet) field grid should be filtered
Regression:
Recheck all facets, it should be correctly displayed. For example, on orders screen test filtering by status column, and other columns where you have checkbox filters available
KOD-14936: Review Fields for Customer Ticket API
KOD-14973: Update UX for Unapply of Pickup Location
Test checkout as both guest and logged in user
Also test selecting DEL option on final checkout tab. See custom field shippingMethod set to DEL in employee portal.
CPU set in employee portal. Select a warehouse. Deselect CPU on checkout. CPU warehouse in employee portal should automatically be cleared.
Test estimated taxes updates in checkout
Test checkout
Select CPU and a yard and check the taxes if it is recalculated and updated
Switch to Delivery and it should calculate the taxes again and update the values
KOD-14984: Article to be published
KOD-14989: Updated Invoice Items
Testing order, orderPDF and orderEmail in operations portal
Reviewing the layout of the totals, it should match the layout requested
KOD-14993: Initial Setup - Spin up system
KOD-15000: Adjust Wording
KOD-15003: Add 'code' to product detail page
KOD-15012: Add 'restrictedCatalog' to the companies detail screen
KOD-15015: Link not Working in Employee Side Payment Email Template
KOD-15037: Fix Generated Terms Agreement PDF Error
KOD-15050: Add page titles and SEO information to pages
If page has original description and keywords, it should show up in the page's head
The name of the page should also show up in the tab in the browser
KOD-15051: Proof for grammer
KOD-15053: Exclude Deleted Files on Order in Customer Portal
On UI side take an order ? go to tab customer file list ? download some file ? check if file shows in list ? then delete downloaded file ? and confirm file no longer shows
The same for quote side
KOD-15059: Shut Down
KOD-15060: Update UX for Customer Templates for doNotDisplay Facet Groups
KOD-15063: If a page is not found, show a better error message
KOD-15064: Insight Tweaks
KOD-15079: API endpoint for findProductAttributeDocument
New regular endpoint for testing GET: /api/system/productDocument/{productID}/attribute
KOD-15086: Add search.getParameters()
View category and search pages as both a logged in customer and guest user
On company catalog pages working and sort option is removed
1) Nesting limit for setting CompanyProductCategory parent entity is set. Able to set any level on grandparent (grandchild) CompanyProductCategory.
2) Building a circular dependant CompanyProductCategory hierarchy, for example, category1(has parent category2) -> category2(has parent category3) -> category3(has parent category4) and set category1 as parent for category4, this should set "Circular dependency detected....." error returned as category 1 can't be a parent for category4 which has been already assigned as parent to category1(through vertical hierarchy).
KOD-15099: Save Credit App Signatures as Customer Files
KOD-15114: Cart Validation
Fixed getSelectedDeliveryAddressSystem method
For special delivery address codes it also returns CompanyAddress object with that code. e.g. CompanyAddress.code = "-9999"
Regression tests:
Login as a Customer, start Cart by adding an item
Try to switch delivery address in site header. Expecting no errors, address successfully switched
Try to switch delivery address on checkout. Expecting no errors, address successfully switched and updated in header as well
KOD-15117: Add Server Side API endpoint for /api/system/productDocument/{productID}/list
KOD-15118: Credit Application - Final Submission
Navigate to credit application. Add email address to sign up for credit.
Receive an email with a link to reset your password
Reset your password following the link
Login as prompted
Redirected to the credit application form
Fill out the credit application. Adding phone numbers with the ff format (250) 555-0199/ 250-555-0199/ 250-5550199 should be accepted. It will be stripped to just numbers afterwards.
Any errors in the form submission would show up at the bottom of the form after clicking submit
Once the form is valid and submitted, user will be redirected to a thank you page
KOD-15129: Export for Jobs
KOD-15130: Add columns to Search Rules table
New Search Rules screen with new fields in the employee portal: actionData, action, pattern, ruleType, ruleOrder
They are neither sortable nor searchable.
KOD-15132: Can't edit parentCategory for Company Group Catalog
QA test: Create company catalog with parent category and update company catalog with parent category.
KOD-15137: Enable special discount to be displayed