Settings control the internal operation and setup of the system. Some settings are local and specific
to the individual lane, others define values across the retail chain. Information on this page
is not introductory
Changing settings directly is not recommended unless you clearly understand the implications. You should always
use menu options where possible to change settings, as not all settings are standalone, or may have pre conditions
and unexpected side effects
Fieldpine Online
TUBT.SendRm
Indicates of this lane is using Fieldpine Online services. Should be the same value throughout the retail chain.
TUBT.FileAll
TUBT.FileUp
TUBT.FileDown
TUBT.FileAcross
Used to manually cause Mesh replication to write to customer specific files. These files are then
managed and replicated outside of POS control
Networking
UpstreamMaxSize
UpstreamRandomMaxSize
Sets the maximum size in bytes that upstream files should be before a new file is created. The default is 5Mb.
SalesPreConfirm
Controls whether a sale can be confirmed in the background, or if a BIS sync operation is required. When
this setting is enabled, the system polls the server several times over increasingly longer delays to see if the
sale has been confirmed as saved, which reduces overall BIS sync load. The default is enabled.
Mesh
RmSystem
Set the global database name this system is part of. In a mesh system, this value defines members
that are part of the same group. These setting values cannot be chosen randomly and must follow a structure.
Membership to a mesh database also requires passwords and access controls
MeshSales
Flag to indicate that the system should use mesh sales replication, which causes every individual change to be immediately
transmitted to mesh storage. This includes sales still being processed. This mode of operation requires additional
configuration.
MeshBlock.Tubt.NNN
Reserved for support. Allows specific Mesh transactions (NNN) received over the network to be blocked from being processed on a system.
MeshCmd.Tubt.NNN
Reserved for support. Sets the specific processing technique for individual mesh transaction types (NNN). This is not commonly used,
but may be set where site code lags behind other versions in the network, causing a lane to receive data it does not specifically understand.
ArchiveMesh
Controls if POS should automatically perform backups of key files if they have changed since the last backup. This is not a replacement for formal backup strategies. This is a bit field to select which
files are selected
Code | Description |
1 | Select main configuration files, such as *.ctl and *.ini |
2 | Inlcude *.ui files |
4 | Include *.pscr and *.scr files |
8 | (12 May 2016,P1928) Include only files that are lane specific, such as fpos.ctl. This value is intended for larger environments where offsite backups
are already kept. |
Designer
Designer settings are only for designer mode not production mode. They remove and alter some functionality to make development of POS
screens and scripts simpler, but may have unwanted side effects if used on production lanes
DsnIgnoreUICache
(11 June 2015, P1858) If this settings is defined true, then UI screens are always read from the UI files rather than
the internal cache. This saves needing to restart the POS when altering UI screens. If you are in Pos Designer mode, UI files are also not cached
regardless of the setting.
Restrictions:
- Each time you switch to a new screen, the full UI will be processed and added to the cache. Performance will be slower and you will
slowly leak memory. Changing the code to avoid the memory leak is deemed to risky for very rare use cases, especially as the memory
leak is quite small.
- If you have been using this setting, or designer mode, and turn if off, you must restart POS to flush the cache. If you do not
the POS may revert to an older version stored in the cache.
Eftpos Payments
EftSendField48
Enable sending Field48 data to eftpos subsystems that are capable of handling it. This setting is off by default. Field 48 data is
sometimes used for extended purchase analysis information.
Plugin Dlls
PluginDisplayError
(21 June 2014, P1805) If a plugin dll is detected as being incompatible a message is displayed to the user advising the DLL
has not loaded. The default is to show messages, set this to 0 to disable the warnnig messages.
PluginAllowWeak
(21 June 2014, P1805) When loading DLLs, they are prechecked before being loaded using LoadLibrary() to verify
3rd party libraries are the same version. By default any difference in version will cause
the DLL to be rejected, but sometimes the differences are potentially not significant so you can force them
to be loaded.
Products
ProductsZeroPrompt
If the product is currently priced at zero this setting causes the POS to prompt the price. This setting
is off by default and is not recommended for long term operation as products can easily be allocated a price, which
would stop this setting prompting.
ProductsVariablePrice
Contains a list of Pid values for products that should always cause price prompting when sold. For releases
after June 2014 the preferred method of forcing prompting is by selecting price prompting when creating products (located in
operational flags)
Salelist
These settings relate to the SaleList User Interface element displayed on most selling screens.
Salelist.Lines
Cause the salelist to display lines around cells
Salelist.Fullrow
When enabled, cause the complete line to be selected rather than just highlighting the contents of the first cell
Salelist.CmdPrefix
If a salelist has commands to be executed, any commands in this setting are executed first.
SalelistModifierFont
Set the font to be used when modifiers are drawn to the salelist. This overrides the setting FontDefault
SalelistModifierAdjust
Provides an optional prefix sequence to be drawn before each modifier description. Typical use might
be to insert spaces to cause indenting, or use special symbols. If this settings is not provided then modifiers
are drawn as normal items
SalelistTaxColor
Controls whether tax free items are highlighted differently on the salelist. The default is to highlight
tax free red and other items green.
SalelistHighlightZero
If set, zero values are specifically highlighted.
SalelistHighlightRGB
Sets the color to draw highlightzero values
Purchasing
Purchasing system creates and manages the life cycle of purchase orders
PurchCustPONum
Defines how Customer purchase order numbers are initially allocated. This value is usually the reference number of the purchase
order, but internally the system uses it own unique identifier, not this number
Code | Description |
0 | System may select what it thinks is best |
1 | The CustPONum is set to be the same as the internal purchase order number |
2 | The CustPONum is to be a combination of the internal unique lane number (srcuid) and the internal poid number. The format is LL-AA where
LL is the system unique lane number and AA the internal purchase order number. eg 1025-345 |
3 | The CustPONum is set to a distributed keying identifer, which is a longer format that includes more
specific identification |
PurchAutoGenerateCustNumber
If the value is 1 (default is 0) and either the current CustPONum is empty OR the setting
PurchAutoGenerateCustNumberOverride equals 1, the CustPONum is forced to the internal purchase order number
PurchAutoGenerateCustNumberOverride
If set to one, and the setting PurchAutoGenerateCustNumber is also 1, the CustPONum is forced to the
internal purchase order number
Help
The PosCommand help controls the internal context sensitive help pages
HelpExternal
(7 July 2017, P1998) If set to 1 then help is always launched as external browser rather than internal browser. This
does not provide as good a user experience but may be required in some situations where external security and
configuration affects the normal POS operation
HelpHost
The root part of the URL used for help. The default value is "http://www.fieldpine.com"
This setting also has some special keywords:
- "self" The value is set to "http://localhost:port"
- "disabled" Help is disabled and not displayed
Http Server and Protocol
Each POS runs a mini internal web server to allow remote support, local interfacing and dynamic web page support.
It is not a full function web server
HostName
When generating certain content the POS needs to be able to supply the host name that is used to connect
to it. By default this is derived from the gethostname() { Network definition }, or computer name if gethostname fails. In some circumstances
neither of these options are correct and this setting allow you to manually set the hostname. Examples: "10.50.77.182" or "PosServer"
HttpCORS
(25 Jan 2016, P1904) A coded number indicating how CORS requests as processed.
Code | Description |
0 | Abort any request that appears to be cross origin |
1 (default) | Allow trusted domains. This list is defined by the POS internally and includes Fieldpine domains |
2 | Allow any domain |
3 | Ignore all CORS specific processing |
CORS support has not been tested in all configurations.
HttpNoDefault
If set, stops the POS from opening the default ports used.
HttpPrivateThread
If set, Http management is placed in a background thread. Not recommended and may have side effects if
posCommands are implemented via HTTP requests
HttpDynamicPort
Instructs the POS to dynamically chose a random port to operate on
HttpPortList
Sets an explicit list of ports to operate on
HttpAcceptAddr
Contains a comma seperated list of IP addresses that are accepted for incoming connections. The default is to allow
access from all addresses.
HttpDenyAddr
Contains a comma seperated list of IP addresses that denied from accessing this web server.
HttpDenyDelay
When a request arrives from a denied IP address, this value holds a delay in milliseconds before the connection
is dropped from the remote client. The default is to drop the connection immediately. This parameter is NOT SUPPORTED and
should not be used in production environments.
HttpListenQueue
Amount of backlog requested to listen() socket network call. Defines how many sockets can be pending
accept() calls. Different versions of Windows apply different maximums to this value. The default is 5
HttpKeepTemp
Do not delete temporary files used to create responses. This value is only present for debugging and should not be
enabled in production environments
HttpTraceRcv
If bit 1 is set (ie value=1), then log inbound requests to httptrc.log If enabled, this file can get large rapidly
depending on traffic volumes
HttpFullTrafficLog
If enabled, write web log style access reports to PosTraffic-XXX.log files.
HttpUrlLog
A coded number that holds the level of logging required.
Code | Description |
1 | Log successful attempts for a page. This may not result in a web display for the remote user, but are being sent for complete processing by the Web Server |
2 | Log denied requests that have been closed |
4 | Log all HTTP headers (V2.4.5.8) |
If you wish to log several categories, then the above values should be added together (internally, they are bit fields).
HttpNoNagle
If set, disable nagle algorithm. Not recommended for general use. The POS does disable nagle internally for some time highly
specific uses.
HttpSndSize
Allows override of the SO_SNDBUF parameter. Not recommended for general use as the default parameters are acceptable.
HttpDnsLookup
If set true (default false), the POS performs a reverse DNS lookup to decode the numeric IP address to a user readable
This lookup results in requests being sent out for each incoming request, so can result in a high load.
In order to reduce the impact, the lookup results are held in a simple cache.
HttpTempDir
Path to store temporary files if current directory should not be used
HttpDenyPrefix
Holds a comma separated list of URL prefixes. Any request that matches a prefix from this list results
in that request being denied and not processed further. The result to the remote browser is undefined. This
setting is used to assist in blocking load from certain virus types that attempt path changing.
HttpDenyBlock
If a request is received that is denied from the HttpDenyPrefix or HttpDenySuffix settings, then the
requesting IP address is added to a memory based denial list, resulting in all access from the address being
rejected until the web server is restarted. By default, this setting is on, which helps eliminate load from virus
techniques such as CodeRed.
HttpDenySuffix
// #SET Holds a comma separated list of URL suffixes. Any request that matches a suffix from this list results
// #SET in that request being denied and not processed further. The result to the remote browser is undefined. This
// #SET setting is used to assist in blocking load from certain virus types that attempt path changing.
HttpHiddenPrefix
// #SET Holds a comma separated list of URL prefixes. Any request that matches a prefix from this list results
// #SET in that request being returned as if the page did not exist. This is of use where two web servers are sharing
// #SET a common file structure but some files are not permitted on both channels.
HttpDeadPage
// #SET When a request is received for a page that does not exist, it is possible to return a page rather than the
// #SET default error message to the remote client. This is useful where a site may have been indexed by a search
// #SET engine and the underlying structure has changed.
HttpPage.ActiveSale
If a request is received for /activesale.htm, this setting control which page file is actually returned. Essentially
this allows different views to be returned at different sites by simply changing this setting and distributing all web pages
HttpAllowReverse
Allow reverse request, where the actual file needs to be pulled from the caller
HttpAllowRedirect
Allow redirect requests so pages can perform an action and redirect themselves
HttpLocalDir
// #SET When loading pages from the disk, the web server will first check for pages stored in a private user structure that
// #SET mirrors the structure supplied by Fieldpine. This allows a site to customise Fieldpine supplied help pages, but without
// #SET needing to maintain every update that occurs.
HttpBaseDir & HttpBaseDir.XYZ
The name of the base directory for serving web pages. The default is the POS folder.
HttpRealm
Realm to be sent when challenging using BASIC auth
HttpExtraCR
If set true, write an extra closing CR character to the data stream. This seems to be required for
certain combinations of servers and clients.
HttpAddTag.Body
When the web page is being sent, if a body tag is encountered, this value inserts an additional line
into the output stream immediately following the body tag. The default value of this tag is
<basefont face="Arial">
HttpSearchDefault
A list of subdirectories to search for autosearch if no root is specified in the query.
HttpNoFunction.posc
If this setting is defined to a web page, then when a PosCommand function request
is received by the WebServer, the command is not executed and the web page named in the
setting is displayed instead. If the setting is not defined (the default), then the action is
allowed to occur.
HttpDisablePut
If set true the web server will allow PUT HTTP requests. By default this is disabled as it allows remote users to
upload content to the web server.
HttpPutPass
When PUT requests are enabled, a password is required, that needs to be supplied using the fppassword header tag.
These passwords must match.
HttpSearchMaxResults
Maximum number of results to return for a search operation
HttpSendBufferSize
Amount of memory to preallocate for send buffers. The default is 1Mb
Messages
Messages are created when the system needs to alert the user about something other than drawing on the screen. They are similar to
alert() in Javascript, MessageBox() in Windows or Toast in Android.
MessageViaBrowser
(27 May 2015, P1855) Allows the POS to use a web browser to display user messages rather than simple
popup alerts. This allows you to customise the screen to display the message how you wish. (Example of Use)
Receipt Printing
PrintLinesBackground
(29 Oct 2014, P1834) Sets a background color for every alternate line printed on a receipt. If not specified
all receipt lines use the same colour. This setting is an RGB triple, encoded as a decimal number. The most common values
are pale gray RGB(F0,F0,F0) which is decimal 15790320, or a slightly darker gray of RGB(E0, E0, E0) which is decimal 14737632
PrintCopyMessage
When a receipt is being printed as a repeat copy, this setting controls the value of any additional text marking it as a duplicate.
The default wording is "COPY ONLY" if this setting is not supplied. It is a legal requirement in some countries to mark receipts as
duplicates.
PrintCopyTrashMessage
If a cancelled sale is reprinted, this setting can be used to override the default of "TRASHED SALE". This value can also be
overriden by setting the user message #301,32. It is highly recommended to ensure cancelled sale receipts are clearly identified
as void to discourage return fraud.
PrintRuleWidth
(11 Jun 2015, P1857) Sets the width of printed lines on receipts drawn using the %RULE% command. The
default width is 1 pixel wide but on some printers this results in a line that is too narrow. If the %RULE% command
includes width information, this setting is ignored for that single rule.
PostecSLFormat
Sets a specific saleline format structure of salelines that arrive from integrated fuel controllers. This ensures that fuel products
are formatted differently to normal retail items
SalelineFmtModifier0
Sets a specific saleline format for modifiers
SalePrintSort
Sets a column to sort salelines on before printing. This is rarely used and is incompatiable with other settings (such as background color)
PrintModifierAdjust
Sets an indent for modifiers from the left margin.
SystemDiscountRatePrintTotal
Specifies a format to print an additional line highlighting how much store wide discounting has saved. If the total store wide discount
for this sale is zero, nothing is printed
Lookup Screens
LookupVisibility
If the column locationvisibility exists this setting controls whether lookup screens obey this field setting or not. The
default is to NOT obey this field. To ensure it is obeyed, set this setting to 1.
(14 June 2015, P1860) This setting extended to control reference tables used in combo fields on lookups and XML input screen
LookupVisibilityLocationList
If LookupVisibility controls are in operation, this setting allows you to add additional locations to the valid list. Values should
be comma seperated and without a leading comma for the first item.
For example, if you set this to "3,4,5", then the
rough equivalent SQL then becomes
select ... where locationvisibility in (XXX,3,4,5)
where XXX is automatically
populated with the current location.
GLAllowTouch
Enable touch screen logic. This setting is on by default and used to disable touch logic throughout the system. See "TouchScreen"
to actually implement touch screen handling
TouchScreen
Enables POS generated on screen keyboards when required. If possible you should try and use
Windows provided on screen keyboards, however the POS keyboards can be more suitable in some environments,
especially those with limited screen size.
GLDetail
Controls if "detail" buttons are disabled on relevant lookup screens. This is enabled by default. Set this value to 0
to disable detail screens
GLDefault.Lines
If enabled gridlines are drawn inside lookup screens. The default is no gridlines
GLDefault.Fullrow
Allows users to select the row by clicking anywhere along the row. Default is enabled. If disabled
users can only select by clicking on the first column
GLHighLightOverlay
If the lookup table has store specific overrides (ie, Store N can override fields like description or price to be store specific)
then these rows are highlighted to alert the operator of this fact. The following values are possible
Value | Description |
0 | No highlighting |
1 (default) | Highlight if the override applies to this store |
2 | Highlight if an override is present in any store. For this to work data must be fully replicating which is not typically implemented. It is best to consider this
option a special case and not generally used. |
GLRClickOverlayRemove
Can users right click rows to remove overlays? Enabled by default
LookupSalefindCreateSale
If a lookup screen is in "salefind" mode and no sale exists, can one be created automatically or is
an error returned to the operator? The default is to create a new sale
LookupEnableIdsets
If idsets are enabled (groups of items, where items can belong to 0, 1 or multiple groups at the same time)
is "Filter by set" permitted to allow user to select a "set" to reduce the rows displayed.
GLGdsEdit
When editing items are the users allowed to do it directly in POS or are they to be silently connected
to Store Server and/or Head Office server. Using a central server can provide more standardised and controlable
process. The default is currently to allow POS directly but this is likely to change in the future
Standard Screens
The POS system often needs to call a common or standard screens from different places in the code. Displaying a product
lookup is a very common example. Where these standard screens are used by deeply buried code (such as while receiving a purchase order) then
the system calls the standard screen hander. Some of these standard screen handlers allow you to customise
how that screen works.
StdScr.PromptCustomer.Cmd
When a standard prompt to lookup a customer is required, this setting allows you to override the lookup(setting-value) part of the lookup
command. You screen must be able to return customer id(s) and/or physkey(s)
StdScr.PromptDepartment.Cmd
When a standard prompt to lookup a department is required, this setting allows you to override the lookup(setting-value) part of the lookup
command. You screen must be able to return department id(s) and/or physkey(s)
StdScr.PromptProduct.Cmd
When a standard prompt to lookup a product is required, this setting allows you to override the lookup(setting-value) part of the lookup
command. You screen must be able to return product id(s) and/or physkey(s)
StdScr.PromptSupplier.Cmd
When a standard prompt to lookup a supplier is required, this setting allows you to override the lookup(setting-value) part of the lookup
command. You screen must be able to return supplier id(s) and/or physkey(s)
TimeScheduler
The timescheduler is a small component to allow PosCommands to be executed at certain times, if the POS is running. You can also schedule PosCommands
via Windows task scheduler
TimeScheduleExecute
If timeschedule tasks are present, they are executed. This setting can be set to zero to explicitly disable
all timeschedule tasks
TimeScheduleGroups
An optional comma seperated list of additional licid that this lane is able to execute.
TimeScheduleRandom
When enabled (default enabled) the timescheduler selects a random start time from the start-end window. This is to ensure that hunreds or thousands
of machines do not all execute the same command at the same instant. The start time is selected from the first 70% of the total window. For example
if the start and end times are 17:10 and 17:20, then each POS will randomly set the start time to between 17:10 and 17:17 This random selection
happens each time the scheduled tasks are loaded
Monitoring
Settings that control monitoring and auditing of actions and environment. They do not generally affect sale processing directly. External
monitoring is used for proactive support.
FieldpineServer
The address that external events are sent too. If you wish to disable external event reporting, set this to empty ( force:FieldpineServer= )
External reporting is mandatory for free versions of POS and Online POS and cannot be disabled.
Tuev.ExtendedInfo
(12 Oct 2014, P1831) Controls if external monitoring events can send extended information that potentially identifies your machine. No information is
sent identifying customer, sales or revenue. It is only permitting technical information that would be of interest to IT support. No passwords or keys are sent.
The default is to send information. It is a bit field, with the following meanings
Bit Value | Enables sending |
1 |
- Type of Program; lane, store server, head office, printer/eft agent,...
- Store Location and Lane Number
- Country Code and ISO Country Code
|
2 | Information on all physical devices of interest to Retail, such as print queues,
eftpos terminals, scales. This information include status information and relevant counters |
4 | Complete identifying information, such as
- Primary MAC address
- Disk drive serial# and model
- Identification numbers of the computer, name of computer, manufacturer
- Local time and UTC time
- System licence number
|
8 | Send reporting information about external links, such as FTP, automated email accounts. |
User Interfaces
BrowserVersionLock
(22 Jan 2016, P1904) The version of the web browser used inside the POS is controlled by a Windows
registry setting. If the BrowserVersionLock setting is not defined the POS will control this value itself and attempt to ensure more recent
versions of IE are used. If you wish to
manually control the registry, set this setting to "lock", and the POS will not change the registry. Alternatively, set this setting to a
constant number and the registry value will be set to this value. Changes to this setting may require 2 Pos restarts to be effective, as the Dlls
may have already been loaded when the setting is processed.
See UiBrowser.htm for more details.