Skip to Content
Author's profile photo Former Member

ByDesign 1508 Release: PDI enablement of Business Document Flow feature

Overview

SAP Business ByDesign supports the feature of representing the documents of a process in the form of Business Document Flow. The system stores the data of every step in an operational business process in the form of a document, for example, an opportunity, a sales quote, a sales order, an outbound delivery, or a customer invoice. Since the steps of the business processes are often based on previous steps, the documents are likewise based on one another and thus form a consecutive document chain.

Business Document Flow is a read only representation which gives a view of a set of predecessors and successors of a business transaction document and helps to monitor and analyze entire document chain.

/wp-content/uploads/2015/07/1_752373.png

The initial view of the document flow highlights the document from which you start the display. It displays documents preceding or following the highlighted document. This highlighted document is called ‘Anchor Object’. To view the overview of a specified business document, click the corresponding ID.

If you click on the anchor symbol of any other document view, then document flow is seen from the respective document perspective.

Document Flow currently provides 2 Views: Standard View and Extended View.

Standard View (Business View) usually refers to the Document Flow view required for a User who would just be interested in the Business process.

Extended View (Technical View) refers to the Document Flow view required for a User who would be interested in the technical documents of the Business Process as well.

Feature Enabled in 1508

Apart from viewing business transaction documents for SAP delivered business objects in document flow, now we also can view the business transaction documents for partner delivered business objects in the form of document flow. Links from SAP documents to partner documents, within partner documents of a solution, partner documents of different solutions can all be viewed easily and also the navigation to the respective document screen is provided. SDK is now enabled for the partners to store the links between the business documents. There are 4 scenarios which could be considered for the same and steps to achieve them by the partners would be provided below.

Scenarios:

A)    Partner BO being an Anchor and having relation with SAP delivered business object.

/wp-content/uploads/2015/07/2_752491.png

B)    Connecting link between partner business objects of same solution.

/wp-content/uploads/2015/07/3_752498.png

         Link between multiple partner business objects to multiple SAP delivered business objects.

/wp-content/uploads/2015/07/4_752499.png

C)   Link between SAP delivered business object and partner business object – SAP Business Object being  anchor.

/wp-content/uploads/2015/07/5_752500.png

D)    Connecting link between partner business objects of 2 or more solutions.

/wp-content/uploads/2015/07/6_752501.png


Steps to configure Business Document Flow for a Partner Business Objects


  • ·        All consuming objects should have an association to BusinessDocumentFlow object. Add an association to the Business Object ‘BusinessDocumentFlow’ using the key BusinessDocumentFlowKey (alternative key) from the Business Object Node ROOT. And fill the document key in event-before-save.

/wp-content/uploads/2015/07/7_752502.png

/wp-content/uploads/2015/07/8_752503.png

  • ·        Create BC set on BCO BusinessDocumentFlowAnchor to fill in the entries for the respective Business Object. This is to see business document as an anchor object in the document flow screen. Rather to view document flow from anchor object perspective.

Fields:

1.     ID : Identifier (key).

2.     AnchorESName: Anchor Object ES Name. (Mandatory to fill).

3.     AnchorESNamespace: Anchor Object ES Namespace. (Mandatory to fill).

4.     Anchorkey: Specifies the key if it is ID / UUID . UUID is considered as Document Key for Partner Business Objects. (Mandatory to fill).

/wp-content/uploads/2015/07/9_752505.png

/wp-content/uploads/2015/07/10_752506.png

  • ·        Create BC set on BCO BusinessDocumentFlowSpanDefinition to fill in the entries for the respective Business Object with the corresponding list of Business Objects that can be part of the Business Document Flow View.

Fields:

1.     SpanID: Identifier (key).

2.     ProfileType: refers to the Standard or Extended View of the Business Document Flow. (Mandatory to fill)

3.     AnchorESName: is the ES name of the BusinessObject on which the Document Flow is derived. (Mandatory to fill)

4.     AnchorESNamespace: is the ES Namespace of the BusinessObject on which the Document Flow is derived. (Mandatory to fill)

5.     SpanESName:  is the ES Name of the BusinessObject which could be part of the Document Flow, derived on the Anchor BusinessObject. (Mandatory to fill)

6.     SpanESNamespace: is the ES Namespace of the BO which could be part of the Document Flow, derived on the Anchor BusinessObject. (Mandatory to fill)

7.     BDF_invisible: specifies if the particular SPAN BO would be visible or invisible.

/wp-content/uploads/2015/07/11_752507.png

/wp-content/uploads/2015/07/12_752508.png

  • ·        Create BC set on BCO BusinessDocumentFlowBusinessObjectRelationship to fill in the entries for links.

Fields :

1.     B1B2ID: Identifier(Key)

2.     BO1ESName: ES Name of Business Documents that would be part of the link. (Mandatory to fill)

3.     BO1NameSpace: ES Namespace of Business Documents that would be part of the link. (Mandatory to fill)

4.     RoleBO1: Role of the respective Business Document in the corresponding link. Ex: Predecessor / Successor. (Mandatory to fill)

5.     BO2ESName: ES Name of Business Documents that would be part of the link. (Mandatory to fill)

6.     BO2NameSpace: ES Namespace of Business Documents that would be part of the link. (Mandatory to fill)

7.     RoleBO2: Role of the respective Business Document in the corresponding link. Ex: Predecessor / Successor. (Mandatory to fill)

8.     ResponsibleBO: Specifies if the First BO or Second BO would hold the link information. If left BLANK, it would mean that either of the BO  could provide the link information.

9.     BO1key: Specifies if the key for the Document is UUID or ID. If left blank, UUID is considered as the Document Key.

                      10.      BO2key: Specifies if the key for the Document is UUID or ID. If left blank, UUID is considered as the Document Key. 

/wp-content/uploads/2015/07/13_752513.png

/wp-content/uploads/2015/07/14_752514.png

  • ·        BADI BAdiDocumentFlowforGetNeighbours is defined by document flow which is filter based and used to retrieve links/neighbors and corresponding partner business object properties like creation date/ time, Name of the BO and so on.

Interface Method: GET NEIGHBOURS: For link BO1 -> BO2, when BO1/BO2 is responsible for maintaining links, this method needs to be implemented for the corresponding BO defined by the filter (ESName and ESNamespace) to get the neighbors and BO Properties.

Note: In order to view anchor indicator, at least one property must be provided by the partner for the corresponding business object.

This BADI is implemented for all the scenarios mentioned above in the document having the filter values:

A)    Partner BO being an Anchor and having relation with SAP delivered BO

Filter value: ES Name and ES Namespace of the Partner BO

B)    Connecting link between partner business objects of same solution like:

Partner BO (1) (Anchor) to Partner BO(2) of same solution /Multiple Partner BO s to Multiple SAP BO s

Filter Value: ES Name and ES Namespace of the Partner BO(1)

C)    Link between SAP delivered business object to partner business object

Filter Value: ES Name and ES Namespace of the SAP BO

D)   Connecting link between partner business objects of 2 or more solutions. Like : Partner BO(1) Solution1 and Partner BO(2) of Solution2

Filter Value: ES Name and ES Namespace of SAP BO. BADI implemented in both the solutions


Example: Opportunity is created from partner business object of solution A and same opportunity has relation with partner business object of solution B, then both the partners have to implement the BADI having opportunity as filter parameter and provide corresponding partner business object as opportunity’s neighbor in the result.

Details of the import and export parameters of the BADI method get neighbours

Importing Parameter:

GetNeighboursParamentersPDI: This has 3 elements :

1.     DocumentBONode is a table :

BusinessDocumentFlowBOName

ES Name of the BO

BDFNamespaceURI

ES NameSpace of the BO

DocumentBONode

ES Node Name of the BO

DocumentBONodeKey

Instance Based Node Key/SAP_UUID of Partner BO Node

DocumentBONodeFormattedId

Reference ID of the BO instance

2.     TableOfEsnametogetOTC (Optional)

BusinessDocumentFlowBOName

ES Name of the BO

BDFNamespaceURI

ES NameSpace of the BO

3.     CallType (Optional) : This is a string with below values- GetNeighbors/Nothing and GetBy

GetNeighbors / Nothing

Support all scenarios

GetBy

Scenario D (from above)

Exporting Parameter:

GetBDFReferencesPDI: This is the table of ‘Neighbors’.

Elements of the table:

BusinessDocumentFlowBOName

ES Name of the BO

BDFNamespaceURI

ES NameSpace of the BO

DocumentBONode          

ES Node Name of the BO

DocumentBONodeKey

Instance Based Node Key/SAP_UUID of the BO Node

DocumentBONodeFormattedId

Reference ID of the BO instance

TableOfProperties

Properties which has to be seen on the Doc flow UI like Creation date, name, etc

TableOfPDINeighbors

Neighbors of the Anchor Object

Table of Properties :

PropertyID

Mandatory to be entered. Can provide any data type name depending on the property value you give. For example:

ANCHOR_INDICATOR

Indicator

APC_C_MEDIUM_NAME

For description value

GDT_GLOBAL_DATE_TIME

For Timepoint

APS_AMOUNT

For amount

SpecialPropertyIndicator

1

DocumentLifeCycleStatus

2

DocumentCreationDate

3

DocumentName

4

DataProviderIndicator

PropertyName

Name on the Document Flow card

PropertyValue

Amount

Description

Quantity

Timepoint

Name

Indicator

IntegerValue

DecimalValue

Code

Identifier

1. If AMOUNT is specified CURR CODE should exist

2. If quantity is specified UNIT should exist

3. Property ID should be present for each property.

4. For one property not more than one fields should be provided

5. Special property indicator check, to check if the value and the indicator are in sync.

6. In all Invalid properties scenarios, the invalid properties are deleted.

TableOfPDINeighbors:

BusinessDocumentFlowBOName

ES Name of the BO

BDFNamespaceURI

ES NameSpace of the BO

DocumentBONode          

ES Node Name of the BO

DocumentBONodeFormattedId

Reference ID of the BO instance

DocumentBONodeKey

Instance Based Node Key/SAP_UUID of the BO Node

BusinessDocumentRelationshipTypeCode

1

Sequence relationship

Doc flow shown sequentially wrt anchor

8

Assignment relationship

This could be bi-directional also

RoleCodeAnchor

1

Predecessor

2

Successor

RoleCodeNeighbor

1

Predecessor

2

Successor

TableOfProperties

Explained above

/wp-content/uploads/2015/07/15_752515.png

/wp-content/uploads/2015/07/16_752516.png

/wp-content/uploads/2015/07/17_752517.png

/wp-content/uploads/2015/07/18_752518.png

/wp-content/uploads/2015/07/19_752523.png


Document Flow UI configuration

Document Flow shows a graphical view of the documents involved in a Business Process. This is designed as an embedded component based on Document Flow controller.


Consumption of the embedded component is to be done by the partners only for the partner UI components (OIFs). Because SAP UI components have already consumed the embedded component.

If the partner business object has relation to any of the SAP delivered business objects and partner wants to see his object in SAP UI component, then he can directly implement the BADI to showcase the partner business object in SAP UI component (OIF). No need of using embedded component.

The parent UI Component (host floor plan in other words the embedding UI Component) has to define an Outport with the BusinessDocumentFlow Node ID as parameter and do the simple navigation as shown in screenshots.


Name of UI Component: DocFlow_EC


Path in XRepository (in case of embedded component): SAP_BYD_APPLICATION_UI/Reuse/DocumentFlow

/wp-content/uploads/2015/07/20_752525.jpg

/wp-content/uploads/2015/07/21_752526.jpg

/wp-content/uploads/2015/07/22_752527.jpg

/wp-content/uploads/2015/07/23_752528.jpg

/wp-content/uploads/2015/07/24_752529.jpg

/wp-content/uploads/2015/07/25_752530.jpg

There is an OBN Link in the document flow view which is enabled for all the partner business objects. (Link enablement is for all the BOs except the anchor BO (in blue)). Onclick of this link, it would open a factsheet/readonly view of the respective business object.

Note: There is no possibility to provide port type package generated from the solution. OBN inport must be created.

To navigate to the factsheet, an OBN inport has to be created in the target screen having

  • –         Select Operation as ‘Open’.
  • –         Port Type Package as ‘/SAP_BYD_UI/SystemPortTypes.PTP.uicomponent’.
  • –         Port type reference as ‘OpenByKey’.
  • –         Keylist, key as parameters.
  • –         And the event handler as shown below. For the anchor symbol to be seen on the document view, atleast one property should be provided by the partners for the Partner Business Object.

/wp-content/uploads/2015/07/26_752534.png

/wp-content/uploads/2015/07/27_752535.png

/wp-content/uploads/2015/07/28_752536.png

Summary


With the above feature enabled for the partners, now it is possible to view the processes/several deviations which goes from one document to another document whether it is SAP business document or partner document or partner documents of different solutions at one place by configuring accordingly.

Explicitly, it is possible to view the SAP business documents in the document flow of the partner UI components and also when you open the UI components of SAP, then you would be able to see the partner business documents if they have relation.

For example: If an opportunity is created/ neighbor of a partner Business object, then when you open the document flow of opportunity, you would be able to view the partner document also.

Assigned Tags

      13 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Thanks Ramya Narayana Murthy.

      Its really very great detail document.

      Again thanks for sharing............

      Regards,

      Mithun

      Author's profile photo Former Member
      Former Member

      Great I look forward to implementing this feature into several projects...

      Author's profile photo Hanumath Kanamarlapudi
      Hanumath Kanamarlapudi

      Hi Ramya,

      Thanks for such detailed flow. I would like to know whether this BTD flow plugin development is directly possible on the Customer Test tenant itself or not?

      This is because we need to use the SAP BCO's which are not enabled on the customer tenants. So would like to know the possibilities of doing this.

      Will the BTD flow plugin work with out those BC Sets prescribed?

      Thanks in advance for the information on the above....

      Regards,

      Hanu

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hi Hanumath,

      Currently there are no BC views exposed to customer to create their own entries in their test systems.

      In case you have any new Business Objects (PDI) to be viewed as the cards of the document flow, then you need to create BC set entries on top of the released SAP BCOs from Studio and implement the respective BADIs as mentioned in the description above.

      Hope this would help.

      In case of any queries, you can get in touch with me.

      Thanks,

      Ramya

      Author's profile photo Hanumath Kanamarlapudi
      Hanumath Kanamarlapudi

      Thanks Ramya for your clarification.

      I am in a situation where almost 75% of our developments are completed tested in the customer test tenant. All developments are under a single solution in the customer test tenant, now I need this BTD Flow plugin to be developed and integrated between some custom bo's and SAP standard bo's of the same solution.

      But I have no chance to develop this in customer test tenant and at the same time I don't have the chance of exporting solution to the partner development system too šŸ™ , How am i supposed to develop this plugin now? any clues or support will help me to develop this.

      Please can you analyze ans provide me some options to achieve this in customer test tenant at this point of time. On the same hand needed another clarification, will the BTD flow plugin development is possible directly and will be working on the MCS platform?

      Regards

      Hanu

      Author's profile photo Hanumath Kanamarlapudi
      Hanumath Kanamarlapudi

      Hi Ramya,

      Can you please respond to the above thread. It would be useful for us. Thanks.

      Regards

      Hanu

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hi Hanumath,

      If you are able to create a solution in the cutomer test tenant, then create the BC set with entries from custom BO to SAP BO and deploy the same. But i dont think there is any other way of doing the same. This can be achieved only via creating BC sets inside partner solution.  We have tested the scenarios where we can have links between custom BOs of different solutions. Then it might work for MCS also. But needs to be checked.

      Thanks,

      Ramya

      Author's profile photo Senz Evo
      Senz Evo

      HiĀ Former Member

      First of all, Appreciate your effort and thanks for the blog.

      I've tried to replicate the document flow as described in this blog, having some problem in identifying the anchor key(/APORS/S_BO_NODE_UUID) for defining in BCC elements.

      can you help me wher exactly i can find the anchor key for my bo ?

      Regards,

      Senz

      Author's profile photo Nathanael Mangold
      Nathanael Mangold

      DearĀ Former Member

      I have trouble with the B1B2ID in the BCC when deploying the business configuration. Where can I find the ID I need to use there?

       

      Regards,

      Nathanael

      Author's profile photo Tobias Kuhn
      Tobias Kuhn

      Hi,

       

      I found an solution on how to get the Status Information in the Document Flow working.

      The Information can be found here https://answers.sap.com/questions/12894260/document-flow-1.html.

      I hope this will help some of you.

       

      Best regards

      Tobias Kuhn

      Author's profile photo Daniel Vidal
      Daniel Vidal

      Hi Tobias KuhnĀ ,

      Did you manage to implement this? When I try to declare an element with data type BusinessDocumentFlowKey I get error, even calling all required imports.

      Author's profile photo Tobias Kuhn
      Tobias Kuhn

      Hi,

       

      I have implemented this successfully including the mentioned status information.

       

      Do you have the needed import specified?

      import AP.FO.BusinessDocumentFlow.Global;

       

      Best regards

      Tobias

      Author's profile photo Daniel Vidal
      Daniel Vidal

      Hi Tobias,

      Thanks for the reply. Yes, I've added all required imports:

      import AP.Common.GDT as apCommonGDT;
      import AP.FO.BusinessPartner.Global;
      import AP.FO.BusinessDocumentFlow.Global;
      import AP.CRM.Global;
      import AP.Common.Global;

      My solution type is Customer Specific Solution, Deployment Unit = Customer Relationship Management.

      Looking at Data Types, in Repository Explorer, I cannot find this BusinessDocumentFlowKey in there... Have you raised an incident to SAP support enables something in the backend?

      Thanks