适用于服务对象开发人员的 PosCommon 信息(POS for .NET v1.14 SDK 文档)

.NET Server 对象类树的 POS 基础(接口基本基础)为 PosCommon。 此类是 UPOS 规范中“通用属性、方法和事件”章节的直接实现。

每个适用于 .NET Basic 类的 POS 都会重写或实现 PosCommon 属性和方法,这些属性和方法对服务对象开发人员特别重要。 本主题提供有关这些方法和属性的信息。

CapPowerReporting 属性

.NET 的 POS 成功打开一个设备后,它会尝试检索CapPowerReporting属性的当前值。 该 PowerReporting 类初始化为 None,指示服务对象无法提供电源报告。 但是,如果服务对象的设备支持电源报告,则服务对象可能会在服务对象的方法中将 PowerReporting 设置为 “标准 ”或“ 高级 ”。

CapStatisticsReporting 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 CapStatisticsReporting 当前值。

为设备创建统计信息时,.NET 的 POS 会将 CapStatisticsReporting 设置为 true

CapUpdateStatistics 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 CapUpdateStatistics 当前值。

为设备创建统计信息时,如果可以重置或更新这些统计信息,则 .NET 的 POS 会将 CapUpdateStatistics 设置为 true

认领的属性

POS for .NET 验证设备是否已打开,然后检索该属性的 Claimed 当前值。

声明 初始化为 false声明应在应用程序调用Claim(Int32)方法时设置为true,然后在应用程序调用Release()方法时设置回false

DeviceDescription 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 DeviceDescription 当前值。

DeviceEnabled 属性

DeviceEnabled 是读/写属性。

它可用于返回对象的当前状态;启用或禁用。 如果以前尚未打开并启用此对象,则此属性返回 false

此属性还用于通过将值的属性设置为 truefalse 来启用或禁用设备。 服务对象通常重写此属性,并在此处执行其硬件初始化和发布。

DeviceName 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 DeviceName 当前值。

类实现中,此值将根据属性的内容 ServiceObject 自动设置。

如果您不是从 .NET 类的 POS 派生,而是从 接口级或基本级的类派生,则应在执行 Open() 方法期间由服务主体设置DeviceName

FreezeEvents 属性

FreezeEvents 是读/写属性。

POS for .NET 验证设备是否已打开并声明,然后检索或设置 FreezeEvents 属性的当前值。 当此属性设置为 true 时,POS for .NET 将事件排队,直到此属性设置为 false,并且队列机制可能因设备类型的不同而有所改变。

FreezeEvents 属性初始化为 false

PowerNotify 属性

PowerNotify 是读/写属性。

POS for .NET 验证设备是否已打开,然后检索或设置 PowerNotify 的当前值。 如果设置了 PowerNotify ,则会将电源状态通知发送到应用程序。

PowerNotify 初始化为 Disabled

尝试设置 PowerNotify 可能会导致引发以下异常。

价值 含义

Illegal

发生了以下情况之一:

  • 设备已启用。
  • P:Microsoft.PointOfService.PosCommon.CapPowerReporting 设置为 None,表示设备不支持电源通知。
  • 指定的值不是有效的 T:Microsoft.PointOfService.PowerNotification 枚举值。

PowerState 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 PowerState 当前值。 如果 CapPowerReporting 设置为 None则 PowerNotify 设置为 DisabledDeviceEnabled 设置为 false则 PowerState 将返回为 Unknown

PowerState 初始化为 Unknown。 当 PowerNotify 设置为 EnabledDeviceEnabled为 true 时,当服务对象检测到电源条件更改时,应更新 PowerState 。 当服务对象设置 PowerState 时,POS for .NET 检测到状态更改,如果 PowerNotify 设置为 “已启用”,则会将事件排成队列 StatusUpdateEvent ,通知应用程序。

设置 PowerState 可能会导致引发以下异常。

价值 含义

Illegal

发生了以下情况之一:

  • CapPowerReporting = 标准PowerNotify 设置为 “联机”“关”“脱机”
  • CapPowerReporting = AdvancedPowerState 设置为 “联机”“关闭”“脱机”

ServiceObjectDescription 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 ServiceObjectDescription 当前值。 Service Object 开发人员不应设置此值,因为此值由 POS for .NET Basic 类通过 ServiceObject 属性中提供的说明信息来设置。

ServiceObjectVersion 属性

POS for .NET 验证设备是否已打开,然后检索该属性的 ServiceObjectVersion 当前值。 Service 对象开发人员不必设置此值,因为 POS for .NET Basic 类使用属性中 ServiceObject 提供的版本信息对其进行设置。

State 属性

无需设备状态验证 - 应用程序可以随时检索 property.at 的 State 当前值。

状态 初始化为 “已关闭”。 如果服务对象将 状态 设置为无效 ControlState 值,则 .NET 的 POS 将引发非法异常。 状态的更改导致 .NET 将 StateChangedEvent 事件排入队列。

Claim 方法

POS for .NET 验证应用程序是否已打开设备。

如果 超时 参数设置为小于 -1 的值,则 .NET 的 POS 将引发异常。 如果 超时 值设置为 -1, 则 Claim 方法将永远等待。

如果设备已被应用程序声明,.NET 的 POS 将直接返回。

如果设备正在被另一个应用程序使用并且达到了 超时,POS for .NET 将引发超时异常。

如果 声明 成功,则适用于 .NET 的 POS 将加载设备的统计信息,并将 Claimed 属性设置为 true

Close 方法

如果应用程序在Close()设置为“已关闭”时调用该方法,则 .NET 的 POS 将引发 Closed 异常。 如果 状态 设置为 “忙碌”,则 .NET 的 POS 将引发 “忙碌” 异常。

如果在 Claimed 被设置为 false 的情况下调用 DeviceEnabled 方法,.NET 的 POS 将抛出一个非法异常。 如果 State 设置为 “忙碌”,则 .NET 的 POS 将调用 ClearOutput 方法。 如果启用设备,则 .NET 的 POS 会将 DeviceEnabled 设置为 false。 POS for .NET 清除事件队列,然后将 声明 设置为 false

ResetStatistic 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 ResetStatistic(String)

ResetStatistics() 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 ResetStatistics()

重新统计(categories 参数)方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 ResetStatistics(StatisticCategories)

ResetStatistics(string 参数) 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 ResetStatistics(String[])

RetrieveStatistic 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 RetrieveStatistic(String)

RetrieveStatistics() 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 RetrieveStatistics()

RetrieveStatistics(categories 参数) 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 RetrieveStatistics(StatisticCategories)

RetrieveStatistics(字符串参数) 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 RetrieveStatistics(String[])

UpdateStatistic 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 UpdateStatistic(String, Object)

更新统计信息(categories 参数)方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 UpdateStatistics(StatisticCategories, Object)

UpdateStatistics(统计信息数组参数) 方法

POS for .NET 验证应用程序是否已打开、声明并启用设备,然后调用该方法 UpdateStatistics(Statistic[])

另请参阅

Reference

概念

其他资源