Varijanta 1



Option 1

Your computer can retrieve results from our server using web services via SOAP.

The idea

The basic idea is to generate your price list on-line using your data. You program your web on your own, and where you want our products, you call our web services in real time. For example: customer searches your price list page and you list products in the loop. When you reach our product, you call our web service on Internet and get data: picture, price, availability. You list and proceed in the loop. Calling several dozens or hundreds of products while listing your page is not an issue for us in this way.

If you find the above as overspending Internet traffic, the alternative is to replicate our data at your site, in whole or in part. In part means static data such as pictures, dimensions, descriptions and similar. Possibly prices as well. What should be replicated as the last resort is availability since this information changes quite often. 

Useful functions are  itemList(), providing product codes, itemListAndData() returns static data on all products, itemData() providing the most data, however for one product only. For example, it works in combination with itemList(), where you pass thru loop and call itemData() for each product. See HYPERLINK "" \l "example" this example in text below. Function priceList() provides dynamic data for all products, but only basic, static ones.

If you find SOAP too complicated, you can use option 3. Functions are identical (implemented ones), arguments are passed to the query string, result is in XML format and it is compliant with web server (entire page). SOAP is better, but this is simpler.

You sales prices are most easily formed by adding margin to our resale prices. Forming price by adding margin to your purchase price (herein after PP) (our sales price to you, herein after SP) is paved with problems. Discounts are calculated from about 15 tables, purchase history, payment due date, number of pieces, and this data is input to tightly coded program logic. If we presented all this data using SOAP (so that you yourself can calculate our purchase price, herein after PP), no one would feel like implementing it. The alternative is that we list your PP in some service, what we actually do, but only in itemData() (data for one product), after entering payment due date, number of pieces and it is deemed to be price at that very moment, with current purchase history. Listing for all products at once would not have any sense. Because it would take too long, and because various products, in general, have specific parameters. If you were satisfied with certain parameters, listing would take more than 20 minutes anyway and probability for success would not be great. Long functions would interfere the application scalability and would take too long as opposed to calling many short functions (for each product).

Sales process flow: temporary PO (shopping basket, does not book the goods) -> PO (goods booked) -> PO released for packing -> Option 1: Delivery note and then invoice. 2: Directly to account. PO released for packing is usually short-lived -> Option 3: transactions for commission transferring goods to your commission sale warehouse. It is better not to use our shopping basket, although some functions are displayed. It is better to have shopping basket in your application. When your customer fills up the shopping basket, you call addSO() that will generate PO and book the goods. Before calling addSO(), you can check availability of all selected products once again. After addSO(), you collect money from credit card company. It is fails, you call deleteSO().

All exhibited prices are excluding tax.

Our customer Silens made the   HYPERLINK "" PHP data import program. Here is the example.

Testing functions

If you use .Net, run Microsoft SvcUtil.exe, e.g., "C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\svcutil.exe" /directory:"C:\Temp" /language:c# /out:ClientCode.cs /config:app.config . Include obtained code in your program, and configuration file to the application configuration file. More details on SvcUtil can be found on Microsoft website.

Make project from class generated by SvcUtil and call some of the functions described below. Call details can be found on Microsoft website.

Web services run in other environments, be we have no details on tests.

SOAP is not Microsoft specific and it is not bound to it. We have no examples for other technologies.

The following functions are implemented:

All products- itemList(string aspServer, string customerKey, string password, string cookie). Example of results:

 

amd-a2x2-240-am3

amd-a2x2-245-am3

amd-a2x2-250-am3

...

Filtered products - itemListFiltered(string aspServer, string customerKey, string password, string cookie, string tradeMarkKey, string itemTypeKey, bool extraInfo). tradeMarkKey - if you enter trade mark, it will be filter criteria. No filtering by trade mark is performed if the string is empty. Similar for the product type; using itemTypeKey. extraInfo returns more data.

Example of results:

 

amd-a2x2-240-am3

amd-a2x2-245-am3

amd-a2x2-250-am3

...

All products with respective data - itemListAndData(string aspServer, string customerKey, string password, string cookie), returns codes of active products and additional data, for the time being only GRIN (EAN included). Products make the price list (priceList()), but price list contains kits as well, which are located in a separate table. Example of results:

 

amd-a2x2-240-am3

730143273039

398,66

3

11,5

11

7

0,302

true

...

All payment due dates - arTermsList(string aspServer, string customerKey, string password, string cookie). Listing format is:

 

315 days

822 days

430 days

57 days

xB2B 30 days

yB2B 45 days

zB2B 60 days

kB2B 7 days

wB2B As per invoice

2As per invoice

1Advanced payment

All trade marks - tradeMarkList(IContext ctx, string aspServer, string customerKey, string password). Example of results:

 

...

All product types - itemTypeList(IContext ctx, string aspServer, string customerKey, string password). Example of results:

 

...

All product subtypes - itemSubTypeList(IContext ctx, string aspServer, string customerKey, string password, string onlyForItemTypeKey). If onlyForItemTypeKey is an empty string, all subtypes are listed, otherwise only those referring to that type. Most of the subtypes do not refer exclusively to one type. If there is the exclusive connection, attribute "onlyFor" appears in the XML element "description" . Example of results:

 

2

3

...

Product data - itemData(string aspServer, string customerKey, string password, string cookie, string itemKey, long quantity, bool extraInfo, string termsKey)

extraInfo provides more information. Choices for termsKey are provided by arTermsList(). E.g., "1" means advanced payment. Choices for itemKey are provided by itemList().

If entered number of pieces is greater than zero and termsKey, returned prices refers to required number, according to current special offers, quantity and other discounts.

If zero quantity is entered, our wholesale price (hereinafter WP) is returned, without discount, except for special offers.

For quantity equal to -1, WP is returned without any special offers applied.

freeOnStock returns number of available pieces (stock minus customer bookings). If bookings exceed the stock, zero (0) is returned.

availability returns availability in a string formatted so that user can read it, e.g., "Arriving in 7 days". It has no defined set of values.

group is type. List is returned by the itemTypeList() function.

subGroup is subtype. List is returned by the itemSubTypeList() function.

Example of results for itemKey "nec-fd", quantity "1", extraInfo "true" i termsKey "1":

 

34,79

33,4

2

0

1 pc. not ordered, usually arriving in 21 days.

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download