Custom Menu for the Management Console and the Point of Sale (POS)

Custom Menu for the Management Console and the Point of Sale (POS)

Introduction

This knowledge-based article provides developers with the information necessary to develop Add-ons for creating custom menus on the Management Console and the Point of Sale (POS).

Environment:

iVend Version 6.5

Overview

With iVend versions 6.5 and above, the Extensibility framework, provides developers the ability to create custom menus in the Management Console and the POS. These can also handle click events available for menu customisation.

How to create a Custom Menu for the Management Console


In order to create custom menu, the developer needs to write custom code using the iVend Add-on framework.
Steps for creating a Menu and a Menu Category in the Management Console:
“ConsoleMenuCategoryCommandBase” class
1. For Menu Category, create a class let us say “MANAGEMENT CONSOLEMenuCategory.cs” and extend it with
using CXS.Retail.Extensibility.Menu;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
1. Define the base class properties as shown in the below code:
namespace SampleAddOn2
{
//For adding Menu category
public class MANAGEMENT CONSOLEMenuCategory : ConsoleMenuCategoryCommandBase
{
public MANAGEMENT CONSOLEMenuCategory()
: base()
{
base.Id = "SampleCatgeory";
base.Caption = "Sample Configuration";
base.Position = 1;
base.IsVisible = true;
base.Group = CXS.Retail.Extensibility.ConsoleMenuGroup.Administration;
base.ToolTip = "Sample Configuration ";
}
}
}
“ConsoleMenuItemCommandBase” class
3. For Menu Item, create class - let us say “MANAGEMENT CONSOLEMenuItems” and extend it with:
4. Define the base class properties as shown in the below code and add business logic on the overridden execute method of “ConsoleMenuItemCommandBase” class.
class MANAGEMENT CONSOLEMenuItems : ConsoleMenuItemCommandBase
{
public MANAGEMENT CONSOLEMenuItems():base()
{
base.Category = CXS.Retail.Extensibility.ConsoleMenuCategory.CustomGroup;
base.CategoryId = "SampleCatgeory";
base.Id = "Custom Menu";
base.Caption = "Custom Menu";
base.Position = 1;
base.IsVisible = true;
base.IsEnabled = true;
base.ToolTip = "Custom Menu";
}
public override void Execute()
{
MessageBox.Show("Custom Menu clicked !!");
}
}
5. Add Menu category and Menu item on Add-on Start method.
public override void Start()
{
base.Start();
// add menu category and menu item.
AppExtensibilityContext.AddConsoleMenuCategory(new MANAGEMENT CONSOLEMenuCategory());
AppExtensibilityContext.AddConsoleMenuItem(new MANAGEMENT CONSOLEMenuItems());
}

How to create custom Menu for the POS


Follow the steps mentioned below for creating a custom menu in the POS:
1. Create a project (class library) for adding Add-on logic and define the basic details of the Add-on
1. For a POS custom menu, create a class let us say “POSMenu.cs” and extend it with:
“POSMenuItemCommand” class.
1. Define the base class properties as shown in the below code:
class POSMenu : POSMenuItemCommand
{
public POSMenu() : base()
{
base.Position = 1;
//we need to specify category where we are adding the menu item.
base.Category = POSMenuCategory.CustomerOperations;
base.Caption = "Custom Menu 1";
base.Id = "CustomMenu1";
base.ToolTip = "Custom Menu 1";
}
}
The custom menu can be added in any of the existing POS Menu categories (i.e. CustomerOperations, POSOperations, StoreOperations, TransactionOperations)
1. Add business logic on the overridden execute method of POSMenuItemCommand for the menu click event.
1. Add Menu category and Menu item on Add-on Start method.
AppExtensibilityContext.AddPOSMenuItem(new POSMenuForCustom());
Custom menu on Point of Sale (POS)

Reference
Refer the CitiXsys Knowledge Portal > Document Store for more understanding.
    • Related Articles

    • Custom Menu on Management Console and POS

      Introduction This knowledge-based article provides developers with the information necessary to develop Add-ons for creating custom menus on the Management Console and the Point of Sale (POS). Overview With iVend versions 6.5 and above, the ...
    • Hardware list is showing Empty on Point of sale

      Problem: on Point of Sale Hardware List is showing Empty. Issue Details: Hardware list is showing Empty on Point of sale. checked all details are correct. We checked in Hardware Service Log File. we found below error Error: An attempt was made to ...
    • iVend Patch not getting updated at POS

      Environment: iVend 6.6 Patch 7915 Problem Description: Patches in HO and the POS indicates that it has already been updated but in POS it stays in a cycle asking for an update and does not allow it to be done. Scenario: None Solution: 1) At POS the ...
    • POS - Add custom user menu and handle menu events

      Introduction iVend Add-on Framework is used for writing Custom Business Logic independently by a programmer. iVend Addon allows to extend business logic either in Management Console or at the Terminal POS.The addon framework allows deployment of ...
    • POS - Add custom user menu and handle menu events

      Introduction: iVend Add-on Framework is used for writing Custom Business Logic independently by a programmer. iVend Addon allows to extend business logic either in Management Console or at the Terminal POS. The addon framework allows deployment of ...