pixiGetSettings
Returns the value of a single Pixi setting or, if no name is given, an overview of selected settings, licence counters and master data counts.
Reads system settings from the Settings table. Empty strings in any parameter are treated as NULL.
The call works in three modes:
SettingName=LocID: returns one row withSettingName=LocIDand aSettingValuethat lists all location IDs fromLocation, each followed by;(e.g.001; 002;).- Any other
SettingName: returns one row with the requested name and its value fromSettings(first match). If the setting does not exist or its value isNULL,SettingValueis'0'. - No
SettingName(omitted or empty): returns an overview with several rows:- the settings
EnablePrintingRules,BookExportDatevActive,FulfillmentBuyingOption,pixiLicences,ReservePrepaymentOrders,ScanInWithPiccoLink,EnablePersonalizedItems,SerialNumberValidityCheckEnabled,PixiMail_CreationEnabled,PixiMail_SendingEnabled,C_ItemImportEnabled,C_OrderImportEnabled,ReturnsEnabled,EnableDbCCP,Add_0_to_12_char_BarCode,default_quantity,APIUpdateItemBinCodes,NumberOfPiccoTerminals(only those that exist inSettings), Mobile_Licenses: number of active user sessions with session type 4 or 5,Suppliers,Shops,Locations: number of records in the respective tables,ShipVendors: all shipping vendor names, each followed by,,LocID: all location IDs, each followed by;,PIM:'1'if aShopUrlsetting points topim.pixi.euorpim-beta.pixi.eu, otherwise'0'. If the settingC_OrderImportEnabledis1, the channel settings (C_ChannelSettings) are checked as well.
- the settings
The overview rows are combined with UNION, so duplicate rows are removed and no sort order is guaranteed.
Notes
ShopIDandLocIDare passed to the internal setting lookup function, but that function ignores them. Shop- or location-specific values are therefore not returned; the result is always the global value fromSettings.- A missing setting is indistinguishable from a setting with value
'0'. - All reads use
NOLOCK, so values may reflect uncommitted changes. - The lists for
LocIDandShipVendorsare built withFOR XML PATH, so they end with a trailing separator, special characters such as&may appear XML-escaped, and the value isNULLif the table is empty. - In overview mode,
C_OrderImportEnabledis compared with the number1; a non-numeric value of this setting would cause a conversion error.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
SettingName
|
varchar(50) string |
– |
Name of the setting to read. Example: |
ShopID
|
varchar(3) string |
– |
Shop ID. Passed to the setting lookup but currently without effect. Example: |
LocID
|
varchar(3) string |
– |
Location ID. Passed to the setting lookup but currently without effect. Example: |
Response
Result set 1 · If SettingName = LocID
One row with the list of all location IDs.
| Column | Type | Description |
|---|---|---|
SettingName
|
varchar(5) string |
Always |
SettingValue
Nullable |
nvarchar(max) string |
All location IDs, each followed by |
Result set 2 · If SettingName is given and is not LocID
One row with the requested setting and its value.
| Column | Type | Description |
|---|---|---|
SettingName
|
varchar(50) string |
The requested setting name as passed in. |
SettingValue
|
varchar(8000) string |
Value of the setting; |
Result set 3 · If SettingName is empty or omitted
Overview of selected settings, licence counters, master data counts, shipping vendors, location IDs and the PIM flag; unsorted.
| Column | Type | Description |
|---|---|---|
SettingName
|
string |
Setting name or name of the computed value ( |
SettingValue
Nullable |
nvarchar(max) string |
Setting value, count as text, separated list or |
Response example
<SqlRowSet1>
<row>
<SettingName>LocID</SettingName>
<SettingValue>001; 002; </SettingValue>
</row>
</SqlRowSet1>
Examples
POST https://apigateway.descartes.com/tms/pixi/
Content-Type: text/xml; charset=utf-8
Authorization: Basic BASE64(USERNAME:PASSWORD)
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiGetSettings>
<!-- <SettingName>ReturnsEnabled</SettingName> -->
<!-- <ShopID>SHP</ShopID> -->
<!-- <LocID>001</LocID> -->
</ns1:pixiGetSettings>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
curl -X POST 'https://apigateway.descartes.com/tms/pixi/' \
--user 'USERNAME:PASSWORD' \
--header 'Content-Type: text/xml; charset=utf-8' \
--data-binary @- <<'XML'
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiGetSettings>
<!-- <SettingName>ReturnsEnabled</SettingName> -->
<!-- <ShopID>SHP</ShopID> -->
<!-- <LocID>001</LocID> -->
</ns1:pixiGetSettings>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML
<?php
$soapClient = new SoapClient(null, [
'login' => 'USERNAME',
'password' => 'PASSWORD',
'location' => 'https://apigateway.descartes.com/tms/pixi/',
'uri' => 'https://apigateway.descartes.com/tms/pixi/',
]);
$arguments = [
// 'SettingName' => 'ReturnsEnabled',
// 'ShopID' => 'SHP',
// 'LocID' => '001',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiGetSettings', $soapArguments);
Tables used
- SQL object:
- dbo.pipiGetSettings