Tuesday, 23 July 2019

Sample Taleo Request to Get Transactions

<soapenv:Envelope xmlns:par="http://hostname/taleo/common/xsd/parent" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header>
      <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
  xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
         <wsse:UsernameToken wsu:Id="UsernameToken-">
            <wsse:Username>userName</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">Password</wsse:Password>
            <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"></wsse:Nonce>
            <wsu:Created>2019-06-14T05:13:04.056Z</wsu:Created>
         </wsse:UsernameToken>
      </wsse:Security>
   </soapenv:Header>
   <soapenv:Body>
      <findPartialEntities xmlns="http://www.taleo.com/ws/tr800/2009/04/find"
  xmlns:client="http://xmlns.oracle.com/GetNewHireDetailsFrmTaleo"
  xmlns:ns1="http://itk.taleo.com/ws/query" xmlns:ns2="http://www.taleo.com/ws/tr800/2009/04"
  xmlns:ns3="http://www.taleo.com/ws/integration/toolkit/2005/07"
  xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
  xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"
  xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding"
  xmlns:tns="http://www.taleo.com/ws/tr800/2009/04/find"
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
  xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/">
         <tns:mappingVersion>http://www.taleo.com/ws/tr800/2009/04</tns:mappingVersion>
         <tns:query>
            <ns1:query alias="Find New Hires" attributes="perfo.max.relation.deepness=8" locale="en" preventDuplicates="false" projectedClass="TransitionProcess">
               <ns1:subQueries/>
               <ns1:projections>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Candidate,Number"/>
                  </ns1:projection>
                  <ns1:projection alias="State">
                     <ns1:field path="ProfileInformation,Candidate,ResidenceLocation,StateLocation,Abbreviation"/>
                  </ns1:projection>
                  <ns1:projection alias="FirstName">
                     <ns1:field path="ProfileInformation,Candidate,FirstName"/>
                  </ns1:projection>
                  <ns1:projection alias="LastName">
                     <ns1:field path="ProfileInformation,Candidate,LastName"/>
                  </ns1:projection>
                  <ns1:projection alias="MiddleInitial">
                     <ns1:field path="ProfileInformation,Candidate,MiddleInitial"/>
                  </ns1:projection>
                  <ns1:projection alias="Suffix">
                     <ns1:field path="ProfileInformation,Candidate,Suffix"/>
                  </ns1:projection>
                  <ns1:projection alias="PreferredName">
                     <ns1:field path="ProfileInformation,Candidate,Preferred_5fName"/>
                  </ns1:projection>
                  <ns1:projection alias="InternalFlag">
                     <ns1:field path="ProfileInformation,Candidate,InternalApplication"/>
                  </ns1:projection>
                  <ns1:projection alias="EmployeeNumber">
                     <ns1:field path="ProfileInformation,Candidate,EmployeeNumber"/>
                  </ns1:projection>
                  <ns1:projection alias="HomePhone">
                     <ns1:field path="ProfileInformation,Candidate,HomePhone"/>
                  </ns1:projection>
                  <ns1:projection alias="MobilePhone">
                     <ns1:field path="ProfileInformation,Candidate,MobilePhone"/>
                  </ns1:projection>
                  <ns1:projection alias="Address1">
                     <ns1:field path="ProfileInformation,Candidate,Address"/>
                  </ns1:projection>
                  <ns1:projection alias="Address2">
                     <ns1:field path="ProfileInformation,Candidate,Address2"/>
                  </ns1:projection>
                  <ns1:projection alias="City">
                     <ns1:field path="ProfileInformation,Candidate,City"/>
                  </ns1:projection>
                  <ns1:projection alias="ZipCode">
                     <ns1:field path="ProfileInformation,Candidate,ZipCode"/>
                  </ns1:projection>
                  <ns1:projection alias="Country">
                     <ns1:field path="ProfileInformation,Candidate,ResidenceLocation,CountryLocation,Abbreviation"/>
                  </ns1:projection>
                  <ns1:projection alias="region">
                     <ns1:field path="ProfileInformation,Candidate,ResidenceLocation,RegionLocation,NetworkLocation.Abbreviation"/>
                  </ns1:projection>
                  <ns1:projection alias="SocialSecurityNumber">
                     <ns1:field path="ProfileInformation,Candidate,SocialSecurityNumber"/>
                  </ns1:projection>
                  <ns1:projection alias="Email">
                     <ns1:field path="ProfileInformation,Candidate,EmailAddress"/>
                  </ns1:projection>
                  <ns1:projection alias="JobSchedule">
                     <ns1:field path="ProfileInformation,Application,Requisition,JobInformation,JobSchedule,JobSchedule.Code"/>
                  </ns1:projection>
                  <ns1:projection alias="ActualStartDate">
                     <ns1:field path="ProfileInformation,Application,Offers,ActualStartDate"/>
                  </ns1:projection>
                  <ns1:projection alias="WorkLocation">
                     <ns1:field path="ProfileInformation,Application,Requisition,JobInformation,PrimaryLocation,Code"/>
                  </ns1:projection>
                  <ns1:projection alias="JobCode">
                     <ns1:field path="ProfileInformation,Application,Requisition,BaseJobTemplate,JobCode"/>
                  </ns1:projection>
                  <ns1:projection alias="OrgName">
                     <ns1:field path="ProfileInformation,Application,Requisition,JobInformation,Organization,Organization.Code"/>
                  </ns1:projection>
                  <ns1:projection alias="ManagerID">
                     <ns1:field path="ProfileInformation,Application,Requisition,HiringManager,EmployeeID"/>
                  </ns1:projection>
                  <ns1:projection alias="Department">
                     <ns1:field path="ProfileInformation,Application,Requisition,Department,Name"/>
                  </ns1:projection>
                  <ns1:projection alias="PayBasis">
                     <ns1:field path="ProfileInformation,Application,Offers,PayFrequencyBasis,Description"/>
                  </ns1:projection>
                  <ns1:projection alias="Salary">
                     <ns1:field path="ProfileInformation,Application,Offers,Salary"/>
                  </ns1:projection>
                  <ns1:projection alias="PayValue">
                     <ns1:field path="ProfileInformation,Application,Offers,PayValue"/>
                  </ns1:projection>
                  <ns1:projection alias="DateOfBirth">
                     <ns1:field path="ProfileInformation,Candidate,Birthday"/>
                  </ns1:projection>
                  <ns1:projection alias="EmployeeNumber">
                     <ns1:field path="ProfileInformation,Candidate,EmployeeNumber"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Number"/>
                  </ns1:projection>
                  <ns1:projection alias="HireType">
                     <ns1:field path="ProfileInformation,Application,Requisition,JobInformation,HireType,Code"/>
                  </ns1:projection>
                  <ns1:projection alias="EmplStatus">
                     <ns1:field path="ProfileInformation,Application,Requisition,JobInformation,acc_5femployee_5fstatus,Description"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,ProfileInformation,Application,Application,Offers,Offer,Status,OfferStatus.Description"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="Process,Process,State,Description"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="Process,Process,Definition,Status,Code"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Offers,Offer_5fHired_5fJob_5fCode_5fACC,Code"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Offers,Offer_5fHired_5fJob_5fCode_5fACC_5fAdmin,Code"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Offers,Offer_5fHired_5fJob_5fCode_5fSS,Code"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Offers,Offer_5fHired_5fJob_5fCode_5fWCU,Code"/>
                  </ns1:projection>
                  <ns1:projection>
                     <ns1:field path="ProfileInformation,Application,Offers,Offer_5fHired_5fJob_5fCode_5fWCU_5fAdmin,Code"/>
                  </ns1:projection>
               </ns1:projections>
               <ns1:filterings>
                  <ns1:filtering>
                     <ns1:equal>
                        <ns1:field path="ProfileInformation,Application,Offers,Status,OfferStatus.Description"/>
                        <ns1:string>Accepted</ns1:string>
                     </ns1:equal>
                  </ns1:filtering>
                  <ns1:filtering>
                     <ns1:containsIgnoreCase>
                        <ns1:field path="Process,Steps,Definition,Name"/>
                        <ns1:string>Onboarding Process Complete</ns1:string>
                     </ns1:containsIgnoreCase>
                  </ns1:filtering>
                  <ns1:filtering>
                     <ns1:equal>
                        <ns1:field path="Process,Steps,State,Description"/>
                        <ns1:string>Completed</ns1:string>
                     </ns1:equal>
                  </ns1:filtering>
                 <ns1:filtering>
                     <ns1:greaterThan>
                        <ns1:field path="Process,Steps,EndDate"/>
                        <ns1:date>2019-01-01T00:00:00</ns1:date>
                     </ns1:greaterThan>
                  </ns1:filtering>
               </ns1:filterings>
               <ns1:sortings>
                  <ns1:sorting>
                     <ns3:field path="ProfileInformation,Candidate,Number"/>
                  </ns1:sorting>
               </ns1:sortings>
            </ns1:query>
         </tns:query>
         <tns:attributes>
            <tns:entry>
               <tns:key>pageindex</tns:key>
               <tns:value>1</tns:value>
            </tns:entry>
         </tns:attributes>
      </findPartialEntities>
   </soapenv:Body>
</soapenv:Envelope>

SOACS - Convert delimited string to an array of XML elements.

Use following XPATH function to convert/map a delimited string to an unbounded xml element.

Use CopyList rule in assign activity to map the value.

From Value: 

oraext:create-nodeset-from-delimited-string('{http://www.TargetElementNamespace.org}$TargetElement',$InputDelimitedString,'$DelimeterValue')


To Value : 
$Unbounded Target Element Name


$TargetElement  - Unbounded Target Element
$DelimeterValue may be "," or "|" 

Friday, 10 May 2019

Middleware Selection Criteria



  1. Usability: ask yourself about the degree of complexity of the installation, the supplementary tools that you need and the type of usability of the development environment.
  2. Maintainability: how is the product managed? Can you monitor the services by means of a graphical user interface?
  3. Community: Is there content available for the platform? Are there active public forums?
  4. Company support: Here you need to know whether the support service is provided during business hours, if it has a direct line, e-mail, on-site support, etc.
  5. Functionality: types of features provided.
  6. Flexibility: Is it possible to customize the product? Does it meet the company’s specific needs?
  7. Expansion ability: What types of standards do the interfaces use? Does it have extensions?
  8. Connectors: Are there available adapters for B2B products such as SAP or Salesforce?
  9. Costs: Calculate the total cost of owning the product: maintenance, necessary auxiliary products, connectors, licenses, etc.
  10. Licenses: Type of license and subscription model. Are updates free? Do they have alternatives when requirements change?

Tuesday, 2 April 2019

SSH Connection using SSH Key Pair

We can access a remote machine using ssh connection  without a password by using ssh key pair.

Generate a key pair and place a public key on a remote machine and private key on your local machine.

Use the following commands to generate the key pair and configure ssh connections.

1. Go to .ssh folder and make sure there is no existing key files.

2. Generate the key

     ssh-keygen -t rsa -C "sample_email@sample.com"

3. Provide the password for key.

4. Two files will be generated.
   id_rsa  --> Private Key
   id_rsa.pub --> Public Key

Note: Dont share private key with anyone. Public key can be shared with remote users.


5. Copy the public key using cat command.

cat ~/.ssh/id_rsa.pub


6.  Pass the public key to the remote server user and ask them to add it to authorized key file.

~/.ssh/authorized_keys

echo public_key_string >> ~/.ssh/authorized_keys

or  use the following command if the folder and authorize_keys file is missing

cat ~/.ssh/id_rsa.pub | ssh your_user@your_server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"


use VI command to add the key to the file with comments.

To add key automatically
ssh-copy-id -i ~/.ssh/id_rsa.pub your_user@your_server_ip
 


7.  Try connecting using ssh command from local machine.

ssh -i private_key_file user_name@host_name.


===========================================

We can generate SSH key using Putty Gen

  •  Open Putty Gen
  • Select  RSA as an algorithm.
  • Select Generate Key Pair
  • Now move the mouse Key Generate window.
  • It will generate 
  • Copy the Key and save it as a .pub - public file. 
  • Select Save Private Key Option to save .ppk file. 
  • Now you can generate SSH key by selecting conversions tab and then export OpenSSH Key option. 
  • Save the file as .ssh file.




Thursday, 28 March 2019

Sample Shell scripts



To Check Folder :


if [ -d "/path/to/dir" ] 
then
    echo "Directory /path/to/dir exists." 
else
    echo "Error: Directory /path/to/dir does not exists."
fi



To Check WSDL :

Status = `curl -Is http://localhost:port/sampleservice?wsdl | head -n 1 | cut -d ' ' -f 2`

It will provide HTTP response code. 


Sample CRL Command to POST XML:

curl -v -X POST --key key_file_name.key -vvv --cert cer_file_name.cer -H "Content-Type: application/xml" -H "Accept: application/xml" --data @XXSCM_ONHAND_AVAILABI_INTG.txt https://hostname:8045/ax.paas/ic/ws/integration/v1/flows/soap/XXSCM_ONHAND_AVAILABI_INTG/1.0/






Oracle Fusion - ERP Web Services and Operations



  1. SAAS Home Page :  https://hostname:443/
  2. SAAS UCM : https://hostname:443/cs
  3. BIP URL  :  https://hostname:443/xmlpserver or analytics
  4. BIP Web Service  :  
    • https://<fusion app url>/xmlpserver/services/ExternalReportWSSService?wsdl
    • https://<fusion app url>/xmlpserver/services/PublicReportWSSService?wsdl
    • https://<fusion app url>/xmlpserver/services/ScheduleReportWSSService?wsdl
    •  Absolute Path :  Provide complete xdo path
    •  Example : /Custom/Financials/int/Reports/samplereport.xdo
  5. ERP Adapter :
    • Service Catalog :
      • https://<fusion app url>/fndAppCoreServices/ServiceCatalogService?wsdl
    • Erp Integration :
      • https://<fusion app url>/fscmService/ErpIntegrationService
    • Event Catalog :
      • https://<fusion app url>/soa-infra
    • Event Configuration 
      • https://<fusion app url>/soa-infra/PublicEvent/catalog
    • Event Subscriber Check:
      • https://<fusion app url>/soa-infra/PublicEvent/subscriptions
  6. Token Relay
    • https://<fusion app url>/fscmRestApi/tokenrelay
  7. Attachment Service 
    • https://<host>.fa.ocs.oraclecloud.com/publicFinancialCommonErpIntegration/ErpObjectAttachmentService?wsdl


HCM Details:


  1. You encrypt files using the Oracle HCM Cloud public key.
  2. The data-loading process decrypts files using the Oracle HCM Cloud private key.
  3. Generate the PGP encryption key pair and download the Oracle HCM Cloud public key to Encrypt the file.  

  •  Submit HCM Data Load
    • Upload File to UCM using following UCM Service. 
      • https://hostname:443/idcws/GenericSoapPort?WSDL
        • Read the file as an attachment
        • Pass the opaque contents to UCM
        • Get the content Id from the response.
        • Service IdcService="CHECKIN_UNIVERSAL"
        • dDocTitle
        • dDocAccount
        • dDocType
        • dSecurityGroup
        • dDocAuthor 
    • Invoke HCM Webservice to Load and Import the data. 
      • https://hostname/hcmCommonDataLoader/HCMDataLoader?WSDL
      • Operation - importAndLoadData
        • Pass the content ID in the request message. -- dDocName from UCM upload response. 
          • <ns0:Field name="dDocName">UCMFA00422909</ns0:Field>
        • Pass the additional Parameters.
    • Get the Status of HDL load and import job. 
      • Operation - getDataSetStatus
        • Pass the content id in the input parameter in the following format. 
          • "ContentId="$UCMContentID
          • Exmple : ContentId=12345
  • To Submit Extract and Get the Output from UCM
    • Submit Extract
      • URL - https://hostname:443/hcmService/FlowActionsService?WSDL
      • Operation 
        • SubmitFlow  - To Submit the job
          • Provide Extract Name 
          • Extract Run ID
        • getFlowTaskInstanceStatus  - To Get the  Status
          • Provide Extract Name
          • Provide Extract Run Id
        • getIntegrationContentId  - To Get the content ID
          • Provide Extract Name
          • Provide Extract Run Id
    • Get the Content from UCM.
      • URL - https://hostname:443/idcws/GenericSoapPort?WSDL
        • Service IdcService="GET_FILE"
        • dDocName = ContentId
      • Decode the Data and Write the file. 
UCM Details:
  • Web Service 
    • URL - https://hostname:443/idcws/GenericSoapPort?WSDL
BIP Webservices:
  • To get the list of Webservices 
    • URL - http://hostname/xmlpserver/services
  • To Schedule a BIP Job.
    • https://hostname/xmlpserver/services/v2/ScheduleService?wsdl
    • Operations
      • scheduleReport - To Submit the Job
      • getScheduledReportStatus - To get the Status of the Job.
      • getAllJobInstanceIDs  - To Get the Job Id's
      • getXMLData  - To Get the XML Data 

Sample Payload : 

HCM Extract : 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/hcm/processFlows/core/flowActionsService/types/" xmlns:flow="http://xmlns.oracle.com/apps/hcm/processFlows/core/flowControllerService/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:submitFlow>
         <typ:flowName>SAMPLE_EXTRACT_REPORT</typ:flowName>
         <!--Zero or more repetitions:-->
         <typ:parameterValues>
            <flow:ParameterName>Effective Date</flow:ParameterName>
            <flow:ParameterValue>2019-10-17</flow:ParameterValue>
         </typ:parameterValues>
         <typ:parameterValues>
            <flow:ParameterName>LookbackDate</flow:ParameterName>
            <flow:ParameterValue>2019-10-02</flow:ParameterValue>
         </typ:parameterValues>
         <typ:parameterValues>
            <flow:ParameterName>RunDate</flow:ParameterName>
            <flow:ParameterValue>2019-10-17</flow:ParameterValue>
         </typ:parameterValues>    <typ:flowInstanceName>SAMPLE_EXTRACT_REPORT191017084530</typ:flowInstanceName>
         <typ:legislativeDataGroupName>US Legislative Data Group</typ:legislativeDataGroupName>
         <typ:recurringFlag>false</typ:recurringFlag>
      </typ:submitFlow>
   </soapenv:Body>
</soapenv:Envelope>


HCM Get Extract Status :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/hcm/processFlows/core/flowActionsService/types/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:getFlowTaskInstanceStatus>         <typ:flowInstanceName>SAMPLE_EXTRACT_REPORT191017084530</typ:flowInstanceName>         <typ:flowTaskInstanceName>SAMPLE_EXTRACT_REPORT</typ:flowTaskInstanceName>
         <typ:legislativeDataGroupName>US Legislative Data Group</typ:legislativeDataGroupName>
      </typ:getFlowTaskInstanceStatus>
   </soapenv:Body>
</soapenv:Envelope>


HCM Get Content ID of an Extract :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/hcm/processFlows/core/flowActionsService/types/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:getIntegrationContentId>         <typ:flowInstanceName>SAMPLE_EXTRACT_REPORT191017084530</typ:flowInstanceName>         <typ:flowTaskInstanceName>SAMPLE_EXTRACT_REPORT</typ:flowTaskInstanceName>
         <typ:legislativeDataGroupName>US Legislative Data Group</typ:legislativeDataGroupName>         <typ:integrationName>IntegrationIdDefinedinExtractDeliveryType</typ:integrationName>
      </typ:getIntegrationContentId>
   </soapenv:Body>
</soapenv:Envelope>


Sample HDL File Load :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/hcm/common/dataLoader/core/dataLoaderIntegrationService/types/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:importAndLoadData>
         <typ:ContentId>12345</typ:ContentId>         <typ:Parameters>ImportMaximumErrors=100,LoadMaximumErrors=100,LoadConcurrentThreads=4,FileEncryption=PGPSIGNED,DeleteSourceFile=N</typ:Parameters>
      </typ:importAndLoadData>
   </soapenv:Body>

</soapenv:Envelope>


UCM Get File
<GenericRequest xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" webKey="cs">
<tns:Service IdcService="GET_FILE">
<tns:User/>
<tns:Document>
<tns:Field name="dDocName">Doc_Id233088</tns:Field>
<tns:Field name="RevisionSelectionMethod">Latest</tns:Field>
<tns:Field name="Rendition">Web</tns:Field>
</tns:Document>
</tns:Service>
</GenericRequest>


UCM Search 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ucm="http://www.oracle.com/UCM">
   <soapenv:Header/>
   <soapenv:Body>
      <ucm:GenericRequest webKey="CS">
         <ucm:Service IdcService="GET_SEARCH_RESULTS">
            <ucm:Document>
               <ucm:Field name="QueryText">dID &lt;MATCHES&gt; `422909`</ucm:Field>
              </ucm:Document>
         </ucm:Service>
      </ucm:GenericRequest>
   </soapenv:Body>
</soapenv:Envelope>


Upload File To UCM:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ucm="http://www.oracle.com/UCM" xmlns:wsse="http://schemas.xmlsoap.org/ws/2003/06/secext">
   <soapenv:Header/>
   <soapenv:Body>
      <ucm:GenericRequest webKey="cs">
         <ucm:Service IdcService="CHECKIN_UNIVERSAL">
            <ucm:User/>
            <ucm:Document>
               <ucm:Field name="dDocTitle">Department2 Load File</ucm:Field>
               <ucm:Field name="dDocType">Document</ucm:Field>
              <!-- <ucm:Field name="dDocAuthor">test1.user</ucm:Field>
-->
               <ucm:Field name="dSecurityGroup">FAFusionImportExport</ucm:Field>
               <ucm:Field name="dDocAccount">hcm$/dataloader$/import$</ucm:Field>
               <ucm:Field name="primaryFile">sampleFile2.zip</ucm:Field>
               <ucm:File href="sampleFile2.zip" name="primaryFile">                  <ucm:Contents>UEsDBBQACAgIAIZyBVUAAAAAAAAAAAAAAAAQAAAAT3JnYW5pemF0</ucm:Contents>
               </ucm:File>
            </ucm:Document>
         </ucm:Service>
      </ucm:GenericRequest>
   </soapenv:Body>
</soapenv:Envelope>


PGP Commands


Public key (to lock/encrypt the message) and a Private key (to unlock/decrypt the message).

You need to send the public key to all your users so that they can encrypt sensitive messages that they want to send it to you.

 Once you receive an encrypted message, you need to use your private key to decrypt it.


  • Command to generate the key pair. 
             pgp --gen-key "Vijaya User" --key-type RSA --bits 2048 --passphrase "Pass Phrase"
             
            script -q -c "gpg --gen-key" /dev/null
  • Command to list keys. 
            pgp --list-keys
  • export the key using following command.
           pgp --export  $input
           
          input = User Key = "Vijaya User" (from above pgp  generation key)
          input  = Key ID  = This will get generated while creating the key.
  • import pgp key
          pgp  -- import " file_name.asc"

          Reference :  https://linuxaria.com/howto/how-to-easily-encrypt-a-file-with-gpg-on-linux
  • Sample gpg command to decrypt a file :
           gpg --batch --output OUT_PUT_FILE_NAME  --passphrase-fd 0        ENCRYPTED_FILE_NAME.pgp  < pwd.txt

         pwd.txt will have the passphrase.
     
         GPG allows you to bypass prompts with the --batch flag, so we can add that in to our command

        --passphrase-fd 0 tells GnuPG to retrieve the passphrase from input into the current shel

Sample Script to Decrypt:

cat $PassPhrase | gpg --output $OutputFileName --batch --yes --passphrase-fd 0 $SourceFilePath


Sample Script to Enecrypt:

gpg --batch --yes --trust-model always -r $PublicKeyUser -o $OutFilePath -e $SourceFilePath


Oracle Fusion - Order Management Cross Reference

Summary:  This guide outlines the steps to manage cross-reference data for Sales Order FBDI upload for the source systems,  including export...