Monthly Archives: May 2023

  • 0

How to integrate SAP PO with ANAPLAN

Category:Programming,SAP,SAP PI/PO

Already past a couple of monthes after i develop an integration between our SAP BW system running over Hana databes and Anaplan, in order to achieve it, the project use SAP Process Orchestration 7.5

During the implementation process, i face some challenges that i try to solve making a research in different forums, since i could not get a complete guide to achieve the solution, i decide to write one and share my personal experience in order to help the readers to develop this integration scenery.

Goal

At the end of this post you will could setup a connection between Anaplan and SAP Process Orchestration running over SAP Netweaver 7.50 using a communication channel with adapter REST to stablish a connection with Anaplan and a communication channel with adapter SOAP XI 3.0 to stablish a connection with the SAP Abap systems.

Architecture

Integration%20Architecture

1. Integration Architecture

Assumptions

  • There is a Technical User in Anaplan that could be used in order to stablish the communication or a certificate issued to the Technical User.
  • The Anaplan Technical User has access to the workspace and the models.

Steps

1. In order to stablish a connection between SAP PO and Anaplan, the first step will be create a communication channel using REST Adapter.

2.%20Communication%20Channel%20for%20authentication

Communication Channel for authentication, url: https://auth.anaplan.com/token/authenticate

In order to stablish a connection between SAP PO and Anaplan, the first step will be create a communication channel using REST Adapter, the authentication method could be basic auth or certificate authentication only with https.

After the authentication method and url will be applied, the following modules should be added under the Module Tab.

The modules added will be:

useAuthPreemptive: this means that server will expect the authorization credentials will be deliver without providing an Unauthorized reponse or Method Not Allowed.

useJDKSSF: this will avoid Handsake failures due to unmatch TSL or missing SSL protocol.

useResponseErrorMessage

2. Once the authentication process will be finished an Authentication Token will be deliver by Anaplan in response and must be used across the whole integration until a logout will be realized, the way chossen in the project use Pattern Variable Replacement with an xpath expression.

After that the Pattern Element Name will be used into the Adittional HTTP Headers

3. In order to achive the Integration the process need to request the Workspace and the model, consider delivering the workspace ID at lower case and the models in upper case.

Once the workspace and model are retrieved, the next steps will include to recover the imports, files and the chunks.

4. Once the chunk is retrieved, you will need to upload the file in the chunk, since our source was stored into an database table inside, the whole process to transform the ABAP structure into a textline splitted by “;” character was developed at ABAP Backend.

On the SAP PO side using a java mapping the content was adjusted to deliver a plain text message to Anaplan

public void execute(InputStream in, OutputStream out) throws StreamTransformationException {

   String documento = “”;

   String linea = “”;

try {

      DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

      DocumentBuilder db              = dbf.newDocumentBuilder();

      Document xml_in                   = db.parse(in);

      String encoding                     = “UTF-8”;

      NodeList nodeListLine           = xml_in.getElementsByTagName(“content”);

for (int i = 0; i < nodeListLine.getLength(); i++) {

         Node nodeLine = nodeListLine.item(i);

         Element elemLine = (Element) nodeLine;

         linea = elemLine.getTextContent();

if (i < nodeListLine.getLength()-1) {

           documento = documento + linea ;

         }else {

           documento = documento + linea ;

         }

      }

      out.write(documento.getBytes(encoding));

   } catch (IOException e) {

     System.out.println(“ERROR CLASE TestEncryption : ” + e.getMessage());

     throw new StreamTransformationException( “ERROR CLASE TestEncryption : ” +

                                                                          e.getMessage());

   } catch (Exception e) {

}

On the communication channel stablish the following values:

Since the HTTP responde code delivered by this interface is 204 on a success delivery, we include a custom Error Handling.

<?xml version=”1.0″ encoding=”UTF-8″?>

<ns0:MessageType_Res xmlns:ns0=”namespace”>

   <status>204</status>

   <message>success</message>

</ns0:MessageType_Res>

5. Once the files was delivered to the chunks, the next step will be to post the chunk and complete the uploads, this step will close the file.

6. Consider that the fille in Anaplan will be visible by the Technical User used to achieve the upload.

7. In order to release the session a logout process should be achieved, this will include a custom Error Handling in order to catch the HTTP 202 responde code.

Conclusion

In summary this process will help you to enable the connection between SAP PO running over SAP Netweaver 7.5 and Anaplan, guiding you through several process steps that our team already face and pass.

Happy Integration!


  • 0

Which is the importance of a Business Plan

Category:Business Management

Having a great idea and not having a Business Plan is like buying a car and not knowing how to drive it; A business plan is the key not only to effectively increase the chances of success of a business, but also to access financing and support to start it, in this way we must consider the importance of a business plan, as a tool that allows leveraging the chances of success of a project to transform it into a profitable business.

A business plan allows ventures to have the necessary resources to carry out in an organized manner develop projects with a greater probability of success, regardless of whether or not they are related to new technologies. In the end, investors invest in innovation, and if the idea is innovative in itself, it does not have to be linked to the technological ecosystem. The problem that most Startups encounter when presenting their projects to investors is presentation, structure, approach, language and content.

Thus, a business plan becomes a key element of strategic value for the organization, beyond that it is also a presentation in itself of the organization’s strategy, structure, goals and objectives, exposing the key elements that allow convert an idea that is in itself an ethereal element into a structured and profitable company, for this purpose the resources that the company has and the way in which they interact with each other and with the environment are considered. In order to meet this objective then, the document must be prepared containing a series of mandatory elements, which contemplate the most relevant aspects of the business, that is, market aspects, financial, administrative and strategic aspects, raised in such a way that they do not leave any place doubts about our business project. Additionally, it must be presented in an orderly, concise and certainly strategic manner; becoming a novel that contains a presentation with middle and end, which an investor or financial institution must be able to digest without the slightest inconvenience. Of course, the elaboration must also be considered in the same “language” as our recipient. That is to say, use tools, technicalities and usual resources of investors and financial institutions. This is nothing more than adapting the message to the end user to facilitate their understanding and achieve a better reception on their part.

Knowing how to prepare a good business plan means the difference between getting the key to financing a project, or suffocating it even before its birth.