Interface IWorkstationService
- Namespace
- Acuit.Pinpoint.Workstation
- Assembly
- Acuit.Pinpoint.Workstation.Interfaces.dll
Services provided by the workstation to plug-ins.
public interface IWorkstationService
Properties
Configuration
Gets the key/value configuration settings for this workstation.
IConfigurationRoot Configuration { get; }
Property Value
Remarks
When the plug-in is initially loaded and initialized, this will only reflect settings from settings.json files on the local workstation. After the workstation has completed its startup process (i.e., after it has retrieved its station settings from Acuit Pinpoint Server), these configuration settings will be reloaded to reflect settings obtained from Acuit Pinpoint Server.
In general, plug-ins should use GetReloadToken() to monitor for changes and react accordingly, since settings can change while Acuit Pinpoint Workstation is running. When the plug-in is created initially, the settings available through this property will consist only of settings obtained from this local computer. Settings from Acuit Pinpoint Server will be added later via a reload. Settings will also be reloaded whenever a local settings.json file changes.
A plug-in can also wait until the StationStarted event fires to initialize itself, since at that point this property will reflect all settings, including those from Acuit Pinpoint Server. At the very least, it should wait to raise errors due to missing or invalid configuration settings until after the StationStarted event fires.
IsStationStarted
Gets whether the station has been successfully started.
bool IsStationStarted { get; }
Property Value
Remarks
For the station to start, it must connect to Acuit Pinpoint Server and retrieve its configuration settings.
If a plug-in depends on key/value configuration settings that might come from Acuit Pinpoint Server, it should ensure that this is true (or wait until the StationStarted event occurs) to use Configuration to initialize.
IsTransportSecurityActive
Gets whether transport security is currently being used with the Acuit Pinpoint Server connection.
bool IsTransportSecurityActive { get; }
Property Value
IsWorkerLoggedOn
Gets whether a worker is logged on.
bool IsWorkerLoggedOn { get; }
Property Value
Remarks
This will be true for stations with an automatic worker logon is configured, once the station has started.
LineName
Gets the line name.
string LineName { get; }
Property Value
PinpointServerAddress
Gets the Acuit Pinpoint Server address.
string PinpointServerAddress { get; }
Property Value
PinpointServerName
Gets the Acuit Pinpoint Server name.
string PinpointServerName { get; }
Property Value
StationName
Gets the station name.
string StationName { get; }
Property Value
StationSettings
Gets the station settings.
IStationSettings StationSettings { get; }
Property Value
Remarks
Only a subset of the station configuration settings are currently available.
StationTypeName
Gets the station type name.
string StationTypeName { get; }
Property Value
UnitProductionScheduleRepository
Gets or sets the unit production schedule repository for this workstation.
IUnitProductionScheduleRepository UnitProductionScheduleRepository { get; set; }
Property Value
Remarks
A plug-in can set this to provide a custom unit production schedule repository implementation. If this is null, the default unit production schedule repository is used, which uses MSMQ to receive production schedules.
This will have no affect if unit production schedules are not enabled for this station type.
UnitSelector
Gets or sets the unit selector used to select a unit to work with at the workstation.
IUnitSelector UnitSelector { get; set; }
Property Value
Remarks
By default, this will be set to a default unit selector, which provides a default unit scanning user interface, as configured for the station type. If a plug-in sets this to a some other value, then the default unit scanning user interface is not shown and the plug-in must handle selecting a unit.
This must be set before the workstation starts prompting for a unit. If it is changed while prompting for a unit, then the new setting will not take effect until the next time the workstation starts prompting for a unit.
UnitStation
Gets the unit station for the unit currently at the station, or null if no unit is at the station.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.UnitStation should be used instead.")]
UnitStation UnitStation { get; }
Property Value
Remarks
This behaves like UnitStation.
Methods
AddDefect(string, string)
Adds a defect for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.AddDefect should be used instead.")]
AddDefectStatus AddDefect(string fullDefectName, string notes)
Parameters
fullDefectName
stringThe full defect name, with the path parts delimited by backslashes.
notes
stringAdditional notes about the defect. This can be null or blank.
Returns
- AddDefectStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- ArgumentNullException
fullDefectName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
AddRepair(int, string, string)
Adds a repair to a defect for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.AddRepair should be used instead.")]
AddRepairStatus AddRepair(int unitDefectId, string fullRepairName, string notes)
Parameters
unitDefectId
intThe unit defect identifier for the defect that is being repaired.
fullRepairName
stringThe full repair name, with the path parts delimited by backslashes.
notes
stringAdditional notes about the repair. This can be null or blank.
Returns
- AddRepairStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
AddTestResult(string, bool, string, string, Dictionary<string, string>)
Adds a test result for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.AddTestResult should be used instead.")]
AddTestResultStatus AddTestResult(string testName, bool passed, string reason, string notes, Dictionary<string, string> extendedData)
Parameters
testName
stringThe name of the test.
passed
boolWhether the test passed.
reason
stringThe reason for a failed test. This can be null if the test passed.
notes
stringOperator-entered notes about the test.
extendedData
Dictionary<string, string>Extended data associated with the test result. This can be null. This data is not automatically saved with the test result; a server plug-in is expected to process this information.
Returns
- AddTestResultStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- ArgumentNullException
testName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
AddTestResult2(string, bool, string, string, string)
Adds a test result for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.AddTestResult should be used instead.")]
AddTestResultStatus AddTestResult2(string testName, bool passed, string reason, string notes, string dataXml)
Parameters
testName
stringThe name of the test.
passed
boolWhether the test passed.
reason
stringThe reason for a failed test. This can be null if the test passed.
notes
stringOperator-entered notes about the test.
dataXml
stringTest-specific data, formatted as XML, or null. The XML should be structured according to the remarks for ParseXmlTestData(string) so that Acuit Pinpoint can interpret and nicely display the data.
Returns
- AddTestResultStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- ArgumentNullException
testName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
AuthenticateWorker(string, string)
Prompts for worker credentials via a dialog box.
Worker AuthenticateWorker(string title, string message)
Parameters
title
stringThe title to use for the dialog box title, or null to use the default "Not Authorized".
message
stringThe message to use in the dialog box title, or null to use the default "You are not authorization to perform this action. Please enter alternate credentials with sufficient authorization."
Returns
- Worker
A Worker for the authenticated worker, or null if the worker authentication prompt was canceled by the user. When connecting to Acuit Pinpoint Server versions older than 6.200, Groups will not be populated.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
ClearBuyoff(string)
Clears a buyoff for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.ClearBuyoff should be used instead.")]
BuyoffStatus ClearBuyoff(string buyoffName)
Parameters
buyoffName
stringThe buyoff name.
Returns
- BuyoffStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- ArgumentNullException
buyoffName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
EnqueueTypedNumber(string)
Enqueues a number (i.e., a serial number or model number) to the workstation workflow.
void EnqueueTypedNumber(string number)
Parameters
number
stringThe number to enqueue.
Remarks
This should only be called when the workstation is prompting for a bar code scan of some kind.
Exceptions
- ArgumentNullException
number
is null.
GetComponentPartsList(string)
Gets the parts list configured for a component type.
IEnumerable<Part> GetComponentPartsList(string componentTypeName)
Parameters
componentTypeName
stringThe component type name.
Returns
- IEnumerable<Part>
The list of parts.
Exceptions
- ArgumentNullException
componentTypeName
is null.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
GetComponentScanSettings(string)
Gets the item scan settings for a component type, as configured for this station type.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IItemScanningService.GetComponentScanSettings should be used instead.")]
ItemScanSettings GetComponentScanSettings(string componentTypeName)
Parameters
componentTypeName
stringThe component type name.
Returns
- ItemScanSettings
A new ItemScanSettings with the item scan settings.
Remarks
These settings can be used with StartScanningItem(ItemScanSettings).
Exceptions
- ArgumentNullException
componentTypeName
is null.- ArgumentException
The
componentTypeName
component type is not configured to be scanned at this station.
GetNextComponentSerialNumber(string)
Gets the next automatically-generated component serial number.
string GetNextComponentSerialNumber(string componentTypeName)
Parameters
componentTypeName
stringThe component type name.
Returns
- string
The next automatically-generated serial number.
Remarks
The returned serial number will be for a unit record that does not yet exist.
Exceptions
- ArgumentNullException
componentTypeName
is null.- ArgumentException
componentTypeName
does not refer to a component type configured for the line.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
GetNextUnitSerialNumber()
Gets the next automatically-generated unit serial number.
string GetNextUnitSerialNumber()
Returns
- string
The next automatically-generated serial number.
Remarks
The returned serial number will be for a unit record that does not yet exist.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
GetTableData(string)
Retrieves an Acuit Pinpoint table from the Acuit Pinpoint Server database.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.ResourceManagement.TableResourceExtensions.CreateTableResourceReference should be used instead.")]
string GetTableData(string tableName)
Parameters
tableName
stringThe name of the table.
Returns
- string
The table data, in CSV format.
Exceptions
- ArgumentNullException
tableName
is null.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
GetTableDataAsync(string)
Retrieves an Acuit Pinpoint table from the Acuit Pinpoint Server database.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.ResourceManagement.TableResourceExtensions.CreateTableResourceReference should be used instead.")]
Task<string> GetTableDataAsync(string tableName)
Parameters
tableName
stringThe name of the table.
Returns
- Task<string>
A task that represents the asynchronous operation. The value of its Result property contains the table data, in CSV format.
Exceptions
- ArgumentNullException
tableName
is null.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
GetUnitScanSettings()
Gets the item scan settings for units, as configured for this station type.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IItemScanningService.GetUnitScanSettings should be used instead.")]
ItemScanSettings GetUnitScanSettings()
Returns
- ItemScanSettings
A new ItemScanSettings with the item scan settings.
Remarks
These settings can be used with StartScanningItem(ItemScanSettings).
InitiateRescanComponent(string)
Initiates rescanning a component for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.InitiateComponentScan should be used instead.")]
void InitiateRescanComponent(string componentTypeName)
Parameters
componentTypeName
stringThe component type name.
Exceptions
- InvalidOperationException
There is no unit at the workstation.
- InvalidOperationException
The workstation is busy (e.g., it is prompting for a component scan or is displaying a message or dialog box).
- ArgumentException
The
componentTypeName
component type is not configured to be scanned at this station.
InitiateTestOverride(int)
Initiates overriding a test for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.PerformTestOverride should be used instead.")]
OverrideTestStatus InitiateTestOverride(int unitTestId)
Parameters
unitTestId
intThe id of the test to override.
Returns
- OverrideTestStatus
Status information if the test was overridden, or null if the operator canceled. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
If the operator does not have authorization to override the specified test, then a dialog will first appear so that a different worker who has authorization can provide credentials. Once the override is authorized, a dialog will appear, prompting the operator for verification and allowing notes to be entered.
Exceptions
- InvalidOperationException
There is no unit at the workstation.
InvokeAutomationElementAsync(string)
Invokes an automation element.
Task<bool> InvokeAutomationElementAsync(string automationId)
Parameters
automationId
stringThe automation id of the element to invoke.
Returns
- Task<bool>
true if the element was invoked, or false if no invokable element with the specified id was found.
InvokeServerPlugIn(string, string, string)
Invokes a server plug-in for any custom purpose.
string InvokeServerPlugIn(string plugInName, string methodName, string parameter)
Parameters
plugInName
stringThe name of the server plug-in.
methodName
stringA name that specifies a method to invoke.
parameter
stringA parameter for the method.
Returns
- string
Data from the method.
Remarks
This is available to allow a workstation plug-in to interact with a server plug-in.
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
InvokeServerPlugInAsync(string, string, string)
Invokes a server plug-in for any custom purpose.
Task<string> InvokeServerPlugInAsync(string plugInName, string methodName, string parameter)
Parameters
plugInName
stringThe name of the server plug-in.
methodName
stringA name that specifies a method to invoke.
parameter
stringA parameter for the method.
Returns
- Task<string>
A task that represents the asynchronous operation. The value of its Result property contains data from the method.
Remarks
This is available to allow a workstation plug-in to interact with a server plug-in.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
InvokeServerPlugInAsync(string, string, string, string)
Invokes a server plug-in for any custom purpose.
Task<string> InvokeServerPlugInAsync(string lineName, string plugInName, string methodName, string parameter)
Parameters
lineName
stringThe line name.
plugInName
stringThe name of the server plug-in.
methodName
stringA name that specifies a method to invoke.
parameter
stringA parameter for the method.
Returns
- Task<string>
A task that represents the asynchronous operation. The value of its Result property contains data from the method.
Remarks
This is available to allow a workstation plug-in to interact with a server plug-in from a different line.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
ReleaseUnit()
Releases the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.ReleaseUnit should be used instead.")]
bool ReleaseUnit()
Returns
- bool
true if the unit was released, or false if something prevented the unit from being released, such as a running test that could not be canceled.
Exceptions
- InvalidOperationException
There is no unit at the workstation.
- InvalidOperationException
The workstation is busy (e.g., it is prompting for a component scan or is displaying a message or dialog box).
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
ScanComponent(string, string, string)
Verifies and records a component scan for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.VerifyAndAddComponentScan should be used instead.")]
ComponentStatus ScanComponent(string componentTypeName, string componentSerialNumber, string componentModelNumber)
Parameters
componentTypeName
stringThe component type name.
componentSerialNumber
stringThe component serial number to verify. This can be null or blank if no serial number was scanned for the component.
componentModelNumber
stringThe component model number to verify. This can be null or blank if no model number was scanned for the component. See remarks for "checkInstalledOnly" components.
Returns
- ComponentStatus
A ComponentStatus object representing the results. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
For component types marked "checkInstalledOnly", componentModelNumber
indicates whether the component is installed or not.
Any non-null, non-blank value means that the component is installed; a null or blank value means that the component is not installed.
Exceptions
- ArgumentNullException
componentTypeName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
ScanUnit(string, string)
Scans a unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; ScanUnit2 should be used instead.")]
bool ScanUnit(string serialNumber, string modelNumber)
Parameters
serialNumber
stringThe unit serial number.
modelNumber
stringThe unit model number. This can be null or an empty string.
Returns
- bool
true if the unit was scanned, or false if either a unit already at the station could not be released, or if the new unit scan was canceled (i.e., by a plug-in).
Exceptions
- ArgumentException
The model number does not match the model number defined for this station type.
- InvalidOperationException
This is not valid for a preassembly station.
- InvalidOperationException
The workstation is busy (e.g., it is prompting for a component scan or is displaying a message or dialog box).
- InvalidOperationException
The workstation cannot accept unit scans right now (e.g., it is waiting for a worker log on).
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
ScanUnit2(string, string)
Scans a unit at the workstation.
Unit ScanUnit2(string serialNumber, string modelNumber)
Parameters
serialNumber
stringThe unit serial number.
modelNumber
stringThe unit model number. This can be null or an empty string.
Returns
- Unit
The resulting unit, or null if either a unit already at the station could not be released, or if the new unit scan was canceled (i.e., by a plug-in).
Exceptions
- ArgumentException
The model number does not match the model number defined for this station type.
- InvalidOperationException
This is not valid for a preassembly station.
- InvalidOperationException
The workstation is busy (e.g., it is prompting for a component scan or is displaying a message or dialog box).
- InvalidOperationException
The workstation cannot accept unit scans right now (e.g., it is waiting for a worker log on).
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
SendMail(string, string, string, string)
Sends an email via Acuit Pinpoint Server.
void SendMail(string from, string recipients, string subject, string body)
Parameters
from
stringThe address information of the message sender. If this is null or empty, then the "from" address configured on Acuit Pinpoint Server will be used.
recipients
stringThe addresses that the message is sent to. Multiple addresses should be separated by commas.
subject
stringThe subject line for the message.
body
stringThe message body.
Remarks
The email request is sent to Acuit Pinpoint Server synchronously, but then the email is sent asynchronously from Acuit Pinpoint Server. Any errors sending the email will be logged on the server.
Exceptions
- ArgumentNullException
recipients
is null.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
SendNotification(string, string, string)
Sends a notification via Acuit Pinpoint Server.
void SendNotification(string recipients, string subjectContext, string body)
Parameters
recipients
stringThe email addresses to which to send the notification. Multiple addresses should be separated by commas. If this is null or empty, then the administrator email address(es) configured on Acuit Pinpoint Server will be used.
subjectContext
stringThe notification subject context. The resulting email subject will be "Acuit Pinpoint Notification: ", followed by this subject context.
body
stringThe notification body.
Remarks
This is similar to SendMail(string, string, string, string). The only effective differences are (1) the configured "from" address in Acuit Pinpoint Server is always used, and (2) the subject line in the notification email will be "Acuit Pinpoint Notification: ", followed by this subject context.
Currently, notifications are only sent via email, which requires the mail settings to be configured for the server.
The notification request is sent to Acuit Pinpoint Server synchronously, but then the notification email is sent asynchronously from Acuit Pinpoint Server. Any errors sending the email will be logged on the server.
Exceptions
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
SetBuyoff(string)
Sets a buyoff for the unit at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.SetBuyoff should be used instead.")]
BuyoffStatus SetBuyoff(string buyoffName)
Parameters
buyoffName
stringThe buyoff name.
Returns
- BuyoffStatus
Status information. The UnitStationChanges member of the returned status will not contain any children; they will have already been integrated with the active unit tracked at the workstation.
Remarks
This can take some time since it must contact Acuit Pinpoint Server, so it is recommended to show a wait indication (e.g., via WaitCursor()) while doing this.
Exceptions
- ArgumentNullException
buyoffName
is null.- InvalidOperationException
There is no unit at the workstation.
- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
SetLightStackAuxRelay(int, bool)
This is obsolete and no longer functions. There is no replacement API.
[Obsolete("This is obsolete and no longer functions; there is no replacement API.")]
void SetLightStackAuxRelay(int index, bool state)
Parameters
Exceptions
- NotImplementedException
This will always throw this exception.
ShowAlarm(string, string, bool)
Shows an alarm at the workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IAlarmsManager.AddNewAlarm should be used instead.")]
void ShowAlarm(string message, string context, bool interactive)
Parameters
message
stringThe alarm message.
context
stringAn optional alarm context. This is included in the alarm message when it is shown in the alarm display, since it can appear when the context for which the alarm applies (e.g., the current unit) no longer exists. It is not included when the alarm message is shown modally (and, thus, the context is implied).
interactive
boolWhether this alarm is the result of an interactive operator action. When this is true, and the workstation is manned, then the error will be displayed modally.
Remarks
If interactive
is false or the station is automated, then the message (with context, if provided), will be queued to be displayed in the alarm display.
Otherwise, message
is displayed via an error message box.
If context
is not null or empty, then the message with context is formatted like "context: message".
An informational entry will be added to the application log containing the message (with context, if provided).
ShowAlert(string)
Shows an alert at the workstation.
void ShowAlert(string message)
Parameters
message
stringThe alert message.
Remarks
If the station is automated, the message is shown as an alarm. Otherwise, the message is shown via a warning message box.
StartScanningItem(ItemScanSettings)
Starts scanning an item.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IItemScanningService.StartScanningItem should be used instead.")]
IItemScanner StartScanningItem(ItemScanSettings settings)
Parameters
settings
ItemScanSettingsThe item scan settings.
Returns
- IItemScanner
A IItemScanner for interacting with the item scanning process.
Remarks
Close() must be called to close the scanner, either after numbers have been received or the scanner is canceled. The scan window will never close on its own.
Exceptions
- ArgumentNullException
settings
is null.- InvalidOperationException
An item scanner is already active.
TryGetWorkerAuthorization(string, out AuthorizedWorker)
Gets worker authorization for a station permission, prompting for alternate credentials if necessary.
bool TryGetWorkerAuthorization(string permission, out AuthorizedWorker worker)
Parameters
permission
stringThe station permission to check.
worker
AuthorizedWorkerOn return, will contain information about the authorized worker if successful, or null if not.
Returns
- bool
true if the worker (or another via alternate credentials) is authorized for the station permission, or false if the worker is not authorized and the prompt for alternate credentials was canceled or an error occurred.
Remarks
If there is a worker logged onto the station, this will first attempt to authorize that worker for the specified permission at this station. If that authorization fails, then a prompt for alternate worker credentials will appear.
Exceptions
- ArgumentNullException
permission
is null.- CommunicationException
An Acuit Pinpoint Server communication error occurred, or Acuit Pinpoint Server returned a fault.
- TimeoutException
Communication with Acuit Pinpoint Server timed out.
Events
BarCodeScan
Occurs when a bar code scan occurs that is not otherwise handled by Acuit Pinpoint Workstation.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IBarCodeScannersService should be used instead.")]
event EventHandler<BarCodeScanEventArgs> BarCodeScan
Event Type
Remarks
Upon receiving this event, a plug-in must first check Handled, and ignore the event if it is true. If the plug-in handles the bar code, it should set Handled to true.
BuyoffChanged
Occurs when a buyoff is set or cleared at this station, either by the operator clicking the buyoff button or by a plug-in setting or clearing a buyoff.
event EventHandler<BuyoffChangedEventArgs> BuyoffChanged
Event Type
Remarks
This event is not raised when a buyoff status changes due to business logic in the server (e.g., a buyoff being cleared because it is associated with a failed test result). These changes can be monitored by monitoring the UnitBuyoffs collection for changes.
NoScanStateReady
Occurs when a workstation configured for "no scan" operation has finished initializing and processing the worker logon.
event EventHandler NoScanStateReady
Event Type
ShellClosing
Occurs when the application shell is closing.
event EventHandler<CancelEventArgs> ShellClosing
Event Type
Remarks
Plug-ins should use this event to monitor when the application is about to be closed (and to optionally cancel) instead of Application.Current.MainWindow.Closing.
StationStarted
Occurs when the station has successfully started.
event EventHandler StationStarted
Event Type
Remarks
For the station to start, it must connect to Acuit Pinpoint Server and retrieve its configuration settings.
If a plug-in depends on key/value configuration settings that might come from Acuit Pinpoint Server, it should wait until this event occurs (or ensure that IsStationStarted is already true in case the plug-in is being loaded dynamically after the station has already started) to use Configuration to initialize.
UnitReadyForOperator
Occurs when a unit has been scanned, its components have been scanned, and Acuit Pinpoint Workstation is waiting for the operator.
event EventHandler<UnitStationEventArgs> UnitReadyForOperator
Event Type
Remarks
This event will only be raised for manned workstations, as automated workstations never enter this state.
UnitReleased
Occurs when a unit is released.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.UnitReleased should be used instead.")]
event EventHandler<UnitReleaseEventArgs> UnitReleased
Event Type
Remarks
This behaves like UnitReleased.
UnitReleasing
Occurs when a unit is about to be released.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.UnitReleasing should be used instead.")]
event EventHandler<UnitReleasingEventArgs> UnitReleasing
Event Type
Remarks
This behaves like UnitReleasing.
UnitScanned
Occurs when a unit is scanned.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.UnitScanned should be used instead.")]
event EventHandler<UnitScanEventArgs> UnitScanned
Event Type
Remarks
This behaves like UnitScanned.
UnitScanning
Occurs when a unit is being scanned.
[Obsolete("This is deprecated and will be removed in a future version; Acuit.Pinpoint.Workstation.IUnitAtStationService.UnitScanning should be used instead.")]
event EventHandler<UnitScanningEventArgs> UnitScanning
Event Type
Remarks
This behaves like UnitScanning.
WorkerLoggedOff
Occurs when a worker has logged off.
event EventHandler WorkerLoggedOff
Event Type
Remarks
Note that this event fires for automated (i.e., unmanned) stations as well.
WorkerLoggedOn
Occurs when a worker has logged on.
event EventHandler<WorkerLoggedOnEventArgs> WorkerLoggedOn
Event Type
Remarks
Note that this event fires for automated (i.e., unmanned) stations as well.