Show / Hide Table of Contents

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.
Inheritance
object
Product
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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

Name

The name to use in the user interface.

Declaration
[DataMember]
public virtual string Name { get; set; }
Property Value
Type Description
string
See Also
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

ProductId

Primary key

Declaration
[DataMember]
public virtual int ProductId { get; set; }
Property Value
Type Description
int
See Also
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

Url

URL to product information web page.

Declaration
[DataMember]
public virtual string Url { get; set; }
Property Value
Type Description
string
See Also
IQuoteAgent

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
IQuoteAgent

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
IQuoteAgent

Methods

ToString()

Returns the carrier contents as a formatted string.

Declaration
public override string ToString()
Returns
Type Description
string

The carrier contents.

See Also
IQuoteAgent

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.

See Also
IQuoteAgent

See Also

IQuoteAgent
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top