Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
Siwen_Hu
Employee
Employee

S/4HANA系统中的价格管理模块,包括价格主数据管理和定价信息管理。S/4HANA系统作为定价管理系统,外围的采购系统可以从S/4HANA系统中读取定价信息,并且可以创建,修改和删除价格主数据。


S/4HANA系统提供价格主数据OData服务API_SLSPRICINGCONDITIONRECORD_SRV,这个同步的主数据入站服务可以让用户获取,创建,更新和删除销售价格主数据。该OData服务包括销售中的定价记录,定价条件有效期,定价等级和定价补充。


定价数据集成场景配置


为了激活上述的OData服务,用户必须创建并激活通信场景SAP_COM_0294。


OData服务列表



OData服务操作


创建定价记录:创建定价记录针对非扁平数据结构,即纵深数据结构进行数据的创建。单独创建定价记录对扁平数据结构是不支持的,单独创建定价条件有效期也是不支持的,二者必须同时创建。但是针对已存在的定价记录,单独创建定价等级和定价补充支持扁平数据结构。


下面会针对不同的创建情况提供相对应的例子。


创建定价记录和定价条件有限期


请求正文:
POSTT <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord


X-CSRF-Token: abc


Content-Type: application/json


Accept: application/json



{


"ConditionTable" : "305",


"ConditionType" : "PPR0",


"ConditionRateValue" : "123.00",


"ConditionRateValueUnit" : "EUR",


"to_SlsPrcgCndnRecdValidity" : [


{


"ConditionValidityEndDate" : "2020-12-13T00:00:00",


"ConditionValidityStartDate" : "2020-12-13T00:00:00",


"Customer" : "10100001",


"Material" : "TG11",


"SalesOrganization" : "1010",


"DistributionChannel" : "10"


}


]


}

返回结果:


Status: 201 Created


content-Type: application/json; charset=utf-8


location: <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027889')


etag: W/"''"


dataserviceversion: 2.0



{


"d" : {


"__metadata" : {


"id" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027889')",


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027889')",


"type" : "API_SLSPRICINGCONDITIONRECORD_SRV.A_SlsPrcgConditionRecordType",


"etag" : "W/"''""


},


"ConditionRecord" : "0000027889",


"ConditionSequentialNumber" : "1",
......
}



创建定价记录,定价条件有限期和定价等级


请求正文:
POST <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord


X-CSRF-Token: abc


Content-Type: application/json


Accept: application/json



{


"ConditionTable" : "305",


"ConditionType" : "PPR0",


"ConditionRateValue" : "200.00",


"ConditionRateValueUnit" : "EUR",


"to_SlsPrcgCndnRecdValidity" : [


{


"ConditionValidityEndDate" : "2022-11-30T00:00:00",


"ConditionValidityStartDate" : "2022-11-02T00:00:00",


"ConditionType" : "PPR0",


"Customer" : "10100001",


"Material" : "TG11",


"SalesOrganization" : "1010",


"DistributionChannel" : "10"


}


],


"to_SlsPrcgCndnRecordScale" : [


{


"ConditionSequentialNumber" : "1",


"ConditionScaleLine" : "1",


"ConditionScaleQuantity" : "10.000",


"ConditionRateValue" : "400.000",


"ConditionRateValueUnit" : "EUR"


},


{


"ConditionSequentialNumber" : "1",


"ConditionScaleLine" : "2",


"ConditionScaleQuantity" : "20.000",


"ConditionRateValue" : "300.000",


"ConditionRateValueUnit" : "EUR"


},


{


"ConditionSequentialNumber" : "1",


"ConditionScaleLine" : "3",


"ConditionScaleQuantity" : "30.000",


"ConditionRateValue" : "200.000",


"ConditionRateValueUnit" : "EUR"


}


]


}

返回结果:


Status: 201 Created


content-Type: application/json; charset=utf-8


location: <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027865')


etag: W/"''"


dataserviceversion: 2.0



{


"d" : {


"__metadata" : {


"id" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027865')",


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000027865')",


"type" : "API_SLSPRICINGCONDITIONRECORD_SRV.A_SlsPrcgConditionRecordType",


"etag" : "W/"''""


},


"ConditionRecord" : "0000027865",


"ConditionSequentialNumber" : "1",


"ConditionTable" : "305",
......
}


创建定价记录,定价条件有效期和定价补充


请求正文:
POST <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord


X-CSRF-Token: abc


Content-Type: application/json


Accept: application/json



{


"ConditionTable" : "305",


"ConditionType" : "PPR0",


"ConditionRateValue" : "231.12",


"ConditionRateValueUnit" : "EUR",


"to_SlsPrcgCndnRecdValidity" : [


{


"ConditionValidityEndDate" : "2024-11-30T00:00:00",


"ConditionValidityStartDate" : "2024-11-05T00:00:00",


"ConditionType" : "PPR0",


"Customer" : "10100001",


"Material" : "TG11",


"SalesOrganization" : "1010",


"DistributionChannel" : "10"


}


],


"to_SlsPrcgCndnRecdSuplmnt" : [


{


"ConditionSequentialNumber" : "2",


"ConditionType" : "PPR0",


"ConditionRateValue" : "555.55",


"ConditionRateValueUnit" : "EUR"


},


{


"ConditionSequentialNumber" : "3",


"ConditionType" : "DRG1",


"ConditionRateValue" : "10.0",


"ConditionRateValueUnit" : "%"


}


]


}



返回结果:
Status: 201 Created


content-Type: application/json; charset=utf-8


location: <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000061098')


etag: W/"''"


dataserviceversion: 2.0



{


"d" : {


"__metadata" : {


"id" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000061098')",


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgConditionRecord('0000061098')",


"type" : "API_SLSPRICINGCONDITIONRECORD_SRV.A_SlsPrcgConditionRecordType",


"etag" : "W/"''""


},


"ConditionRecord" : "0000061098",


"ConditionSequentialNumber" : "1",


"ConditionTable" : "305",
......
}


基于已存在的定价记录创建定价等级


请求正文:
POST <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale


X-CSRF-Token: abc


Content-Type: application/json


Accept: application/json



{


"ConditionRecord" : "0000027867",


"ConditionSequentialNumber" : "1",


"ConditionScaleLine" : "1",


"ConditionScaleQuantity" : "10.000",


"ConditionScaleQuantityUnit": "PC",


"ConditionRateValue" : "222.23",


"ConditionRateValueUnit" : "EUR"


}


返回结果:


Status: 201 Created


content-Type: application/json; charset=utf-8


location: <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale(ConditionRecord='0000027867',ConditionSequentialNumber='1',ConditionScaleLine='1')


etag: W/"''"


dataserviceversion: 2.0



{


"d" : {


"__metadata" : {


"id" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale(ConditionRecord='0000027867',ConditionSequentialNumber='1',ConditionScaleLine='1')",


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale(ConditionRecord='0000027867',ConditionSequentialNumber='1',ConditionScaleLine='1')",


"type" : "API_SLSPRICINGCONDITIONRECORD_SRV.A_SlsPrcgCndnRecordScaleType",


"etag" : "W/"''""


},


"ConditionRecord" : "0000027867",


"ConditionSequentialNumber" : "1",


"ConditionScaleLine" : "1",


"ConditionScaleQuantity" : "10",


"ConditionScaleQuantityUnit" : "PC",


"ConditionScaleAmount" : "0.00",


"ConditionScaleAmountCurrency" : "",


"ConditionRateValue" : "222.23",


"ConditionRateValueUnit" : "EUR",


"ETag" : "",


"to_SlsPrcgCndnRecdSuplmnt" : {


"__deferred" : {


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale(ConditionRecord='0000027867',ConditionSequentialNumber='1',ConditionScaleLine='1')/to_SlsPrcgCndnRecdSuplmnt"


}


},


"to_SlsPrcgConditionRecord" : {


"__deferred" : {


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecordScale(ConditionRecord='0000027867',ConditionSequentialNumber='1',ConditionScaleLine='1')/to_SlsPrcgConditionRecord"


}


}


}


}


基于已存在的定价记录创建定价补充


请求正文:
POST <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt


X-CSRF-Token: abc


Content-Type: application/json


Accept: application/json



{


"ConditionRecord" : "0000061098",


"ConditionSequentialNumber" : "4",


"ConditionType" : "PPR0",


"ConditionRateValue" : "3000",


"ConditionRateValueUnit" : "JPY"


}



返回结果:
Status: 201 Created


content-Type: application/json; charset=utf-8


location: <host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')


etag: W/"''"


dataserviceversion: 2.0



{


"d" : {


"__metadata" : {


"id" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')",


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')",


"type" : "API_SLSPRICINGCONDITIONRECORD_SRV.A_SlsPrcgCndnRecdSuplmntType",


"etag" : "W/"''""


},


"ConditionRecord" : "0000061098",


"ConditionSequentialNumber" : "4",


"ConditionTable" : "305",


"ConditionApplication" : "V",


"ConditionType" : "PPR0",


"ConditionValidityEndDate" : "/Date(1575072000000)/",


"ConditionValidityStartDate" : "/Date(1572912000000)/",


"CreatedByUser" : "",


"CreationDate" : null,


"ConditionTextID" : "",


"PricingScaleType" : "",


"PricingScaleBasis" : "C",


"ConditionScaleQuantity" : "0.000",


"ConditionScaleQuantityUnit" : "",


"ConditionScaleAmount" : "0",


"ConditionScaleAmountCurrency" : "",


"ConditionCalculationType" : "C",


"ConditionRateValue" : "3000",


"ConditionRateValueUnit" : "JPY",


"ConditionQuantity" : "1",


"ConditionQuantityUnit" : "PC",


"ConditionToBaseQtyNmrtr" : "0",


"ConditionToBaseQtyDnmntr" : "0",


"BaseUnit" : "",


"ConditionLowerLimit" : "0",


"ConditionUpperLimit" : "0",


"ConditionAlternativeCurrency" : "",


"ConditionExclusion" : "",


"ConditionIsDeleted" : false,


"AdditionalValueDays" : "0",


"FixedValueDate" : null,


"PaymentTerms" : "",


"CndnMaxNumberOfSalesOrders" : "0",


"MinimumConditionBasisValue" : "0.000",


"MaximumConditionBasisValue" : "0.000",


"MaximumConditionAmount" : "0.00",


"IncrementalScale" : "0",


"PricingScaleLine" : "0",


"ConditionReleaseStatus" : "",


"ETag" : "",


"to_SlsPrcgCndnRecdValidity" : {


"__deferred" : {


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')/to_SlsPrcgCndnRecdValidity"


}


},


"to_SlsPrcgCndnRecordScale" : {


"__deferred" : {


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')/to_SlsPrcgCndnRecordScale"


}


},


"to_SlsPrcgConditionRecord" : {


"__deferred" : {


"uri" : "<host>/sap/opu/odata/SAP/API_SLSPRICINGCONDITIONRECORD_SRV/A_SlsPrcgCndnRecdSuplmnt(ConditionRecord='0000061098',ConditionSequentialNumber='4')/to_SlsPrcgConditionRecord"


}


}


}


}



结语


上述文章中描述了定价记录,定价条件有限期,定价等级和定价补充的创建,用户可以直接拷贝上述提供的JSON请求正文来使用,同时用户也可以添加其他需要赋值的字段。由于篇幅有限,部分的返回结果无法完全提供,用户在使用时可以看到完整的返回结果。