mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-03-17 21:08:03 +02:00
OZON: Обновление цен и получение остатков
This commit is contained in:
parent
32c9560954
commit
9409ecdee7
4
.github/workflows/oint_test_full_en.yml
vendored
4
.github/workflows/oint_test_full_en.yml
vendored
@ -1198,6 +1198,10 @@ jobs:
|
|||||||
if: ${{ cancelled() }} == false
|
if: ${{ cancelled() }} == false
|
||||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_Tests.os "OzonAPI_Barcodes"
|
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_Tests.os "OzonAPI_Barcodes"
|
||||||
|
|
||||||
|
- name: Warehouses managment
|
||||||
|
if: ${{ cancelled() }} == false
|
||||||
|
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/en/OInt/tests/Modules/internal/OPI_Tests.os "OzonAPI_WarehousesManagment"
|
||||||
|
|
||||||
- name: Записать логи
|
- name: Записать логи
|
||||||
if: ${{ cancelled() }} == false
|
if: ${{ cancelled() }} == false
|
||||||
uses: actions/cache/save@v3
|
uses: actions/cache/save@v3
|
||||||
|
4
.github/workflows/oint_test_full_ru.yml
vendored
4
.github/workflows/oint_test_full_ru.yml
vendored
@ -1202,6 +1202,10 @@ jobs:
|
|||||||
if: ${{ cancelled() }} == false
|
if: ${{ cancelled() }} == false
|
||||||
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ОзонАПИ_РаботаСоСкладами"
|
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ОзонАПИ_РаботаСоСкладами"
|
||||||
|
|
||||||
|
- name: Цены и остатки товаров
|
||||||
|
if: ${{ cancelled() }} == false
|
||||||
|
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ОзонАПИ_ЦеныИОстаткиТоваров"
|
||||||
|
|
||||||
- name: Записать логи
|
- name: Записать логи
|
||||||
if: ${{ cancelled() }} == false
|
if: ${{ cancelled() }} == false
|
||||||
uses: actions/cache/save@v3
|
uses: actions/cache/save@v3
|
||||||
|
4
docs/en/data/Ozon/GetProductsStocks.json
Normal file
4
docs/en/data/Ozon/GetProductsStocks.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"ClientID": "2128753",
|
||||||
|
"APIKey": "7cc90d26-33e4-499b..."
|
||||||
|
}
|
5
docs/en/data/Ozon/UpdateProductsPrices.json
Normal file
5
docs/en/data/Ozon/UpdateProductsPrices.json
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"ClientID": "2128753",
|
||||||
|
"APIKey": "7cc90d26-33e4-499b...",
|
||||||
|
"ProductID": 1111588191
|
||||||
|
}
|
11
docs/en/examples/Ozon/GetProductsStocks.txt
Normal file
11
docs/en/examples/Ozon/GetProductsStocks.txt
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
ClientID = "2128753";
|
||||||
|
APIKey = "7cc90d26-33e4-499b...";
|
||||||
|
|
||||||
|
IDArray = New Array;
|
||||||
|
IDArray.Add("143210608");
|
||||||
|
|
||||||
|
Filter = New Structure;
|
||||||
|
Filter.Insert("visibility" , "ALL");
|
||||||
|
Filter.Insert("offer_id" , IDArray);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.GetProductsStocks(ClientID, APIKey, Filter);
|
@ -1,4 +1,4 @@
|
|||||||
ClientID = "2128753";
|
ClientID = "2128753";
|
||||||
APIKey = "7cc90d26-33e4-499b...";
|
APIKey = "7cc90d26-33e4-499b...";
|
||||||
|
|
||||||
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
||||||
|
15
docs/en/examples/Ozon/UpdateProductsPrices.txt
Normal file
15
docs/en/examples/Ozon/UpdateProductsPrices.txt
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
ClientID = "2128753";
|
||||||
|
APIKey = "7cc90d26-33e4-499b...";
|
||||||
|
ProductID = "1111588191";
|
||||||
|
|
||||||
|
Prices = New Structure;
|
||||||
|
Prices.Insert("auto_action_enabled" , "DISABLED");
|
||||||
|
Prices.Insert("currency_code" , "RUB");
|
||||||
|
Prices.Insert("min_price" , "200");
|
||||||
|
Prices.Insert("offer_id" , "143210608");
|
||||||
|
Prices.Insert("old_price" , "0");
|
||||||
|
Prices.Insert("price" , "200");
|
||||||
|
Prices.Insert("price_strategy_enabled", "DISABLED");
|
||||||
|
Prices.Insert("product_id" , ProductID);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.UpdateProductsPrices(ClientID, APIKey, Prices);
|
5
docs/ru/data/Ozon/ОбновитьЦеныТоваров.json
Normal file
5
docs/ru/data/Ozon/ОбновитьЦеныТоваров.json
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"IDКлиента": "2128753",
|
||||||
|
"КлючAPI": "7cc90d26-33e4-499b...",
|
||||||
|
"IDТовара": 1111588191
|
||||||
|
}
|
4
docs/ru/data/Ozon/ПолучитьКоличествоТоваров.json
Normal file
4
docs/ru/data/Ozon/ПолучитьКоличествоТоваров.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"IDКлиента": "2128753",
|
||||||
|
"КлючAPI": "7cc90d26-33e4-499b..."
|
||||||
|
}
|
15
docs/ru/examples/Ozon/ОбновитьЦеныТоваров.txt
Normal file
15
docs/ru/examples/Ozon/ОбновитьЦеныТоваров.txt
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
IDКлиента = "2128753";
|
||||||
|
КлючAPI = "7cc90d26-33e4-499b...";
|
||||||
|
IDТовара = "1111588191";
|
||||||
|
|
||||||
|
Цены = Новый Структура;
|
||||||
|
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||||
|
Цены.Вставить("currency_code" , "RUB");
|
||||||
|
Цены.Вставить("min_price" , "200");
|
||||||
|
Цены.Вставить("offer_id" , "143210608");
|
||||||
|
Цены.Вставить("old_price" , "0");
|
||||||
|
Цены.Вставить("price" , "200");
|
||||||
|
Цены.Вставить("price_strategy_enabled", "DISABLED");
|
||||||
|
Цены.Вставить("product_id" , IDТовара);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ОбновитьЦеныТоваров(IDКлиента, КлючAPI, Цены);
|
11
docs/ru/examples/Ozon/ПолучитьКоличествоТоваров.txt
Normal file
11
docs/ru/examples/Ozon/ПолучитьКоличествоТоваров.txt
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
IDКлиента = "2128753";
|
||||||
|
КлючAPI = "7cc90d26-33e4-499b...";
|
||||||
|
|
||||||
|
МассивID = Новый Массив;
|
||||||
|
МассивID.Добавить("143210608");
|
||||||
|
|
||||||
|
Фильтр = Новый Структура;
|
||||||
|
Фильтр.Вставить("visibility" , "ALL");
|
||||||
|
Фильтр.Вставить("offer_id" , МассивID);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ПолучитьКоличествоТоваров(IDКлиента, КлючAPI, Фильтр);
|
@ -1,4 +1,4 @@
|
|||||||
IDКлиента = "2128753";
|
IDКлиента = "2128753";
|
||||||
КлючAPI = "7cc90d26-33e4-499b...";
|
КлючAPI = "7cc90d26-33e4-499b...";
|
||||||
|
|
||||||
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -929,7 +929,7 @@ Function GetAttributesUpdateStructure(Val Clear = False) Export
|
|||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
// Get products filter structure
|
// Get products filter structure
|
||||||
// Gets the structure for products list selecting in the GetProductList function
|
// Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks
|
||||||
//
|
//
|
||||||
// Note
|
// Note
|
||||||
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||||
@ -1141,6 +1141,38 @@ EndFunction
|
|||||||
|
|
||||||
#Region PricesAndStocks
|
#Region PricesAndStocks
|
||||||
|
|
||||||
|
// Get products stocks
|
||||||
|
// Gets the number of items in the balance with or without filtering
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// Method at API documentation: [post /v3/product/info/stocks](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoStocksV3)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// ClientID - String - Client identifier - clientid
|
||||||
|
// APIKey - String - API key - apikey
|
||||||
|
// Filter - Structure of KeyAndValue - Product selection filter. See GetProductsFilterStructure - filter
|
||||||
|
// LastID - String, Number - ID of the last value (last_id) from the previous response - last
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||||
|
Function GetProductsStocks(Val ClientID, Val APIKey, Val Filter = "", Val LastID = 0) Export
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v3/product/info/stocks";
|
||||||
|
|
||||||
|
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||||
|
Limit = 100;
|
||||||
|
|
||||||
|
Parameters = New Structure;
|
||||||
|
OPI_Tools.AddField("filter" , Filter , "Collection", Parameters);
|
||||||
|
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||||
|
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||||
|
|
||||||
|
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||||
|
|
||||||
|
Return Response;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
// Update products stocks
|
// Update products stocks
|
||||||
// Changes the information about the stock amount of a product
|
// Changes the information about the stock amount of a product
|
||||||
//
|
//
|
||||||
@ -1172,6 +1204,34 @@ Function UpdateProductsStocks(Val ClientID, Val APIKey, Val Stocks) Export
|
|||||||
|
|
||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
|
// Update products prices
|
||||||
|
// Changes the price of one or more items
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// Method at API documentation: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// ClientID - String - Client identifier - clientid
|
||||||
|
// APIKey - String - API key - apikey
|
||||||
|
// Prices - Array of Structure - Products prices. See GetProductPriceStructure - prices
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||||
|
Function UpdateProductsPrices(Val ClientID, Val APIKey, Val Prices) Export
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v1/product/import/prices";
|
||||||
|
|
||||||
|
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||||
|
|
||||||
|
Parameters = New Structure;
|
||||||
|
OPI_Tools.AddField("prices", Prices, "Array", Parameters);
|
||||||
|
|
||||||
|
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||||
|
|
||||||
|
Return Response;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
// Get product stocks structure
|
// Get product stocks structure
|
||||||
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
||||||
//
|
//
|
||||||
@ -1205,6 +1265,44 @@ Function GetProductStocksStructure(Val Clear = False) Export
|
|||||||
|
|
||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
|
// Get product price structure
|
||||||
|
// Gets the product price structure for the UpdateProductsPrices function
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// Clear - Boolean - True > structure with empty valuse, False > field descriptions at values - empty
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Structure of KeyAndValue - Filter fields structure
|
||||||
|
Function GetProductPriceStructure(Val Clear = False) Export
|
||||||
|
|
||||||
|
OPI_TypeConversion.GetBoolean(Clear);
|
||||||
|
|
||||||
|
ItemStructure = New Structure;
|
||||||
|
|
||||||
|
ItemStructure.Insert("auto_action_enabled" , "<Enable auto application of shares: ENABLED or DISABLED>");
|
||||||
|
ItemStructure.Insert("currency_code" , "<currency>");
|
||||||
|
ItemStructure.Insert("min_price" , "<minimum price of product after promotions have been applied>");
|
||||||
|
ItemStructure.Insert("offer_id" , "<product identifier in the sellers system>");
|
||||||
|
ItemStructure.Insert("old_price" , "<price before discounts; specify 0 if no discounts are available>");
|
||||||
|
ItemStructure.Insert("price" , "<product price with discounts>");
|
||||||
|
ItemStructure.Insert("price_strategy_enabled", "<auto application of price strategies: ENABLED or DISABLED>");
|
||||||
|
ItemStructure.Insert("product_id" , "<Product ID>");
|
||||||
|
|
||||||
|
|
||||||
|
If Clear Then
|
||||||
|
For Each Field In ItemStructure Do
|
||||||
|
Field.Value = "";
|
||||||
|
EndDo;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
//@skip-check constructor-function-return-section
|
||||||
|
Return ItemStructure;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
|
||||||
#Region WarehousesManagment
|
#Region WarehousesManagment
|
||||||
|
@ -3300,11 +3300,23 @@ Procedure OzonAPI_Barcodes() Export
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure OzonAPI_PricesAndStocks() Export
|
||||||
|
|
||||||
|
TestParameters = New Structure;
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ProductID", TestParameters);
|
||||||
|
|
||||||
|
Ozon_GetProductsStocks(TestParameters);
|
||||||
|
Ozon_UpdateProductsPrices(TestParameters);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
Procedure OzonAPI_WarehousesManagment() Export
|
Procedure OzonAPI_WarehousesManagment() Export
|
||||||
|
|
||||||
TestParameters = New Structure;
|
TestParameters = New Structure;
|
||||||
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
||||||
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
||||||
|
|
||||||
Ozon_GetWarehousesList(TestParameters);
|
Ozon_GetWarehousesList(TestParameters);
|
||||||
|
|
||||||
@ -4170,6 +4182,12 @@ Procedure Check_OzonObjectsArray(Val Result)
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Check_OzonUpdatedArray(Val Result)
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.ExpectsThat(Result["result"][0]["updated"]).Равно(True);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
Procedure Check_OzonRatingArray(Val Result)
|
Procedure Check_OzonRatingArray(Val Result)
|
||||||
|
|
||||||
OPI_TestDataRetrieval.ExpectsThat(Result["products"]).ИмеетТип("Array");
|
OPI_TestDataRetrieval.ExpectsThat(Result["products"]).ИмеетТип("Array");
|
||||||
@ -12593,8 +12611,8 @@ EndProcedure
|
|||||||
|
|
||||||
Procedure Ozon_GetWarehousesList(FunctionParameters)
|
Procedure Ozon_GetWarehousesList(FunctionParameters)
|
||||||
|
|
||||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
|
||||||
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
||||||
|
|
||||||
@ -12606,6 +12624,54 @@ Procedure Ozon_GetWarehousesList(FunctionParameters)
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Ozon_GetProductsStocks(FunctionParameters)
|
||||||
|
|
||||||
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
|
||||||
|
IDArray = New Array;
|
||||||
|
IDArray.Add("143210608");
|
||||||
|
|
||||||
|
Filter = New Structure;
|
||||||
|
Filter.Insert("visibility" , "ALL");
|
||||||
|
Filter.Insert("offer_id" , IDArray);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.GetProductsStocks(ClientID, APIKey, Filter);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.WriteLog(Result, "GetProductsStocks", "Ozon");
|
||||||
|
|
||||||
|
Check_OzonObjectsArray(Result);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||||
|
|
||||||
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
ProductID = FunctionParameters["Ozon_ProductID"];
|
||||||
|
|
||||||
|
Prices = New Structure;
|
||||||
|
Prices.Insert("auto_action_enabled" , "DISABLED");
|
||||||
|
Prices.Insert("currency_code" , "RUB");
|
||||||
|
Prices.Insert("min_price" , "200");
|
||||||
|
Prices.Insert("offer_id" , "143210608");
|
||||||
|
Prices.Insert("old_price" , "0");
|
||||||
|
Prices.Insert("price" , "200");
|
||||||
|
Prices.Insert("price_strategy_enabled", "DISABLED");
|
||||||
|
Prices.Insert("product_id" , ProductID);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.UpdateProductsPrices(ClientID, APIKey, Prices);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.WriteLog(Result, "UpdateProductsPrices", "Ozon");
|
||||||
|
|
||||||
|
Check_OzonUpdatedArray(Result);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
@ -249,6 +249,7 @@ Function GetTestTable() Export
|
|||||||
NewTest(TestTable, "OzonAPI_UploadingAndUpdatingProducts" , "Uploading and updating products" , Ozon);
|
NewTest(TestTable, "OzonAPI_UploadingAndUpdatingProducts" , "Uploading and updating products" , Ozon);
|
||||||
NewTest(TestTable, "OzonAPI_Barcodes" , "Barcodes" , Ozon);
|
NewTest(TestTable, "OzonAPI_Barcodes" , "Barcodes" , Ozon);
|
||||||
NewTest(TestTable, "OzonAPI_WarehousesManagment" , "Warehouses managment" , Ozon);
|
NewTest(TestTable, "OzonAPI_WarehousesManagment" , "Warehouses managment" , Ozon);
|
||||||
|
NewTest(TestTable, "OzonAPI_PricesAndStocks" , "Prices and stocks" , Ozon);
|
||||||
|
|
||||||
Return TestTable;
|
Return TestTable;
|
||||||
|
|
||||||
|
@ -929,7 +929,7 @@ Function GetAttributesUpdateStructure(Val Clear = False) Export
|
|||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
// Get products filter structure
|
// Get products filter structure
|
||||||
// Gets the structure for products list selecting in the GetProductList function
|
// Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks
|
||||||
//
|
//
|
||||||
// Note
|
// Note
|
||||||
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||||
@ -1141,6 +1141,38 @@ EndFunction
|
|||||||
|
|
||||||
#Region PricesAndStocks
|
#Region PricesAndStocks
|
||||||
|
|
||||||
|
// Get products stocks
|
||||||
|
// Gets the number of items in the balance with or without filtering
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// Method at API documentation: [post /v3/product/info/stocks](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoStocksV3)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// ClientID - String - Client identifier - clientid
|
||||||
|
// APIKey - String - API key - apikey
|
||||||
|
// Filter - Structure of KeyAndValue - Product selection filter. See GetProductsFilterStructure - filter
|
||||||
|
// LastID - String, Number - ID of the last value (last_id) from the previous response - last
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||||
|
Function GetProductsStocks(Val ClientID, Val APIKey, Val Filter = "", Val LastID = 0) Export
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v3/product/info/stocks";
|
||||||
|
|
||||||
|
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||||
|
Limit = 100;
|
||||||
|
|
||||||
|
Parameters = New Structure;
|
||||||
|
OPI_Tools.AddField("filter" , Filter , "Collection", Parameters);
|
||||||
|
OPI_Tools.AddField("limit" , Limit , "String" , Parameters);
|
||||||
|
OPI_Tools.AddField("last_id", LastID , "String" , Parameters);
|
||||||
|
|
||||||
|
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||||
|
|
||||||
|
Return Response;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
// Update products stocks
|
// Update products stocks
|
||||||
// Changes the information about the stock amount of a product
|
// Changes the information about the stock amount of a product
|
||||||
//
|
//
|
||||||
@ -1172,6 +1204,34 @@ Function UpdateProductsStocks(Val ClientID, Val APIKey, Val Stocks) Export
|
|||||||
|
|
||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
|
// Update products prices
|
||||||
|
// Changes the price of one or more items
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// Method at API documentation: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// ClientID - String - Client identifier - clientid
|
||||||
|
// APIKey - String - API key - apikey
|
||||||
|
// Prices - Array of Structure - Products prices. See GetProductPriceStructure - prices
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Map Of KeyAndValue - Serialized JSON response from Ozon Seller API
|
||||||
|
Function UpdateProductsPrices(Val ClientID, Val APIKey, Val Prices) Export
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v1/product/import/prices";
|
||||||
|
|
||||||
|
Headers = CreateRequestHeaders(ClientID, APIKey);
|
||||||
|
|
||||||
|
Parameters = New Structure;
|
||||||
|
OPI_Tools.AddField("prices", Prices, "Array", Parameters);
|
||||||
|
|
||||||
|
Response = OPI_Tools.Post(URL, Parameters, Headers);
|
||||||
|
|
||||||
|
Return Response;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
// Get product stocks structure
|
// Get product stocks structure
|
||||||
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
// Gets the data structure for udpating product stocks in the UpdateProductsStocks function
|
||||||
//
|
//
|
||||||
@ -1205,6 +1265,44 @@ Function GetProductStocksStructure(Val Clear = False) Export
|
|||||||
|
|
||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
|
// Get product price structure
|
||||||
|
// Gets the product price structure for the UpdateProductsPrices function
|
||||||
|
//
|
||||||
|
// Note
|
||||||
|
// The description of the filter fields can be found on the documentation page for product list retrieving method: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Parameters:
|
||||||
|
// Clear - Boolean - True > structure with empty valuse, False > field descriptions at values - empty
|
||||||
|
//
|
||||||
|
// Returns:
|
||||||
|
// Structure of KeyAndValue - Filter fields structure
|
||||||
|
Function GetProductPriceStructure(Val Clear = False) Export
|
||||||
|
|
||||||
|
OPI_TypeConversion.GetBoolean(Clear);
|
||||||
|
|
||||||
|
ItemStructure = New Structure;
|
||||||
|
|
||||||
|
ItemStructure.Insert("auto_action_enabled" , "<Enable auto application of shares: ENABLED or DISABLED>");
|
||||||
|
ItemStructure.Insert("currency_code" , "<currency>");
|
||||||
|
ItemStructure.Insert("min_price" , "<minimum price of product after promotions have been applied>");
|
||||||
|
ItemStructure.Insert("offer_id" , "<product identifier in the sellers system>");
|
||||||
|
ItemStructure.Insert("old_price" , "<price before discounts; specify 0 if no discounts are available>");
|
||||||
|
ItemStructure.Insert("price" , "<product price with discounts>");
|
||||||
|
ItemStructure.Insert("price_strategy_enabled", "<auto application of price strategies: ENABLED or DISABLED>");
|
||||||
|
ItemStructure.Insert("product_id" , "<Product ID>");
|
||||||
|
|
||||||
|
|
||||||
|
If Clear Then
|
||||||
|
For Each Field In ItemStructure Do
|
||||||
|
Field.Value = "";
|
||||||
|
EndDo;
|
||||||
|
EndIf;
|
||||||
|
|
||||||
|
//@skip-check constructor-function-return-section
|
||||||
|
Return ItemStructure;
|
||||||
|
|
||||||
|
EndFunction
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
|
||||||
#Region WarehousesManagment
|
#Region WarehousesManagment
|
||||||
|
@ -249,6 +249,7 @@ Function GetTestTable() Export
|
|||||||
NewTest(TestTable, "OzonAPI_UploadingAndUpdatingProducts" , "Uploading and updating products" , Ozon);
|
NewTest(TestTable, "OzonAPI_UploadingAndUpdatingProducts" , "Uploading and updating products" , Ozon);
|
||||||
NewTest(TestTable, "OzonAPI_Barcodes" , "Barcodes" , Ozon);
|
NewTest(TestTable, "OzonAPI_Barcodes" , "Barcodes" , Ozon);
|
||||||
NewTest(TestTable, "OzonAPI_WarehousesManagment" , "Warehouses managment" , Ozon);
|
NewTest(TestTable, "OzonAPI_WarehousesManagment" , "Warehouses managment" , Ozon);
|
||||||
|
NewTest(TestTable, "OzonAPI_PricesAndStocks" , "Prices and stocks" , Ozon);
|
||||||
|
|
||||||
Return TestTable;
|
Return TestTable;
|
||||||
|
|
||||||
|
@ -3300,11 +3300,23 @@ Procedure OzonAPI_Barcodes() Export
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure OzonAPI_PricesAndStocks() Export
|
||||||
|
|
||||||
|
TestParameters = New Structure;
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
||||||
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ProductID", TestParameters);
|
||||||
|
|
||||||
|
Ozon_GetProductsStocks(TestParameters);
|
||||||
|
Ozon_UpdateProductsPrices(TestParameters);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
Procedure OzonAPI_WarehousesManagment() Export
|
Procedure OzonAPI_WarehousesManagment() Export
|
||||||
|
|
||||||
TestParameters = New Structure;
|
TestParameters = New Structure;
|
||||||
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ClientID" , TestParameters);
|
||||||
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
OPI_TestDataRetrieval.ParameterToCollection("Ozon_ApiKey" , TestParameters);
|
||||||
|
|
||||||
Ozon_GetWarehousesList(TestParameters);
|
Ozon_GetWarehousesList(TestParameters);
|
||||||
|
|
||||||
@ -4170,6 +4182,12 @@ Procedure Check_OzonObjectsArray(Val Result)
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Check_OzonUpdatedArray(Val Result)
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.ExpectsThat(Result["result"][0]["updated"]).Равно(True);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
Procedure Check_OzonRatingArray(Val Result)
|
Procedure Check_OzonRatingArray(Val Result)
|
||||||
|
|
||||||
OPI_TestDataRetrieval.ExpectsThat(Result["products"]).ИмеетТип("Array");
|
OPI_TestDataRetrieval.ExpectsThat(Result["products"]).ИмеетТип("Array");
|
||||||
@ -12593,8 +12611,8 @@ EndProcedure
|
|||||||
|
|
||||||
Procedure Ozon_GetWarehousesList(FunctionParameters)
|
Procedure Ozon_GetWarehousesList(FunctionParameters)
|
||||||
|
|
||||||
ClientID = FunctionParameters["Ozon_ClientID"];
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
APIKey = FunctionParameters["Ozon_ApiKey"];
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
|
||||||
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
Result = OPI_Ozon.GetWarehousesList(ClientID, APIKey);
|
||||||
|
|
||||||
@ -12606,6 +12624,54 @@ Procedure Ozon_GetWarehousesList(FunctionParameters)
|
|||||||
|
|
||||||
EndProcedure
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Ozon_GetProductsStocks(FunctionParameters)
|
||||||
|
|
||||||
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
|
||||||
|
IDArray = New Array;
|
||||||
|
IDArray.Add("143210608");
|
||||||
|
|
||||||
|
Filter = New Structure;
|
||||||
|
Filter.Insert("visibility" , "ALL");
|
||||||
|
Filter.Insert("offer_id" , IDArray);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.GetProductsStocks(ClientID, APIKey, Filter);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.WriteLog(Result, "GetProductsStocks", "Ozon");
|
||||||
|
|
||||||
|
Check_OzonObjectsArray(Result);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
|
Procedure Ozon_UpdateProductsPrices(FunctionParameters)
|
||||||
|
|
||||||
|
ClientID = FunctionParameters["Ozon_ClientID"];
|
||||||
|
APIKey = FunctionParameters["Ozon_ApiKey"];
|
||||||
|
ProductID = FunctionParameters["Ozon_ProductID"];
|
||||||
|
|
||||||
|
Prices = New Structure;
|
||||||
|
Prices.Insert("auto_action_enabled" , "DISABLED");
|
||||||
|
Prices.Insert("currency_code" , "RUB");
|
||||||
|
Prices.Insert("min_price" , "200");
|
||||||
|
Prices.Insert("offer_id" , "143210608");
|
||||||
|
Prices.Insert("old_price" , "0");
|
||||||
|
Prices.Insert("price" , "200");
|
||||||
|
Prices.Insert("price_strategy_enabled", "DISABLED");
|
||||||
|
Prices.Insert("product_id" , ProductID);
|
||||||
|
|
||||||
|
Result = OPI_Ozon.UpdateProductsPrices(ClientID, APIKey, Prices);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_TestDataRetrieval.WriteLog(Result, "UpdateProductsPrices", "Ozon");
|
||||||
|
|
||||||
|
Check_OzonUpdatedArray(Result);
|
||||||
|
|
||||||
|
EndProcedure
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
|
||||||
#EndRegion
|
#EndRegion
|
||||||
|
@ -965,7 +965,7 @@
|
|||||||
NewLine.Параметр = "--empty";
|
NewLine.Параметр = "--empty";
|
||||||
NewLine.Описание = "True > structure with empty valuse, False > field descriptions at values (optional, def. val. - No)";
|
NewLine.Описание = "True > structure with empty valuse, False > field descriptions at values (optional, def. val. - No)";
|
||||||
NewLine.Область = "Uploading and updating products";
|
NewLine.Область = "Uploading and updating products";
|
||||||
NewLine.ОписаниеМетода = "Gets the structure for products list selecting in the GetProductList function";
|
NewLine.ОписаниеМетода = "Gets the structure for selecting the list of goods in the functions GetProductList and GetProductsStocks";
|
||||||
|
|
||||||
|
|
||||||
NewLine = CompositionTable.Add();
|
NewLine = CompositionTable.Add();
|
||||||
@ -1123,6 +1123,47 @@
|
|||||||
NewLine.Область = "Barcodes";
|
NewLine.Область = "Barcodes";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "GetProductsStocks";
|
||||||
|
NewLine.МетодПоиска = "GETPRODUCTSSTOCKS";
|
||||||
|
NewLine.Параметр = "--clientid";
|
||||||
|
NewLine.Описание = "Client identifier";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
NewLine.ОписаниеМетода = "Gets the number of items in the balance with or without filtering";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "GetProductsStocks";
|
||||||
|
NewLine.МетодПоиска = "GETPRODUCTSSTOCKS";
|
||||||
|
NewLine.Параметр = "--apikey";
|
||||||
|
NewLine.Описание = "API key";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "GetProductsStocks";
|
||||||
|
NewLine.МетодПоиска = "GETPRODUCTSSTOCKS";
|
||||||
|
NewLine.Параметр = "--filter";
|
||||||
|
NewLine.Описание = "Product selection filter. See GetProductsFilterStructure (optional, def. val. - Empty value)";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "GetProductsStocks";
|
||||||
|
NewLine.МетодПоиска = "GETPRODUCTSSTOCKS";
|
||||||
|
NewLine.Параметр = "--last";
|
||||||
|
NewLine.Описание = "ID of the last value (last_id) from the previous response (optional, def. val. - Empty value)";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
NewLine = CompositionTable.Add();
|
NewLine = CompositionTable.Add();
|
||||||
NewLine.Библиотека = "ozon";
|
NewLine.Библиотека = "ozon";
|
||||||
NewLine.Модуль = "OPI_Ozon";
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
@ -1154,6 +1195,37 @@
|
|||||||
NewLine.Область = "Prices and stocks";
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "UpdateProductsPrices";
|
||||||
|
NewLine.МетодПоиска = "UPDATEPRODUCTSPRICES";
|
||||||
|
NewLine.Параметр = "--clientid";
|
||||||
|
NewLine.Описание = "Client identifier";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
NewLine.ОписаниеМетода = "Changes the price of one or more items";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "UpdateProductsPrices";
|
||||||
|
NewLine.МетодПоиска = "UPDATEPRODUCTSPRICES";
|
||||||
|
NewLine.Параметр = "--apikey";
|
||||||
|
NewLine.Описание = "API key";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "UpdateProductsPrices";
|
||||||
|
NewLine.МетодПоиска = "UPDATEPRODUCTSPRICES";
|
||||||
|
NewLine.Параметр = "--prices";
|
||||||
|
NewLine.Описание = "Products prices. See GetProductPriceStructure";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
|
||||||
|
|
||||||
NewLine = CompositionTable.Add();
|
NewLine = CompositionTable.Add();
|
||||||
NewLine.Библиотека = "ozon";
|
NewLine.Библиотека = "ozon";
|
||||||
NewLine.Модуль = "OPI_Ozon";
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
@ -1165,6 +1237,17 @@
|
|||||||
NewLine.ОписаниеМетода = "Gets the data structure for udpating product stocks in the UpdateProductsStocks function";
|
NewLine.ОписаниеМетода = "Gets the data structure for udpating product stocks in the UpdateProductsStocks function";
|
||||||
|
|
||||||
|
|
||||||
|
NewLine = CompositionTable.Add();
|
||||||
|
NewLine.Библиотека = "ozon";
|
||||||
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
NewLine.Метод = "GetProductPriceStructure";
|
||||||
|
NewLine.МетодПоиска = "GETPRODUCTPRICESTRUCTURE";
|
||||||
|
NewLine.Параметр = "--empty";
|
||||||
|
NewLine.Описание = "True > structure with empty valuse, False > field descriptions at values (optional, def. val. - No)";
|
||||||
|
NewLine.Область = "Prices and stocks";
|
||||||
|
NewLine.ОписаниеМетода = "Gets the product price structure for the UpdateProductsPrices function";
|
||||||
|
|
||||||
|
|
||||||
NewLine = CompositionTable.Add();
|
NewLine = CompositionTable.Add();
|
||||||
NewLine.Библиотека = "ozon";
|
NewLine.Библиотека = "ozon";
|
||||||
NewLine.Модуль = "OPI_Ozon";
|
NewLine.Модуль = "OPI_Ozon";
|
||||||
|
@ -929,7 +929,7 @@
|
|||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Получить структуру фильтра товаров
|
// Получить структуру фильтра товаров
|
||||||
// Получает структуру для отбора списка товаров в функции ПолучитьСписокТоваров
|
// Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров
|
||||||
//
|
//
|
||||||
// Примечание:
|
// Примечание:
|
||||||
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||||
@ -1141,6 +1141,38 @@
|
|||||||
|
|
||||||
#Область ЦеныИОстаткиТоваров
|
#Область ЦеныИОстаткиТоваров
|
||||||
|
|
||||||
|
// Получить количество товаров
|
||||||
|
// Получает количество товаров в остатке с фильтром или без
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Метод в документации API: [post /v3/product/info/stocks](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoStocksV3)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||||
|
// КлючAPI - Строка - API ключ - apikey
|
||||||
|
// Фильтр - Структура Из КлючИЗначение - Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров - filter
|
||||||
|
// IDПоследнего - Строка, Число - ID последнего значения (last_id) из предыдущего запроса - last
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||||
|
Функция ПолучитьКоличествоТоваров(Знач IDКлиента, Знач КлючAPI, Знач Фильтр = "", Знач IDПоследнего = 0) Экспорт
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v3/product/info/stocks";
|
||||||
|
|
||||||
|
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||||
|
Лимит = 100;
|
||||||
|
|
||||||
|
Параметры = Новый Структура;
|
||||||
|
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||||
|
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||||
|
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||||
|
|
||||||
|
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||||
|
|
||||||
|
Возврат Ответ;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Обновить количество товаров
|
// Обновить количество товаров
|
||||||
// Изменяет информацию о количестве товара в наличии
|
// Изменяет информацию о количестве товара в наличии
|
||||||
//
|
//
|
||||||
@ -1172,6 +1204,34 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Обновить цены товаров
|
||||||
|
// Изменяет цены однного или нескольких товаров
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Метод в документации API: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||||
|
// КлючAPI - Строка - API ключ - apikey
|
||||||
|
// Цены - Массив из Структура - Цены товаров. См. ПолучитьСтруктуруЦеныТовара - prices
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||||
|
Функция ОбновитьЦеныТоваров(Знач IDКлиента, Знач КлючAPI, Знач Цены) Экспорт
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v1/product/import/prices";
|
||||||
|
|
||||||
|
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||||
|
|
||||||
|
Параметры = Новый Структура;
|
||||||
|
OPI_Инструменты.ДобавитьПоле("prices", Цены, "Массив", Параметры);
|
||||||
|
|
||||||
|
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||||
|
|
||||||
|
Возврат Ответ;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Получить структуру остатков товара
|
// Получить структуру остатков товара
|
||||||
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
||||||
//
|
//
|
||||||
@ -1205,6 +1265,44 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Получить структуру цены товара
|
||||||
|
// Получает структуру цены товара для функции ОбновитьЦеныТоваров
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Структура Из КлючИЗначение - Структура полей фильра
|
||||||
|
Функция ПолучитьСтруктуруЦеныТовара(Знач Пустая = Ложь) Экспорт
|
||||||
|
|
||||||
|
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||||
|
|
||||||
|
СтруктураТовара = Новый Структура;
|
||||||
|
|
||||||
|
СтруктураТовара.Вставить("auto_action_enabled" , "<включение автоприменения акций: ENABLED или DISABLED>");
|
||||||
|
СтруктураТовара.Вставить("currency_code" , "<валюта>");
|
||||||
|
СтруктураТовара.Вставить("min_price" , "<минимальная цена товара после применения акций>");
|
||||||
|
СтруктураТовара.Вставить("offer_id" , "<идентификатор товара в системе продавца>");
|
||||||
|
СтруктураТовара.Вставить("old_price" , "<цена до скидок; укажите значение 0, если скидок нет>");
|
||||||
|
СтруктураТовара.Вставить("price" , "<цена товара с учётом скидок>");
|
||||||
|
СтруктураТовара.Вставить("price_strategy_enabled", "<автоприменения стратегий цены: ENABLED или DISABLED>");
|
||||||
|
СтруктураТовара.Вставить("product_id" , "<ID товара>");
|
||||||
|
|
||||||
|
|
||||||
|
Если Пустая Тогда
|
||||||
|
Для Каждого Поле Из СтруктураТовара Цикл
|
||||||
|
Поле.Значение = "";
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
//@skip-check constructor-function-return-section
|
||||||
|
Возврат СтруктураТовара;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область РаботаСоСкладами
|
#Область РаботаСоСкладами
|
||||||
|
@ -3300,6 +3300,18 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ОзонАПИ_ЦеныИОстаткиТоваров() Экспорт
|
||||||
|
|
||||||
|
ПараметрыТеста = Новый Структура;
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ClientID" , ПараметрыТеста);
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ApiKey" , ПараметрыТеста);
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ProductID", ПараметрыТеста);
|
||||||
|
|
||||||
|
Ozon_ПолучитьКоличествоТоваров(ПараметрыТеста);
|
||||||
|
Ozon_ОбновитьЦеныТоваров(ПараметрыТеста);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОзонАПИ_РаботаСоСкладами() Экспорт
|
Процедура ОзонАПИ_РаботаСоСкладами() Экспорт
|
||||||
|
|
||||||
ПараметрыТеста = Новый Структура;
|
ПараметрыТеста = Новый Структура;
|
||||||
@ -4170,6 +4182,12 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_ОзонМассивОбновлено(Знач Результат)
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"][0]["updated"]).Равно(Истина);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура Проверка_ОзонМассивРейтингов(Знач Результат)
|
Процедура Проверка_ОзонМассивРейтингов(Знач Результат)
|
||||||
|
|
||||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["products"]).ИмеетТип("Массив");
|
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["products"]).ИмеетТип("Массив");
|
||||||
@ -12594,7 +12612,7 @@
|
|||||||
Процедура Ozon_ПолучитьСписокСкладов(ПараметрыФункции)
|
Процедура Ozon_ПолучитьСписокСкладов(ПараметрыФункции)
|
||||||
|
|
||||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
|
||||||
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
||||||
|
|
||||||
@ -12606,6 +12624,54 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Ozon_ПолучитьКоличествоТоваров(ПараметрыФункции)
|
||||||
|
|
||||||
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
|
||||||
|
МассивID = Новый Массив;
|
||||||
|
МассивID.Добавить("143210608");
|
||||||
|
|
||||||
|
Фильтр = Новый Структура;
|
||||||
|
Фильтр.Вставить("visibility" , "ALL");
|
||||||
|
Фильтр.Вставить("offer_id" , МассивID);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ПолучитьКоличествоТоваров(IDКлиента, КлючAPI, Фильтр);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКоличествоТоваров", "Ozon");
|
||||||
|
|
||||||
|
Проверка_ОзонМассивОбъектов(Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Ozon_ОбновитьЦеныТоваров(ПараметрыФункции)
|
||||||
|
|
||||||
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||||
|
|
||||||
|
Цены = Новый Структура;
|
||||||
|
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||||
|
Цены.Вставить("currency_code" , "RUB");
|
||||||
|
Цены.Вставить("min_price" , "200");
|
||||||
|
Цены.Вставить("offer_id" , "143210608");
|
||||||
|
Цены.Вставить("old_price" , "0");
|
||||||
|
Цены.Вставить("price" , "200");
|
||||||
|
Цены.Вставить("price_strategy_enabled", "DISABLED");
|
||||||
|
Цены.Вставить("product_id" , IDТовара);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ОбновитьЦеныТоваров(IDКлиента, КлючAPI, Цены);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьЦеныТоваров", "Ozon");
|
||||||
|
|
||||||
|
Проверка_ОзонМассивОбновлено(Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -249,6 +249,7 @@
|
|||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЗагрузкаИОбновлениеТоваров" , "Загрузка и обновление товаров" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЗагрузкаИОбновлениеТоваров" , "Загрузка и обновление товаров" , Озон);
|
||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_Штрихкоды" , "Штрихкоды" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_Штрихкоды" , "Штрихкоды" , Озон);
|
||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСоСкладами" , "Работа со складами" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСоСкладами" , "Работа со складами" , Озон);
|
||||||
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЦеныИОстаткиТоваров" , "Цены и остатки товаров" , Озон);
|
||||||
|
|
||||||
Возврат ТаблицаТестов;
|
Возврат ТаблицаТестов;
|
||||||
|
|
||||||
|
@ -929,7 +929,7 @@
|
|||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
// Получить структуру фильтра товаров
|
// Получить структуру фильтра товаров
|
||||||
// Получает структуру для отбора списка товаров в функции ПолучитьСписокТоваров
|
// Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров
|
||||||
//
|
//
|
||||||
// Примечание:
|
// Примечание:
|
||||||
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v2/product/list](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductList)
|
||||||
@ -1141,6 +1141,38 @@
|
|||||||
|
|
||||||
#Область ЦеныИОстаткиТоваров
|
#Область ЦеныИОстаткиТоваров
|
||||||
|
|
||||||
|
// Получить количество товаров
|
||||||
|
// Получает количество товаров в остатке с фильтром или без
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Метод в документации API: [post /v3/product/info/stocks](@docs.ozon.ru/api/seller/#operation/ProductAPI_GetProductInfoStocksV3)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||||
|
// КлючAPI - Строка - API ключ - apikey
|
||||||
|
// Фильтр - Структура Из КлючИЗначение - Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров - filter
|
||||||
|
// IDПоследнего - Строка, Число - ID последнего значения (last_id) из предыдущего запроса - last
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||||
|
Функция ПолучитьКоличествоТоваров(Знач IDКлиента, Знач КлючAPI, Знач Фильтр = "", Знач IDПоследнего = 0) Экспорт
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v3/product/info/stocks";
|
||||||
|
|
||||||
|
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||||
|
Лимит = 100;
|
||||||
|
|
||||||
|
Параметры = Новый Структура;
|
||||||
|
OPI_Инструменты.ДобавитьПоле("filter" , Фильтр , "Коллекция", Параметры);
|
||||||
|
OPI_Инструменты.ДобавитьПоле("limit" , Лимит , "Строка" , Параметры);
|
||||||
|
OPI_Инструменты.ДобавитьПоле("last_id", IDПоследнего, "Строка" , Параметры);
|
||||||
|
|
||||||
|
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||||
|
|
||||||
|
Возврат Ответ;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Обновить количество товаров
|
// Обновить количество товаров
|
||||||
// Изменяет информацию о количестве товара в наличии
|
// Изменяет информацию о количестве товара в наличии
|
||||||
//
|
//
|
||||||
@ -1172,6 +1204,34 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Обновить цены товаров
|
||||||
|
// Изменяет цены однного или нескольких товаров
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Метод в документации API: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// IDКлиента - Строка - Идентификатор клиента - clientid
|
||||||
|
// КлючAPI - Строка - API ключ - apikey
|
||||||
|
// Цены - Массив из Структура - Цены товаров. См. ПолучитьСтруктуруЦеныТовара - prices
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Ozon Seller API
|
||||||
|
Функция ОбновитьЦеныТоваров(Знач IDКлиента, Знач КлючAPI, Знач Цены) Экспорт
|
||||||
|
|
||||||
|
URL = "https://api-seller.ozon.ru/v1/product/import/prices";
|
||||||
|
|
||||||
|
Заголовки = СоздатьЗаголовкиЗапроса(IDКлиента, КлючAPI);
|
||||||
|
|
||||||
|
Параметры = Новый Структура;
|
||||||
|
OPI_Инструменты.ДобавитьПоле("prices", Цены, "Массив", Параметры);
|
||||||
|
|
||||||
|
Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки);
|
||||||
|
|
||||||
|
Возврат Ответ;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Получить структуру остатков товара
|
// Получить структуру остатков товара
|
||||||
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
// Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров
|
||||||
//
|
//
|
||||||
@ -1205,6 +1265,44 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Получить структуру цены товара
|
||||||
|
// Получает структуру цены товара для функции ОбновитьЦеныТоваров
|
||||||
|
//
|
||||||
|
// Примечание:
|
||||||
|
// Описание полей фильтра можно найти на странице документации по получению списка товаров: [post /v1/product/import/prices](@docs.ozon.ru/api/seller/#operation/ProductAPI_ImportProductsPrices)
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Пустая - Булево - Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей - empty
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Структура Из КлючИЗначение - Структура полей фильра
|
||||||
|
Функция ПолучитьСтруктуруЦеныТовара(Знач Пустая = Ложь) Экспорт
|
||||||
|
|
||||||
|
OPI_ПреобразованиеТипов.ПолучитьБулево(Пустая);
|
||||||
|
|
||||||
|
СтруктураТовара = Новый Структура;
|
||||||
|
|
||||||
|
СтруктураТовара.Вставить("auto_action_enabled" , "<включение автоприменения акций: ENABLED или DISABLED>");
|
||||||
|
СтруктураТовара.Вставить("currency_code" , "<валюта>");
|
||||||
|
СтруктураТовара.Вставить("min_price" , "<минимальная цена товара после применения акций>");
|
||||||
|
СтруктураТовара.Вставить("offer_id" , "<идентификатор товара в системе продавца>");
|
||||||
|
СтруктураТовара.Вставить("old_price" , "<цена до скидок; укажите значение 0, если скидок нет>");
|
||||||
|
СтруктураТовара.Вставить("price" , "<цена товара с учётом скидок>");
|
||||||
|
СтруктураТовара.Вставить("price_strategy_enabled", "<автоприменения стратегий цены: ENABLED или DISABLED>");
|
||||||
|
СтруктураТовара.Вставить("product_id" , "<ID товара>");
|
||||||
|
|
||||||
|
|
||||||
|
Если Пустая Тогда
|
||||||
|
Для Каждого Поле Из СтруктураТовара Цикл
|
||||||
|
Поле.Значение = "";
|
||||||
|
КонецЦикла;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
//@skip-check constructor-function-return-section
|
||||||
|
Возврат СтруктураТовара;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область РаботаСоСкладами
|
#Область РаботаСоСкладами
|
||||||
|
@ -249,6 +249,7 @@
|
|||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЗагрузкаИОбновлениеТоваров" , "Загрузка и обновление товаров" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЗагрузкаИОбновлениеТоваров" , "Загрузка и обновление товаров" , Озон);
|
||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_Штрихкоды" , "Штрихкоды" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_Штрихкоды" , "Штрихкоды" , Озон);
|
||||||
НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСоСкладами" , "Работа со складами" , Озон);
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_РаботаСоСкладами" , "Работа со складами" , Озон);
|
||||||
|
НовыйТест(ТаблицаТестов, "ОзонАПИ_ЦеныИОстаткиТоваров" , "Цены и остатки товаров" , Озон);
|
||||||
|
|
||||||
Возврат ТаблицаТестов;
|
Возврат ТаблицаТестов;
|
||||||
|
|
||||||
|
@ -3300,6 +3300,18 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ОзонАПИ_ЦеныИОстаткиТоваров() Экспорт
|
||||||
|
|
||||||
|
ПараметрыТеста = Новый Структура;
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ClientID" , ПараметрыТеста);
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ApiKey" , ПараметрыТеста);
|
||||||
|
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ProductID", ПараметрыТеста);
|
||||||
|
|
||||||
|
Ozon_ПолучитьКоличествоТоваров(ПараметрыТеста);
|
||||||
|
Ozon_ОбновитьЦеныТоваров(ПараметрыТеста);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ОзонАПИ_РаботаСоСкладами() Экспорт
|
Процедура ОзонАПИ_РаботаСоСкладами() Экспорт
|
||||||
|
|
||||||
ПараметрыТеста = Новый Структура;
|
ПараметрыТеста = Новый Структура;
|
||||||
@ -4170,6 +4182,12 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_ОзонМассивОбновлено(Знач Результат)
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"][0]["updated"]).Равно(Истина);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура Проверка_ОзонМассивРейтингов(Знач Результат)
|
Процедура Проверка_ОзонМассивРейтингов(Знач Результат)
|
||||||
|
|
||||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["products"]).ИмеетТип("Массив");
|
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["products"]).ИмеетТип("Массив");
|
||||||
@ -12594,7 +12612,7 @@
|
|||||||
Процедура Ozon_ПолучитьСписокСкладов(ПараметрыФункции)
|
Процедура Ozon_ПолучитьСписокСкладов(ПараметрыФункции)
|
||||||
|
|
||||||
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
|
||||||
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
Результат = OPI_Ozon.ПолучитьСписокСкладов(IDКлиента, КлючAPI);
|
||||||
|
|
||||||
@ -12606,6 +12624,54 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Ozon_ПолучитьКоличествоТоваров(ПараметрыФункции)
|
||||||
|
|
||||||
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
|
||||||
|
МассивID = Новый Массив;
|
||||||
|
МассивID.Добавить("143210608");
|
||||||
|
|
||||||
|
Фильтр = Новый Структура;
|
||||||
|
Фильтр.Вставить("visibility" , "ALL");
|
||||||
|
Фильтр.Вставить("offer_id" , МассивID);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ПолучитьКоличествоТоваров(IDКлиента, КлючAPI, Фильтр);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьКоличествоТоваров", "Ozon");
|
||||||
|
|
||||||
|
Проверка_ОзонМассивОбъектов(Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Ozon_ОбновитьЦеныТоваров(ПараметрыФункции)
|
||||||
|
|
||||||
|
IDКлиента = ПараметрыФункции["Ozon_ClientID"];
|
||||||
|
КлючAPI = ПараметрыФункции["Ozon_ApiKey"];
|
||||||
|
IDТовара = ПараметрыФункции["Ozon_ProductID"];
|
||||||
|
|
||||||
|
Цены = Новый Структура;
|
||||||
|
Цены.Вставить("auto_action_enabled" , "DISABLED");
|
||||||
|
Цены.Вставить("currency_code" , "RUB");
|
||||||
|
Цены.Вставить("min_price" , "200");
|
||||||
|
Цены.Вставить("offer_id" , "143210608");
|
||||||
|
Цены.Вставить("old_price" , "0");
|
||||||
|
Цены.Вставить("price" , "200");
|
||||||
|
Цены.Вставить("price_strategy_enabled", "DISABLED");
|
||||||
|
Цены.Вставить("product_id" , IDТовара);
|
||||||
|
|
||||||
|
Результат = OPI_Ozon.ОбновитьЦеныТоваров(IDКлиента, КлючAPI, Цены);
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьЦеныТоваров", "Ozon");
|
||||||
|
|
||||||
|
Проверка_ОзонМассивОбновлено(Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -1017,7 +1017,7 @@
|
|||||||
НоваяСтрока.Параметр = "--empty";
|
НоваяСтрока.Параметр = "--empty";
|
||||||
НоваяСтрока.Описание = "Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей (необяз. по ум. - Нет)";
|
НоваяСтрока.Описание = "Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей (необяз. по ум. - Нет)";
|
||||||
НоваяСтрока.Область = "Загрузка и обновление товаров";
|
НоваяСтрока.Область = "Загрузка и обновление товаров";
|
||||||
НоваяСтрока.ОписаниеМетода = "Получает структуру для отбора списка товаров в функции ПолучитьСписокТоваров";
|
НоваяСтрока.ОписаниеМетода = "Получает структуру для отбора списка товаров в функциях ПолучитьСписокТоваров и ПолучитьКоличествоТоваров";
|
||||||
|
|
||||||
|
|
||||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
@ -1179,6 +1179,47 @@
|
|||||||
НоваяСтрока.Область = "Штрихкоды";
|
НоваяСтрока.Область = "Штрихкоды";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ПолучитьКоличествоТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬКОЛИЧЕСТВОТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--clientid";
|
||||||
|
НоваяСтрока.Описание = "Идентификатор клиента";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
НоваяСтрока.ОписаниеМетода = "Получает количество товаров в остатке с фильтром или без";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ПолучитьКоличествоТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬКОЛИЧЕСТВОТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--apikey";
|
||||||
|
НоваяСтрока.Описание = "API ключ";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ПолучитьКоличествоТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬКОЛИЧЕСТВОТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--filter";
|
||||||
|
НоваяСтрока.Описание = "Фильтр выборки товаров. См. ПолучитьСтруктуруФильтраТоваров (необяз. по ум. - Пустое значение)";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ПолучитьКоличествоТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬКОЛИЧЕСТВОТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--last";
|
||||||
|
НоваяСтрока.Описание = "ID последнего значения (last_id) из предыдущего запроса (необяз. по ум. - Пустое значение)";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
НоваяСтрока.Библиотека = "ozon";
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
@ -1214,6 +1255,41 @@
|
|||||||
НоваяСтрока.Область = "Цены и остатки товаров";
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ОбновитьЦеныТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ОБНОВИТЬЦЕНЫТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--clientid";
|
||||||
|
НоваяСтрока.Описание = "Идентификатор клиента";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
НоваяСтрока.ОписаниеМетода = "Изменяет цены однного или нескольких товаров
|
||||||
|
|
|
||||||
|
| Пример указания параметра типа массив:
|
||||||
|
| --param ""['Val1','Val2','Val3']""
|
||||||
|
|";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ОбновитьЦеныТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ОБНОВИТЬЦЕНЫТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--apikey";
|
||||||
|
НоваяСтрока.Описание = "API ключ";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ОбновитьЦеныТоваров";
|
||||||
|
НоваяСтрока.МетодПоиска = "ОБНОВИТЬЦЕНЫТОВАРОВ";
|
||||||
|
НоваяСтрока.Параметр = "--prices";
|
||||||
|
НоваяСтрока.Описание = "Цены товаров. См. ПолучитьСтруктуруЦеныТовара";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
|
||||||
|
|
||||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
НоваяСтрока.Библиотека = "ozon";
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
@ -1225,6 +1301,17 @@
|
|||||||
НоваяСтрока.ОписаниеМетода = "Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров";
|
НоваяСтрока.ОписаниеМетода = "Получает структуру для внесения остатков товара в функции ОбновитьКоличествоТоваров";
|
||||||
|
|
||||||
|
|
||||||
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
НоваяСтрока.Метод = "ПолучитьСтруктуруЦеныТовара";
|
||||||
|
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬСТРУКТУРУЦЕНЫТОВАРА";
|
||||||
|
НоваяСтрока.Параметр = "--empty";
|
||||||
|
НоваяСтрока.Описание = "Истина > структура с пустыми значениями, Ложь > в значениях будут описания полей (необяз. по ум. - Нет)";
|
||||||
|
НоваяСтрока.Область = "Цены и остатки товаров";
|
||||||
|
НоваяСтрока.ОписаниеМетода = "Получает структуру цены товара для функции ОбновитьЦеныТоваров";
|
||||||
|
|
||||||
|
|
||||||
НоваяСтрока = ТаблицаСостава.Добавить();
|
НоваяСтрока = ТаблицаСостава.Добавить();
|
||||||
НоваяСтрока.Библиотека = "ozon";
|
НоваяСтрока.Библиотека = "ozon";
|
||||||
НоваяСтрока.Модуль = "OPI_Ozon";
|
НоваяСтрока.Модуль = "OPI_Ozon";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user