Duplicate item checking failed in Form level-urgent

Hi all
i have creation page with advanced table
i need to restrict the duplication at form level as well as save button
in some cases the validation is failed
if ("CodeValidation".equals(pageContext.getParameter(EVENT_PARAM)))
itemcode = vo.getCurrentRow().getAttribute("ItemCode").toString();//advanced table multiple records come
am.xxItemCodeValidation(itemcode);//checking the item validation at databse level
am.xxdupitemcode(itemcode);
method in am
public void xxdupitemcode(String itemcode)
System.out.println("The item code is.........."+itemcode);
int count = 0;
xxcrmNewItemVOImpl vo = getxxcrmNewItemVO1();
vo.executeQuery();
System.out.println("the row are" + vo.getAllRowsInRange().length);
Row r[] = vo.getAllRowsInRange();
int n = vo.getAllRowsInRange().length;
for (int i = 0; i < n; i++)
System.out.println("entered into this block......for loop" + count);
if (itemcode.equals(r.getAttribute("ItemCode")))
System.out.println("entered into this block......" + count);
count = count + 1;
System.out.println("the count is........."+count);
if (count > 1)
throw new OAException("Duplicate Item found plz change the item",
OAException.ERROR);
} else
System.out.println("Exception block....... ");
in save button i am calling
if ("Save".equals(pageContext.getParameter(EVENT_PARAM)))
am.xxdupitemcode(itemcode);
am.invokeMethod("xxsavetr");
in which case it is failing is
in first row user enter
ROW-ITEMCODE
1-A
2-A
3-B
4-B
in second row and 4 th row exception is raised but user didnt change the itemcode and proceed for next steps
IN SAVE BUTTON EXCEPTION IS RAISED
but user will go to 4 th row and B should be change as C and click on save
records are saving with duplication item of A
but i need to restrict in save button also
how its posible
Regards
Sreekanth

Sreekanth,
The correct way to check for duplicates is to check it both in the VO/EO cache as well as the database. It is possible the user entered duplicate value in the current session. In that case you should first check within the existing VO rows if the values are duplicated or not (in case all the database rows are already queried, you might not need to run an explicit query, otherwise another validation VO needs to be executed to check for duplicates).
Regards
Sumit

Similar Messages

  • Duplicate Invoice check

    Hi,
    We have made the settings for duplicate Invoice check. In one scenario, when we use same reference number for different vendor also, system is throwing duplicate invoice check. Could anyone of you clarify why system is throwing error for same reference even  it is a different vendor also.
    Regards
    Uma

    Hi Kumar,
    Standard SAP always checks duplicate invoice check at FI document level BSEG-XBLNR, not at Vendor level. If this situation occurs we always input XXXXa inorder to avoid this type of situation. Hope this helps.
    Thanks
    Raghuram

  • When-validate-item at form level do not fire

    Hi, I wrote a when-validate-item at form level to do same check in all items of a screen and note that this trigger do not fire when executing the form. does someone know why this form-level when-validate item do not fire. Are there some conditions i probably forgot to have? Thnaks very much.

    Hi, if you also have a validate-item trigger on the item itself, this may be overriding the form-level validate item.
    At the ITEM-LEVEL:
    if a when-validate-item trigger exists and the Execution Hierarchy property of the trigger is set to override then the item-level trigger will fire instead of any trigger by the same name at any higher scope.
    So make sure you do not have validate-item triggers at the item or block level that may be overriding the form-level when-validate-item.
    To see the properties of a trigger, highlight the trigger and press F4
    Hope this helps!

  • Form level v/s item level trigger in oracle forms

    Hello Experts,
                  I am new in oracle forms.I am using forms 11g with weblogic server 10.3.5 at windows 7.I am very confused between Form level and item level triggers.What is the sense of use of when-button-pressed trigger at item level & form level.If I have this trigger form level then how could I check that is fired.
    Thank  You
    regards
    aaditya

    979801 wrote:
    Hello Experts,
                  I am new in oracle forms.I am using forms 11g with weblogic server 10.3.5 at windows 7.I am very confused between Form level and item level triggers.What is the sense of use of when-button-pressed trigger at item level & form level.If I have this trigger form level then how could I check that is fired.
    Thank  You
    regards
    aaditya
    You need to clear you concept first..
    Form level Trigger: code applied all respective item within the form
    Item level Trigger: code applies for only the item that has the code.
    try in a form and you will see the difference.
    Hamid

  • Can't use LOV with item type "check box" in form

    I have created a LOV that I want to use with a form application in 3.0.9. I need to be able to do multiple choices in this LOV (check box style) in the same query (only queries - users won't be able to update this field)
    When I choose Check box as the item type in the form wizard I am not able to choose the LOV. I have to use combo box, popup or radio group for the LOV choices to appear, but then the query can only query for one value in the LOV at a time.
    Is there a solution to this?

    Hi,
    This feature is not supported as of now. You cannot have multi select LOV for a form field and hence a checkbox cannot have a LOV.
    Thanks,
    Sharmila

  • Ontext menu at form level text items

    Hi, I want to know how we can create a context menu at form level text items.
    like i want a context menu at column level for following options copy, hide, show, set filter, find, sort in ascending and descending order.
    I will be highly obliged.

    Hello,
    Create an internal menu (popup menu node in your form module), then attach its name to the corresponding item (fonctionnal -> popup menu)
    Francois

  • Quantity conversion check failed for one item; all qty lines deleted

    Hi IS Oil Experts,
    Iam using the BAPI "BAPI_GOODSMVT_CREATE_OIL" for posting goods movement. I filled the additional quantities and unit of measures also in the BAPI table, But when tried to execute, Iam getting the error, "Quantity conversion check failed for one item; all qty lines deleted"
    Please anybody tell me what is the error from end for resulting this message.
    Thanks in advance
    Prathib

    Dear you!
    I also get the issue that you meet. Can you help me to process it, Please/
    Best regards, Huy.

  • Use of 'Item' Check box available in 'Additional Authorization Creator'

    What is the use of the 'Item' Check box available in 'Additional
    Authorization Creator' document?
    B1 Help States that:
    Item
    Defines the object as an item rather than a form.
    Permissions set to form apply to all its subordinates. Permissions set to an item do not apply to the parent form.
    My requirement is as follows:
    I want to restrict a particular user from accessing the 'Logistics' tab
    of the Purchase order.
    1. I opened the 'Additional Authorization Creator' and added the 'PO
    Logistics Tab' in the description window.
    2. In the Forms Ids, i have mentioned as '114' (Form Id of Logistic
    Tab)
    3. Now I went to the authorizations screen and in the
    UserAuthorization, I selected ''PO Logistics Tab' and set this to 'No
    Authorization' for user named 'Raman'.
    4. When I logged inwith user 'Raman', still I could access
    the 'Logistics Tab' of the PO.
    Please explain me the significace of 'Item' Check box available
    in 'Additional Authorization Creator' document.

    Hi Shridharan,
    The Item option does not refer to the "items" like "fields, buttons, grids or tabs" but it refers to other forms which might have a parent form.
    There is also a note which states that the authorizations for the above items vannot be created via the "additional Authorization window"
    The text of the note is :
    Symptom
    When defining authorizations for specific item (field, button,
    checkbox...) by using the Additional Authorization Creator, these
    authorizations are actually not applied, and the user can work as if
    these additional authorizations were not created.
    Other terms
    Additional Authorization Creator, Item, Field, Form
    Reason and Prerequisites
    FAQ
    Solution
    By definition, the Additional Authorization Creator is designed to
    enable the creation of additional authorizations on form (window) level
    only and not for item (field) level. Therefore, the additional
    authorization that were created for single items have no meaning.
    Note number :      1067360
    Regards
    Arshdeep

  • Duplicate Invoice check in IMS SRM 5.0

    Hello,
    I am facing one problem in SRM IMS. I am testing duplicate invoice check and have set some parameters in the "Settings for Invoice Monitor" IN SRM ITS, on which basis the Duplicate check will be carried out.
    After that i created one Invoice without purchase order reference and send it for approval. On being approved by the manager it is posted to the back end.
    Now again i created one invoice with same amount for same vendor( all data is same Except Invoice number(external).
    Then i again sent it for approval, After getting approved the system is posting the invoice, even though it is duplicate(acc. to the parameters settings in invoice monitor). But it is not blocking that second invoice and even not raising any exception.
    Please suggest the solution.
    Thanks
    Robin.

    Hi Robin,
    I actually get the same error now when I'm trying to recreate the problem. I was quite sure that I had got the "duplicate invoice" error but I probably haven't.
    In the IMG we have not set any of the messages to inactive. The two Duplicate Invoice events that are available (message 005 and 811) have the following settings:
    by item = Not checked (It should check on header level)
    Inactive = Not checked
    Regards,
    Kristoffer

  • How to duplicate Item

    Hi,
    I try to duplicate item with this code
                            Dim vItem As SAPbobsCOM.Items
                            Dim RetVal As Long
                            vItem = oCompany.GetBusinessObject(BoObjectTypes.oItems)
                            'Retrieve a record by its key from the database
                            If vItem.GetByKey("Art_Base") = True Then
                                'Set value to mandatory fields:
                                vItem.ItemCode = "MyNewItem"
                                'Set Value to other fields
                                vItem.ItemName = "MyNewItem Name"
                                vItem.InventoryItem = BoYesNoEnum.tYES
                                vItem.SalesItem = BoYesNoEnum.tYES
                                vItem.PurchaseItem = BoYesNoEnum.tYES
                                'Adding the Item
                                RetVal = vItem.Add
                                'Checking the result
                                If RetVal <> 0 Then
                                    oCompany.GetLastError(sErrCode, sErrMsg)
                                    MsgBox(sErrCode & " " & sErrMsg)
                                    BubbleEvent = False
                                    Exit Sub
                                End If
                            Else
                                oCompany.GetLastError(sErrCode, sErrMsg)
                                MsgBox("Failed to Retrieve the record " & sErrCode & " " & sErrMsg)
                                BubbleEvent = False
                                Exit Sub
                            End If
    It does not work, I have a message  in OITW.ItemCode
    Why ?
    Thanks

    Dear Didier LEVAN,
    You may try to duplicate the item via XML file by use
    oldItem.SaveXML -> change Item code, etc, in xml file ->
    newitem = oCompany.GetBusinessObjectFromXML(xmlfile)
    Best Regards
    Jane Jing
    SAP Business One

  • How to restrict key board function keys ex:-F10 in forms 6i.urgent plz..

    how to restrict key board function keys ex:-F10 in forms 6i.urgent plz..

    Hi,
    At Form level, write trigger for WHEN_KEY_DOWN, check for F10 and put action as NULL.
    Regards,
    Amol

  • Shared storage check failed on nodes

    hi friends,
    I am installing rac 10g on vmware and os is OEL4.i completed all the prerequisites but when i run the below command
    ./runclufy stage -post hwos -n rac1,rac2, i am facing below error.
    node connectivity check failed.
    Checking shared storage accessibility...
    WARNING:
    Unable to determine the sharedness of /dev/sde on nodes:
    rac2,rac2,rac2,rac2,rac2,rac1,rac1,rac1,rac1,rac1
    Shared storage check failed on nodes "rac2,rac1"
    please help me anyone ,it's urgent
    Thanks,
    poorna.
    Edited by: 958010 on 3 Oct, 2012 9:47 PM

    Hello,
    It seems that your storage is not accessible from both the nodes. If you want you can follow these steps to configure 10g RAC on VMware.
    Steps to configure Two Node 10 RAC on RHEL-4
    Remark-1: H/W requirement for RAC
    a) 4 Machines
    1. Node1
    2. Node2
    3. storage
    4. Grid Control
    b) 2 switchs
    c) 6 straight cables
    Remark-2: S/W requirement for RAC
    a) 10g cluserware
    b) 10g database
    Both must have the same version like (10.2.0.1.0)
    Remark-3: RPMs requirement for RAC
    a) all 10g rpms (Better to use RHEL-4 and choose everything option to install all the rpms)
    b) 4 new rpms are required for installations
    1. compat-gcc-7.3-2.96.128.i386.rpm
    2. compat-gcc-c++-7.3-2.96.128.i386.rpm
    3. compat-libstdc++-7.3-2.96.128.i386.rpm
    4. compat-libstdc++-devel-7.3-2.96.128.i386.rpm
    ------------ Start Machine Preparation --------------------
    1. Prepare 3 machines
    i. node1.oracle.com
    etho (192.9.201.183) - for public network
    eht1 (10.0.0.1) - for private n/w
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    ii. node2.oracle.com
    etho (192.9.201.187) - for public network
    eht1 (10.0.0.2) - for private n/w
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    iii. openfiler.oracle.com
    etho (192.9.201.182) - for public network
    gateway (192.9.201.1)
    subnet (255.255.255.0)
    NOTE:-
    -- Here eth0 of all the nodes should be connected by Public N/W using SWITCH-1
    -- eth1 of all the nodes should be connected by Private N/W using SWITCH-2
    2. network Configuration
    #vim /etc/host
    192.9.201.183 node1.oracle.com node1
    192.9.201.187 node2.oracle.com node2
    192.9.201.182 openfiler.oracle.com openfiler
    10.0.0.1 node1-priv.oracle.com node1
    10.0.0.2 node2-priv.oracle.com node2-priv
    192.9.201.184 node1-vip.oracle.com node1-vip
    192.9.201.188 node2-vip.oracle.com node2-vip
    2. Prepare Both the nodes for installation
    a. Set Kernel Parameters (/etc/sysctl.conf)
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000
    net.core.rmem_default = 262144
    net.core.rmem_max = 262144
    net.core.wmem_default = 262144
    net.core.wmem_max = 262144
    b. Configure /etc/security/limits.conf file
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    c. Configure /etc/pam.d/login file
    session required /lib/security/pam_limits.so
    d. Create user and groups on both nodes
    # groupadd oinstall
    # groupadd dba
    # groupadd oper
    # useradd -g oinstall -G dba oracle
    # passwd oracle
    e. Create required directories and set the ownership and permission.
    # mkdir –p /u01/crs1020
    # mkdir –p /u01/app/oracle/product/10.2.0/asm
    # mkdir –p /u01/app/oracle/product/10.2.0/db_1
    # chown –R oracle:oinstall /u01/
    # chmod –R 755 /u01/
    f. Set the environment variables
    $ vi .bash_profile
    ORACLE_BASE=/u01/app/oracle/; export ORACLE_BASE
    ORA_CRS_HOME=/u01/crs1020; export ORA_CRS_HOME
    #LD_ASSUME_KERNEL=2.4.19; export LD_ASSUME_KERNEL
    #LANG=”en_US”; export LANG
    3. storage configuration
    PART-A Open-filer Set-up
    Install openfiler on a machine (Leave 60GB free space on the hdd)
    a) Login to root user
    b) Start iSCSI target service
    # service iscsi-target start
    # chkconfig –level 345 iscsi-target on
    PART –B Configuring Storage on openfiler
    a) From any client machine open the browser and access openfiler console (446 ports).
    https://192.9.201.182:446/
    b) Open system tab and update the local N/W configuration for both nodes with netmask (255.255.255.255).
    c) From the Volume tab click "create a new physical volume group".
    d) From "block Device managemrnt" click on "(/dev/sda)" option under 'edit disk' option.
    e) Under "Create a partition in /dev/sda" section create physical Volume with full size and then click on 'CREATE'.
    f) Then go to the "Volume Section" on the right hand side tab and then click on "Volume groups"
    g) Then under the "Create a new Volume Group" specify the name of the volume group (ex- racvgrp) and click on the check box and then click on "Add Volume Group".
    h) Then go to the "Volume Section" on the right hand side tab and then click on "Add Volumes" and then specify the Volume name (ex- racvol1) and use all space and specify the "Filesytem/Volume type" as ISCSI and then click on CREATE.
    i) Then go to the "Volume Section" on the right hand side tab and then click on "iSCSI Targets" and then click on ADD button to add your Target IQN.
    j) then goto the 'LUN Mapping" and click on "MAP".
    k) then goto the "Network ACL" and allow both node from there and click on UPDATE.
    Note:- To create multiple volumes with openfiler we need to use Multipathing that is quite complex that’s why here we are going for a single volume. Edit the property of each volume and change access to allow.
    f) install iscsi-initiator rpm on both nodes to acces iscsi disk
    #rpm -ivh iscsi-initiator-utils-----------
    g) Make entry in iscsi.conf file about openfiler on both nodes.
    #vim /etc/iscsi.conf (in RHEL-4)
    and in this file you will get a line "#DiscoveryAddress=192.168.1.2" remove comment and specify your storage ip address here.
    OR
    #vim /etc/iscsi/iscsi.conf (in RHEL-5)
    and in this file you will get a line "#ins.address = 192.168.1.2" remove comment and specify your storage ip address here.
    g) #service iscsi restart (on both nodes)
    h) From both Nodes fire this command to access volume of openfiler-
    # iscsiadm -m discovery -t sendtargets -p 192.2.201.182
    i) #service iscsi restart (on both nodes)
    j) #chkconfig –level 345 iscsi on (on both nodes)
    k) make the partition 3 primary and 1 extended and within extended make 11 logical partition
    A. Prepare partitions
    1. #fdisk /dev/sdb
    :e (extended)
    Part No. 1
    First Cylinder:
    Last Cylinder:
    :p
    :n
    :l
    First Cylinder:
    Last Cylinder: +1024M
    2. Note the /dev/sdb* names.
    3. #partprobe
    4. Login as root user on node2 and run partprobe
    B. On node1 login as root user and create following raw devices
    # raw /dev/raw/raw5 /dev/sdb5
    #raw /dev/raw/taw6 /dev/sdb6
    # raw /dev/raw/raw12 /dev/sdb12
    Run ls –l /dev/sdb* and ls –l /dev/raw/raw* to confirm the above
    -Repeat the same thing on node2
    C. On node1 as root user
    # vi .etc/sysconfig/rawdevices
    /dev/raw/raw5 /dev/sdb5
    /dev/raw/raw6 /dev/sdb6
    /dev/raw/raw7 /dev/sdb7
    /dev/raw/raw8 /dev/sdb8
    /dev/raw/raw9 /dev/sdb9
    /dev/raw/raw10 /dev/sdb10
    /dev/raw/raw11 /dev/sdb11
    /dev/raw/raw12 /dev/sdb12
    /dev/raw/raw13 /dev/sdb13
    /dev/raw/raw14 /dev/sdb14
    /dev/raw/raw15 /dev/sdb15
    D. Restart the raw service (# service rawdevices restart)
    #service rawdevices restart
    Assigning devices:
    /dev/raw/raw5 --> /dev/sdb5
    /dev/raw/raw5: bound to major 8, minor 21
    /dev/raw/raw6 --> /dev/sdb6
    /dev/raw/raw6: bound to major 8, minor 22
    /dev/raw/raw7 --> /dev/sdb7
    /dev/raw/raw7: bound to major 8, minor 23
    /dev/raw/raw8 --> /dev/sdb8
    /dev/raw/raw8: bound to major 8, minor 24
    /dev/raw/raw9 --> /dev/sdb9
    /dev/raw/raw9: bound to major 8, minor 25
    /dev/raw/raw10 --> /dev/sdb10
    /dev/raw/raw10: bound to major 8, minor 26
    /dev/raw/raw11 --> /dev/sdb11
    /dev/raw/raw11: bound to major 8, minor 27
    /dev/raw/raw12 --> /dev/sdb12
    /dev/raw/raw12: bound to major 8, minor 28
    /dev/raw/raw13 --> /dev/sdb13
    /dev/raw/raw13: bound to major 8, minor 29
    /dev/raw/raw14 --> /dev/sdb14
    /dev/raw/raw14: bound to major 8, minor 30
    /dev/raw/raw15 --> /dev/sdb15
    /dev/raw/raw15: bound to major 8, minor 31
    done
    E. Repeat the same thing on node2 also
    F. To make these partitions accessible to oracle user fire these commands from both Nodes.
    # chown –R oracle:oinstall /dev/raw/raw*
    # chmod –R 755 /dev/raw/raw*
    F. To make these partitions accessible after restart make these entry on both nodes
    # vi /etc/rc.local
    Chown –R oracle:oinstall /dev/raw/raw*
    Chmod –R 755 /dev/raw/raw*
    4. SSH configuration (User quivalence)
    On node1:- $ssh-keygen –t rsa
    $ssh-keygen –t dsa
    On node2:- $ssh-keygen –t rsa
    $ssh-keygen –t dsa
    On node1:- $cd .ssh
    $cat *.pub>>node1
    On node2:- $cd .ssh
    $cat *.pub>>node2
    On node1:- $scp node1 node2:/home/oracle/.ssh
    On node2:- $scp node2 node2:/home/oracle/.ssh
    On node1:- $cat node*>>authowized_keys
    On node2:- $cat node*>>authowized_keys
    Now test the ssh configuration from both nodes
    $ vim a.sh
    ssh node1 hostname
    ssh node2 hostname
    ssh node1-priv hostname
    ssh node2-priv hostname
    $ chmod +x a.sh
    $./a.sh
    first time you'll have to give the password then it never ask for password
    5. To run cluster verifier
    On node1 :-$cd /…/stage…/cluster…/cluvfy
    $./runcluvfy stage –pre crsinst –n node1,node2
    First time it will ask for four New RPMs but remember install these rpms by double clicking because of dependancy. So better to install these rpms in this order (rpm-3, rpm-4, rpm-1, rpm-2)
    1. compat-gcc-7.3-2.96.128.i386.rpm
    2. compat-gcc-c++-7.3-2.96.128.i386.rpm
    3. compat-libstdc++-7.3-2.96.128.i386.rpm
    4. compat-libstdc++-devel-7.3-2.96.128.i386.rpm
    And again run cluvfy and check that "It should given a clean cheat" then start clusterware installation.

  • Form Level Variable

    I want to declare a form level variable and want to assign a value at WHEN-NEW-FORM-INSTANCE trigger and i want to use the same value in Program units as well as other form level and block level triggers. How to achieve this? Do i need to refer the variable with :Symbol? Thanks!

    Chris,
    There are a couple of ways to do this. As Ammad suggested, you can use a Global variable, but as you point out - Globals are visible to your Forms session unless you destroy the global. You can also use a Parameter as you have done or you can use a Control Block with a block item that will accept the type of data that will be stored in the variable. There are limitations with each of these options however.
    With Globals, all variables are of CHAR datatype and are limited to 4000 bytes in Forms 10g and higher and 255 in Form 9i and lower. Any non-character value stored in a global must be converted back to it's native datatype when you read the value to ensure it is evaluated correctly. When globals are declared, they always reserve the max amount of memory needed to support the 255 or 4000 characters. If you use Globals, it is a good habit to use the Erase() built-in to destroy the Global when you are finished with it. Also with Globals it is possible to get a Runtime error if the Global has not been initialized before you reference it, but will NOT produce a compile time error.
    Parameters and Control Block items are a little more flexible in that you can define the parameter's datatype as CHAR, DATE or NUMBER (check Forms Help for the max datatype values they can store). Parameters and Control block items also have properties which means they take up more memory resources because the properties of these items have to be loaded into memory in addition to the data.
    I would recommend using Parameters over Globals for Forms specific variables because you have greater flexibility with the data types supported, however, I personally prefer to use a Forms Package Specification with Package Variables declared as this more flexible and only allocates the amount of memory needed to support the variable. When I have a situation that requires a variable be visible to the entire form, but doesn't need to be Global to the session, I will create a Package Spec called FORM_VARS in the Program Units node of the Object Navigator and declare the variables I need. I do not create a Package Body. For example:
    PACKAGE FORM_VARS IS
       n_User_ID      NUMBER;
       v_User_Name  VARCHAR2(25);
    END;You then reference the variables the same as you would for any Forms program unit.
    BEGIN
       Forms_Vars.n_User_ID := 1234546;
       Forms_Vars.v_User_Name := 'John Doe';
    END;Hope this helps,
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.
    Edited by: CraigB on Jun 28, 2010 11:17 AM

  • Re: ATP check at storage location level.

    Hi All,
    NEED urgent help.
    I want to know if it is posiible to have ATP check at storage location level only.
    I do not want this check to happen at plant level.
    Please reply.
    Thanks and regards,
    Nilesh

    Hi Shankar,
    Storage location is defaulted in sales order.
    Can you tell me if there is any user exit for ATP wherein I can carry out the ATP at storage location level and not at plant level.
    Thanks and regards,
    Nilesh

  • Availablity check at storage location level in STO

    Hi,
      There is an unique requirement from my client with respect to the Availability check at storage location level in STO
    Process:
      Based  on the inputs from APO we are creating STR for moving the material from one plant to another plant. These STR’s will be converted into STO through ME59N batch job. During STO creation process system will do the availability check and only if stock is available in the issuing plant then only STO will be generated.
    During this availability check the stock will be considered at plant level and not at storage location level.
    Requirement/Scenario:
    Issuing plant contains two storage location ( location A & B).FG stock exists in both the locations.
    Our requirement is system should create separate line items in the STO based on the availability of the stock in the respective storage locations.
    Example
    Total required qty: 1000  of material X
    material X - Stock in Storage location A  : 600
    material X - Stock in Storage location B : 400
    Two separate line item needs to be created in the STO
    Sl no
    Material
    qty
    Issuing storage location
    1
    X
    600
    A
    2
    X
    400
    B
    Is there any function module available for doing Availability check at storage location level so that it can be called in ME59N with the enhancement.
    Please suggest how to achieve this. If any enhancements needs to be done we will do it.
    Thanks & regards,
    Prashanth

    Hi Nilesh,
    in SAP standard the system is always checking on plant level first and then on the storage location level, there is no possibility to change this behaviour.
    I'm also not sure if the process is correct, because if you have also requirements on plant level only then you would create negative ATP if you confirm on storage location level even though there is no ATP on plant level.
    I'm also not aware of a user-exit that would suite your requirement, additionally according to the IMG documentation the user-exits in the availability check area should only be carried out in agreement with SAP.
    Regards,
    Markus

Maybe you are looking for

  • I am gettng Null value for file when i am using a UDF as this

    String FName; DynamicConfiguration Conf = (DynamicConfiguration) container.getTransformationParameters(). get(StreamTransformationConstants.DYNAMIC_CONFIGURATION); DynamicConfigurationKey key = DynamicConfigurationKey.create("http:/"+"/sap.com/xi/XI/

  • Creating a vendor

    Hello, I have a question asked by the purchasing department. When they create a new vendor, could the Goods-receipt-based inv.verif. check and the currency come automatically? as if saved as a variant? If the currency is different, then they'd change

  • Safest Way to Penetration Test an Oracle DB with Potential Data Loss

    Hi, I was wondering what the safest way to protect Oracle from data loss when running a web application scan. We currently have an external company about to perform a web application scan and they warned us of potential data loss. However, we can't a

  • Download to hard drive?

    How do I download to a connected portable hard drive, rather than my MacBook Air hard drive, all TV shows I've purchased?

  • Some items doesnt get copied with header partner

    Hi , I have a issue with an order, where when teh order header partners are redetermined, (ship to), some of the items on the order doesnt get copied with the new ship to. There is a check box at the item partner screen which is been ticked only for