Developing Retail Applications Using POS for NET

download Developing Retail Applications Using POS for NET

of 23

Transcript of Developing Retail Applications Using POS for NET

  • 8/18/2019 Developing Retail Applications Using POS for NET

    1/23

  • 8/18/2019 Developing Retail Applications Using POS for NET

    2/23

    Introduction to Microsoft WindowsEmbedded for Point of Service (WEPOS) andMicrosoft Point of Service for .NET

    Unified Point of Service (UPOS) and Point ofService (POS) for .NET

    POS for .NET Applications

  • 8/18/2019 Developing Retail Applications Using POS for NET

    3/23

    Retail and POS markets widely use Microsoftoperating systems

    WEPOS offers a standard platform for theretail industry, and much more

    POS 1.11 SDK on Microsoft.com Downloads

  • 8/18/2019 Developing Retail Applications Using POS for NET

    4/23

    Unified Point Of Service is

    Abstract hardware andsoftware

    one application supportsmany POS devices of thesame type

    No recompile of applicationsif hardware fails

    Combines OPOS andJavaPOS specifications

    POS Device

    Application

    UnifiedPOS Device

    UnifiedPOSControlObject

    UnfiedPOSServiceObject

    UPOS

  • 8/18/2019 Developing Retail Applications Using POS for NET

    5/23

    POS for .NET is a .NET implementation ofUPOSPlug and Play is at the heart of POS for .NET

    Legacy support for OPOS

    POS for .NET SDKDevelop POS Applications and service objectsin .NET

    Run time for Microsoft Windows XPProfessional, WEPOS, Windows Vista Business,and Windows Vista Ultimate, 32bit and 64bit

    POS for .NET 1.11 supports UPOS v1.11

  • 8/18/2019 Developing Retail Applications Using POS for NET

    6/23

    POSDevice

    Application

    DeviceDriver

    PosExplorer

    ServiceObject

    POS for .NET

    OPOSDriver

    ServiceObject

    POSDevice

    Application

    ControlObject ActiveX

    OPOS

    InterOp

  • 8/18/2019 Developing Retail Applications Using POS for NET

    7/23

  • 8/18/2019 Developing Retail Applications Using POS for NET

    8/23

    Finally, there is a set sequence toenable/perform action/disable the device1. OPEN – Open access to the SO

    2. CLAIM – Get exclusive access to the device3. DeviceEnable – Enable the device

    4. Perform device action

    5. DeviceDisable – Disable the device6. RELEASE – Release exclusive access to thedevice

    7. CLOSE – Close access to the device

  • 8/18/2019 Developing Retail Applications Using POS for NET

    9/23

    Each device needs to be handled differentlyUSB Devices – Implement anDeviceAddedEvent and DeviceRemovedEvent

    Printer and cash drawer sharing the same COMport – disable/enable to alternate between thetwo devices

    Poll Display – Initialize on application startupand never shut down

    Scanner – Re-enable device after a DataEvent

  • 8/18/2019 Developing Retail Applications Using POS for NET

    10/23

    One form in a multi-form application controlsthe POS devices

    Keyboard wedges – Many Bar Code Scannersand MSR act as keyboard wedges

    Devices can be added and removed withoutchanging the application

    No Service Object available for keyboard wedges

    Focus must be on the control (Text Box) toscanned or swipe in data

    A POS for .NET’s key feature is data eventhandling

  • 8/18/2019 Developing Retail Applications Using POS for NET

    11/23

    Applications

  • 8/18/2019 Developing Retail Applications Using POS for NET

    12/23

    BumpBar

    CashChanger

    CashDrawer

    Cat

    CheckScanner

    CoinDispenser

    FiscalPrinter 

    HardTotals

    Keylock

    LineDisplay

    Micr

    MotionSensor

    Msr

    PinPad

    PointCardRW

    PosKeyboard

    PosPower 

    PosPrinter

    Scale

    SignatureCapture

    SmartCardRW

    Bill Acceptor

    RemoteOrderDisplay

    Electronic Journal

    ToneIndicator

    Image Scanner

    Biometrics

    CoinAcceptor

    Scanner

    Bill Dispenser

  • 8/18/2019 Developing Retail Applications Using POS for NET

    13/23

    Typically written bydevice manufacturersand shipped with thedevice

    May be installed by Inf or stand alone installer(drag-and-drop)

    Derive from eitherInterface, Basic, orBase class

    Scanner

    ScannerDevice

    ScannerServiceObject

    DeviceDriver

  • 8/18/2019 Developing Retail Applications Using POS for NET

    14/23

    POS for .NET SDK comes with two serviceobjects with source code

    Sample Service ObjectsUSB bar code, Scanners and MSRs

    Microsoft.PointOfService.ExampleServiceObjects.dll –.

    SimulatorsScanners, MSR, LineDisplays etc

    Microsoft.PointOfService.DeviceSimulators.dll –

  • 8/18/2019 Developing Retail Applications Using POS for NET

    15/23

    Posdm.exe command-line tool

    Exposes WMI via command line

    Manual setup required to address Firewall

    WMI Classes (root\MicrosoftPointOfService)ServiceObject – Information about installed SOs

    POSDevice – Information about installed devices

    LogicalDevice – Alias for POSDevice

    DeviceProperty – name/value pair set on POSDevice

    WMI Server Extensions for .NET applicationsMMC snap-in coming

    All tools support remote management

    Performance Monitor Counters

  • 8/18/2019 Developing Retail Applications Using POS for NET

    16/23

    POSDM.EXE

    SOManager.exePerformanceMonitor(ensurePOSPerfCountersServiceStarted)

  • 8/18/2019 Developing Retail Applications Using POS for NET

    17/23

    Check for Application and Service Objectcompatibility

    POS for .NET 1.11 loads .NET Framework 2.0

    POS for .NET 1.1x and older loads .NETFramework 1.1

    POS for .NET version in the registry:

    HKLM/Software/POSfor.NET/Setup/ProductVersion

  • 8/18/2019 Developing Retail Applications Using POS for NET

    18/23

    CheckforCompatibility

    POS for .NET Application Service Object Compatible

    POS for .NET 1.11

    (synchronized with

    UPOS v1.11

    UPOS v1.11 UPOS v1.11 Yes

    UPOS v1.11 UPOS v1.8 or v1.9 No

    UPOS v1.8 or v1.9 UPOS 1.11 Workaround

    required

    POS for .NET 1.1

    (synchronized with

    UPOS v1.9)

    UPOS v1.8 UPOS v1.8 Yes

    UPOS v1.8 UPOS v1.9 Yes

    UPOS v1.9 UPOS v1.8 Yes

    UPOS v1.9 UPOS v1.9 Yes

    POS for .NET 1.0

    (synchronized with

    UPOS v1.8)

    UPOS v1.8 UPOS v1.8 Yes

    UPOS v1.8 UPOS v1.9 No

    UPOS v1.9 UPOS v1.8 No

    UPOS v1.9 UPOS v1.9 No

    Check the versions of SO and applications

  • 8/18/2019 Developing Retail Applications Using POS for NET

    19/23

  • 8/18/2019 Developing Retail Applications Using POS for NET

    20/23

    Solutions for older POS for .NET applictions:1. Uninstall the .NET Framework 1.1 from the machine.

    1. An application built against .NET Framework 1.1 will load the .NETFramework 2.0 if the .NET Framework 1.1 is not installed.

    2. Add a Config file that instructs the application to load the

    .NET Framework 2.0 instead of the .NET Framework 1.1Foo.exe – config file will be Foo.exe.config

    Foo.exe.config must be in the same directory as Foo.exe

    Foo.exe.config file would look like the following:

    3. Recompile the application against the .NET Framework 2.0

  • 8/18/2019 Developing Retail Applications Using POS for NET

    21/23

    POS for .NET is .NET implementation of UPOS

    Write applications in Visual C# or Visual Basic .NET

    Architect the application to handle multiple devices

    Service Objects and managing Service Objects

    are at the center of POS for .NET

  • 8/18/2019 Developing Retail Applications Using POS for NET

    22/23

    Visit the Windows Embedded for Point of Service Web page

    http://www.microsoft.com/windows/embedded/wepos

    Evaluate Windows Embedded for Point of Service 120-daytrial version

    http:// www.windowsembeddedkit.com/ 

    Visit WEPOS support page at XPe Center @ seanliming.comhttp:// www.seanliming.com

    Sign up for the Embedded DevWirehttp://msdn.microsoft.com/embedded/community/community/devwire/default.aspx

    Engage with Windows Embedded Partnershttp://www.mswep.com

    http://www.microsoft.com/windows/embedded/weposhttp://www.microsoft.com/windows/embedded/weposhttp://www.windowsembeddedkit.com/http://www.microsoft.com/windows/embedded/weposhttp://www.seanliming.com/http://msdn.microsoft.com/embedded/community/community/devwire/default.aspxhttp://www.mswep.com/http://www.mswep.com/http://msdn.microsoft.com/embedded/community/community/devwire/default.aspxhttp://www.seanliming.com/http://www.microsoft.com/windows/embedded/weposhttp://www.windowsembeddedkit.com/http://www.windowsembeddedkit.com/http://www.microsoft.com/windows/embedded/weposhttp://www.microsoft.com/windows/embedded/wepos

  • 8/18/2019 Developing Retail Applications Using POS for NET

    23/23