Friday, 22 June 2018

Sample XSLT to Create Delimited String

1. Map Array to an Element using XSLT

<TargetElement>
    <xsl:for-each select="tns:SourceCollection/tns:SourceElement">
        <xsl:value-of select="." />
        <xsl:if test="position() != last()">
            <xsl:value-of select="','"/>
        </xsl:if>
    </xsl:for-each>
</TargetElement>

Monday, 18 June 2018

GIT Bash Commands to Create New Branch and Merge

1. Clone the existing branch to new folder/branch on your machine.

2. Execute following bash commands

git branch new_branch_name

git checkout new_branch_name

add a new file to branch and execute the following command.

git add .

git commit -m "Creating new branch with additional changes"

git push origin new_branch_name

git branch -a

3.  Merge files from Master/Developer branch to new branch

git checkout new_branch_name

git merge origin/master(developer)

git commit -m "Merging changes from Master to new_branch_name"

git push origin new_branch_name

Monday, 4 June 2018

Mulesoft Anypoint Studio 7.1 - JDK Issue Resolution

1. Install latest vesion of JDK - 1.8
2. Set JAVA_HOME with JDK path
3. Set PATH with %JAVA_HOME%bin
4. Update AnypointStudio.ini under AnypointStudio with following JDK path.

--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.551.v20171108-1834
-vm
D:\vkanakap\Java\bin\javaw.exe
-vmargs
-Xms512m

Thursday, 24 May 2018

SOACS - ERP CALLBACK IMPLEMENTATION STEPS


ERP CALLBACK IMPLEMENTATION STEPS

    •  Get the user credentials to invoke the SAAS web service
    •  Create a same user in SOACS and password may be anything
    •  Import all SOACS certificates on to ERP servers using security console
    •  Import all SAAS certificates on to SOACS server using EM console.
    • Got to Domain folder in em conole
    • Select Security , Keystore
    • Select System and trust keystore
    • Select Manage option 
    • Import the SAAS certificate
    • Use the following steps to get the SAAS certificate. 
      • Access SAAS URL 
      • Select the lock button in the URL
      • Select certificate
      • Go to details
      • Select copy certificate to file option
      • Use Base 64 Encode format
      • Save the file as *.cer file. 
    • Import SAAS OWSM certificates in SOA EM console
      • Access SAAS WSDL and get the certificates. (Look at the bottom of the WSDL and you will get the certificates
      • https://HostName:port/publicFinancialCommonErpIntegration/ErpIntegrationService?wsdl
      • Copy the certificates and save it as .cer files
      • Open the cer files and get the issuesd to name. 
      • Got to Security and Keystore under domain
      • Create a stripe called owsm
      • Under owsm create a keystore called keystore. 
      • select the keystore and click manage option in the top.
      • import the above owsm certificates with issuer name as alias. ($issuedto.cloud.oracle.com) (CN=$IssuedName, DC=cloud, DC=oracle, DC=com)
    • Create a SOA Composite to invoke ERP service using following WSM policy.
      • Oracle/wss_http_token_over_ssl_client_policy
      • Attach CSF key to the policy.
    • Create a SOA composite to receive the callback from ERP service. Use the following WSM policy to receive the call back.
      • Oracle/wss_saml_bearer_or_username_token_service_policy
Use the following sample xsd and wsdl files to receive the callback message.

<?xml version='1.0' encoding='UTF-8'?>
<schema attributeFormDefault="unqualified" targetNamespace="http://xmlns.oracle.com/SOACoreServices/ERPCallbackServiceService/ERPCallbackService" xmlns="http://www.w3.org/2001/XMLSchema">
<element name="ERPCallbackInput">
<complexType>
<sequence>
<element name="requestId" type="string"/>
<element name="state" type="string"/>
<element name="resultMessage" type="string"/>
</sequence>
</complexType>
</element>
</schema>


<?xml version= '1.0' encoding= 'UTF-8' ?>
<wsdl:definitions
     name="ERPCallbackService"
     targetNamespace="http://oracle.com/sca/soapservice/SOACoreServices/ERPCallbackServiceService/ERPCallbackService"
     xmlns:tns="http://oracle.com/sca/soapservice/SOACoreServices/ERPCallbackServiceService/ERPCallbackService"
     xmlns:inp1="http://xmlns.oracle.com/SOACoreServices/ERPCallbackServiceService/ERPCallbackService"
     xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    >
    <wsdl:types>
        <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            <xsd:import namespace="http://xmlns.oracle.com/SOACoreServices/ERPCallbackServiceService/ERPCallbackService"
                 schemaLocation="../Schemas/ERPCallbackService.xsd"/>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="onJobCompletionRequestMessage">
        <wsdl:part name="ERPCallbackInput_pn" element="inp1:ERPCallbackInput"/>
    </wsdl:message>
    <wsdl:portType name="onJobCompletion_ptt">
        <wsdl:operation name="onJobCompletion">
            <wsdl:input message="tns:onJobCompletionRequestMessage"/>
        </wsdl:operation>
    </wsdl:portType>
</wsdl:definitions>



Note:   Use the following template to create the certificates. 

-----BEGIN CERTIFICATE----- 
MIIDVzCCAj+p0dBMXCYKcFkw==
-----END CERTIFICATE----- 



Create Database Wallet for Password Less Connection

1. Create a new TNS entry as below ($ORACLE_HOME/NETWORK/ADMIN/TNSNAMES.ORA)

SAMPLEDBCS =
( DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = localhost) (PORT = 1521))
   (CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = SID_OF_DATABASE)
)
)


2. Update SQLBET.ora for the following ($ORACLE_HOME/NETWORK/ADMIN/SQLNET.ORA)

SQLNET.WALLET_OVERRIDE = TRUE
WALLET_LOCATIN = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = /u01/abc/xyz/vijaysamplewallet)))
SSL_VERSION = 1.2

3. Create a physical wallet under the above mentioned directory path.

4. Create Wallet Store:

mkstore -wrl /u01/abc/xyz/vijaysamplewallet -create

5. Create Credentails into wallet store :

mkstore -wrl /u01/abc/xyz/vijaysamplewallet -createCredential vijay_credentails user_id <password>

6. Test the connection
sqlplus /@vijay_credentails

ERP - GL - Chart Of Accounts

Segments in General Ledger   Segments  are dimensions used to represent an account in a financial system. A company can have anywhere from...