Loading
Opi
Sisällysluettelo
Valitse suodattimet

          Ei tuloksia
          Ei tuloksia
          Tässä on joitain hakuvinkkejä

          Tarkista avainsanojesi oikeinkirjoitus.
          Käytä yleisempiä hakutermejä.
          Laajenna hakua valitsemalla vähemmän suodattimia.

          Hae koko Salesforce-ohjeesta
          Transaktion lisätietorivin tarkennetun hinnoittelun käyttäminen mukautettujen kenttien kartoittamiseen

          Transaktion lisätietorivin tarkennetun hinnoittelun käyttäminen mukautettujen kenttien kartoittamiseen

          Käyttäjät voivat päivittää myynnin transaktioiden kohteiden tai myynnin transaktioiden kohteiden lisätietojen mukautettuja kenttiä hinnoittelutoimenpiteiden avulla käyttämällä Lisätietorivin hinnoittelu -ominaisuutta. Tämän ominaisuuden avulla käyttäjien ei tarvitse enää käyttää mukautettuja käynnistimiä tai kulkuja päivittääkseen kyseisiä kenttiä. Tämä ominaisuus on hyödyllinen muutosten, uusimisen ja peruutusten käyttötapauksissa.

          Vaaditut versiot

          Käytettävissä: Lightning Experiencessa
          Käytettävissä: Revenue Cloudin Enterprise-, Unlimited- ja Developer Edition -versioissa, joissa on transaktioiden hallinta käytössä
          Tarvittavat käyttöoikeudet
          Lisätietorivin hinnoittelun määrittäminen ja käyttäminen:

          Salesforce-pääkäyttäjä

          JA

          Pricing Design Time -käyttäjä -käyttöoikeusjoukko

          Suorita nämä tehtävät ennen aloittamista.

          • Ota Lisätietorivin hinnoittelu -ominaisuus käyttöön valitsemalla Määritykset-valikosta Tuottoasetukset ja ottamalla käyttöön Lisätietorivin hinnoittelu -asetus.
          • Määritä hinnoittelujärjestelmäsi.

          Tuottohinnoittelun päivittäminen

          Jos haluat määrittää lisätietorivin lisämaksun, muokkaa tuottojen hinnoittelutapaa.

          1. Etsi ja avaa sovelluskäynnistimestä hinnoittelutoimenpiteet ja valitse päivitettävä hinnoittelutoimenpide.
          2. Muokkaa hinnoittelutoimenpiteitä lisäämällä uuden kartan rivikohteen elementin hinnoittelutoimenpiteen hinnoitteluasetuksen vieressä olevaksi toiseksi elementiksi.
          3. Lisää kontekstitunnisteiden kartoituksia kartan rivikohteeseen.

            Syöttömuuttuja

            Tuloksen muuttuja

            LineItem

            SalesTrxnItemDetailSource

            LineItemQuantity

            ItemDetailQuantity

            NetUnitPrice

            ItemDetailNetUnitPrice

            price_water_fall

            DetailPriceWaterfallIdentifier

            InputUnitPrice

            ItemDetailUnitPrice

            ItemBillingReference

            ItemDetailBillingReference

            ItemNetTotalPrice

            ItemDetailTotalPrice

            TotalLineAmount

            ItemDetailTotalLineAmount

            EffectiveFrom

            ItemDetailEffectiveFrom__std

            EffectiveTo

            ItemDetailEffectiveTo__std

            PricingTermCount

            ItemDetailPricingTermCount__std

            itemTransientEndDate

            ItemDetailTransientEndDate__std

            ItemPricingSource

            ItemDetailPricingSource__std

            DerivedPricingAttribute

            ItemDetailDerivedPricingAttribute__std

            ItemGroupSummarySubtotal

            ItemDetailGroupSummaryTotal__std

            ListPrice

            ItemDetailListPrice__std

            IsContracted

            ItemDetailIsContracted__std

            ItemContractPrice

            ItemDetailContractPrice__std

            STI_TenantName__c

            STID_TenantName__c

            Kun olet lisännyt kontekstitunnisteiden kartoitukset, näet SalesTransaction- ja SalesTransactionItemDetail-toimintojen väliset oletusarvoiset kartoitukset päivitetyillä kontekstimääritelmillä.

          Johdetun hinnoittelun Discoveryn toimenpiteen päivittäminen

          Jos käytät johdettua hinnoittelua, tee lisämuutoksia löydön toimenpiteeseesi, kun olet suorittanut muutokset tuottohinnoittelun toimenpiteeseesi. Nämä muutokset ovat tarpeen määrittääkseen kelvolliset lisäävät ja johdetut tuotteet.

          1. Etsi ja avaa sovelluskäynnistimestä Discovery Procedures ja valitse päivitettävä havainto-ohjelma.
          2. Lisää hintaan perustuviin tuotteisiin kaksi uutta elementtiä havainto-ohjelmaan: Discovery-asetukset ja Kartan rivikohde.
            Lisää nämä muuttujat Discovery-asetuksiin.
            • Input-muuttuja: Rivikohde
            • Tulosmuuttuja: LineItem
            Lisää nämä muuttujat kartan rivikohteeseen.
            • Input-muuttuja: SalesTransactionItem
            • Tulosmuuttuja: SalesTransactionItemDetail

            Lisää nämä lisämuuttujat kartan rivikohteeseen.

            Syöttömuuttuja

            Tuloksen muuttuja

            LineItem

            SalesTrxnItemDetailSource

            EffectiveFrom

            ItemDetailEffectiveFrom__std

            EffectiveTo

            ItemDetailEffectiveTo__std

            DerivedPricingAttribute

            ItemDetailDerivedPricingAttribute__std

          3. Tukee mukautettuja kenttiä käyttämällä hinnoittelutoimenpiteitä ARC-käyttötarkoituksiin.
            Mukautettujen kenttien määritykset ovat käytettävissä, jos käytät ARC API -rajapintoja ja haluat käyttää mukautettuja kenttiä.
            1. Lisää QuoteLineItem-, QuoteLineItem Detail-, OrderProduct- ja OrderProductDetails-objekteihin mukautettuja kenttiä.
            2. Luo kontekstin määritelmässä merkintä näille mukautetuille kentille sekä SalesTransactionItem- että SalesTransactionItemDetail-noodeissa.
            3. Luo pakolliset kartoitukset QuoteEntitiesMapping- ja OrderEntitiesMapping-ominaisuuksissa.
          4. Muokkaa mukautettujen kenttien tuottohinnoittelua.
            1. Muokkaa MapLineItem-elementtiä hinnoittelutoimenpiteessä lisätäksesi kartoituksen SalesTransactionItem.CustomField- ja SalesTransactionItemDetail.CustomField-kenttien välillä.
            2. Luo hinnoittelutoimenpiteessä tarvittavat mukautuselementit kohdistaaksesi arvon SalesTransactionItem.CustomField-kenttään.

              Hinnoittelutoimenpide havaitsee automaattisesti, onko tietyllä rivillä lisätietomerkintöjä, ja kirjoittaa nimiin SalesTransactionItemDetail.CustomField, jos sellaisia on. Muussa tapauksessa se kirjoittaa arvoon SalesTransactionItem.CustomField.

              Uusien myyntitapahtumien aikana CustomField on SalesTransactionItem täytetään. Jos ARC-skenaario sisältää lisätietorivejä, lisätietorivi kirjoitetaan SalesTransactionItemDetailissa CustomField-kenttään. Jos ARC:lle ei ole luotu lisätietoriviä, lisätietorivi on CustomField on SalesTransactionItem.

          5. Jos haluat kirjoittaa QuoteLineItem- tai OrderProducts-kenttiin mukautettuja kenttiä lisätietorivillä, suorita tämä lisämääritys, joka sisältää toimintasuunnitelmat ja Apex.
            1. Ota toimintasuunnitelma käyttöön. Etsi ja avaa Määritykset-valikosta Tuottoasetukset ja ota käyttöön Toimenpidesuunnitelman orkestrointi hinnoittelulle -asetus.
            2. Luo tarjoukselle ja tilaukselle toimintasuunnitelma.
            3. Varmista toimintasuunnitelmassa, että kaikki vaiheet sisältävät MapLineItem-elementin. Muokkaa kartoituksia hinnoittelutoimenpiteessä käytettyjen kenttien perusteella.
            4. Käytä tätä ApexCustomFieldHandler Apex-luokan esimerkkiä, jota voit parantaa päivittääksesi useita mukautettuja kenttiä tarvittaessa. Tämä luokka kyselee SalesTransactionItem- ja SalesTransactionItemDetail-noodeja, noutaa mukautettujen kenttien arvoja lisätietokohteista ja päivittää sitten vastaavat mukautetut kentät SalesTransactionItem-kentässä.
          Esimerkki
          Esimerkki
          global class ApexCustomFieldHandler implements RevSignaling.SignalingApexProcessor {
          
              public virtual class BaseException extends Exception {}
              public class OtherException extends BaseException {}
              
              public RevSignaling.TransactionResponse execute(RevSignaling.TransactionRequest request) {
                  
                  String contextId = request.ctxInstanceId;
                  Context.IndustriesContext industriesContext = new Context.IndustriesContext();
                  
          
                  // STEP 2 - Query SalesTransactionItem nodes
                  Map<String, Object> inputQueryItem = new Map<String, Object>{
                      'contextId' => contextId,
                      'tags' => new List<String>{ 'SalesTransactionItem', 'SalesTransactionItemDetail' }
                  };
                  Map<String, Object> itemQueryOutput = industriesContext.queryTags(inputQueryItem);
                  Map<String, Object> itemQueryResult = (Map<String, Object>) itemQueryOutput.get('queryResult');
                  List<Object> itemData = (List<Object>) itemQueryResult.get('SalesTransactionItem');
                  List<Object> itemDetailData = (List<Object>) itemQueryResult.get('SalesTransactionItemDetail');
          
          
                  Map<String, String> salesTransactionItemIdToCustomAggregatedValue = new Map<String, String>();
                  
                  // STEP 3 - Custom Field Value from SalesTransactionItemDetail
                  for(Object itemDetailObj : itemDetailData) {
                      Map<String, Object> itemDetailNode = (Map<String, Object>) itemDetailObj;
                      Map<String, Object> detailTagMap = (Map<String, Object>) itemDetailNode.get('tagValue');
                      
                      String lineItemId = (String)((Map<String, Object>) detailTagMap.get('SalesTrxnItemDetailParent')).get('tagValue');
                      String cfValue = (String)((Map<String, Object>) detailTagMap.get('STID_TenantName__c')).get('tagValue');
                      
                      System.debug('Custom Field Value for Detail Item' + cfValue);
                      if(cfValue != null) {
                          salesTransactionItemIdToCustomAggregatedValue.put(lineItemId, cfValue);
                      }
                  }
          
          
                  // STEP 4 - Build update list
                  List<Map<String, Object>> itemNodeUpdates = new List<Map<String, Object>>();
          
                  for (Object itemObj : itemData) {
                      Map<String, Object> itemNode = (Map<String, Object>) itemObj;
                      Map<String, Object> tagMap = (Map<String, Object>) itemNode.get('tagValue');
                      
                      String lineItemId = (String)((Map<String, Object>) tagMap.get('LineItem')).get('tagValue');
                      
                      List<Object> dataPath = (List<Object>) itemNode.get('dataPath');
          
                      dataPath.remove(0); // Remove contextId
          
                      itemNodeUpdates.add(new Map<String, Object>{
                          'nodePath' => new Map<String, Object>{ 'dataPath' => dataPath },
                          'attributes' => new List<Object>{
                              new Map<String, Object>{
                                  'attributeName' => 'STI_TenantName__c',
                                  'attributeValue' => salesTransactionItemIdToCustomAggregatedValue.get(lineItemId)
                              }
                          }
                      });
                  }
          
                  // STEP 5 - Create collection context update
                  if (!itemNodeUpdates.isEmpty()) {
                      Map<String, Object> updateInput = new Map<String, Object>{
                          'contextId' => contextId,
                          'nodePathAndAttributes' => itemNodeUpdates
                      };
                      
                      //Step 6 - Update context
                      System.debug('--- PREHOOK: SUBMITTING CONTEXT UPDATE ---');
                      System.debug(JSON.serializePretty(updateInput));
                      industriesContext.updateContextAttributes(updateInput);
                  }
          
                  RevSignaling.TransactionResponse response = new RevSignaling.TransactionResponse();
                  response.status = RevSignaling.TransactionStatus.SUCCESS;
                  return response;
              }
          }
          
          Tärkeää
          Tärkeää Jos haluat lisätä mukautettuja kenttätietoja omaisuuden tilan ajanjaksoon ja omaisuuden toimintolähteeseen, luo asiaankuuluvia kontekstien välisiä kartoituksia.
           
          Ladataan
          Salesforce Help | Article