Wednesday, May 20, 2009

BLOG MOVED...

The BLOG has been moved to AIA BLOG

Pls visit the above BLOG site for latest updates and more information

Monday, April 6, 2009

Endpoint Configurator tool in AIA FP

What is this tool?

This tool should be used to replace Dev/QA server details from the source code with the token values and at install time, it should be used to replace the token values to target server urls.

Endpoint Configurator can be used on any xml based file, provided the URL can be obtained using an xpath. It will replace the server details where the urls are of the form http://hostname:port/....
Examples of xpaths can be: //@schemaLocation , //@location

Where to find:
AIA_HOME/util/EndpointConfigurator

How to use:

1. Create the EndpointConfig.properties file

We need to create one EndPointConfig.properties file. The contents of the file would look as below:

home.dir1.http.hostname = soa.hostname
home.dir1.http.port = soa.port
home.dir1 = aia.home/AIAComponents
home.dir1.filetypes = bpel,esbsvc,wsdl,xsl,xsd
home.dir1.xpath1 = //@schemaLocation
home.dir1.xpath2 = processing-instruction("oracle-xsl-mapper")
home.dir1.xpath3 = /BPELSuitcase/BPELProcess/partnerLinkBindings/property
home.dir1.xpath4 = //wsdlURL
home.dir1.xpath5 = //concreteWSDLURL
home.dir1.xpath6 = //soapEndpointURI

· At build time, home.dir1.http.hostname, home.dir1.http.port properties should be populated with token values and, at install time these values should be populated with target server details
· home.dir1 takes the directory location which Endpoint Configurator should traverse.
· home.dir1.filetypes takes the list of file extensions which Endpoint Configurator should consider for parsing. File extensions should be separated by a comma and no space is allowed after the comma.
Valid: home.dir1.filetypes = bpel,esbsvc,wsdl,xsl,xsd
Invalid: home.dir1.filetypes = bpel, esbsvc, wsdl, xsl, xsd
Invalid: home.dir1.filetypes = .bpel, .esbsvc, .wsdl, .xsl, .xsd
· List of xpaths should be specified using home.dir1.xpath property. There is no limit on the no of xpaths, but all the xpath numbers should be sequential.


We can execute Endpoint Configurator on multiple directories by specifying multiple home.dir values.
Look at AIA_HOME/util/EndpointConfigurator/FPEndpointConfigurator.properties.tmpl for a sample properties file.


The directory locations specified by home.dir should always be relative to AIA Home and AIA home should always be represented with token “aia.home”

2. Invoking Endpoint Configurator from command prompt

To invoke Endpoint Configurator from command line custom properties file should be passed as an argument. Navigate to Endpoint Configurator folder AIAHome/util/EndpointConfigurator and invoke Endpoint Configurator as follows:

ant runEndpointConfigurator –DEndPointConfigFilePath=”EndpointConfig_ file_path”

Ex:
ant runEndpointConfigurator –DEndPointConfigFilePath=${aia.home}/util/EndpointConfigurator/EndpointConfigurator.properties.

Post Execution steps:
Check the server url mentioned in the xpaths from the EndpointConfigurator.properties, check whether the URL have been changed from the dev url to QA url.

Monday, March 30, 2009

Know more about Agile PLM to SAP Design to Release PIP….

Agile Product Lifecycle Management (PLM) Integration Pack for SAP ERP connects the Enterprise PLM Product Record in Oracle Agile Product Collaboration with SAP ERP. The Agile PLM Design-to-Release integration process aids in manufacturing release process in building a ‘Design Anywhere, Build Anywhere’ business environment.

The PIP was built by reusing most of the services developed for Agile PLM to Oracle EBiz PIP. The Oracle EBiz related Application Business Connector Services were replaced by the SAP Application Business Connector Services. The Enterprise Business Services implementation was modified to suit the business process relevant to SAP.

Though some of the business processes like the Engineering Change Order implementation widely differ between SAP & Oracle EBiz but still the desired functionality requirements were met without any changes on the Agile related artifacts in the PIP. This could be achieved due to the flexible Integration framework that Oracle’s Application Integration Architecture (AIA)provides.

Another important feature about this PIP is the use of standard SAP APIs - BAPI (Business Application Programming Interface) & IDOC ( Intermediate Document). In total 12 APIs were utilized -11 BAPIs & an IDOC in the Agile PLM to SAP PIP.

How SAP PIP business process differs from Oracle EBiz PIP:-

a) Reserving of Item during the New Part Request Process (NPR) Process:- This synchronous process can be triggered on demand by the user in Agile. In case of SAP PIP ,this reserves a part number in SAP and the part number is returned to Agile

b) Use of Item templates: - In the Item Synchronization process, this PIP uses Item templates or Reference Material in SAP. The purpose of a reference material is to default all the mandatory values which are needed for creation of material in SAP, which might not be captured in the Agile system during item creation. This reference material need to be configured based on the Material type. In case if the item need to be created in more than one plant then a reference material needs to be maintained in each of the plants.

c) Posting of Change Order Data to SAP :- The sequence mentioned below is followed for the creation of Change Order Object in SAP:

  1. The Change Order header is created first with the status ‘Inactive’ or equivalent status as configured by the user.
  2. Item existence check: If the Item does not exists it is created, else the item is updated with the input received from PLM.
  3. Item revision level creation & attachment of revision level to Item.
  4. AML sync ( Not part of 2.4 Release)
  5. BOM existence check: If the BOM does not exist, it is created else the BOM is updated accordingly. BOM is created or updated along with its corresponding Reference Designators.
  6. Upon successful creation of the above objects, the Change Order status is changed to ‘Active’ else it remains as ‘Inactive’.
d) Global/Group BOM creation:- Customers would use this feature when they have the same product structure across plants. In case of SAP PIP this feature is enabled with setting the parameter GLOBAL_LEVEL_BOM = ‘True’ in the configuration file. In such case we create the BOM only at global level i.e. the integration shouldn’t be creating any BOMs in the plants. The BOM plant extension feature within SAP is used to extend the BOM to the associated plants. During BOM update, integration needs to update the BOM only at global level and SAP will internally replicate those changes across the associated plants.

Avinash C

Saturday, March 21, 2009

The AIA PIPeline

Agile- Oracle/SAP PIP integration projects are starting to come in to us through Oracle and our own customer base. The PIP future looks very exciting; we’ve got one signed project already and are expecting more by the end of April. Details to follow. The ball is rolling so hang on.

First signed customer is Ciena, known to us for many years, one of our pioneer SCMnet customers. Project started.

New prospects are:

Prospect 1: Agile – Oracle. Medical devices industry. May already need customizations to the standard PIP because of their version of Oracle.

Prospect 2: Agile - SAP, for whom we’ve scheduled an SAP PIP demo for the week. of 3/30.

Prospect 3: Process manufacturer. SAP PIP.

Prospect 4: Medical devices. SAP PIP

Prospect 5: Traditional manufacturing. Oracle PIP.

Prospect 6: Traditional manufacturing. SAP PIP.

Updates to follow.

Friday, March 20, 2009

BP - Normal, Heart Beat - Normal. Rx - Run (Diagnostic report) frequently


Diagnostic Framework part of Oracle AIA Foundation Pack provides tools that help in maintaining the system. Diagnostic Framework provides information like which BPEL processes, ESB, Schemas got customized, Which schemas got extended, what custom directories got created, integrity of the config files, whether BPEL-ESB communication is working, JMS is working, custom XPATHs are working as desired & more.

Adding Custom Diagnostic tests
Beauty of the framework is that it allows you to add your own custom diagnostic tests with ease. For instance, if we want to add DBCheck test to the AIA FP Diagnostic framework, all we need to do is

1) Create our own Java code by implementing IAIADiagnostics interface. Sample code should look like this

package oracle.apps.aia.core.diagnostics.tests;

import java.util.Date;
import java.util.HashMap;
import oracle.apps.aia.core.diagnostics.IAIADiagnostics;
import oracle.apps.aia.core.diagnostics.util.DiagnosticsUtil;
import oracle.apps.aia.core.diagnostics.util.GetPatchesApplied;
import java.sql.*;

public class DBCheck implements IAIADiagnostics{
public DBCheck() { }
public String[] run(HashMap params) {

String testResult[] = executeTest(params);
return testResult; }
public String[] runBatch(HashMap params) {

String testResult[] = executeTest(params);
return testResult; }
private String[] executeTest(HashMap params) {
[[Insert Code Here]]
String testResult[] = {result.toString(), error.toString(), resultflag};
return testResult;
}
}
2) Compile the class and place it under ORACLE_HOME\bpel\system\classes and the appropriate package folder (in this case oracle\apps\aia\core\diagnostics\tests)
3) Add the below entry to AIADiagnosticsConfig.XML under
AIA_HOME\diagnostics\config
oracle.apps.aia.core.diagnostics.tests.DBCheck
4) Create the batch script by making a copy of the existing batch files under
AIA_HOME\diagnostics\bin and making the following change
set TEST_NAME=DBCheck
5) Execute the batch script

Ramesh Chandra Revuru

Thursday, March 19, 2009

Developer Tools in AIA FP - Part 3

AIA Artifacts Generator

1) What is the tool?
Artifacts Generator is a utility script that would help generate much of the common code needed to create the ABC service implementation in BPEL. It would generate the artifacts as a BPEL project that can be easily opened, viewed and enhanced from the Jdeveloper studio. It generates artifacts like WSDL, transformation, project file & deployment descriptor.

2) Where to find?
The tool can be found under
AIA_HOME\Developer Tools\ AIAArtifactsGenerators


3) How to Execute?

  • Open a command window and navigate to the above location
  • Validate that the JDK is set to jdk 1.5 or above. If not, set the path
  • Validate the ant version is 1.6 or above by executing ant -version
  • Modify the build.properties file as below. Give the file for the input.xml where all the description of the bpel process is defined. In this case we have uncommented the below line
    ABCSConfig.inputXML=Requestor_SyncReqResp.xml
    Requestor_SyncReqResp.xml is available under AIA_HOME\Developer Tools\ AIAArtifactsGenerators\ AIAServiceGenerator\input Run the ant by the following script from the folder AIA_HOME\Developer Tools\ AIAArtifactsGenerators\Ant buildBPEL
  • The artifacts would be generated in the output folder as given in the build.properties
    Open the JDeveloper Studio and create a new project and add the above output folder to the project source code.
The new bpel project generated by the above script can be opened, viewed and further enhanced and then deployed to the corresponding server

4) Post Execute Steps
  • Rearrange service invocations, if necessary
  • Complete the business payload transformation
  • Configure the correlation properties for asynchronous application service invocation
  • Create invocations for other operations when a service is called multiple times
  • Alter deployment descriptor properties in the bpel.xml file
  • Alter policies in the fault policy
  • Alter properties in the configuration properties file snippet and add it to your properties
Binoy Gopinathan
Sierra Atlantic

Agile SAP PIP – Tips and Tricks

Query:
Can we change the Agile system properties after the PIP is installed and configured? If so, what is the procedure to reconfigure the PIP to point to the new Agile system?

Solution:
Navigate to %AIA_HOME%\PIPS\Core\Setup\AgileSAP\Config folder. Typically, %AGILE_HOME% is set to D:\product\10.1.3.1\AIAHOME

Modify the following properties in Agile Info section in the AgileSAP.properties
· agile.host=ATGAGILE.IN.CORP.SA
· agile.port=80
· agile.path=Agile
· agile.user=admin
· agile.password=agile

Navigate to %AIA_HOME%\PIPS\Core\Setup\AgileSAP\Install and execute the following commands
· env.bat
· ant -f ReplaceServerTokens.xml
· ant -f CopyAgileAIAComponents.xml
· ant -f DeploySyncPIAgileABCS.xml

ant -f ReplaceServerTokens.xml replaces the tokens with the values (specified in the AgileSAP.properties file) in the Agile wsdl files and bpel.xml of the Agile Requestor and Provider ABCS process flows.

ant -f CopyAgileAIAComponents.xml deploys the Agile wsdls to Application Server.

ant -f DeploySyncPIAgileABCS.xml redeploys the Agile process flows to the application server.