Class Product
Information about a Product from the ERP system. This may be fetched from SuperOffice Product table through the SO Connector
Carrier object for Product. Services for the Product Carrier is available from the Quote Agent.Namespace: SuperOffice.CRM.Services
Assembly: SuperOffice.Services.dll
Syntax
[DataContract(Namespace = "http://www.superoffice.net/ws/crm/NetServer/11.7.0.0")]
public class Product : Carrier
Examples
Get Product 123 using the agent:
using SuperOffice;
using SuperOffice.CRM.Services;
using (SoSession mySession = SoSession.Authenticate("user", "pass"))
{
var agent = new QuoteAgent();
var product = agent.GetProduct( 123 );
}
Find all Product, get related items using archive agent.
var archive = new ArchiveAgent();
var rows = archive.GetArchiveListByColumns2("Product", "...", null, "getAllRows eq 1", null, 0, 100 );
Constructors
Product()
Default constructor
Declaration
public Product()
See Also
Properties
Code
The product code / article number in the product supplier system.
Declaration
[DataMember]
public virtual string Code { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
DefaultSubscriptionQuantity
The default number of SubscriptionUnits to suggest when creating quote lines from this product
Declaration
[DataMember]
public virtual double DefaultSubscriptionQuantity { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
Description
The description to use, with potentially several lines. Will be used as tool-tip to use in the list user interface too.
Declaration
[DataMember]
public virtual string Description { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ERPPriceListKey
Foreign key to the price list that this product is a part of, or the primary key of the pricelist if this is a built-in pricelist.
Declaration
[DataMember]
public virtual string ERPPriceListKey { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ERPProductKey
Reference/foreign key to the product in the given pricelist in the product supplier system, if it exists there.
Declaration
[DataMember]
public virtual string ERPProductKey { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraField1
This a simple field for adding information that the Connector can provide, and that the qoute document need to display.
Declaration
[DataMember]
public virtual string ExtraField1 { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraField2
This a simple field for adding information that the Connector can provide, and that the qoute document need to display.
Declaration
[DataMember]
public virtual string ExtraField2 { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraField3
This a simple field for adding information that the Connector can provide, and that the qoute document need to display.
Declaration
[DataMember]
public virtual string ExtraField3 { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraField4
This a simple field for adding information that the Connector can provide, and that the qoute document need to display.
Declaration
[DataMember]
public virtual string ExtraField4 { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraField5
This a simple field for adding information that the Connector can provide, and that the qoute document need to display.
Declaration
[DataMember]
public virtual string ExtraField5 { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ExtraInfo
Extra information, supplied by QuoteConnector, used by a future dynamic GUI extension
Declaration
[DataMember]
public virtual ProductExtraDataField[] ExtraInfo { get; set; }
Property Value
| Type | Description |
|---|---|
| ProductExtraDataField[] |
See Also
InAssortment
True for products that should currently be offered, false when the product is discontinued and should not ordinarily be offered. When false the product no longer appears in search results.
Declaration
[DataMember]
public virtual bool InAssortment { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
See Also
InStock
Negative numbers will be interpreted as how many is ordered. Might not be available.
Declaration
[DataMember]
public virtual double InStock { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
IsSubscription
Is this a subscription product, sold in repeating intervals/amounts?
Declaration
[DataMember]
public virtual bool IsSubscription { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
See Also
ItemNumber
Line item number, NOR: «Postnummer». Specific numbers from some hierarchy, for instance “1.4.3.2P”. Typically used to sort the items in the quote by some standard way.
Declaration
[DataMember]
public virtual string ItemNumber { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
Name
The name to use in the user interface.
Declaration
[DataMember]
public virtual string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
PriceUnit
What is the unit (meter, ton, bushel, microsecond, gradus, τρυβλίον, 五合枡, دونم or whatever); read-only for lines that originate in defined products
Declaration
[DataMember]
public virtual string PriceUnit { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ProductCategoryKey
Either a List id to an id from a connector provided list, or, if the connection doesn’t support lists, a text with the actual product category.
Declaration
[DataMember]
public virtual string ProductCategoryKey { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ProductFamilyKey
Either a List id to an id from a connector provided list, or, if the connection doesn't support lists, a text with the actual product family.
Declaration
[DataMember]
public virtual string ProductFamilyKey { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
ProductId
Primary key
Declaration
[DataMember]
public virtual int ProductId { get; set; }
Property Value
| Type | Description |
|---|---|
| int |
See Also
ProductTypeKey
Either a List id to an id from a connector provided list, or, if the connection doesn’t support lists, a text with the actual product type.
Declaration
[DataMember]
public virtual string ProductTypeKey { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
QuantityUnit
What is the unit (meter, ton, bushel, microsecond, gradus, τρυβλίον, 五合枡, دونم or whatever); Connector handles conversion relative to PriceUnit if they are different
Declaration
[DataMember]
public virtual string QuantityUnit { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
RawExtraInfo
Read-only extra information in plain text, supplied by QuoteConnector, used by a future dynamic GUI extension
Declaration
[DataMember]
public virtual string RawExtraInfo { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
Rights
Field1=right&Field2=right, etc. of any fields that have non-standard field access rights. Rights can be one of: N (=None or Hidden), R (=Read-only), W (=Writeable), M (=Mandatory). The fields will mostly be from the Quoteline table, but some added fields that are conceptually part of the quoteline, like Image will also be possibly to set rights on. Will be used by SuperOffice to control the user interface when showing the record.
Declaration
[DataMember]
public virtual string Rights { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
Rule
The names of one or more calculation rules that are in effect for this line, comma-separated case-insensitive. Will NOT be used by SuperOffice.
Declaration
[DataMember]
public virtual string Rule { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
SubscriptionUnit
Either a List id to an id from a connector provided list, or, if the connection doesn’t support lists, a text with the actual subscription unit.
Declaration
[DataMember]
public virtual string SubscriptionUnit { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
Supplier
In SuperOffice, an id from the contact table, when saved as an ERP cache, the name of the supplier
Declaration
[DataMember]
public virtual string Supplier { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
SupplierCode
Suppliers part code/number or other key-like field
Declaration
[DataMember]
public virtual string SupplierCode { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
UnitCost
The cost price. Might not be given, use Decimal.MinValue to signal this.
Declaration
[DataMember]
public virtual double UnitCost { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
UnitListPrice
(Basic Price, normal price, standard price.) This is the basic price from which the discount is computed from. The ListPrice will stay the same even when a larger amount is ordered.
Declaration
[DataMember]
public virtual double UnitListPrice { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
UnitMinimumPrice
The minimum price this salesman can offer to his customer. This might be cost price if there is no policy. Might not be given, use Decimal.MinValue to signal this.
Declaration
[DataMember]
public virtual double UnitMinimumPrice { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
Url
URL to product information web page.
Declaration
[DataMember]
public virtual string Url { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
VAT
Tax/VAT if available from ERP system. THIS IS A PERCENTAGE. In the Superoffice product register, this field is available in the product admin GUI.
Declaration
[DataMember]
public virtual double VAT { get; set; }
Property Value
| Type | Description |
|---|---|
| double |
See Also
VATInfo
A field for putting VATInfo you need to show in the final quoteDocument, like the VAT type that is used. Not used in any business logic in SuperOffice; available to document templates.
Declaration
[DataMember]
public virtual string VATInfo { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
See Also
Methods
ToString()
Returns the carrier contents as a formatted string.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string | The carrier contents. |
See Also
ToString(string)
Returns the carrier contents as a formatted string, useful for debugging. Each line in the output is prefixed with the input value.
Declaration
public string ToString(string prefix)
Parameters
| Type | Name | Description |
|---|---|---|
| string | prefix | The line prefix (typically used for indenting) |
Returns
| Type | Description |
|---|---|
| string | The carrier contents. |