How to specify ranges in value mapping?
Hi,
Is there any possibility of specifying ranges in a value mapping?
hi,
Value mapping used maintaining the single values for various represendation.Not for Value ranges.
You can handle that in mapping level.like
If you using Graphical mapping then Input fieldBellow 60If---then ---C.
Regards,
Prakasu
Similar Messages
-
How to achieve transport of value mapping replication cache table values ?
During the migration of our interface from XI3.0 to PI 7.11,
I need to transport the value mapping replication cache table values present in cache monitoring of runtime workbench in
XI 3.0 PRD to PI 7.11 DEV .
Please let me know the ways to acheive this so that I can have the same values present in PI 7.11 Value Mapping Cache table as maintained in XI 3.0.
Please point me into correct direction.
Regards
PSClick on "Tools" option, select "Export Configuration Objects" -> "Individual Objects" -> Choose the "Value Mapping Group" type, and then select the value mappings you want to transport.
-
How to select range of values (select-options) in BDC?
Dear experts,
I need to write a BDC program for the T-code CN72 where i need to handle a range of intervals (select-options) for the WBS element field in the initial screen.I have done the recording. what is the logic in BDC to handle the range of intervals ?
How do we handle the range of intervals?Hi,
Suppose your select-option field name is N_PSPNR .then send the values as N_PSPNR-LOW = 'ABC'
N_PSPNR-HIGH = '678' . In recording u will find the screen field name and what value is passed.
regards
Manish -
How to specify a constant value in external tables??
Create table cp_portfolio_ext
rec_type varchar2(1),
acct_nbr varchar2(23),
acct_title varchar2(50),
prod_type_cd varchar2(5),
acct_desc varchar2(35),
country_code varchar2(2),
acct_ref_ccy_cd varchar2(3),
nom_accr_int_amt number(20,4),
ineligible_cash number(20,4),
pldg_amt number(20,4),
posn_as_of_dt date,
moody_rating varchar2(5),
sp_rating varchar2(4),
mat_dt date,
anl_pct_rt number(20,6),
acct_pp_cd varchar2(10),
filler varchar2(229),
process_status char(1)
Organization External
type oracle_loader
default directory TEST_DIR
access parameters
records delimited by newline
fields
REC_TYPE POSITION(1:1),
ACCT_NBR POSITION(2:24),
ACCT_TITLE POSITION(25:74),
PROD_TYPE_CD POSITION(75:79),
ACCT_DESC POSITION(80:114),
COUNTRY_CODE POSITION(115:116),
ACCT_REF_CCY_CD POSITION(117:119),
NOM_ACCR_INT_AMT POSITION(120:139),
INELIGIBLE_CASH POSITION(140:159),
PLDG_AMT POSITION(160:179),
POSN_AS_OF_DT POSITION(180:187) DATE "DDMMYYYY" NULLIF POSN_AS_OF_DT ='00000000',
MOODY_RATING POSITION(188:192),
SP_RATING POSITION(193:196),
MAT_DT POSITION(197:204) DATE "DDMMYYYY" NULLIF MAT_DT = '00000000',
ANL_PCT_RT POSITION(205:215),
ACCT_PP_CD POSITION(216:225),
FILLER POSITION(226:454),
process_status
location('ODS_CP_DAILY_EXTRACT.DAT')
)reject limit unlimited;I wont recieve process_status from feed file ,but I would like to have a default value 'N' to be provided.How to achieve this??I tried using defaultif but it doesnt work him.
I know it can be donw using CONSTANT keywork using sqlloader.But how about in external tables.??
Edited by: 792353 on Sep 30, 2010 9:21 PMI think it should helpful to you
http://jiri.wordpress.com/2010/03/29/oracle-external-tables-by-examples-part-4-column_transforms-clause-load-clob-blob-or-any-constant-using-external-tables/
kanish -
How to specify an initial value for a sequence? (using DPL)
I've been trying to come up with a piece of code that would initialize the sequences defined within the annotations in my persistent classes, with no success. According to the documentation I could find, I figured that the following method would work:
public void initSequence(String sequenceName, String svalue) {
SequenceConfig sequenceConfig = null;
try {
sequenceConfig = m_store.getSequenceConfig(sequenceName);
sequenceConfig.setInitialValue(Long.parseLong(svalue));
m_store.setSequenceConfig(sequenceName, sequenceConfig);
System.out.println("Successfully initialized sequence: " + sequenceName);
} catch (IllegalStateException e) {
// ignore; the sequence had already been opened
} (where m_store is an EntityStore instance)
Before this method gets called, all my primary and secondary indices get created as in:
m_linkIndex = m_store.getPrimaryIndex(Integer.class, Class1.class);
etc.
And my classes look like the following:
@Entity
public class Class1 {
@SecondaryKey(relate=MANY_TO_ONE)
private String m_contentUrl;
private String m_creatorId;
@PrimaryKey(sequence="linkID")
private int m_key;
etc.
Problem: when I execute the 'initSequence' method with proper parameters (e.g. 'linkID', '10000000'), it has no apparent effect on the values the sequence uses. In fact, the sequence starts at number 1 :-(.
Could somebody explain what is that I am doing wrong? (assuming the software is not buggy). I am using version
3.3.69. Thanks in advance!Sorry, you're right.
Before this method gets called, all my primary and secondary indices get created as in:Perhaps the problem is that you're configuring the sequence after you open the index. The sequence (and database) configuration must occur before opening the index.
--mark -
Authorization access to value mapping
Hi,
If I want a user to have access to add new values to a specific value mapping and nothing else. How can this be achieved?
Regards
ClaesHi Claes,
- you create a new user, role SAP_XI_DEVELOPER_J2EE.
- Go IB, Administration, Directory, Exchange Profile
- Set Parameter com.sap.aii.util.server.auth.activation <i>true</i>: Without role no one can change now anything
- Go to IB, tools, new role
- Choose Operator incl, specify your object (Value Mapping), save
- Of coz you need as well a role for other users (developers)
- Go XI home page (host:50000/index.htm)
- Choose User Management
- Choose Role and add the user
Regards,
Udo -
Hi,
Whenever we execute the sceanrio with the value which is not specified in our Value Mapping Table we are getting this following error in our Log.
The error is attached below.
Error During value mapping Thrown: com.sap.aii.ibrun.server.valueMapping.DBValMapPersistor$NoGuidException: Context = http://sap.com/xi/XI, agency = Slot, scheme = Appointment, and value = ALLDAY not found at com.sap.aii.ibrun.server.valueMapping.DBValMapPersistor.getGroupIdEx(DBValMapPersistor.java:656) at com.sap.aii.ibrun.server.valueMapping.DBValMapPersistor.findMappings(DBValMapPersistor.java:553) at
Can you please me in this situation as it si bit important.
Is there any way that i can make this error not shown in the server log.
Thanks
SujaHello Suja,
you have to change the settings in the log configurator. Set the locations
com.sap.aii.ibrun.server.valueMapping and com.sap.aii.mappingtool.flib3.ValueMapping
to severity "Fatal". After this these errors should not be inserted into the default trace anymore.
Best Regards,
Lars -
Hi All,
How can we call a value mapping in Java mapping?
Any of your inputs are welcome!
Thank You,
Mugdha KulkarniHi,
of course we can - there are many examples on the forum on how to do that
please do a little search first
thank you,
Regards,
Michal Krawczyk -
Hi Experts
How to do value mapping with BPM.
I tried searching for blogs in SDN but i didnt get any solution
Regards
SowmyaHi,
Your question is not very clear. Let me know how you want to use Value mapping?
You can implement value mapping in two ways..
1. Value Mapping Replecation Method, in which we create ABAP program (outbound proxy) in R3 which selects data from R3 tables and sends into XI, and which get stored in XI JAVA Cache untill you run the ABAP program next time which is very rare. This kind of method is best when you have large amount of R3 data.
2. If you have some data which is used just to varify the conditions at run time then in that case we go for Value Mapping creation in Integration Directiory. Below mentiond blog will give an idea how to use Value mapping in ID.
/people/community.user/blog/2007/01/08/valuemapping-using-the-graphical-mapping-tool
Value Mapping is used in Graphical Mapping which gives the value at run time only, so you cannot test it in TEST Tab of message mapping.
So as per you question, BPM can come into picture later on after you maintain the value mapping in ID and do the corresponding mapping in IR.
Regards,
Sarvesh -
Set Default values for Value mapping
Hi All,
I have some specific value set for which I have used a Value mapping into Message Mapping .
My problem is I want to set a default value for the target value and I dont know how to set it in Value mapping ..
And also if you can suggest me how to set target value for Null source value ...
Thanks in Advance..hi
Take a constant for sender side and give the value for that constant.After that take a value mapping function fron Conversions of Mapping Functions.
And give the values of Value Mapping Context as :http://sap.com/xi/XI
After that define Agency and Schema for sender and Refceiver with values what ever u have manually. -
HI,
I need to understand how we use the EAI value Maps for mapping values for external System. I am using Siebel 8.0 and need to map values for 2 fields before sending the SOAP message using Outbound Web Service. I can send it and receive the response but the values currently are same in both the systems. Hence I need to understand how I can use Data Maps/EAI values maps for solving the mapping problem.EAI Value Maps can be used for data mapping feature while interfacing with an external application. If you anticipate that the value may be different in future or even it remains the same - to build in flexiility in your solution you can use EAI Value Maps.
I'll try to explain through an example here. Let us consider example from Quote/Order Mgmt functionality - assume that you've to send your quote/order data to an external application for processing. In the quote/order line item you have Product field with value say Desktop However the external application refers to it by PC . In this case before sending the quote/order data out to the external application we've to perform mapping. This is where EAI Value Maps can help us.
Under Administration - Integration --> EAI Value Maps screen, create a record as follows,
Direction = Siebel Outbound
Type = <define a type value - think of it as an identifier> say MY_PRODUCT
Siebel Value = Desktop
External System Value = PC
The EAI value map so defined can be used in the script (business service) as follows -
var sProd = oBC.GetFieldValue("Product");
var sEAIMap = EAIGetValueMap("MY_PRODUCT","Siebel Outbound","");
var sExtVal = sEAIMap.Translate("Desktop"); //sExtVal should return PC
Note: You need to include eaisiebel.js in the declaration section of the business service -
HI,
I need to understand how we use the EAI value Maps for mapping values for external System. I am using Siebel 8.0 and need to map values for 2 fields before sending the SOAP message using Outbound Web Service. I can send it and receive the response but the values currently are same in both the systems. Hence I need to understand how I can use Data Maps/EAI values maps for solving the mapping problem.EAI value maps are conceptually similar to LOVs, except that they are purpose built for use in mapping values between systems. I would suggest going through the Siebel bookshelf in order to gain an in-depth understanding. Here's a link to get you started:
http://download.oracle.com/docs/cd/B40099_02/books/EAI4/EAI4_DataMapUSScripts28.html#wp134444
Once you have read the basics, you will come to realize that depending on how you've configured your application you can use the mentioned functions in both WFPs and scripts by directly calling them or using Data Maps.
To specifically answer your question, here's the process:
a) Define the mappings (Eg. IN for external system = +91 for Siebel)
b) Define direction - Incoming/ Outgoing (optional but useful)
c) Create the mappings within Siebel EAI Value Maps Screen making sure you have, like in LOVs, a specific type defined for the mapping (E.g. Back Office Phone Numbers)
d) Use one of the available Value Map functions (See link above for the description of each of them) either in data maps or scripts to obtain the mapping value keying off the type field defined above
e) The rest is pretty much the routine stuff (convert to XML and post/ call adapter or whatever)
Hope this makes sense and helps..
- Mayuresh -
Hi,
How can I access a value mapping defined in ID from a Java Server Proxy?
I've tried to that with the following code:
import com.sap.aii.mapping.value.api.*;
public class MIGetDocsIn_PortTypeImpl extends com.sap.aii.proxy.xiruntime.core.AbstractProxy implements MIGetDocsIn_PortType {
public DTGetDocsResponse_Type mIGetDocsIn(DTGetDocsRequest_Type mTGetDocsRequest)
throws com.sap.aii.proxy.xiruntime.core.SystemFaultException, com.sap.aii.proxy.xiruntime.core.ApplicationFaultException{
String senderAgency = "Source";
String senderScheme = "Source1";
String receiverAgency = "Target";
String receiverScheme = "Target1";
IFIdentifier src = XIVMFactory.newIdentifier(senderAgency, senderScheme);
IFIdentifier dst = XIVMFactory.newIdentifier(receiverAgency , receiverScheme);
try {
String res = XIVMService.executeMapping(src, dst, "var1");
} catch (ValueMappingException e) {}
Do I need to add package com.sap.aii.mapping.value.api in application-j2ee-engine.xml?? What is the reference target for that package?
Thanks,
Pedro LealHi,
It seems is not possible to access value mapping in java proxy.
Alternatively can someone give me some advices about the best to way to read configuration parameters in a java proxy server scenario?
Properties file is a solution. Is there any other way to achieve similar functionality?
Thanks,
Pedro Leal -
How to check the source value is in between a string range in mapping
Hi Consultants,
I am working on IDOC to File scenario. I need to implement a specific requirement of our client. i.e. something like below;
Vendor number can be any thing like 1AA000000 / 1AA000001/1AB000000/... ect till 1ZZ999999.
if the vendor number is in between 1AA000000 -1ZZ999999 then the target value should assign as 'Internal' else should assing as 'External'.
How to compare that the value of vendor is in between IAA000000 to 1ZZ999999 in mapping?
Appreciate your help.
Thanks in advance.
Regards,
NausheenYou can try creating an UDF and using the varName.substring(); method. Then you can compare in separated pieces the string. For example
String var = "1AA000000";
if (var.substring(3).compareTo("000000") < 0 && var.substring(3).compareTo("999999") > 0)
//compare now the "AA" and "ZZ" with the same logic;
http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#substring(int, int)
http://download.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#compareTo(java.lang.Object)
EDIT: Moreover, those functions are available in the Mapping program creation, but this should give a clue on the order it should be done.
Edited by: Lucas Santos on Mar 29, 2011 7:38 PM
Edited by: Lucas Santos on Mar 29, 2011 7:53 PM -
How to specify a mapping file using annotations?
Hi,
i am trying to deploy a WebService (with annotations) on oc4j 10.1.3.1.0. but all i get is the following exception:
07/03/13 12:41:52 oracle.j2ee.ws.common.tools.api.ValidationException: test.datamodel.SimpleObjectId - Duplicate type name "test.datamodel.SimpleObjectId" for Java type "{http://tdeer.de/services/internal/test/1_0}SimpleObjectId" found. To remove this error do not specify a single typeNamespace for all value types or specify a mapping file. This error could also be caused when an erroneous type has been used more than once.
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiModeler.buildModel(RmiModeler.java:247)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.config.ModelInfo.buildModel(ModelInfo.java:173)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.Processor.runModeler(Processor.java:72)
07/03/13 12:41:52 at oracle.j2ee.ws.common.metadata.annotation.DeploymentGenerator$DeploymentCompileTool.run(DeploymentGenerator.java:200)
07/03/13 12:41:52 at oracle.j2ee.ws.common.metadata.annotation.DeploymentGenerator.generateDeploymentArtifacts(DeploymentGenerator.java:131)
07/03/13 12:41:52 at oracle.j2ee.ws.common.metadata.annotation.EJBWebServiceAnnotationParser.parseAnnotatedBean(EJBWebServiceAnnotationParser.java:165)
07/03/13 12:41:52 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
07/03/13 12:41:52 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
07/03/13 12:41:52 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
07/03/13 12:41:52 at java.lang.reflect.Method.invoke(Method.java:585)
07/03/13 12:41:52 at oracle.j2ee.ws.server.deployment.oc4j.WebServiceAnnotationListener.parseAnnotatedClass(WebServiceAnnotationListener.java:85)
07/03/13 12:41:52 at com.evermind.server.ejb.AnnotationParser.notifyAnnotationListeners(AnnotationParser.java:201)
07/03/13 12:41:52 at com.evermind.server.ejb.AnnotationParser.parseAnnotations(AnnotationParser.java:73)
07/03/13 12:41:52 at com.evermind.server.ejb.EJBPackageDeployment.parseMetaData(EJBPackageDeployment.java:939)
07/03/13 12:41:52 at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:832)
07/03/13 12:41:52 at com.evermind.server.ApplicationStateRunning.initializeApplication(ApplicationStateRunning.java:217)
07/03/13 12:41:52 at com.evermind.server.Application.setConfig(Application.java:413)
07/03/13 12:41:52 at com.evermind.server.Application.setConfig(Application.java:314)
07/03/13 12:41:52 at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1853)
07/03/13 12:41:52 at oracle.oc4j.admin.internal.ApplicationDeployer.addApplication(ApplicationDeployer.java:512)
07/03/13 12:41:52 at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(ApplicationDeployer.java:196)
07/03/13 12:41:52 at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase.java:93)
07/03/13 12:41:52 at oracle.oc4j.admin.jmx.server.mbeans.deploy.OC4JDeployerRunnable.doRun(OC4JDeployerRunnable.java:52)
07/03/13 12:41:52 at oracle.oc4j.admin.jmx.server.mbeans.deploy.DeployerRunnable.run(DeployerRunnable.java:81)
07/03/13 12:41:52 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
07/03/13 12:41:52 at java.lang.Thread.run(Thread.java:595)
07/03/13 12:41:52 Caused by: oracle.j2ee.ws.common.processor.modeler.rmi.InvalidParameterException: test.datamodel.SimpleObjectId - Duplicate type name "test.datamodel.SimpleObjectId" for Java type "{http://tdeer.de/services/internal/test/1_0}SimpleObjectId" found. To remove this error do not specify a single typeNamespace for all value types or specify a mapping file. This error could also be caused when an erroneous type has been used more than once.
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.LiteralTypeModeler.addTypeName(LiteralTypeModeler.java:1249)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.LiteralTypeModeler.processClass(LiteralTypeModeler.java:290)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.LiteralTypeModeler.modelTypeLiteral(LiteralTypeModeler.java:235)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.LiteralTypeModeler.modelTypeLiteral(LiteralTypeModeler.java:181)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.LiteralTypeModeler.modelSubclasses(LiteralTypeModeler.java:1048)
07/03/13 12:41:52 at oracle.j2ee.ws.common.processor.modeler.rmi.RmiModeler.buildModel(RmiModeler.java:210)
07/03/13 12:41:52 ... 25 more
The Stateless-SessionBean has one WebMethod with the following Signature:
public Element getElement(TestObjectId1 pObjectId1, TestObjectId2 pObjectId2) throws RemoteException
TestObjectId1 and TestObjectId2 have the same Superclass, SimpleObjectId.
How to specify a mapping file using annotations?
Thanks
tdeerWe you codegen a Policy annotated WSDL, the policies are get included in the stub. Hence you don't have to specify a separate Policy file.
But if you need to use a separate policy then you need to set them in the AxisDescription object that you use in the ServiceClient and OperationClient.
e.g.
ServiceClient serviceClient = new ServiceClient();
OperationClient operationClient = serviceClient
.createClient(ServiceClient.ANON_OUT_IN_OP);
FileInputStream fis = new FileInputStream("path-to-policy.xml");
Policy servicePolicy = PolicyEngine.getPolicy(fis);
AxisService axisService = serviceClient.getAxisService();
axisService.getPolicyInclude().setPolicy(servicePolicy);
If you need more information please repost this to [email protected] with a [AXIS2] subject prefix.
Maybe you are looking for
-
No SMS send or receive ability after updating 3GS to ios5
Synced up my husband's iPhone 3Gs this past Sunday night for the first time ever to update it from ios 4.1 to ios 5. Since then, he has been unable to send or receive ANY text messages. I tried a backup and restore last night and was able to get ON
-
Why doesn't the new ram memory for iMac (mid 2011) work (different brand)?
Hello, I have an Macbook pro at home (early 2011) and an iMac (mid 2011). My macbook pro had 2 x 2GB ram and I wanted it to be higher, zo I bought 2 x 4GB ram from Kingston. I installed it succesfully in the macbook pro. I saw that the ram in my macb
-
Difference between abap & hrabap
hi experts, can anybody tell about the diff between abap & Hr Abap. thanks.
-
Hi Gurus. I created one ztable and also table mainenance . but in sm30 the table is not showed blank screen is showing. here I am not able to create entries. please give me the reply. Regards, Shashikumar.G
-
Hi, I'm new with JTable. I've a JTable where I added a comboBox. I need to open a Dialog box by selecting an option from the comboBox. Please let me know how can I do that... thanks in advance. here is how I added my combobox code //Set up