SC-Sourcing getting contracts based on category_id?

Hi,
In SC-Sourcing, by default it is selecting contracts based on ORDERED_PROD,PRODUCT (material no).
But I want to implement search logic to get contracts based on  CATEGORY_ID.
All the contracts related to this category_id I want to get that contracts.
Can any one give idea how I can get this?
I tried to implement BADI -BBP_SOS_BADI
Method -BBP_SOS_SEARCH
I tried to use the FM - BBP_PD_INDEX_FIND and pass the contracts to the BADI but it is not working.
Did anyone worked on this method, please let me know how to get the complete contracts info and sending back to BADI?
Thanks in advance.

Hi,
please see the answer:
SC-Sourcing getting contracts based on category_id? BADI-bbp_sos_Badi?
Regards,
Peter

Similar Messages

  • SC-Sourcing getting contracts based on category_id? BADI-bbp_sos_Badi?

    Hi,
    In Shopping Cart-Sourcing, by default it is selecting contracts based on ORDERED_PROD,PRODUCT (material no).
    But I want to implement search logic to get contracts based on CATEGORY_ID.
    All the contracts related to this category_id I want to get that contracts.
    Can any one give idea how I can get this?
    I tried to implement BADI -BBP_SOS_BADI
    Method -BBP_SOS_SEARCH
    I tried to use the FM - BBP_PD_INDEX_FIND and pass the contracts to the BADI but it is not working.
    Did anyone worked on this method, please let me know how to get the complete contracts info and sending back to BADI?
    Thanks in advance.

    Hi,
    there is one open point for me in your question. Would you like to search:
    1) only for product category contracts (which don't have product ID)
    2) for contracts, which category equals to the category ID of the SC item (practically also contracts should appear, which have from the SC items product ID different product ID)
    For the first case you only need to modificate the coding in the form SOS_LOCAL_CALL_PD (LBBP_SC_APPF87):
    Kontext-Block                                          
      else.                                                
        clear ev_error.                                    
    *   Delete heade contract from the SOS                 
    Delete-Block                                           
        DELETE et_con_list WHERE ctr_item_number = space.  
    Insert-Block                                           
    *    DELETE et_con_list WHERE ctr_item_number = space. 
    With this change in addition to the ORDERED_PROD search also product category contracts will be found.
    Regards,
    Peter

  • Sourcing Consecutive Contracts based on Quantity

    Hello,  we purchase product in large blocks of quantity.  For example, 100 EA on agreement A, which will be received on multiple (small) receipts before moving to agreement B.
    Until now, we've handled this with simple purchase orders, using multiple delivery schedule lines.  However this approach does not work well with MRP.  The best MRP can do is suggest reschedule the entire quantity in / out.
    We'd prefer to use MK contracts instead.  The problem with this approach is that the source list is based on date only - not quantity.  It will not automatically ensure that all of contract A is used before contract B.  If demand changes, we could find ourselves sourcing from B while A still has quantity left to receive.
    Is there a standard SAP solution to automatically consume ALL of a target quantity on one contract before moving to the next?
    Thanks!

    Hi,
    The following are the points to get noted.
    1.SAP allows number of contracts to get created for the same vendor / material but with a validity date.
    2.while relesing the Contract release orders system will provide a warning message if the qty exceeds.
    3.Schedule lines in the aggrement also ( SA) can be subjected to MRP.
    4.In the source list also you can block a vendor/fix a vendor and make the source list source relevant for MRP.
    but before using the master data , we should have the policy that we must relese the CROs if ane aggrement is finished.
    what i under stood from your query is even though the qty still not received, you may need to use the second OA.If so what about the price?
    your query of 3rd para:
    We'd prefer to use MK contracts instead. The problem with this approach is that the source list is based on date only - not quantity. It will not automatically ensure that all of contract A is used before contract B. If demand changes, we could find ourselves sourcing from B while A still has quantity left to receive.
    Do you mean to ask is there any std functionality ,like system to suggest the source from only one agreement?Here the question to be noted is does the second agreement is with diff vendor or same vendor .If it is for a diff vendor have you tried the source list changing of the vendor fixed option time to time?
    Regards,

  • Renewed my Contract Based on Misinformation From Verizon Reps-Any Recourse to Get Out of Contract?

    A few months ago (February or so) I renewed my contract with Verizon and got an iPhone 4S as my previous HTC phone up and died. I knew I was going to be moving to Canada for awhile and so I made sure to ask a lot of questions about their Nationwide+Canada plan and what phones would work in Canada before making any plan or phone purchases. From that point on I was fed different information from every rep I talked to in store, online via chat, and via e-mail. The online rep told me that CDMA phones wouldn't work in Canada so I had to get the iPhone 4S rather than the Galaxy Nexus, which was the phone I was originally interested in. Found out later that's not true—CDMA phones do work in Canada (at least in the part I'll be in; there are some more rural areas where they don't work). That rep also told me that my grandfathered-in unlimited data plan would work in Canada and all I had to do was pay an extra $20/month to get voice and texting coverage in Canada. So, I got the iPhone in the store and renewed my contract based on the information the rep gave me.
    Came to find out later that you need a separate global data plan to get 3G coverage in Canada, which is $25 for a nearly useless 100MB. This isn't made clear at all on the Verizon website for the Nationwide+Canada plan, and I complained about this plus the misinformation I received from the in-store rep, and all Verizon had to say was, "Sorry, but thanks for being a customer." When the time came to actually go to Canada, I switched to the Nationwide+Canada plan to get voice coverage for the time I was there, which I did in a different Verizon store. The rep in that store told me when I signed up that if I used more than a certain percentage of my minutes in Canada vs. the U.S., Verizon would cancel my plan, which is also not mentioned on the website anywhere that I found. She also said that I couldn't suspend my account for the entire time I'd be in Canada because it's longer than their suspension limits, although she admitted she didn't know how long the limit was off the top of her head and I couldn't find an exact number on the Verizon website.
    So, I was fed a bunch of conflicting information from multiple Verizon reps that led me to renewing my contract. Do I have any recourse to get out of it? I'm really disappointed because I've never had trouble with Verizon until now.

    Apparently I'm not the only person who's been fed conflicting information from various Verizon reps when it comes to coverage in Canada: https://community.verizonwireless.com/message/237079#237079
    When I initially e-mailed Verizon about this issue, I told them that if their own employees don't understand what the company offers, then how are the customers supposed to understand?
    It just doesn't seem right to have to pay the ETF when I only renewed my contract because I was given incorrect information by more than one rep. If I'd been given the correct information, I wouldn't have gotten a new phone that required a new 2-year contract.

  • Cancelled contract lines are populating in the SR form's subject tab when clicking on 'Get Contracts' button

    Cancelled contract lines are populating in the SR form's subject tab when clicking on 'Get Contracts' button. But user says, it should not be populated. What could be the reason? Please suggest.
    I have told the user :
    "In the case of a renewed contract, if the service request is logged during the effectivity of the original contract (which is now Expired), the original contract will be retrieved. If the service request is logged during the effectivity of the renewal contract then only the renewal contract will be retrieved.
      Contract Entitlement on Subject tab is based on Contract Start and End dates. All the contracts i.e. expired, active, cancelled will appear until the end date. As we can see the contract ES-10165 is end dated on 09-DEC-2014, hence it will appear on the subject tab as per the functionality."
    But the User is saying:
    "Contract coverage is clear to be based on dates, and that is quite clear to me as well… the problem comes with the different statuses.
    A SR can be associated to an “EXPIRED” contract line because the SR creation date could be falling between coverage line start and end dates, but can never be related to a “CANCELLED” line.
    This “CANCELLED” status means that the line is not valid for the contract, so if it is not valid for a contract, it is not valid for referencing a job…and this is only creating wrong costs associations."

    Hi Sudhakar,
    Drop inline message components for each of the textFields and the textArea and then run the application. You could also use a message list component but inline message components for each of the input components would give you a clear idea if any errors are occuring. In case any such errors are indeed occuring then the situation can be analysed further.
    Hope this helps
    Cheers
    Giri :-)

  • In the source list contract Number is  not showing up.

    On 10.11.2010
    we added this Material 2211583 to contract 4600000149.
    When we do display source list it is still not showing up.
    Contract  4600000149  Validity Start  04.02.2008   Validity End    31.12.2009
    We have changed validity End date for Contract to 31.12.2010;even then it is not showing up in source list
    Is there any possibility to get Contract number in the source list
    Thanks in advance
    SAP MM

    what did you do to get the contract into the source list for this item?
    it does not create a source list item by itself, only because you entered the item in a contract.
    You can either create the source list entry from the contract via menu. or you have to enter the contract manually  in ME01 or you generate the source list with ME05

  • Can't get version based downloads to work

    I am new to JNLP and trying to get version based downloads to work. I have read everything I can find, but I still seem to be missing something. My setup:
    Tomcat 4.1.18 (running in JDK 1.4.0)
    Java WebStart 1.2
    Win 2k
    files in .war
    -launch.jnlp
    -+1.0
    |-testapp.jar
    |-version.xml
    -+images
    |-Save.gif
    -+META-INF
    |-MANIFEST.MF
    -+WEB-INF
    |-+lib
    | |-jnlp-servlet.jar
    |-web.xmllaunch.jnlp
    TS: 2002-04-23 19:21:05
    <?xml version="1.0" encoding="UTF-8"?>
    <jnlp codebase="$$codebase" href="$$name">
       <information>
          <title>ljtest 1</title>
          <vendor>Lance</vendor>
          <description>just an example</description>
          <icon href="images/Save.gif"/>
       </information>
       <resources>
          <j2se version="1.2+"/>
          <jar href="1.0/testapp.jar" version="1.0"/>
       </resources>
       <application-desc main-class="Main"/>
    </jnlp>version.xml
    <jnlp-versions>
       <resource>
          <pattern>
             <name>testapp.jar</name>
             <version-id>1.0</version-id>
          </pattern>
          <file>testapp.jar</file>
       </resource>
    </jnlp-versions>web.xml
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
        "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
      <web-app>
         <servlet>
            <servlet-name>JnlpDownloadServlet</servlet-name>
            <servlet-class>com.sun.javaws.servlet.JnlpDownloadServlet</servlet-class>
            <init-param>
               <param-name>logLevel</param-name>
               <param-value>DEBUG</param-value>
            </init-param>
         </servlet>
         <servlet-mapping>
            <servlet-name>JnlpDownloadServlet</servlet-name>
            <url-pattern>*.jnlp</url-pattern>
         </servlet-mapping>
      </web-app>Things I have discovered (possibly in error?):
    1) I do not need to include the jaxp.jar and parser.jar files because I am using JDK 1.4
    2) I do not need to change my testapp.jar to testapp_V1.0.jar because I have included the the version.xml file in the 1.0 directory
    I keep getting the following error in WebStart when I loadup the jnlp:
    JNLPException[category: Download Error : Exception: null : LaunchDesc: null ]
         at com.sun.javaws.cache.DownloadProtocol.doDownload(Unknown Source)
         at com.sun.javaws.cache.DownloadProtocol.getDownloadSize(Unknown Source)I can get everything to work without version based downloads. Does anyone have any clue what I am doing wrong?
    Lance

    I found my own error. After loading up sun's reference implementation server in NetBean's debugger I noticed that it was only handling .jnlp files. Going back to the "Packaging JNLP Applications in a Web Archive" document I found my mistake. My web.xml files should have looked like this.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
        "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
      <web-app>
         <servlet>
            <servlet-name>JnlpDownloadServlet</servlet-name>
            <servlet-class>com.sun.javaws.servlet.JnlpDownloadServlet</servlet-class>
            <init-param>
               <param-name>logLevel</param-name>
               <param-value>DEBUG</param-value>
            </init-param>
         </servlet>
         <servlet-mapping>
            <servlet-name>JnlpDownloadServlet</servlet-name>
            <url-pattern>*</url-pattern>
         </servlet-mapping>
      </web-app>The difference being the <url-pattern> tag. It now tells the web server to handle all files not just .jnlp.
    This allowed me to download version based jnlp entries. I still can't get jarDiff things to work, but I will keep banging my head against the wall till I figure that out.
    Lance

  • Select Contracts based on Ship-to Party

    Hi all,
    I have created two contracts of type ZCQ (VA41) with the following soldto and shipto party values.
    Contract 1: soldto1, shipto1
    Contract 2: soldto1, shipto2
    <b>Now I need to retrieve contracts, based on a search criteria consisting of Sold-to party and Ship-to party. i.e If I enter soldto1 and shipto1 I need to get back Contract 1 and if I enter soldto1 and shipto2 i need to get back contract 2.</b>
    Which is the field that I need to use to search for the Ship to value?
    Right now I am selecting based on VBAK-KUNNR for Sold to party. But am not able to figure out where the Ship to party value will be stored during the contract creation. So now my query returns both the contracts, no matter what the value of Ship to search field is
    Any pointers regarding this ( table, field, logic) would be really helpful.
    Thanks and Regards,
    Reena

    "See u are maintaining ship to party for the Contracts . so what table it is storing in "
    This is exactly what Im trying to figure out.
    I am creating contracts using VA41 for a particular value of soldto party and shipto party.
    After I craete the contracts, I am trying to retrieve these contracts based on the soldto and ship to party values that I had entered. Now, I dont know where the ship-to party is getting stored. 
    I am not making any mapping for the ship to party. I am currently trying with just VBAK and VBAP, since I dont know if I should use any other table.
    Data that I have in hand: Sold to Party, Ship to Party and Auart (ZCQ).
    Example to make it more clear
    Contract1: Soldto Party - 100042, Shipto Party - 100042
    Contract2: Soldto Party- 100042, Shipto Party - 100055
    Auart - ZCQ for both
    Now in my input parameters, when I eneter 100042 for soldto party and 100042 for ship tp party, i get back contract1 and contract2. But I just want contract 1.
    Similarly for the second scenario.
    Hope I have not confused you. Any help will be greatly appreciated.
    Thanks and Regards,
    Reena

  • How to get Contract Account Number in Service Ticket

    Hi Experts,
    How to get Contract account number in Service Ticket, we are working in ISU environment. when i create the service ticket the contract account number is there in Business agreement number field in service tiket.
    Can anyone tell me how to retrieve that field.
    Answer will be appreciated.
    Praveen

    check tables tfk_buag_ref and fkkvkp

  • Part Time, Contract Based, and Full Time Positions available for LabVIEW Developers

    Mindready (www.mindready.com) is looking for flexible, hard working individuals to fill part time, contract based, and full-time/permanent jobs in LabVIEW development positions. We have immediate needs for contract labor in Dallas, TX; NY; Huntsville, AL and Austin, TX, as well as other locations.  US Citizen and Security Clearance required on some projects.   Mindready is a certified National Instruments Alliance Partner with facilities in Montreal, Austin, TX and (Radical Systems, Inc. – a mindready company) Huntsville, AL (www.radicalsystems.com).
    The duties of the positions include:
    • On and off-site LabVIEW development work.  May involve TestStand, instrumentation such as PXI and stand alone instruments, DAQ, Motion, Vision, etc.)
    • Willingness to travel for periods as short as 2-3 days, to as long as 6 months.  (Ideal candidate would be local to any long assignment)
    • Integrate into customer’s development team to design and modify new/existing LabVIEW applications. 
    The ideal candidate would possess the following skills & qualifications:
    • Intermediate-to-advanced knowledge of LabVIEW (a pre-employment test is required)
    • Broad technical knowledge is a plus, we serve a wide range of application areas
    • Excellent writing, communication (English), time-management, and interpersonal skills.
    • Ability to travel for on-site work at customer facilities for jobs as short as 1 week, possibly as long as 6 months.
    • Discipline and organization with respect to software development and maintenance.
    • Engineering, Technical or Computer Science degree or appropriate experience
    • Certification is not required but would be beneficial
    Pay is commensurate with skills and qualifications of the applicant.  Compensation will include a competitive hourly rate.

    Hi
    I completed my M.S in electronics engineering and working with GE in INDIA since June 2005. I have total 20 months of experience with LabVIEW and have the follwoing skills.
    Intermediate-to-advanced knowledge of LabVIEW.
    Ability to analyze empirical data against theoretical predictions to enhance and improve mathematical model of system.
    Familiarity with data acquisition concepts and hardware.
    Ability to work both alone and with colleagues to solve problems and to weigh the merits of differing approaches
    you can reach me at [email protected]
    Thanks & Regards
    Anil Punnam

  • Contracts based on Material Groups....

    Can we create Contracts based on material Group?
    Like We want to create a contract for Material Group Casting. We want to negotiate terms for Material Group & then procure the part.
    How do we do this?
    Thanks Anupam

    Create a Quantiy Contract with Item Category 'M'- Material Unknown.
    Then create PO refering to this contract.
    System asks for material number or AAC. It also checks the material group against the one in the contract.
    By defaut a warning message is issued if material groups do not match (message MEPO074).
    This can be set to 'E' in customising but SAP gives a warning when you trying to set this message as error.
    Customising path: SPRO>MM>Purchasing>Environment>Define attributes of system messages.
    It is also possible to code this check in PO user exit and issue a custom message.

  • F.M or Table to get contract cancellation date in CRM

    Hi,
      Can you please let me know, where contract cancellation date would be available or stored n table or FM..
    I have header GUID of contract, to which table or FM need to pass to get contract cancellation date.
    crm_order_read function module is also not able to give the cancellation date.
    Regards
    Badari

    HI using this methods u can create dynamic internal tables,
      CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE
        EXPORTING
          IT_FIELDCATALOG = FIELD_CATALOG
        IMPORTING
          EP_TABLE        = GFINAL.
      ASSIGN GFINAL->* TO <GFINAL>.
      CREATE DATA WFINAL LIKE LINE OF <GFINAL>.
      ASSIGN WFINAL->* TO <WFINAL>.
    Please let me know once the requirement clearly , is the fm or Method importing parameter is internal table , corresponding to that
    internal table you need to fetch data from data base.
    In general , field symbols holds some memory in memory area , I think just like pointers in C language , this holds address only , there we dynamically assign some structure .
    Let me know once if u not cleared ,
    Regards
    Siva

  • How to get PERNR based on user ID

    Hi All,
    How to get PERNR based on userid.
    please help me in resolving this.
    Thanks for the support.
    Regards,
    Dhananjaya R E

    hope this will help u
    DATA:   t_pernr LIKE pa0105-pernr,
              t_email LIKE pa0105-usrid_long.
    STEP 1 - Find personnel number for UNAME
       SELECT SINGLE pernr
                 INTO t_pernr
                 FROM pa0105
               WHERE subty = '0001'
              AND endda >= sy-datum
             AND begda <= sy-datum
             AND usrid = p_uname.
    Employee record found*
    IF sy-subrc = 0.
    STEP 2 - Find email address for personnel number*
    SELECT SINGLE usrid_long
             INTO t_email
             FROM pa0105
            WHERE pernr = t_pernr
              AND subty = '0022'
              AND endda >= sy-datum
              AND begda <= sy-datum.

  • Method to get contract document type in prephase

    Hi All,
    Which method can be used to get contract document type in prephase change script?
    How to find these methods?
    Regards,
    Prabhat

    Hi
    getDocTypeReference() will get you the reference type of contract doc. Use this reference ID to locate the Home API and find the contract type using findUniqueReferenceByName()
    Regards
    Mudit Saini

  • BP and Contract based on MR Reason

    Hi All,
       I need to find out Business partner and contract based on MR reason for specific instalation(anlage) and document number (ablbelnr).Please let me know if there is any FM which provide the same data or any other way to figure it out.
    Thanks,
    Ruchi

    using three tables you can fetch this data ( I m not sure abt FM)
    1. table EABLG -> input - MR reason for specific instalation(anlage) and document number (ablbelnr)
                                  output- take shedule meter reading date date... adatsoll (to identify the correct contract
    2. table EVER -> input - installation where movein date <= adatsoll <= move out date
                               output -  contract and contract account
    3. table FKKVKP-> input - contract account
                                  output - BP
    Regards,
    Sanjoy

Maybe you are looking for