Class IsaBackendBusinessObjectBaseSalesERP

java.lang.Object
de.hybris.platform.sap.core.bol.backend.BackendBusinessObjectBase
de.hybris.platform.sap.core.bol.backend.jco.BackendBusinessObjectBaseJCo
de.hybris.platform.sap.sapordermgmtbol.transaction.salesdocument.backend.impl.erp.IsaBackendBusinessObjectBaseSalesERP
All Implemented Interfaces:
BackendBusinessObject, BackendBusinessObjectJCo, BackendState
Direct Known Subclasses:
SalesDocumentERP

public abstract class IsaBackendBusinessObjectBaseSalesERP extends BackendBusinessObjectBaseJCo implements BackendState
Superclass of R3Lrd documents, containing common functionality
  • Field Details

    • itemsPriceAttribMap

      protected Map<String,Map<String,String>> itemsPriceAttribMap
      Map of price attribute maps for items
    • headerPriceAttribs

      protected Map<String,String> headerPriceAttribs
      Map of price attributes for the header
    • itemsPropMap

      protected Map<String,String> itemsPropMap
      Map of price properties for items
    • headerPropMap

      protected Map<String,String> headerPropMap
      Map of price properties for the header
    • itemConfigChangeableMap

      protected Map<String,Boolean> itemConfigChangeableMap
      store configuration changeable info for configurable itemSalesDocs
    • setIpcPriceAttributes

      protected boolean setIpcPriceAttributes
      flag if price attributes are needed, to show IPC prices for configurable products
    • shipToMap

      protected Map<String,ShipTo> shipToMap
      store shipTo info for itemSalesDocs
    • predecessorShipTo

      protected Map<Object,ShipTo> predecessorShipTo
    • loadState

      protected LoadOperation loadState
    • savedItemsMap

      protected Set<String> savedItemsMap
      List of saved items of the order. In order to be able to distinguish between saved items and new items in case of order change, the handles of the saved items are added to this list when the order is read the first time from the backend * *
    • docflowRead

      protected boolean docflowRead
      Due to performance reasons the docflow of header and items should only be read once. Therefore the docflow data are cached after the first call or ERP_LORD_GETALL.
    • itemDocFlow

      protected com.sap.conn.jco.JCoTable itemDocFlow
      JCO table: item document flow
    • headerDocFlow

      protected com.sap.conn.jco.JCoTable headerDocFlow
      JCO table: header
    • messageBufferMap

      protected Map<String,MessageList> messageBufferMap
      Map of messages.
  • Constructor Details

    • IsaBackendBusinessObjectBaseSalesERP

      public IsaBackendBusinessObjectBaseSalesERP()
  • Method Details

    • getSavedItemsMap

      public Set<String> getSavedItemsMap()
      Specified by:
      getSavedItemsMap in interface BackendState
      Returns:
      List of saved (already existing) items of the order
    • initBackendObject

      public void initBackendObject() throws BackendException
      Description copied from interface: BackendBusinessObject
      This method is called by the SessionObjectManager to initialize object after all properties have been injected.
      Specified by:
      initBackendObject in interface BackendBusinessObject
      Overrides:
      initBackendObject in class BackendBusinessObjectBase
      Throws:
      BackendException - BackendException
    • getHeaderPriceAttribs

      public Map<String,String> getHeaderPriceAttribs()
      Description copied from interface: BackendState
      Returns the Header price attribute map If not yet present, creates the map
      Specified by:
      getHeaderPriceAttribs in interface BackendState
      Returns:
      HashMap, map for the header price attributes
    • getItemsPriceAttribMap

      public Map<String,Map<String,String>> getItemsPriceAttribMap()
      Description copied from interface: BackendState
      Returns the item price attribute map If not yet present, creates the map
      Specified by:
      getItemsPriceAttribMap in interface BackendState
      Returns:
      HashMap, map for the item price attributes
    • getHeaderPropMap

      public Map<String,String> getHeaderPropMap()
      Description copied from interface: BackendState
      Returns the header property map If not yet present, creates the map
      Specified by:
      getHeaderPropMap in interface BackendState
      Returns:
      HashMap, map for the header properties
    • getItemsPropMap

      public Map<String,String> getItemsPropMap()
      Description copied from interface: BackendState
      Returns the item property map If not yet present, creates the map
      Specified by:
      getItemsPropMap in interface BackendState
      Returns:
      HashMap, map for the item properties
    • getItemVariantMap

      public abstract Map<String,String> getItemVariantMap()
      Description copied from interface: BackendState
      Returns the map, to store item variant information
      Specified by:
      getItemVariantMap in interface BackendState
      Returns:
      HashMap, map of item variants
    • getShipToMap

      public Map<String,ShipTo> getShipToMap()
      Description copied from interface: BackendState
      Returns the map, which stores the header resp. item vs. shipToKey relation
      Specified by:
      getShipToMap in interface BackendState
      Returns:
      Map
    • setShipToMap

      public void setShipToMap(Map<String,ShipTo> map)
      sets the map, which stores the header resp. item vs. shipToKey relation
      Parameters:
      map - shipTo map
    • adjustFreeGoods

      protected boolean adjustFreeGoods(SalesDocument posd, TransactionConfiguration transConf) throws BackendException
      Adjusts the free good related sub items. Forwards to FreeGoodSupportBackend.
      Parameters:
      posd - the sales document
      transConf - Configuration for SAP synchronous order management
      Returns:
      was there an inclusive FG item?
      Throws:
      BackendException - exception from parsing etc.
    • isDocflowRead

      public boolean isDocflowRead()
      Description copied from interface: BackendState
      For performance reasons DocFlow should only be read when necessary. Typically + DocFlow will not change when one changes or displays an order within one session. So it is sufficient to read it once.
      Specified by:
      isDocflowRead in interface BackendState
      Returns:
      true, if docflow has been read
    • setDocflowRead

      public void setDocflowRead(boolean docflowread)
      Description copied from interface: BackendState
      Sets the flag dowflowRead
      Specified by:
      setDocflowRead in interface BackendState
      Parameters:
      docflowread - docflowread
    • getHeaderDocFlow

      public com.sap.conn.jco.JCoTable getHeaderDocFlow()
      Description copied from interface: BackendState
      Returns the docflow of the header
      Specified by:
      getHeaderDocFlow in interface BackendState
      Returns:
      JCoTable docflow of the header
    • getItemDocFlow

      public com.sap.conn.jco.JCoTable getItemDocFlow()
      Description copied from interface: BackendState
      Returns the docflow of the items
      Specified by:
      getItemDocFlow in interface BackendState
      Returns:
      HashMap doc flow of the items
    • setHeaderDocFlow

      public void setHeaderDocFlow(com.sap.conn.jco.JCoTable table)
      Description copied from interface: BackendState
      Sets the header docflow in the table buffer
      Specified by:
      setHeaderDocFlow in interface BackendState
      Parameters:
      table - header docflow table
    • setItemDocFlow

      public void setItemDocFlow(com.sap.conn.jco.JCoTable table)
      Description copied from interface: BackendState
      Sets the items docflow in the table buffer
      Specified by:
      setItemDocFlow in interface BackendState
      Parameters:
      table - JCoTable item docflow
    • getMessageList

      public MessageList getMessageList(TechKey key)
      Description copied from interface: BackendState
      Returns the MessageList for the given key, if one exits, null else
      Specified by:
      getMessageList in interface BackendState
      Parameters:
      key - Technical key identifying head or item object
      Returns:
      the MessageList for the given TechKey or a default MessageList, if the key is null or initial, if existing else null
    • getOrCreateMessageList

      public MessageList getOrCreateMessageList(TechKey key)
      Description copied from interface: BackendState
      Returns the MessageList for the given key, if one exits, if not create one
      Specified by:
      getOrCreateMessageList in interface BackendState
      Parameters:
      key - technical key identifying head or item object
      Returns:
      the MessageList for the given TechKey or a default MessageList, if the key is null or initial
    • removeMessageFromMessageList

      public void removeMessageFromMessageList(TechKey key, String resourceKey)
      Description copied from interface: BackendState
      Removes the given message from the MessageList in the MessageBufferMap for the given key, if present
      Specified by:
      removeMessageFromMessageList in interface BackendState
      Parameters:
      key - technical of the business object the message belongs to
      resourceKey - resource key of the message
    • getLoadState

      public LoadOperation getLoadState()
      Specified by:
      getLoadState in interface BackendState
      Returns:
      Current Load state of the document