Click here to load reader

download.microsoft.comdownload.microsoft.com/download/d/c/a/dcae1fda-506e …  · Web view2005-05-24 · このプロパティは、Openメソッドにより初期化されます。

  • Upload
    dokhue

  • View
    227

  • Download
    1

Embed Size (px)

Citation preview

2

1

OLE for Retail POS

Application Programmers Guide

1.6

7

23

OLE POS

OLE for Retail POS

OLE for Retail POS CommitteeApplication Programmers Guide Release 1.6

OLEPOSOLEPOSBBSOLEPOS

Application Programmers Guide

1995-2001 Microsoft Corporation. All rights reserved. 1995-2001 NCR Corporation. All rights reserved. 1995-2001

*MicrosoftWindowsWindows-NTWindows 2000Microsoft Corporation

*WindowsMicrosoft Windows Operating System

9

OLE FOR RETAIL POS10

OLE for Retail POS10

11

OLE FOR RETAIL POS12

OPOS13

OPOS15

17

19

21

21

22

24

24

25

26

29

32

33

33

33

34

34

36

DeviceEnabled37

OPOS38

38

39

41

41

43

44

68

78

85

85

87

88

90

92

93

93

96

101

123

136

136

142

145

149

149

153

158

161

179

179

181

182

183

185

187

187

190

193

205

POS211

211

216

228

289

336

()341

341

343

345

350

10 POS353

353

355

358

360

11 363

363

365

366

368

369

12 MICR ()371

371

373

MICR378

379

384

388

13 391

391

393

396

402

405

14 407

407

409

412

416

418

15 421

421

424

431

444

451

16 453

453

456

461

466

17 469

469

475

493

521

583

PIN589

589

592

596

611

618

621

621

625

634

646

673

677

677

680

686

692

697

CATCredit Authorization Terminal701

701

704

712

732

741

743

743

747

756

781

793

797

797

800

803

808

809

A OPOS811

B OPOS817

Opos.h :OPOS818

OposBb.h:821

OposCash.h :822

OposCat.h :CAT823

OposChan.h :825

OposCoin.h :827

OposDisp.h :828

OposFptr.h :830

OposKbd.h :POS833

OposLock.h :834

OposMicr.h :MICR835

OposMsr.h :836

OposPcrw.h :838

OposPpad.h :PIN840

OposPtr.h :POS842

OposPwr.h :847

OposRod.h :848

OposScal.h :851

OposScan.h :852

OposSig.h :853

OposTone.h :854

OposTot.h :855

C 857

(BSTR)857

D 1.5APIClaimDeviceReleaseDevice861

E 863

1.11863

1.2868

1.3872

1.4878

1.5879

1

OLE for Retail POS CommitteeApplication Programmers Guide Release 1.6

OLE for Retail POS

OLE for Retail POS

OLE for Retail POSPOSMicrosoft Windows95/98Microsoft Windows-NTMicrosoft Windows2000POS

OLE for Retail POS"OPOS"

Win32POS

POSPOS

OPOS

Application Programmers Guide

Control Programmers Guide

OPOS

POSOPOS

POS

ActiveXOLE

Microsoft Visual Basic Microsoft Visual C++ ActiveX

OLE for Retail POS

OLE for Retail POSOPOSActiveX

OPOS

C^tF[X

ActiveX

I[g[V

AvP[V

Cxg

Rg[IuWFN

g

foCXNX

foCX

Iy[eBOVXehCo

T[rXIuWFNg

foCX

Cxg

\bh

\bh

vpeB

\bh

C^tF[X

ActiveX

Rg[

OPOS

Rg[

VXe

WXg

-

-

}bsO

-

p[^

OPOS

POSPOS

2POS

(CO)

API

COActiveX(OLE32)CO

(SO)

OPOS

SOCOCO

1

DLL.EXEContorol Programmers Guide

OPOS

OPOS(CO)(SO)

COSOAPISOCO

COSO

OPOS

OpenOpen

OpenResult,ClaimedDeviceEnabledDataEventEnabledFreezeEventsAutoDisableDataCountBinaryConversion OPOS

OPOSClaimDeviceClaimDevice

ReleaseDevice

DeviceEnabledTRUEFALSE

CloseDeviceEnabledTRUECloseClaimedTRUECloseOPOS

Open

ClaimDevice

DeviceEnabledTRUEClaimDevice

DeviceEnabledFALSE

ReleaseDevice

Close

OpenOPOS_E_CLOSED

ClaimDeviceDeviceEnabledTRUE

DeviceEnabledTRUE

Open

State

OPOS_S_CLOSED

ResultCode

OPOS_E_CLOSED

ControlObjectDescription

ControlObjectVersion

Open

ClaimDeviceDeviceEnabledTRUE

DeviceEnabledTRUE

ResultCodeOPOS_E_NOTCLAIMEDOPOS_E_DISABLED

Boolean

FALSE

Long

0

String

[Error]

Close

State

OPOS_S_CLOSED

OPOS_S_IDLE

OPOS_S_BUSY

OPOS_S_ERROR

ResultCodeOPOS_SUCCESSOPOS_E_CLOSEDOPOS_E_CLAIMEDOPOS_E_NOTCLAIMEDOPOS_E_NOSERVICEOPOS_E_DISABLEDOPOS_E_ILLEGALOPOS_E_NOHARDWAREOPOS_E_OFFLINEOPOS_E_NOEXISTOPOS_E_EXISTSOPOS_E_FAILUREOPOS_E_TIMEOUTOPOS_E_BUSYOPOS_E_EXTENDED

ResultCodeExtendedResultCode

StatusUpdateEvent

1.3API

ErrorEventStateOPOS_S_ERROR

StatusUpdateEvent

POS

ResultCode

ResultCode

ResultCodeOPOS_SUCCESS0

1ResultCodeOPOS_E_EXTENDEDResultCodeExtended

ResultCodeOPOS_E_EXTENDEDResultCodeExtendedServiceObjectDescriptionDeviceDescriptionDeviceName

StateOPOS_S_CLOSED

OpenOPOS_SUCCESSStateOPOS_S_IDLE

OPOSStateOPOS_S_BUSYOPOS_S_IDLE

OPOS_S_ERROR

OPOSStateOPOS_S_ERRORErrorEvent3

Output

InputWithData InputNoDataErrorEvent

InputNoData

ErrorEvent

Retry OutputErrorEventInputSORetryOutput

Clear ClearInputNoData

Continue InputWithDataDataEventEnabledDataEventEnabledTRUEInputNoDataErrorEventContinueInputWithData

ErrorEventErrorEvent

OLE for Retail POS1 OPOS

POS1ClaimDeviceOPOS_E_NOTCLAIMED

2

ClaimDeviceReleaseDevice

11

OLE for Retail POSOPOS5

DataEvent

ErrorEvent

StatusUpdateEvent

OutputCompleteEvent

DirectIOEvent

(Enqueue)(Enqueue)(Enqueue)(Deliver)

OPOSOLE Apartment ThreadingOLE Apartment ThreadingCOM(Deliver)(Delivery)

FreezeEventsTRUE FreezeEvents

DataEventErrorEventDataEventEnabledFALSE

(Enqueue)(Enqueue)(Delivery)FIFO

Application Programmers Guide Release 1.3

EnqueueSOSOSO1

DeliverSO

Fire

(Enqueue)

ReleaseDeviceClose(Enqueue)(Deliver)

ClearInput

ReleaseDeviceClose ReleaseDevice(Deliver)Close

OLE for Retail POSDeviceEnabledTRUEDataEventAutoDisableTRUEDeviceEnabledFALSE

DataEventEnabledTRUEDataEventDataEvent

OPOSDataEventEnabledFALSEOPOSDataEventEnabledTRUE

OPOSDataEventClaimDeviceDataEventEnabledTRUE

OPOS OPOSErrorErrorEventDataEventEnabledTRUE

InputWithData (OPOS_EL_INPUT_DATA)

InputNoData (OPOS_EL_INPUT)InputWithDataErrorEvent InputWithDataClear InputNoData

Error

InputNoDataErrorEvent

InputWithDataErrorEventOPOS_ER_CLEAR

ClearInput

DataCountDataEvent

ClearInput ClearInputOpenClaimDevice

DataEventDataEventPC

12

1DataEvent2DataEvent

12

11DataEventEnabledTRUE

DataEventDataEvent

OLE for Retail POS2

OutputIDOPOSOutputCompleteEventOutputID

ErrorEvent ErrorEventError

ErrorErrorEvent

FIFO

ClearOutputOutputCompleteEvent

1.3

OPOSPCPOSPCAPI

OPOS

ONLINE

OFF

OFFLINE

OFF_OFFLINESO

OPOSOPOSSO

SOSO

OPOSAPI

CapPowerReporting

OPOS_PR_NONESO

OPOS_PR_STANDARDSOOFF_OFFLINEONLINE

OPOS_PR_ADVANCEDSOONLINEOFFLINE OFF

PowerStateSO

OPOS_PS_UNKNOWN

OPOS_PS_ONLINE

OPOS_PS_OFF

OPOS_PS_OFFLINE

OPOS_PS_OFF_OFFLINE

PowerNotifyStatusUpdateEventsPowerState DeviceEnabledTRUE

OPOS_PN_DISABLED

OPOS_PN_ENABLED

DeviceEnabled

CapPowerReporting OPOS_PR_NONE PowerNotify OPOS_PN_ENABLEDDeviceEnabled

DeviceEnabledFALSETRUE

ONLINE

PowerStateOPOS_PS_ONLINE

StatusUpdateEventStatusOPOS_SUE_POWER_ONLINE

OFFOFFLINEOFF_OFFLINEResultCodeOPOS_E_NOHARDWARE OPOS_E_OFFLINE

PowerStateOPOS_PS_OFFOPOS_PS_OFFLINEOPOS_PS_OFF_OFFLINE

StatusUpdateEventStatusOPOS_SUE_POWER_OFFOPOS_SUE_POWER_OFFLINEOPOS_SUE_POWER_OFF_OFFLINE

DeviceEnabledTRUEFALSEOPOS

PowerStateOPOS_PS_UNKNOWN

OPOS

2

OLE for Retail POSActiveX

(MSR)

POS

POS

1.2

MICR

1.2

1.2

1.3

PIN1.3

1.3

1.3

CAT1.4

1.5

1.5

A. OPOS

B. OPOS

C.

D. ClaimDeviceReleaseDevice

E.

BOOLTRUEFALSE

COM IDLVARIANT_BOOL(short) VARIANT_TRUE(-1)VARIANT_FALSE(0)

VARIANTVT_BOOL

BSTRNUL

COM IDLBSTRunsigened short*

VARIANTVT_BSTR

BSTR*

COM IDLBSTR*unsigened short**

VARIANTVT_BYREF | VT BSTR

LONG32

COM IDLlong

VARIANTVT_14

LONG*32

COM IDLlong*

VARIANTVT_BYREF | VT_14

CURRENCY1.3644 1234567 123.4567

COM IDLCURRENCY(union tagCY)

union tagCY

{

struct{ long Hi; long Lo; };

int64 int64;

};

VARIANTVT_CY

CURRENCY*1.3

COM IDLCURRENCY*(union tagCY*)

VARIANTVT_BYREF | VT CY

2

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

CapPowerReporting

1.3

LongR

CheckHealthText

1.0

StringR

Claimed

1.0

BooleanR

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

FreezeEvents

1.0

BooleanR/W

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

PowerState

1.3

LongR

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

ServiceObjectVersion

1.0

LongR

DeviceDescription

1.0

StringR

DeviceName

1.0

StringR

Open

1.0

Close

1.0

ClaimDevice

1.0

ReleaseDevice

1.0

CheckHealth

1.0

ClearInput

1.0

ClearOutput

1.0

DirectIO

1.0

DataEvent

1.0

DirectIOEvent

1.0

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

AutoDisableR/W1.2

BOOL AutoDisable;

TRUE

TRUEDataEventDeviceEnabledFALSEDeviceEnabledTRUE

FALSE1.2OPOS

OpenFALSE

ResultCode

OPOS_SUCCESS

OLE for Retail POS

BinaryConversion R/W1.2

LONG BinaryConversion;

OPOSBStringBStringBstringOPOSOLEUnicodeUnicodeBStringBString UnicodeBStringMBCS932

0x000x7F0x800xFF

BinaryConversion

BinaryConversionBinaryConversion

BinaryConversion

OPOS_BC_NONE

Bstring11.2OPOS

OPOS_BC_NIBBLEASCII

0x307-40x303-0

154=0x9A0x39 0x3A9:154=0x9A0x39 0x419A16ASCII

OPOS_BC_DECIMALVisual BasicASCIIVALstringASCII3ASCIIRIGHT(^^+STR(byte),3)^

154=0x9A0x31 0x35 0x34154

80x30 0x30 0x38008

ASCIISTRbyteASCII(^^8^27^80x08270x1B

ASCIIASCII100x300x39

BinaryConversionOPOS_BC_NONEBinaryConversion

BinaryConversion

BinaryConversion

OpenOPOS_BC_NONE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CapPowerReporting 1.3

LONG CapPowerReporting;

OPOS_PR_NONESO

OPOS_PR_STANDARDSOOFF_OFFLINEONLINE

OPOS_PR_ADVANCEDSOONLINEOFFLINE OFF

Open

PowerStatePowerNotify

CheckHealthText

BSTR CheckHealthText;

CheckHealth

Internal HCheck: Successful

External HCheck: Not Responding

Interactive HCheck: Complete

CheckHealth

CheckHealth

Claimed

BOOL Claimed;

TRUEFALSE

ClaimedOpenFALSE

OLE for Retail POSClaimDeviceReleaseDevice

ControlObjectDescription

BSTR ControlObjectDescription;

ControlObjectVersion

ControlObjectVersion

LONG ControlObjectVersion;

3

OPOS

OPOS

CO

1002038

"1.2.38"1238

ControlObjectDescription

API

ResultCodeOPOS_E_NOSERVICEResultCodeResultCode

OPOS_E_NOSERVICE

ResultCodeOPOS_E_NOSERVICEResultCodeResultCode

DataCount1.2

LONG DataCount

DataEvent

DataCount

Open

DataEvent

DataEventEnabled R/W

BOOL DataEventEnabled;

TRUEDataEventTRUEDataEventFreezeEventsTRUEDataEventSO

FALSEDataEventEnabledFALSEErrorEvent

OpenFALSE

ResultCode

OPOS_SUCCESS

DataEvent

DeviceDescription

BSTR DeviceDescription;

Open

DeviceName

DeviceEnabled R/W

BOOL DeviceEnabled;

TRUETRUE

FALSEFALSE

TRUE

1.3DeviceEnabledTRUE

OpenFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_NOTCLAIMED

ResultCode

OLE for Retail POS

DeviceName

BSTR DeviceName;

DeviceDescription30

DeviceNameDeviceDescription

Open

DeviceDescription

FreezeEvents R/W

BOOL FreezeEvents;

TRUE

FALSEFreezeEventsFALSE

OpenFALSE

ResultCode

OPOS_SUCCESS

OpenResult 1.5

LONG OpenResult;

Open

OpenResult

OPOS_SUCCESS

OPOS_OR_ALREADYOPEN

OPOS_OR _REGBADNAME

OPOS_OR _REGPROGIDIDID

OPOS_OR _CREATEIDispatch

OPOS_OR _BADIF

OPOS_OR _FAILEDOPEN

OPOS_OR _BADVERSION

Control Programmer's Guide GetOpenResultGetOpenResultOpenResultOPOS_OR_FAILEDOPEN

OPOS_ORS_NOPORTOpenI/ORS232CDeviceName

SODeviceEnabledTRUEDeviceNameDeviceDescription

OPOS_ORS _NOTSUPPORTED

SO

OPOS_ORS _CONFIG

SO

OPOS_ORS _SPECIFIC

SOOpenResult

1)

2) SO

Open

OutputID

LONG OutputID;

OutputCompleteEventID

IDID

OutputCompleteEvent

PowerNotify R/W1.3

LONG PowerNotify;

OPOS_PN_DISABLEDStatusUpdateEventsPowerState

OPOS_PN_ENABLEDDeviceEnabledTRUEStatusUpdateEventsPowerStateCapPowerReporting

PowerNotifyDeviceEnabledFALSE

OpenOPOS_PN_DISABLEDOPOS

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

PowerNotify = OPOS_PN_ENABLED CapPowerReporting = OPOS_PR_NONE

ResultCode

CapPowerReportingPowerState

PowerState 1.3

LONG PowerState;

OPOS_PS_UNKNOWN

CapPowerReporting = OPOS_PR_NONE

PowerNotify = OPOS_PN_DISABLED

DeviceEnabled = FALSE

OPOS_PS_ONLINECapPowerReporting = OPOS_PR_STANDARDOPOS_PR_ADVANCED

OPOS_PS_OFFCapPowerReporting = OPOS_PR_ADVANCED

OPOS_PS_OFFINECapPowerReporting = OPOS_PR_ADVANCED

OPOS_PS_OFF_OFFLINECapPowerReporting = OPOS_PR_STANDARD

OpenOPOS_PS_UNKNOWNPowerNotifyDeviceEnabledTRUESO

CapPowerReportingPowerNotify

ResultCode

LONG ResultCode;

OpenOPOS_E_CLOSED

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

OPOS_E_DISABLED

OPOS_SUCCESS

OPOS_E_CLOSED

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMEDOPOS_E_CLAIMED

OPOS_E_NOSERVICE

OPOS_E_DISABLED

OPOS_E_ILLEGAL

OPOS_E_NOHARDWARE

OPOS_E_OFFLINE

OPOS_E_NOEXIST

OPOS_E_EXISTS

OPOS_E_FAILURE

OPOS_E_TIMEOUT

OPOS_E_BUSYSO

OPOS_E_EXTENDEDResultCodeExtended

ResultCodeExtended

LONG ResultCodeExtended;

ResultCodeOPOS_E_EXTENDED

ResultCodeSOSO

ResultCode

ServiceObjectDescription

BSTR ServiceObjectDescription;

Open

ServiceObjectVersion

LONG ServiceObjectVersion;

3

OPOS

OPOS

.SO

1002038

"1.2.38"1238

Open

State

LONG State;

OPOS_S_CLOSED

OPOS_S_IDLE

OPOS_S_BUSY

OPOS_S_ERRORI/O

CheckHealth

LONG CheckHealth (LONG Level);

Level

OPOS_CH_INTERNAL

OPOS_CH_EXTERNAL

OPOS_CH_INTERACTIVE

CheckHealthText

CheckHealth

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

OPOS_E_BUSY

ResultCode

OLE for Retail POSCheckHealthText

ClaimDevice 1.5

LONG ClaimDevice (LONG Timeout);

TimeoutOPOS_FOREVER(-1)

ClaimedTRUE

1.0 1.4

1.5Claim

1.5

ClaimDeviceIDispatchClaimDeviceClaim1.5ClaimClaimDevice

IDIDMicrosoft Visual C++Visual Basic

ResultCode

OPOS_SUCCESSClaimedTRUE

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUTTimeout

ReleaseDevice

ClearInput

LONG ClearInput ();

DataEventEnabledTRUEFreezeEventsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

ClearOutput

LONG ClearOutput ();

FreezeEventsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

Close

LONG Close ();

DeviceEnabledTRUE

ClaimedTRUE

ResultCode

OPOS_SUCCESS

ResultCode

OLE for Retail POSOpen

DirectIO

LONG DirectIO (LONG Command, LONG* pData, BSTR* pString);

Command

pData

pStringBinaryConversionBinaryConversion

DirectIODirectIOServiceObjectDescriptionDeviceDesciriptionDeviceName

ResultCode

OPOS_SUCCESSDirectIO

ResultCode

DirectIOEvent

Open

LONG Open (BSTR DeviceName);

DeviceName

DeviceNameOPOS

OpenClaimedDeviceEnabledDataEventEnabledFreezeEventsOPOS

1.5

OpenResultOpen

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

OPOS_E_NOEXISTDeviceName

OPOS_E_NOSERVICE

ResultCode

OpenResultCodeOpen

1. Open ResultCodeOPOS_E_CLOSED

2. OpenOPOS_E_ILLEGAL ResultCode Open

OLE for Retail POSClose

ReleaseDevice 1.5

LONG ReleaseDevice ();

DeviceEnabledTRUEReleaseDevice

1.0 1.4

1.5Release

1.5

ReleaseDeviceIDispatchReleaseDeviceRelease1.5ReleaseReleaseDevice

IDIDMicrosoft Visual C++Visual Basic

ResultCode

OPOS_SUCCESSClaimedFALSE

OPOS_E_ILLEGAL

ClaimDevice

DataEvent

void DataEvent (LONG Status);

Status

DataEventEnabledFALSETRUE

DataEventEnabledFALSEOPOSTRUEFreezeEventsFALSE

DataEventEnabledFreezeEvents

DirectIOEvent

void DirectIOEvent (LONG EventNumber, LONG* pData, BSTR* pString);

EventNumber

pData

pStringBinaryConversionBinaryConversion

DirectIO

ErrorEvent

void ErrorEvent (LONG ResultCode, LONG ResultCodeExtended,LONG ErrorLocus, LONG* pErrorResponse);

ResultCodeResultCode

ResultCodeExtendedResultCodeExtended

ErrorLocus

pErrorResponse

ErrorLocus

OPOS_EL_OUTPUT

OPOS_EL_INPUT

OPOS_EL_INPUT_DATA

pErrorResponseErrorLocus

OPOS_ER_RETRYErrorLocusOPOS_EL_OUTPUTErrorLocusOPOS_EL_OUTPUT

OPOS_ER_CLEARErrorLocusOPOS_EL_INPUT

OPOS_ER_CONTINUEINPUTErrorLocusOPOS_EL_INPUT_DATADataEventEnableDataEventDataEventEnableTRUEErrorEventOPOS_EL_INPUTErrorLocusOPOS_EL_INPUT_DATA

State

DataEventEnabledTRUE

OutputCompleteEvent

void OutputCompleteEvent (LONG OutputID);

OutputIDID

StatusUpdateEvent

void StatusUpdateEvent (LONG Status);

Status

POS

StatusUpdateEvent

1.3

PowerNotify = OPOS_PN_ENABLED StatusStatusUpdateEvent

OPOS_SUE_POWER_ONLINECapPowerReporting = OPOS_PR_STANDARDOPOS_PR_ADVANCED

OPOS_SUE_POWER_OFFCapPowerReporting = OPOS_PR_ADVANCED

OPOS_SUE_POWER_OFFLINECapPowerReporting = OPOS_PR_ADVANCED

OPOS_SUE_POWER_OFF_OFFLINECapPowerReporting = OPOS_PR_STANDARD

PowerState

CapPowerReportingPowerNotify

3

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapPowerReporting

1.3

LongR

Open

CheckHealthText

1.0

StringR

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

--

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

--

ControlObjectDescription

1.0

StringR

--

ControlObjectVersion

1.0

LongR

--

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapStatus

1.0

BooleanR

Open

CapStatusMultiDrawerDetect

1.5

BooleanR

Open

DrawerOpened

1.0

BooleanR

Open & Enable

Open

1.0

--

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable ()

ClearInput

1.0

ClearOutput

1.0

DirectIO

1.0

Open

OpenDrawer

1.0

Open & Enable ()

WaitForDrawerClose

1.0

Open & Enable ()

Events

DataEvent

1.0

DirectIOEvent

1.0

Open & Enable

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

Open & Enable

OLEIDOPOS.CashDrawer

1

OpenDrawerWaitForDrawerClosePOS

CapStatus

BOOL CapStatus;

TRUEFALSE

Open

CapStatusMultiDrawerDetect

1.5

BOOL CapStatusMultiDrawerDetect;

TRUE*FALSE

DrawerOpenedFALSE

DrawerOpenedTRUE* a) b)

CapStatus TRUE

Open

* Y

DrawerOpened

BOOL DrawerOpened;

TRUEFALSE

CapStatusFALSEDrawerOpenedFALSE

CapStatusMultiDrawerDetectFALSEDrawerOpened TRUECapStatusMultiDrawerDetect

OpenDrawer

LONG OpenDrawer ()

ResultCode

OPOS_SUCCESS

ResultCode

WaitForDrawerClose

LONG WaitForDrawerClose (LONG BeepTimeout, LONG BeepFrequency, LONG BeepDuration, LONG BeepDelay);

BeepTimeout0

BeepFrequency

BeepDuration

BeepDelay

BeepTimeout

CapStatusMultiDrawerDetectFALSE

CapStatusFALSE

ResultCode

OPOS_SUCCESS

ResultCode

StatusUpdateEvent

void StatusUpdateEvent (LONG Status);

Status

1.01.2

TRUE0FALSE0

1.3

CASH_SUE_DRAWERCLOSED ( = 0 )

CASH_SUE_DRAWEROPEN ( = 1 )

StatusUpdateEvent2 StatusUpdateEventPowerNotifyOPOS_PN_ENABLED

CapStatusFALSE

CapStatusMultiDrawerDetectFALSECASH_SUE_DRAWEROPEN( = 1 )CapStatusMultiDrawerDetect

4

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapPowerReporting

1.3

LongR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open & Claim

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapBlink

1.0

LongR

Open

CapBlinkRate

1.6

BooleanR

Open

CapBrightness

1.0

BooleanR

Open

CapCharacterSet

1.0

LongR

Open

CapCursorType

1.6

LongR

Open

CapCustomGlyph

1.6

BooleanR

Open

CapDescriptors

1.0

BooleanR

Open

CapHMarquee

1.0

BooleanR

Open

CapICharWait

1.0

BooleanR

Open

CapReadBack

1.6

LongR

Open

CapReverse

1.6

LongR

Open

CapVMarquee

1.0

BooleanR

Open

BlinkRate

1.6

LongR/W

Open

DeviceWindows

1.0

LongR

Open

DeviceRows

1.0

LongR

Open

DeviceColumns

1.0

LongR

Open

DeviceDescriptors

1.0

LongR

Open

DeviceBrightness

1.0

LongR/W

Open, Claim, & Enable

CharacterSet

1.0

LongR/W

Open, Claim, & Enable

CharacterSetList

1.0

StringR

Open

CurrentWindow

1.0

LongR/W

Open

Rows

1.0

LongR

Open

Columns

1.0

LongR

Open

CursorRow

1.0

LongR/W

Open

CursorColumn

1.0

LongR/W

Open

CursorType

1.6

LongR/W

Open

CursorUpdate

1.0

BooleanR/W

Open

MarqueeType

1.0

LongR/W

Open

MarqueeFormat

1.0

LongR/W

Open

MarqueeUnitWait

1.0

LongR/W

Open

MarqueeRepeatWait

1.0

LongR/W

Open

InterCharacterWait

1.0

LongR/W

Open

CustomGlyphList

1.6

StringR

Open

GlyphHeight

1.6

LongR

Open

GlyphWidth

1.6

LongR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open, Claim, & Enable

ClearInput

1.0

ClearOutput

1.0

DirectIO

1.0

Open

DisplayText

1.0

Open, Claim, & Enable

DisplayTextAt

1.0

Open, Claim, & Enable

ClearText

1.0

Open, Claim, & Enable

ScrollText

1.0

Open, Claim, & Enable

SetDescriptor

1.0

Open, Claim, & Enable

ClearDescriptors

1.0

Open, Claim, & Enable

CreateWindow

1.0

Open, Claim, & Enable

DestroyWindow

1.0

Open, Claim, & Enable

RefreshWindow

1.0

Open, Claim, & Enable

ReadCharacterAtCursor

1.6

Open, Claim, & Enable

DefineGlyph

1.6

Open, Claim, & Enable

DataEvent

1.0

DirectIOEvent

1.0

Open & Claim

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open, Claim, & Enable

OLEIDOPOS.LineDisplay

2

Glyphs

OPOS

Glyphs

09 (-) (.)

AZ

ASCII (0x200x7F)

(0, 0)

0

0

3

MarqueeTypeDISP_MT_NONEInterCharacterWait0

MarqueeTypeDISP_MT_NONEInterCharacterWait0DisplayText DisplayTextAt InterCharacterWait InterCharacterWait

MarqueeTypeDISP_MT_NONEMarqueeType DISP_MT_INITClearText DisplayText DisplayTextAt MarqueeType DisplayTextDisplayTextAtClearTextRefreshWindowScrollText

BlinkRate R/W1.6

LONG BlinkRate;

(on-off-on)BlinkRate

Open

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALBlinkRate

ResultCode

CapBlinkRate

CapBlink

LONG CapBlink;

DISP_CB_NOBLINK

DISP_CB_BLINKALL

DISP_CB_BLINKEACH

Open

CapBlinkRate 1.6

BOOL CapBlinkRate;

TRUEBlinkRateFALSE

Open

CapBrightness

BOOL CapBrightness;

TRUEFALSE

Open

CapCharacterSet 1.5

LONG CapCharacterSet;

DISP_CCS_NUMERIC09 (-) (.)

DISP_CCS_ALPHADISP_CCS_NUMERIC

DISP_CCS_ASCII0x200x7FASCII

DISP_CCS_KANA9320xA10xDF0x200x7FASCII

DISP_CCS_KANJI9320xA10xDF0x200x7FASCIIJISJISJIS

DISP_CCS_UNICODE

CharacterSet

Open

CapCursorType 1.6

LONG CapCursorType;

CursorType

DISP_CCT_NONE

DISP_CCT_FIXED

DISP_CCT_BLOCK

DISP_CCT_HALFBLOCK

DISP_CCT_UNDERLINE

DISP_CCT_REVERSE

DISP_CCT_OTHER

DISP_CCT_NONE

DISP_CCT_FIXED

Open

CapCustomGlyph 1.6

BOOL CapCustomGlyph;

GlyphTRUECustomGlyphFALSE

Open

CapDescriptors

BOOL CapDescriptors;

TRUEFALSE

Open

CapHMarquee

BOOL CapHMarquee;

TRUEFALSE

Open

CapICharWait

BOOL CapICharWait;

TRUEFALSE

Open

CapReadBack 1.6

LONG CapReadBack;

DISP_CRB_NONE

DISP_CRB_SINGLE

Open

CapReverse 1.6

LONG CapReverse;

DISP_CR_NONE

DISP_CR_REVERSEALL

DISP_CR_REVERSEEACH

Open

CapVMarquee

BOOL CapVMarquee;

TRUEFALSE

Open

CharacterSet R/W 1.5

LONG CharacterSet;

101-199ASCIIWindows ANSI

400-990

DISP_CS_UNICODE997

DISP_CS_ASCIIASCII0x200x7FASCII998

DISP_CS_WINDOWSWindows ANSI999Windows1252

Range 1000 and higherWindows

OpenCapCharacterSet

ResultCode

OPOS_SUCCESS

ResultCode

CharacterSetListCapCharacterSet

CharacterSetList

BSTR CharacterSetList;

OpenASCII

101,850,999850Windows ANSI

CharacterSet

Columns

LONG Columns;

0ColumnsDeviceColumnsDeviceColumns

OpenDeviceColumnsCurrentWindowCreateWindowDestroyWindow

Rows

CurrentWindow R/W1.6

LONG CurrentWindow;

RowsColumnsCursorRowCursorColumnCursorUpdateCursorTypeMarqueeFormatMarqueeTypeMarqueeUnitWaitMarqueeRepeatWaitInterCharacterWait

RefreshWindow

Open0CreateWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorColumn R/W

LONG CursorColumn;

0(Columns)DisplayTextCursorColumn = Columns

OpenCreateWindow0CurrentWindowClearTextDestroyWindowCursorUpdateTRUEDisplayTextDisplayTextAt

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorRowDisplayText

CursorRow R/W

LONG CursorRow;

0(Rows - 1)

OpenCreateWindow0CurrentWindowClearTextDestroyWindowCursorUpdateTRUEDisplayTextDisplayTextAt

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorColumnDisplayText

CursorType R/W1.6

LONG CursorType;

DISP_CT_NONE

DISP_CT_BLOCK

DISP_CT_HALFBLOCK

DISP_CT_UNDERLINE

DISP_CT_REVERSE

DISP_CT_OTHER

CapCursorTypeDISP_CCT_NONEDISP_CCT_FIXEDCapCursorType

OpenCreateWindowDISP_CT_NONE(CapCursorTypeDISP_CCT_FIXED)CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALCapCursorTypeDISP_CCT_NONEDISP_CCT_FIXED

CapCursorType

CursorUpdate R/W

BOOL CursorUpdate;

TRUEDisplayTextDisplayTextAtCursorRowCursorColumn

FALSE

OpenCreateWindowTRUECurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

CursorRowCursorColumn

CustomGlyphList 1.6

BSTR CustomGlyphList;

Glyph

2(ASCII)4()16 -

Open

2D,4D-,MGlyph002D-004D002D004DGlyph2D-2F,3D-3F162D2F3D3FGlyph

CapCustomGlyphGlyphWidthGlyphHeightDefineGlyph

DeviceBrightness R/W

LONG DeviceBrightness;

0100

0%100%CapBrightnessTRUE

Open100

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0100

DeviceColumns

LONG DeviceColumns;

Open

DeviceRows

DeviceDescriptors

LONG DeviceDescriptors;

CapDescriptorsTRUEDeviceDescriptors00

Open

SetDescriptorClearDescriptors

DeviceRows

LONG DeviceRows;

Open

DeviceColumns

DeviceWindows

LONG DeviceWindows;

0

Open

CurrentWindow

GlyphHeight 1.6

LONG GlyphHeight;

Glyph

Open

CapCustomGlyphCustomGlyphListDefineGlyph

GlyphWidth 1.6

LONG GlyphWidth;

Glyph

Open

CapCustomGlyphCustomGlyphListDefineGlyph

InterCharacterWait R/W

LONG InterCharacterWait;

DisplayTextDisplayTextAt

MarqueeTypeDISP_MT_NONE

0 DisplayText DisplayTextAtInterCharacterWaitCursorUpdateTRUE CursorRow CursorColumnDisplayTextDisplayTextAt

00

CapICharWaitFALSE

OpenCreateWindow0CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

DisplayText

MarqueeFormat R/W

LONG MarqueeFormat;

DISP_MF_WALK

DISP_MF_PLACE

MarqueeFormatOpenCreateWindowDISP_MF_WALKCurrentWindowDestroyWindow

MarqueeFormatMarqueeFormat

MarqueeFormatDISP_MF_WALK

1.

MarqueeType

=

=

=

=2

2. MarqueeUnitWait

3. MarqueeUnitWaitMarqueeUnitWait

4. MarqueeRepeatWait

MarqueeFormatDISP_MF_PLACE

1.

MarqueeType

=

=

=

=2

2. MarqueeUnitWait

3. MarqueeUnitWaitMarqueeUnitWait

4. MarqueeRepeatWait

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

MarqueeType MarqueeUnitWait MarqueeRepeatWait

1. - 220 - VB LD

-

LD.CreateWindow(0, 3, 2, 3, 2, 5)

LD.DisplayText(0123456789, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

4

1

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

5

6

7

LD.MarqueeType = DISP_MT_INIT

LD.MarqueeFormat = DISP_MF_WALK

LD.DisplayTextAt(0, 4, AB, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

A

1

B

6

7

8

9

LD.MarqueeType = DISP_MT_LEFT

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

1

B

6

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

B

6

7

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

1

2

3

1

6

7

8

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

2

3

A

1

7

8

9

MarqueeRepeatWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

2- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 3, 2, 5)

LD.DisplayText(0123456789, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

4

1

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

5

6

7

LD.MarqueeType = DISP_MT_INIT

LD.MarqueeFormat = DISP_MF_PLACE

LD.DisplayTextAt(0, 4, AB, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

A

1

B

6

7

8

9

LD.MarqueeType = DISP_MT_LEFT

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

1

B

6

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

B

6

7

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

1

2

3

1

6

7

8

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

2

3

A

1

7

8

9

MarqueeRepeatWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeRepeatWait R/W

LONG MarqueeRepeatWait;

OpenCreateWindow0CurrentWindowDestroyWindow

MarqueeRepeatWait

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

MarqueeTypeMarqueeFormatMarqueeUnitWait

MarqueeType R/W

LONG MarqueeType;

DISP_MT_NONE

DISP_MT_NONE

DISP_MT_INITMarqueeType

DISP_MT_UPRowsCreateWindowHeightCapVMarqueeTRUE

DISP_MT_DOWNRowsCreateWindowHeightCapVMarqueeTRUE

DISP_MT_LEFTColumnsCreateWindowWidthCapHMarqueeTRUE

DISP_MT_RIGHTColumnsCreateWindowWidthCapHMarqueeTRUE

MarqueeTypeDISP_MT_INITClearTextDisplayTextDisplayTextAtMarqueeType

DISP_MT_NONE

0MarqueeTypeDISP_MT_NONE

OpenCreateWindowMarqueeTypeDISP_MT_NONECurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

MarqueeUnitWaitMarqueeFormatMarqueeRepeatWait

(hidden)

MarqueeUnitWait R/W

LONG MarqueeUnitWait;

MarqueeTypeDISP_MT_NONEMarqueeUnitWait

OpenCreateWindow0CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

MarqueeType MarqueeFormatMarqueeRepeatWait

Rows

LONG Rows;

0RowsDeviceRowsDeviceRows

OpenDeviceRowsCurrentWindowCreateWindowDestroyWindow

Columns

ClearDescriptors

LONG ClearDescriptors ();

CapDescriptorsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

SetDescriptorDeviceDescriptors

ClearText

LONG ClearText ();

CursorRowCursorColumn0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

DisplayText

CreateWindow 1.6

LONG CreateWindow (LONG Row, LONG Column, LONG Height,LONG Width,LONG WindowHeight, LONG WindowWidth);

Row

Column

Height

Width

WindowHeight

WindowWidth

RowColumnHeightWidthWindowHeightWindowWidth(0)(Height-1)(0)(Width-1)

MarqueeTypeMarqueeFormatMarqueeUnitWaitMarqueeRepeatWait

CreateWindowCurrentWindow

RowsWindowHeight

ColumnsWindowWidth

CursorRow0

CursorColumn0

CursorTypeDISP_CT_NONE(CapCursorTypeDISP_CCT_FIXED)

CursorUpdateTRUE

MarqueeTypeDISP_MT_NONE

MarqueeFormatDISP_MF_WALK

MarqueeUnitWait0

MarqueeRepeatWait0

InterCharacterWait0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

DestroyWindowCurrentWindow

DefineGlyph 1.6

LONG DefineGlyph (LONG GlyphCode, BSTR Glyph);

GlyphCodeGlyph

GlyphGlyph BinaryConversionBinaryConversion

Glyph

Glyph

GlyphWidth811

10Glyph21082

Glyph

175

76543210

16

.*...

0

08

..*..

1

04

*..*.

2

12

.*..*

3

09

..*..

4

04

...*.

5

02

....*

6

01

11612

111111

5432109876543210

16

............

0,1

00 00

.....*......

2,3

00 40

....***.....

4,5

00 E0

...**.**....

6,7

01 B0

..**...**...

8,9

03 18

..**...**...

10,11

03 18

..*******...

12,13

03 F8

..*******...

14,15

03 F8

..**...**...

16,17

03 18

..**...**...

18,19

03 18

..**...**...

20,21

03 18

............

22,23

00 00

............

24,25

00 00

............

26,27

00 00

............

28,29

00 00

............

30,31

00 00

CapCustomGlyphFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALGlyphGlyphCode

ResultCode

CapCustomGlyphCustomGlyphListGlyphWidthGlyphHeight

DestroyWindow

LONG DestroyWindow ();

CurrentWindow0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

ResultCode

CreateWindowCurrentWindow

DisplayText 1.6

LONG DisplayText (BSTR Data, LONG Attribute);

Data BinaryConversionBinaryConversion

Attribute DISP_DT_NORMALDISP_DT_BLINKDISP_DT_REVERSEDISP_DT_BLINK_REVERSE

CursorRowCursorColumnData

1CursorUpdateTRUECursorRowCursorColumnData

DataCursorUpdateTRUECursorRowCursorColumnColumns

DisplayText DisplayTextAt

MarqueeType = DISP_MT_NONE InterCharacterWait = 0

MarqueeType = DISP_MT_NONE InterCharacterWait not = 0 DataOPOSInterCharacterWait

MarqueeType = DISP_MT_INIT

MarqueeType not = DISP_MT_INIT

CapBlinkDISP_CB_NOBLINKAttributeDISP_DT_BLINKAttributeDISP_DT_BLINK_REVERSEDISP_DT_REVERSEDISP_CB_BLINKALL

DISP_CB_BLINKEACH

CapReverseDISP_CR_NONEAttributeDISP_DT_REVERSEAttributeDISP_DT_BLINK_REVERSEDISP_DT_BLINKDISP_CR_REVERSEALL

DISP_CB_REVERSEEACH

Data

Carriage Return (1013)

Newline / Line Feed (1010)

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALAttribute

ResultCode

DisplayTextAtClearTextCapBlinkCapReverseInterCharacterWait

DisplayTextAt 1.6

LONG DisplayTextAt (LONG Row, LONG Column, BSTR Data, LONG Attribute);

Row

Column

Data BinaryConversionBinaryConversion

AttributeDISP_DT_NORMALDISP_DT_BLINKDISP_DT_REVERSEDISP_DT_BLINK_REVERSE

DataRowColumn

CursorRowRowCursorColumnColumnDisplayText

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALRowColumnAttribute

ResultCode

DisplayTextClearTextCapBlinkCapReverseInterCharacterWait

ReadCharacterAtCursor 1.6

LONG ReadCharacterAtCursor (LONG* pChar);

pChar

CapReadBackDISP_CRB_NONE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

CapReadBack

RefreshWindow

LONG RefreshWindow (LONG Window);

Window

Window

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALWindowDeviceWindows

ResultCode

ScrollText

LONG ScrollText (LONG Direction, LONG Units);

Direction

DISP_ST_UP

DISP_ST_DOWN

DISP_ST_LEFT

DISP_ST_RIGHT

Units

CursorRowCursorColumn

ScrollText

UnitsUnits

UnitsUnits

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALDirection

ResultCode

DisplayText

1- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 4, 2, 4)

LD.DisplayText(abcdABCD, DISP_DT_NORMAL)

0

1

2

3

0

a

b

c

d

1

A

B

C

D

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

a

b

c

d

1

A

B

C

D

LD.ScrollText (DISP_ST_LEFT, 2)

0

1

2

3

0

c

d

1

C

D

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

c

d

1

C

D

2- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 4, 2, 8)

LD.DisplayText(abcdefghABCDEFGH, DISP_DT_NORMAL)

0

1

2

3

4

5

6

7

0

a

b

c

d

e

f

g

h

1

A

B

C

D

E

F

G

H

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

a

b

c

d

1

A

B

C

D

LD.ScrollText (DISP_ST_LEFT, 2)

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

c

d

e

f

1

C

D

E

F

LD.ScrollText (DISP_ST_UP, 1)

0

1

2

3

4

5

6

7

0

A

B

C

D

E

F

G

H

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

C

D

E

F

1

SetDescriptor

LONG SetDescriptor (LONG Descriptor, LONG Attribute);

Descriptor0DeviceDescriptors-1

Attribute

DISP_SD_ON

DISP_SD_BLINK

DISP_SD_OFF

CapDescriptorsFALSE

Descriptor

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

ClearDescriptorsDeviceDescriptors

3

210 DeviceColumnsDeviceRows

0

1

2

3

4

5

6

7

8

9

0

1

CfBXvC

foCX

DeviceColumns

DeviceRows

CreateWindow34

CreateWindow3

(Height == WindowHeight) && (Width == WindowWidth)

(Height == WindowHeight) && (Width != WindowWidth)

(Height != WindowHeight) && (Width == WindowWidth)

(Height == WindowHeight) && (Width == WindowWidth)

CreateWindow(0, 1, 2, 8, 2, 8)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

0

1

2

3

4

5

6

7

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

EBhE

(2 x 8)

CursorRowCursorColumn (0, 0) (1, 7) DisplayTextDisplayTextAt (1, 7)

ScrollTextScrollTextCursorRowCursorColumn

(Height == WindowHeight) && (Width != WindowWidth)

CreateWindow(0, 1, 2, 8, 2, 15)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

EBhE

(2 x 15)

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

EBhE

(2 x 15)

Columns

Rows

(CursorRow, CursorColumn)

r[|[g

CursorRowCursorColumn (0, 0) (1, 14) DisplayText DisplayTextAt (1, 14)

ScrollTextScrollText

EBhE

(2 x 15)

r[|[g

10

EBhE

(2 x 15)

r[|[g

CursorRowCursorColumn

ScrollTextMarqueeTypeDisplayTextDisplayTextAt

DisplayText(HELLO,OPOS-J, DISP_DT_NORMAL)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

r[|[g

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

H

E

L

L

O

n

o

n

n

r

|

i

r[|[g

C

}`j

}aj

DisplayText

\bhs

(CursorRow, CursorColumn)

(Height != WindowHeight) && (Width == WindowWidth)

CreateWindow(0, 1, 2, 8, 7, 8)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

2

3

4

5

6

0

1

2

3

4

5

6

7

EBhE

(7 x 8)

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

0

1

2

3

4

5

6

0

1

2

3

4

5

6

7

EBhE

(7 x 8)

Columns

Rows

(CursorRow, CursorColumn)

r[|[g

InterCharacterWait

MarqueeType DISP_MT_UP, DISP_MT_DOWN, DISP_MT_LEFT, DISP_MT_RIGHT

DispalyText

DispalyTextAt

ClearText

ScrollText

OPOS_E_ILLEGAL

2

Place

Walk

MarqueeFormat

1. MarqueeType DISP_MT_LEFT DISP_MT_UP MarqueeType DISP_MT_RIGHT DISP_MT_DOWN

2. MarqueeUnitWait()

3.()MarqueeUnitWait()

4. MarqueeRepeatWait1.

C2322

P

Q

r[|[g

}

C

j

R

T

S

U

D

MarqueeRepeatWait

~b

}

D

j

P

S

P

Q

T

S

Q

R

U

T

MarqueeUnitWait

~b

1. MarqueeType DISP_MT_LEFTDISP_MT_RIGHTDISP_MT_UPDISP_MT_DOWN ()

2. MarqueeUnitWait()

3.

4. MarqueeRepeatWait1.

E2322

P

Q

r[|[g

}

E

j

R

T

S

U

F

MarqueeRepeatWait

~b

}

F

j

P

S

P

Q

T

S

Q

R

U

T

MarqueeUnitWait

~b

MarqueeType

MarqueeType DISP_MT_NONE DISP_MT_NONE DISP_MT_NONE DISP_MT_NONE

MarqueeType

1. DISP_MT_INIT DisplayText

2. DISP_MT_INIT

3. DISP_MT_INIT DISP_MT_INITDISP_MT_NONE

4. DISP_MT_INIT DISP_MT_NONE

CursorRowCursorColumnCursorRowCursorColumn (0, 0) (X-1, Y-1) (0, 0) (X-1, Y-1)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

1

3

14

r[|[g

(CursorRow, CursorColumn)

EBhE

}

G

j

G28215 (0, 0) CursorRow CursorColumn (1, 14) H

0

1

0

1

2

3

4

5

6

7

8

9

10

11

1

2

13

14

r[|[g

(CursorRow, CursorColumn)

EBhE

}

H

j

J[\

DisplayTextDisplayTextAtDisplayTextDisplayTextAtCursorUpdateTRUEG

DisplayText(HELLO,OPOS-J, DISP_DT_NORMAL)

I CursorUpdateFALSETRUE

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

H

E

L

L

O

n

o

n

n

r

|

i

C

}

I

j

DisplayText

\bhs

r[|[g

EBhE

@

A

ScrollText

MarqueeType

DisplayTextDisplayTextAt

5

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapPowerReporting

1.3

LongR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LONGR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapErrorDetection

1.0

BooleanR

Open

CapSingleFile

1.0

BooleanR

Open

CapTransactions

1.0

BooleanR

Open

FreeData

1.0

LongR

Open & Enable

TotalsSize

1.0

LongR

Open & Enable

NumberOfFiles

1.0

LongR

Open & Enable

TransactionInProgress

1.0

BooleanR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable; (1)

ClearInput

1.0

ClearOutput

1.0

DirectIO

1.0

Open

ClaimFile

1.0

Open & Enable; (2)

ReleaseFile

1.0

Open & Enable

Read

1.0

Open & Enable; (2)

Write

1.0

Open & Enable; (2)

SetAll

1.0

Open & Enable; (2)

ValidateData

1.0

Open & Enable; (2)

RecalculateValidationData

1.0

Open & Enable; (2)

Create

1.0

Open & Enable; (1)

Find

1.0

Open & Enable; (1)

FindByIndex

1.0

Open & Enable; (1)

Delete

1.0

Open & Enable; (2)

Rename

1.0

Open & Enable; (2)

BeginTrans

1.0

Open & Enable

CommitTrans

1.0

Open & Enable

Rollback

1.0

Open & Enable

(1)

(2)

DataEvent

1.0

DirectIOEvent

1.0

Open

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open,Claim,&Enable

OLEIDOPOS.Totals

1

begin

commit

rollback

CreateCreate

1

Read

Write

SetAll

Find

FindByIndex

Delete

Rename

ClaimFileClaimDevice

ReleaseFile

FreeData

TotalsSize

NumberOfFiles

commitrollbackFreeDatacommit

BeginTrans

CommitTranscommitcommitcommit

RollbackRollback

TransactionInProgress

Commit Transcommit

ReadWrite

Write

RecalculateValidationData RecalculateValidationData

ValidateData

Write

CapErrorDetection

BOOL CapErrorDetection;

TRUE

FALSE

Open

CapSingleFile

BOOL CapSingleFile;

TRUE()1

FALSE

Open

CapTransactions

BOOL CapTransactions;

TRUE

FALSE

Open

FreeData

LONG FreeData;

CreateDeleteFreeDataFreeData

commitFreeDataFreeData

CreateWrite

NumberOfFiles

LONG NumberOfFiles;

FreeData

TotalsSize

LONG TotalsSize;

FreeData

TransactionInProgress

BOOL TransactionInProgress;

TRUEFALSE

OpenFALSE

BeginTrans

BeginTrans

LONG BeginTrans ();

1

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

CommitTransRollback

ClaimDevice ()

LONG ClaimDevice (LONG Timeout);

Timeout0OPOS_FOREVER(-1)

ClaimFileClaimDeviceReleaseFile

ClaimedTRUE

ResultCode

OPOS_SUCCESSClaimedTRUE

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUT1Timeout

ReleaseDeviceClaimFileReleaseFile

ClaimFile

LONG ClaimFile (LONG HTotalsFile, LONG Timeout);

HTotalsFile

Timeout0OPOS_FOREVER(-1)

ClaimFileClaimDeviceClaimFile

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUTTimeout

ClaimDeviceReleaseFile

CommitTrans

LONG CommitTrans ();

BeginTrans

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

BeginTransRollback

Create

LONG Create (BSTR FileName, LONG* pHTotalsFile, LONG Size,BOOL ErrorDetection);

FileName

100x20

pHTotalsFile

Size

ErrorDetectionTRUE

FALSE

0

CapSingleFileTRUE1()

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_EXISTSFileName

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_NOROOM:

ResultCode

FindDeleteRename

Delete

LONG Delete (BSTR FileName);

FileName

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_NOEXISTFileName

ResultCode

CreateFindRename

Find

LONG Find (BSTR FileName, LONG* pHTotalsFile, LONG* pSize);

FileName

pHTotalsFile

pSize

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_NOEXISTFileName

ResultCode

CreateDeleteRename

FindByIndex

LONG FindByIndex (LONG Index, BSTR* pFileName);

Index

pFileName

0 NumberOfFiles1

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALIndex

ResultCode

CreateFind

Read

LONG Read (LONG HTotalsFile, BSTR* pData, LONG Offset, LONG Count);

HTotalsFileCreateFind

pDataBinaryConversionBinaryConversion

Offset

Count

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_VALIDATION:

ResultCode

Write

RecalculateValidationData

LONG RecalculateValidationData (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

ResultCode

Release ()

LONG ReleaseDevice ();

ClaimDeviceClaimFileReleaseDevice

ResultCode

OPOS_SUCCESSClaimedFALSE

OPOS_E_ILLEGAL

ClaimDeviceClaimFile

ReleaseFile

LONG ReleaseFile (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ClaimDeviceClaimFile

Rename

LONG Rename (LONG HTotalsFile, BSTR FileName);

HTotalsFile

FileName100x20

CapSingleFileTRUE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileNameCapSingleFileTRUE

OPOS_E_EXISTSFileName

ResultCode

Rollback

LONG Rollback ();

BeginTrans

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

BeginTransCommitTrans

SetAll

LONG SetAll (LONG HTotalsFile, LONG Value);

HTotalsFile

Value

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

ResultCode

ValidateData

LONG ValidateData (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

ResultCode

Write

LONG Write (LONG HTotalsFile, BSTR Data, LONG Offset, LONG Count);

HTotalsFileCreateFind

DataBinaryConversionBinaryConversion

Offset

Count

CommitTransRollback

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_NOROOM:

ResultCodeExtended=OPOS_ETOT_VALIDATION:

ResultCode

ReadBeginTransCommitTransRollbackFreeData

6

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapPowerReporting

1.3

Long R

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

Long R

OutputID

1.0

LongR

PowerNotify

1.3

Long R/W

Open

PowerState

1.3

Long R

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

KeyPosition

1.0

LongR

Open & Enable

PositionCount

1.0

LongR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable

ClearInput

1.0

ClearOutput

1.0

DirectIO

1.0

Open

WaitForKeylockChange

1.0

Open & Enable

DataEvent

1.0

DirectIOEvent

1.0

Open

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

Open & Enable

OLEIDOPOS.Keylock

3

3

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

KeyPosition1PositionCount

StatusUpdateEvent

StatusUpdateEvent

ClaimDeviceOPOS_E_ILLEGAL

KeyPosition

LONG KeyPosition;

StatusUpdateEvent

KeyPosition

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

PositionCount

LONG PositionCount;

Open

WaitForKeylockChange

LONG WaitForKeylockChange (LONG KeyPosition, LONG Timeout);

KeyPosition

Timeout-10

KeyPosition

LOCK_KP_ANY0

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

KeyPosition

Timeout0KeyPositionOPOS_SUCCESSOPOS_E_TIMEOUTTimeout-1KeyPosition

ResultCode

OPOS_SUCCESSKeyPositionLOCK_KP_ANY

OPOS_E_TIMEOUT

OPOS_E_ILLEGAL

ResultCode

StatusUpdateEvent

void StatusUpdateEvent (LONG State);

State

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

StatusUpdateEvent

2 StatusUpdateEvent

7

AutoDisable

1.2

BooleanR/W

Open

BinaryConversion

1.2

LongR/W

Open

CapPowerReporting

1.3

LongR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

Open

DataEventEnabled

1.0

BooleanR/W

Open

DeviceEnabled

1.0

BooleanR/W

Open & Claim

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapISO

1.0

BooleanR

Open

CapJISOne

1.0

BooleanR

Open

CapJISTwo

1.0

BooleanR

Open

CapTransmitSentinels

1.5

BooleanR

Open

TracksToRead

1.0

LongR/W

Open

DecodeData

1.0

BooleanR/W

Open

ParseDecodeData

1.0

BooleanR/W

Open

ErrorReportingType

1.2

LongR/W

Open

Track1Data

1.0

StringR

Open

Track2Data

1.0

StringR

Open

Track3Data

1.0

StringR

Open

Track4Data

1.5

StringR

Open

AccountNumber

1.0

StringR

Open

ExpirationDate

1.0

StringR

Open

Title

1.0

StringR

Open

FirstName

1.0

StringR

Open

MiddleInitial

1.0

StringR

Open

Surname

1.0

StringR

Open

Suffix

1.0

StringR

Open

ServiceCode

1.0

StringR

Open

Track1DiscretionaryData

1.0

StringR

Open

Track2DiscretionaryData

1.0

StringR

Open

TransmitSentinels

1.5

BooleanR/W

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open, Claim, & Enable

ClearInput

1.0

Open & Claim

ClearOutput

1.0

DirectIO

1.0

Open

DataEvent

1.0

Open, Claim, & Enable

DirectIOEvent

1.0

Open & Claim

ErrorEvent

1.0

Open, Claim, & Enable

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open, Claim, & Enable

(MSR)OLEIDOPOS.MSR

123JIS-II

ISOJIS Type-IJIS Type-II

1ISOJIS-I1

2ISOJIS-I2

3ISOJIS-I3

4JIS-II

JIS-II

Ver1.4JIS-TracknDataSOVer1.5JIS-II Track4Data 1.4 SOTracknData Track1DataTrack3DataDataEvent StatusErrorEvent ErrorCodeExtended Track4DataSO

4

TracksToRead4

DecodeData

ParseDecodeData

ErrorReportingType

DataEvent

AutoDisableTRUEDataEvent

DataEventEnabledTRUEDataEventDataEventEnabledFALSEDataEventEnabledTRUE

ErrorEventDataEventEnabledTRUE

DataCount

ClearInput

AccountNumber

BSTR AccountNumber;

ParseDecodeData1

ParseDecodeDataFALSE

CapISO

BOOL CapISO;

TRUEISOFALSE

Open

CapJISOne

BOOL CapJISOne;

TRUEJIS Type-I

FALSE

JIS-IISOCapJISOneTRUECapISOTRUE

Open

CapJISTwo

BOOL CapJISTwo;

TRUEJIS Type-II FALSE

Open

CapTransmitSentinels 1.5

BOOL CapTransmitSentinels;

TRUEFALSE

Open

TransmitSentinels

DecodeData R/W

BOOL DecodeData;

FALSETrack1DataTrack2DataTrack3DataTrack4Data(Raw Format)

TRUETrack1DataTrack2DataTrack3DataTrack4DataASCII77

TrackData

ISO

Track1Data

6-

0x00 0x3F

0x20 0x5F

Track2Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

4-

0x00 0x0F

0x30 0x3F

JIS-I

Track1Data

6-

0x00 0x3F

0x20 0x5F

Track1Data

7-

0x00 0x7F

Track2Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

7-

0x00 0x7F

JIS-II

Track4Data

7-

0x00 0x7F

OpenTRUE

FALSEParseDecodeDataFALSE

ResultCode

OPOS_SUCCESS

ParseDecodeData

ErrorReportingType R/W

1.2

LONG ErrorReportingType;

TracksToRead1ErrorEvent

ErrorEvent2

DataEventTracksToReadMSR_TR_1_2_3123ErrorEvent123

MSR_ERT_CARD

MSR_ERT_TRACK

OpenMSR_ERT_CARD1.2

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ErrorEvent

ExpirationDate

BSTR ExpirationDate;

ASCII10YYMM199829802201881808

ParseDecodeData

ParseDecodeDataFALSE

FirstName

BSTR FirstName;

ParseDecodeData

ParseDecodeDataFALSE

MiddleInitial

BSTR MiddleInitial;

ParseDecodeData

ParseDecodeDataFALSE

ParseDecodeData R/W

BOOL ParseDecodeData;BOOL ParseDecodedData;

(ParseDecodeData.)

TRUETrack1DataTrack2DataTrack3DataJIS-I Track 1CISO Track 1CTrack4Data

JIS-I / ISO Track 1A

JIS-I / ISO Track 1B

JIS-I / ISO Track 1 VISA()

JIS-I / ISO Track 2

OpenTRUE

TRUEDecodeData TRUE

ResultCode

OPOS_SUCCESS

DecodeDataSurnameSuffixAccountNumberFirstNameMiddleInitialTitleExpirationDateServiceCodeTrack1DiscretionaryDataTrack2DiscretionaryData

ServiceCode

BSTR ServiceCode;

ParseDecodeData

ParseDecodeDataFALSE

Suffix

BSTR Suffix;

ParseDecodeData

ParseDecodeDataFALSE

Surname

BSTR Surname;

ParseDecodeData

ParseDecodeDataFALSE

Title

BSTR Title;

ParseDecodeData

ParseDecodeDataFALSE

Track1Data

BSTR Track1Data;

1

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)ParseDecodeDataTRUE

TracksToRead

Track1DiscretionaryData

BSTR Track1DiscretionaryData;

1

ParseDecodeData

ParseDecodeDataFALSE

1

Track2Data

BSTR Track2Data;

2

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)ParseDecodeDataTRUE

TracksToRead

Track2DiscretionaryData

BSTR Track2DiscretionaryData;

2

ParseDecodeData

ParseDecodeDataFALSE

Track3Data

BSTR Track3Data;

3

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)

TracksToRead

Track4Data 1.5

BSTR Track4Data;

4JIS-II

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)

JIS-II TracknDataTrack4Data

TracksToRead

TracksToRead R/W1.5

LONG TracksToRead;

Track1DataTrack2DataTrack3DataTrack4Data

MSR_TR_1Track 1

MSR_TR_2Track 2

MSR_TR_3Track 3

MSR_TR_1_2Track 12

MSR_TR_1_3Track 13

MSR_TR_2_3Track 23

MSR_TR_1_2_3Track 1 23

MSR_TR_4Track 4.

MSR_TR_1_4Track 14

MSR_TR_2_4Track 24

MSR_TR_3_4Track 34

MSR_TR_1_2_4Track 124

MSR_TR_1_3_4Tracks 134

MSR_TR_2_3_4Track 234

MSR_TR_1_2_3_4Track 1234

TracksToReadISOJIS-II

OpenMSR_TR_1_2_3

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

TransmitSentinels R/W

1.5

BOOL TransmitSentinels;

TRUETrack1Data, Track2Data, Track3Data, Track4Data

FALSE

OpenFALSE

ResultCode

OPOS_SUCCESS

OPOS_ILLEGALCapTransmitSentinels FALSE

CapTransmitSentinels ; Track1Data ; Track2Data ; Track3Data ; Track4Data

DataEvent 1.5

void DataEvent (LONG Status);

Status4LONG4 Status

4

3

2

1

0TracksToRead

1TrackxData

Track1DataTrack2DataTrack3DataTrack4DataDecodeDataTRUEParseDecodeDataTRUE

ErrorEvent 1.5

void ErrorEvent (LONG ResultCode, LONG ResultCodeExtended,LONG ErrorLocus, LONG* pErrorResponse);

ResultCode

ResultCodeExtended

ErrorLocus

pErrorResponse

ErrorReportingTypeMSR_ERT_CARDResultCode

OPOS_E_EXTENDEDResultCodeExtended =OPOS_EMSR_START

(Start sentinel error)

ResultCodeExtended = OPOS_EMSR_END

(End sentinel error)

ResultCodeExtended = OPOS_EMSR_PARITY

ResultCodeExtended = OPOS_EMSR_LRCLRC

ResultCode

ErrorReportingTypeMSR_ERT_TRACKResultCode

OPOS_E_EXTENDEDResultCodeExtended =

4

3

2

1

OPOS_SUCCESS

OPOS_EMSR_START

(Start sentinel error)

OPOS_EMSR_END

(End sentinel error)

OPOS_EMSR_PARITY

OPOS_EMSR_LRC

LRC

OPOS_E_FAILURE

ResultCode

ErrorLocus

OPOS_EL_INPUT

OPOS_EL_INPUT_DATA

pErrorResponseErrorLocus

OPOS_ER_CLEARErrorLocus OPOS_EL_INPUT

OPOS_ER_CONTINUEINPUT ErrorLocusOPOS_EL_INPUT_DATADataEventEnabledDataEventDataEventEnabledTRUEErrorEventOPOS_EL_INPUTErrorLocusOPOS_EL_INPUT_DATA

DataEventEnabledTRUE

ErrorReportingTypeMSR_ERT_CARD

ErrorReportingTypeMSR_ERT_TRACKResultCodeResultCodeExtendedDataEvent

DataEventTrackXDataErrorEventDataCountAutoDisable

ErrorReportingType

1.0

VisualBasicFreezeEventFALSE

1.0

Marquee.

Viewport.

MSRParseDecodeDataAPG1.1ParseDecodedData

_1023823794.doc

ActiveX

ActiveX

OPOS

-

-

-