How to restrict the generated constraint name with Model Driven Development

Hello
I have a database that has tables INSTRUMENT and EXCHANGE. There has to be a foreign key field called primaryExchange inside INSTRUMENT table that points to the ID of EXCHANGE table. In my fml file, my tables are called Instrument and Exchange. When I create this relation between the two tables in the model and deploy it to LCDS, it tries to create a FK constraint by the name of "FK_Instrument_primaryExchange_TO_Exchage" which fails with ORA-00972 -  Identifier is too long. Obviously the generated FK name is more than 30 chars and hence the oracle erorr. The only way to resolve this is to reduce the name of the table/field in the fml file while keeping the database table/field name intact. So the FK might be called FK_Instr_primExch_TO_Exch and which will work but the problem is that in the fml model file, I am loosing the meaningful names of the tables and thus the data services that are generated have truncated names. For this particular example, the truncated name might still be okay but in a large database, it is causing much grief. I would really prefer decent descriptive names for table like MarketOrder instead of MO. Pls advise how I can customize the generated constraint name while keeping the tables names still informative.
Now I edit my DB tables to have a field called ID which is unique to that table but while deploying I get hibernate and fiber exceptions :-
2011-03-10 16:30:44,042 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Exception trying to build hibernate's session factory: org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
2011-03-10 16:30:44,116 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Error instantiating application scoped instance of type 'fiber.data.assemblers.FiberAssembler' for destination 'UlltraWebServer.Holiday'.
org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
2011-03-10 16:30:44,229 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Exception trying to build hibernate's session factory: org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
The above suggests that it does not like the same name for the fields in multiple tables, they all have to be unique like Holiday.holidayID, Client.clientID etc which causes the above constraint length violation issue..
thanks

You should be able to achieve what you want with an explicit criteria filter on your entity.
In the Modeler Design view, select your entity and add a filter. You'll see that there is a an "Order By" field in the Properties view.
Enter the value you want there and then save and redeploy your model. When you don't enter anything in the "Criteria" field, you create a getAll fill.
Here's an example of an entity created with this type of filter; it is sorted by price in ascending order:
<entity name="Product" persistent="true">
  <annotation name="ServerProperties" ServerType="LCDS"/>
  <annotation name="DMS" Table="PRODUCT"/>
  <annotation name="RDS" introspectedColumns="PRODUCTID,DESCRIPTION,PRICE,PRODUCTNAME"/>
  <annotation name="VisualModeler" width="115" height="110" x="364" y="203"/>
  <id name="productid" type="integer">
  <annotation name="DMS" ColumnName="PRODUCTID"/>
  </id>
  <property name="description" type="string" length="255">
  <annotation name="DMS" ColumnName="DESCRIPTION"/>
  </property>
  <property name="price" type="float">
  <annotation name="DMS" ColumnName="PRICE"/>
  </property>
  <property name="productname" type="string" length="255">
  <annotation name="DMS" ColumnName="PRODUCTNAME"/>
  </property>
  <filter name="MyFill" order="price ASC"/>
  </entity>

Similar Messages

  • How to Fill Sorted Data with model Driven Development

    Hello
    I am using model driven development. I am using getAll in the Fill method. But the results are not returned sorted by some field that I am interested in. How do I tell the Fill to sort it by some field. Is there some annotation that I can provided in the model...
    thanks
    RK

    You should be able to achieve what you want with an explicit criteria filter on your entity.
    In the Modeler Design view, select your entity and add a filter. You'll see that there is a an "Order By" field in the Properties view.
    Enter the value you want there and then save and redeploy your model. When you don't enter anything in the "Criteria" field, you create a getAll fill.
    Here's an example of an entity created with this type of filter; it is sorted by price in ascending order:
    <entity name="Product" persistent="true">
      <annotation name="ServerProperties" ServerType="LCDS"/>
      <annotation name="DMS" Table="PRODUCT"/>
      <annotation name="RDS" introspectedColumns="PRODUCTID,DESCRIPTION,PRICE,PRODUCTNAME"/>
      <annotation name="VisualModeler" width="115" height="110" x="364" y="203"/>
      <id name="productid" type="integer">
      <annotation name="DMS" ColumnName="PRODUCTID"/>
      </id>
      <property name="description" type="string" length="255">
      <annotation name="DMS" ColumnName="DESCRIPTION"/>
      </property>
      <property name="price" type="float">
      <annotation name="DMS" ColumnName="PRICE"/>
      </property>
      <property name="productname" type="string" length="255">
      <annotation name="DMS" ColumnName="PRODUCTNAME"/>
      </property>
      <filter name="MyFill" order="price ASC"/>
      </entity>

  • How to restrict the t code BBPMAININT with DISPLAY Mode in SRM?

    Hi experts,
    I want to restrict the T code BBPMAININT : Maintain Business Partner with DISPLAY mode in SRM system?
    Action Taken:1. I have restricted with "03 Activity"  of all check and maintainauthorization objects for this  tocde .
    2. I have performed the authorization trace also, there also I have not found any new objects.
    Here are list of auth object I have restricted:
    BBP_FUNCT
    BBP_PD_AUC
    BBP_PD_BID
    BBP_PD_CNF
    BBP_PD_CTR
    BBP_PD_INV
    BBP_PD_PCO
    BBP_PD_PO
    BBP_PD_QUO
    But I have not  clearly understand of the object : BBP_FUNCT.
    In this Object, I have maintained BE_F4_HELP value only.   And rest of the auth object I have restricted to 03 activity only.
    But still users are able to acess the CREATE and MANAGE buttons.
    So how Can I restrict the this T code in display mode?
    Please suggest me...
    Thanks in advance.
    Regards,
    Siva

    Siva,
    Does your users have any other tcodes assigned to them other than the one you needed to be resticted?
    As a trial, assign only your tcode to a user and run the trace.
    Let us know your findings.
    Regards,
    Brahmeshwar

  • How to restrict the BBPMAININT t code with diplay mode in srm system.

    Hi experts,
    I want to restrict the T code BBPMAININT : Maintain Business Partner with DISPLAY mode in SRM system?
    Action Taken:1. I have restricted with "03 Activity"  of all check and maintainauthorization objects for this  tocde .
    2. I have performed the authorization trace also, there also I have not found any new objects.
    Here are list of auth object I have restricted:
    BBP_FUNCT
    BBP_PD_AUC
    BBP_PD_BID
    BBP_PD_CNF
    BBP_PD_CTR
    BBP_PD_INV
    BBP_PD_PCO
    BBP_PD_PO
    BBP_PD_QUO
    But I have not  clearly understand of the object : BBP_FUNCT.
    In this Object, I have maintained BE_F4_HELP value only.   And rest of the auth object I have restricted to 03 activity only.
    But still users are able to acess the CREATE and MANAGE buttons.
    So how Can I restrict the this T code in display mode?
    Please suggest me...
    Thanks in advance.
    Regards,
    Siva

    Dear Poster
    Your thread has had no response since it's creation over
    2 weeks ago, therefore, I recommend that you either:
    - Rephrase the question.
    - Provide additional Information to prompt a response.
    - Close the thread if the answer is already known.
    Thank you for your compliance in this regard.
    Jason Boggans
    SAP SRM SDN Moderator

  • How to change the print queue name with Lexmark printer?

    Is it at all possible to change the print queue name from Lexmark_3500_4500_Series, to something shorter? I try to link printouts from an old Sun Unix system, thru my iMac to the Lexmark X4580 multifunction printer. However, the Sun/Unix will not accept this long print queue name...

    Apologies, I misread. The only way I know of changing the Print Queue Name is by readding the printer.
     > System Preferences > Print & Scan > Add
    Choose your printer, make sure you change the print queue name to something different (equates to the Printer Name).
    When you need to print, simply select the printer you just added.
    Once your happy it works, delete the old printer from the list in Print & Scan.
    Morgan

  • How to define the Java Resource Name with Consolidator API

    Hi everybody,
    I want to create a JavaResource with the OracleLite Consolidator API. There is a method ConsolidatorManager.createJavaResource(jarName, className, replace) which provides this, but it does not allow to explicitelly set the object name for this resource. That means, that if I want to create a JavaResource from the jar archive located in C:/temp/MyArchive.jar with the following call:
    cm.createJavaResource("C:/temp/MyArchive.jar", null, true);
    it automatically takes the whole path (i.e. C:/temp/MyArchive.jar) as the ResourceName. That is really not practical, especially if the path is longer.
    Is there some method, which enables to specify the name for the Resource? Or maybe some method which can change an object name for the specified object type?
    Thank you in advance,
    Filip

    i use
    Desformat= SPREADSHEET
    Destype= CACHE
    web.show_document(/reports/rwservlet/getjobid<jobid>?server=ReportServer,_blank);
    with a 'name' as getjobid<jobid>
    desname doesn't work in CACHE - Mode ?
    with
    Desformat= SPREADSHEET
    Destype= FILE
    Desname= my_variable_report_name.xls
    there is the file my_variable_report_namet.xls saved on host-file-system
    ok, but can I call this with my_variable_report_name from cache without to save it everytime on server before ?

  • Comparing ABAP development process with Model Driven Architecture concept

    My Background
    I am a postgraduate student writing a Masters Degree Dissertation titled “An Investigation into how compatible ERP Development Process is with Model Driven Development Philosophy: A SAP R/3 Case Study”.
    The aim of this project is to compare ERP system development process with Model Driven Development (MDD) and to identify whether and how they can be used together. Model Driven Architecture (MDA) is Object Management Group’s (OMG) flavour of the MDD philosophy and is the paradigm that will be used here.
    I have chosen SAP R/3 as my case study in order to narrow the research and want to explore the development processes/cycle involved in using ABAP/4 to reconfigure/customize SAP R/3 system during implementation.
    An overview of the MDA concept according to OMG is given below. Following this, I’ve provided some questions that are open to discussions.
    Overview of the MDA Concept
    The Model Driven Architecture (MDA) is an approach to software systems development that separates the specification of system functionality from the specification of the implementation of the functionality on a specific technology platform. The MDA concept provides an open, vendor-neutral approach to system interoperability.
    A recent study by the Middleware Company summarizes MDA paradigm as a development process that makes use of the following steps:
    1.     Secure business requirements for an application.
    2.     Develop UML diagrams for the domain model, independent of any particular technology (J2EE, Microsoft .NET, CORBA, etc). This UML model represents the core business services and components. This UML model is called Platform Independent Model (PIM) because it is completely technology-independent and will be the same regardless of whether you decided to use J2EE or .NET. You develop this UML model using UML modelling capabilities of an MDA-specific modelling tool.
    3.     Build UML diagrams for the application, specific to a particular technology (J2EE, for example). This UML model will have design patterns. This UML model is called Platform Specific Model (PSM). You can build this manually, or you can generate much of it using an MDA tool and hand-tune only pieces of it that require customisation.
    4.     Finally, generate the application code using an MDA tool. That is to say, instead of writing the application by hand based on the UML model, you generate the majority of it from the UML diagrams.
    To develop an application using MDA, it is necessary to first build a PIM of the application, then transform this, using a standardised mapping into a PSM, and, finally, map the latter into the application code.
    A mapping is a set of rules and techniques used to modify one model in order to get another model. In MDA, mappings are used for transforming:
    1)     PIM to PIM. This transformation is used when models are enhanced, filtered or specialized during the development lifecycle without needing any platform dependent information. One of the most obvious mappings is the analysis to design models transformation. PIM to PIM mappings, are generally related to model refinement.
    2)     PIM to PSM. This transformation is used when the PIM is sufficiently refined to be projected to the execution infrastructure. The projection is based on the platform characteristics. Describing these characteristics should be done using UML description. Going from a logical component model to a commercial existing component model is a kind of PIM to PSM mapping.
    3)     PSM to PSM. This transformation is needed for component realization and deployment. PSM to PSM mapping are generally related to platform dependent model refinement.
    4)     PSM to PIM. This transformation is required for abstracting models of existing implementations in a particular technology into a platform-independent model. This procedure often resembles a “mining” process that is hard to be fully automated. It may be supported by tools, though. Ideally, the result of this mapping will match the corresponding PIM to PSM mapping.
    Questions/Discussions
    1.     What specific stages are involved in development using ABAP/4? (e.g., requirements gathering, analysis, design, coding, etc)
    2.     Do these stages fit into any traditional software development lifecycle? (e.g. waterfall model, v-model, etc)
    3.     Which of the stages in (1) above best describes the Platform Independent Model (PIM) of the MDA concept above?
    4.     Which of the stages in (1) above best describes the Platform Specific Model (PSM) of the MDA concept above?
    5.     How does the Accelerated SAP roadmap relate to the MDA concept above?
    6.     Assuming there’s a change in business requirements of a company that could lead to reconfiguring/customizing the R/3 system, how is this achieved? For instance, if a model has earlier been developed for that particular process, how does the change in the model affect coding/modification?
    7.     How is coding achieved with respect to the reconfiguration of the business models or reference models?
    8.     Are all coding manually done or are there tools in the ABAP Workbench that enable codes to be generated automatically from the models of the system?
    9.     How much time is spent in coding compared to developing business models like EPC models?

    I've also read about the SAP Composite Application Framework (CAF).
    But it seems that it's only for Java development....

  • I have a new ipod and when I sign in to Words with Friends it says that user name is already in use. How can I continue using the same user name with a different ipod?

    I have a new ipod and added all my apps to it. When I sign in to Words with Friends it says that "user name is already in use" because it is linked to my old ipod. How can I use the same user name with my new ipod?

    Was the iPod setup via iTunes on this computer?
    Setup via wifi?
    Was the iPod previous synced to another iTunes library/computer?
    Have you successfully synced from this iTunes library/computer before?
    Do the songs play in iTunes?           
    Do you have the right boxes checked to sync?
    iTunes: Syncing media content to iOS devices and iPod        
    Try syncing using the manual method                 

  • How to restrict the quantity & rate of MIRO with MIGO and PO

    Hi friends,
    Can any body tell me how to restrict the quantity & rate of MIRO with MIGO and PO.
    e.g. if we have done MIGO for quantity 10 and the rate maintained in the PO is Rs.100.Then at the time of MIRO system should not allow to change the quantity and rate.
    How we can do this?
    Regards  
    Purnesh Sharma

    Hi,
    You are misunderstanding the use of MIRO.
    If you change the details in MIRO you are NOT changing anything. You are just entering the price and quantity from the Invoice.
    If this price and or qty is different from the GR aqty and PO price then the system will block the invoice for payment (and it can issue messages toinform the buyer if configured correctly).
    The whole design of MIRO is based on the principle that you enter EXACTLY what the vendor has put on the invoice. By preventing the users from changing anything you will get NO mismatched invoices, but you will not be paying the vendor the amount specified on their invoice. This will surely cause problems.
    If you do want to ensure that ONLY the GR qty and the PO price are used and cannot be changed then why not consider using ERS (Eveluated Receipt Settlement. this is basically self billing.
    Effectively you will be paying the vendor based on what you have received in MIGO multiplied by the price from the PO. (which is what you would be doing if you stop any changes in MIRO)
    Steve B

  • How to restrict the number of Records into the Table?

    Is there any way that I can restrict the number of records can be entered into the table?
    For example I have created a table TAB1 with size category 0( zero).
    User dont want to enter more than 100 values, How to restrict the number entries? Whether Basis can do it?
    Regards,
    Prathap

    Hi Prathap,
    You can write a code in table maintenance events to restrict the number of Records added into the Table to constant.
    Solution:
    Se11 -> enter table name (TAB1) -> F6 -> Utlities -> Table maint. generator -> Envirnment -> modification -> events -> write here the form routine name.
    Double click on routine name. You will get into include section of the code. Write here code like:
    IF current_rec_num > 100.
       messgae error 'Entry restriceted to 100'
    ENDIF.
    Somewhat this way you can achieve your target.
    Regards,
    Sachin

  • How to restrict the length of the input?

    Hi all, could any one tell me how to restrict the length of the input string? My SOA Suite is 10.1.3.1
    I tried the following; getting an error.
    <element name="RestrictLengthProcessRequest">
    <simpleType name="SSN">
    <restriction base="string">
    <length value="10"/>
    </restriction>
    </simpleType>
    where RestrictLengthProcessRequest is the message name of the corresponding .wsdl and SSN is the input whose length is to be restricted.
    The error is : 'Attribute name not defined on element simpleType'
    Thanks in advance.
    Edited by: user11275112 on Aug 27, 2009 11:44 PM

    Hi swathi,
    For this you have to create a simple data type. No need of writing a code.
    Go to Dictionaries -> Local Dictionary -> Data Type - > Simple Type - > Right click and "Create Simple Type".
    Here you should create a Simple type with String as built-in Type. Here you will also see the Length Constraints option.
    Set the value of maximum length and minimum length. In your case set the value of maximum length to 10. At runtime this will not allow the user to enter more than 10 characters.
    Now create an attribute and bind it to this newly created simple type. Bind the value of the input field with this particular attribute.
    Regards
    Manohar

  • How to restrict the job start conditions (only "Immediate" type) ?

    Hi,
    We allow our users to schedule and execute in background mode transactions (example IP19, IW38). We gave them for that authorizations (object S_BTCH_JOB with LIST, PROT, RELE and SHOW - objetct S_PROGRAM with BTCSUBMIT).
    We would like that users can schedule and execute their jobs only with the u201CImmediateu201D job start condition (in the Start Time screen for the type of start condition : Immediate, Date/Time, After job, After event, or At operation mode).
    Another solution: prohibit the scheduling and the execution background job in a certain time interval ...
    How can restrict the job start conditions ?
    Thank you.
    Patrice.

    Hi Jan,
    Yes, sa38 makes it possible indeed to execute in background into immediate mode a job but
    the user have to know the name of the program to be carried out ...
    The user knows only the name of these transactions trade. For example, IW38.
    In the menu of this transaction, SAP gives the possibility to execute in background :
    Program --> Execute in Background --> display of Start Time screen for the type of start condition :
    Immediate, Date/Time, After job, After event, or At operation mode).
    It is at this time there that we want that the user can only choose the "immediate" mode.
    We must thus prohibit the other choices (Date/Time, After job, After event, or At operation mode) ... and
    and we don't know how to restrict these other options in this screen "Start Time screen for the type of start condition".
    Thank you.
    By.

  • How to restrict the duplicate values in lov column of VO based Adv Table

    Hi Gurus,
    I want to restrict the duplicate values at lov which is a colunm in an Adv Table.
    If user enters duplicate values then first it should show an error msg that Duplicate values have been entered.
    After the duplicate values have been removed, then the user can save all the values in the table.
    My Adv Table is based on a VO.
    The link how to restrict the duplicate values at form level
    talks about Adv Table based on a EoVO, which doesnot work in my case.
    My Approach,
    I am iterating through RowSetIterator and committing through PROCEDURE.
    I am able to avoid duplicate entry through a function checkRespId. (given below)
    Below code is for iterating and committing.
    public void saveline(String reqid,String userid)
    System.out.println("RequestId/saveline"+reqid);
    System.out.println("UserId/saveline"+userid);
    OAViewObject vo = (OAViewObject)getRespLineVO1();
    RespLineVORowImpl row = null;
    int fetchedRowCount = vo.getFetchedRowCount();
    RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
    if (fetchedRowCount > 0)
    deleteIter.setRangeStart(0);
    deleteIter.setRangeSize(fetchedRowCount);
    for (int i = 0; i < fetchedRowCount; i++)
    System.out.println("Inside the for LOOP");
    row = (RespLineVORowImpl)deleteIter.getRowAtRangeIndex(i);
    String respoidid = row.getAttribute("ResponsibilityId")+"";
    String respname = row.getAttribute("ResponsibilityName")+"";
    String stdate = row.getAttribute("StartDate")+"";
    String enddate = row.getAttribute("EndDate")+"";
    String linestatus ="A";
    if(userid!=null)
    if(!(respoidid.equals("null")) && respoidid!=null)
    String checkingrespid=null;
    checkingrespid = checkRespId(userid,respoidid);+contains no if not duplicate and yes if its duplicate+
    System.out.println("checkingrespid for Resp with ID :"+respoidid+"exists or not "+checkingrespid);
    if(checkingrespid.equals("No"))
         String message, result = null;
    Connection txn = getOADBTransaction().getJdbcConnection();
    try
    calling PROC ...
    catch(Exception e)
    message = "Error in Inserting into line" + e;
    throw new OAException(message, OAException.ERROR);
    else
    throw new OAException("You have entered duplicate no. of values", OAException.ERROR);
    else
    System.out.println("respoidid is null");
    break;
    deleteIter.closeRowSetIterator();
    public String checkRespId(String userid,String respoidid)
    String createRow="No";
    OAViewObject vo = (OAViewObject)findViewObject("CheckRespVO1");
    if (vo != null)
    vo.setWhereClauseParams(null);
    vo.setWhereClauseParam(0, userid);
    vo.setWhereClauseParam(1, respoidid);
    vo.executeQuery();
    System.out.println("ROW COUNT IS "+vo.getRowCount());
    if(vo.getRowCount()>0)
    createRow="Yes";
    else
    createRow="No";
    return createRow;
    Problem:
    I remove the duplicate entries and click on save and get this error.
    Unable to perform transaction on the record. \nCause: The record contains stale data. The record has been modified by another user.
    \nAction: Cancel the transaction and re-query the record to get the new data.
    Thanks,
    Sombit

    Hi Anil,
    I am trying out your code but stuck in inserting the rows
    using your code in URL: http://oracleanil.blogspot.com/2010/09/oaf-passing-table-type-object-to-oracle.html
    I am always getting the same exception i.e COde blast in when I run.
    My modified code is:
    String[] as = null;
    Number[] vNumber = null;
    Number[] vNumberrespid = null;
    Number reqidnumber = null;
    reqidnumber = new Number(Integer.parseInt(reqid));
    Connection txn = getOADBTransaction().getJdbcConnection();
    String mCreateSearchRequestStatement = null;
    OAViewObject vo = (OAViewObject)findViewObject("RespLineVO1");
    int j = vo.getFetchedRowCount();
    try
    System.out.println("abouce try");
    vo.reset();
    if (vo.getFetchedRowCount() > 0)
    System.out.println(String.valueOf("Fetched row count ").concat(String.valueOf(vo.getFetchedRowCount())));
    int i = 0;
    as = new String[j];
    vNumber = new Number[j];
    vNumberrespid = new Number[j];
    while (vo.hasNext())
    vo.next();
    System.out.println(String.valueOf("Inisde the do while loop").concat(String.valueOf(i)));
    vNumber[i] = (reqidnumber);
    vNumberrespid = ((Number)vo.getCurrentRow().getAttribute("ResponsibilityId"));
    as[i] = String.valueOf(vo.getCurrentRow().getAttribute("ResponsibilityName")).concat(String.valueOf(""));
    System.out.println("Request ID "+reqidnumber[i]);//getting null even there is some value selected
    System.out.println("ResponsibilityId "+vNumberrespid[i]);//getting null even there is some value selected
    System.out.println("Resp Name "+as[i] );//getting null even there is some value selected
    i++;
    CallableStatement cs = txn.prepareCall("{call XX_PassTableType.XX_PassTableType_prc(:1, :2,:3)}");
    ARRAY array = new ARRAY(new ArrayDescriptor("APPS.JTF_NUMBER_TABLE", txn), txn, vNumber);
    ARRAY arraynew = new ARRAY(new ArrayDescriptor("APPS.JTF_NUMBER_TABLE", txn), txn, vNumberrespid);
    ARRAY array1 = new ARRAY(new ArrayDescriptor("APPS.JTF_VARCHAR2_TABLE_100", txn), txn, as);
    cs.setArray(1, array);
    cs.setArray(2, arraynew);
    cs.setArray(3, array1);
    cs.registerOutParameter(3, 2003, "JTF_VARCHAR2_TABLE_100");
    cs.execute();
    ARRAY error = null;
    error = (ARRAY)cs.getArray(2);
    if ((error != null) && (error.length() > 0))
    System.out.println(String.valueOf("Error is ").concat(String.valueOf(error.getArray())));
    String[] retError = new String[j];
    retError = (String[])error.getArray();
    System.out.println(String.valueOf("Error in saving data").concat(String.valueOf(retError[0])));
    cs.close();
    catch (Exception exception)
    throw new OAException("code blast", OAException.ERROR);
    Thanks,
    Sombit

  • HOW to Restrict the input Help for 0MATERIAL in the BPS Layout

    Hi,
    I have requirement to Restrict the input Help for 0MATERIAL  in the BPS Layout.
    For Example if the Planning Package is Restricted to SALES ORGANISATION ( 3000 )  then the system shuold  check the 0MAT_SALES  where SALES ORGANISATION IS "3000" )AND PASS THE Material Numbers to the 0material list.
    I have Copied the standard Funtcion group  "UPF_VARIABLE_USER_EXIT"  to Z fucttion and have attached to Z Variabe as User Exit .
    this Variable is  Attached to 0material in the Planning Pakage. So tha now the 0MATERIAL is restricted to the variable which is having the User Exit.
    But how to acces the Values of Planning Package for which the Layout is bein Executed from this Z User Exit ???
    I Know how to restrict the input help, but my only problem is that how to get the values of Planning package through this User Exit.
    Please suggest if it is possible.
    Regards,
    Nilesh Labde

    Hi Nilesh,
    As I understand from your question,you know how to restrict but the issue is to know the value in the package with which you need to restrict.
    There are two tables which can help you finding the value used in package for sales organisation:
    1. UPC_PACKAGE
    2. UPC_OPTIOS
    How to use ?
    From UPC Package you will get one GUID, Hit the second table UPC_OPTIOS with this GUID.
    In field "FIELDNAME" enter the name of the characteristic whose value is req (sales organisation in your case)
    Hope this helps you
    Mann

  • How to restrict the length of input field

    Hi,
    How to restrict the length of input field. That is we should not be able to enter more thatn 10 charecters.
    Regards,
    H.V.Swathi

    Hi swathi,
    For this you have to create a simple data type. No need of writing a code.
    Go to Dictionaries -> Local Dictionary -> Data Type - > Simple Type - > Right click and "Create Simple Type".
    Here you should create a Simple type with String as built-in Type. Here you will also see the Length Constraints option.
    Set the value of maximum length and minimum length. In your case set the value of maximum length to 10. At runtime this will not allow the user to enter more than 10 characters.
    Now create an attribute and bind it to this newly created simple type. Bind the value of the input field with this particular attribute.
    Regards
    Manohar

Maybe you are looking for

  • RSCRM_BAPI Scheduling

    Is there anyway to schedule RSCRM_BAPI ? i.e attach it to process chain or run weekly... Thanks.

  • Free space problem in / with oracle-xe-11.2.0-1.0.x86_64

    Hi, I'm trying to install Oracle-xe-11g on Red Hat 5.6, but I have the following problem: [root@localhost] rpm -ivhf oracle-xe-11.2.0-1.0.x86_64.rpm Preparing... ########################################### [100%] installing package oracle-xe-11.2.0-1

  • Load , edit and update an external XML in AS3

    Hello to all of you! I'm new in Flash, so i would like some help here.... I'm trying to build a User Interface (SWF) and provide it to my customers in order to have access (easely) and they can change the data (images & Texts) of an XML driven photo

  • Regarding import and export statement

    hi experts, how to import and export the internal table between programs... Nice solutins with maximum points.....

  • Set Text in Container- Different Classes each line of text

    I'm using the Set text of Container behavior to function as a caption in my displaced rollover. It works fine but there is one problem I'm having. My orginal "placeholder" caption looks something  like this: Project Name Location Photographer I achie