Complementary items to be recorded in SAP.

Is It possible to a have track on the materials which is sent to the parties. These materials are gift items, pen, shaving set etc. These materials are given as complementary to customers.
These materials are purchased using Purchase order, then making GRN and making payment.
After this, these materials are sent to customers, and no entry is recorded in SAP.
Please help in the further entries to proceed in SAP. So that it will be easier to track.

Hi
go to cs01 creating a BOM for free goods material.
after  assign that BOM material in VBN1 & test it.
pls find below  thread
More than 2 Free Goods
Even it is possible to create free goods for 1:n material for inclusive & exclusive for 2 materials.
create a sale order 2 material with diff qty.& free goods for 2 diff qty for inclusive & exclusive
Regards
Raj.

Similar Messages

  • How to create a custom function module with the records in SAP R/3?

    Hi All,
    How to create a custom function module with the records in SAP R/3? Using RFC Adapter I have to fetch the custom function module records.
    Regards
    Sara

    Hi
    goto se37...here u need to create a function group... then u need to create a function module. inside assign import/export parameters. assign tables/exceptions. activate the same. now write ur code within the function module
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db98fc35c111d1829f0000e829fbfe/content.htm
    Look at the below SAP HELP links, These links will show you the way to create a Function Module
    http://help.sap.com/saphelp_nw04/helpdata/en/26/64f623fa8911d386e70000e82011b8/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db98fc35c111d1829f0000e829fbfe/content.htm

  • How to update Records of SAP table from .CSV file

    Hi,
    I have written a code which takes a data from (,) delimited CSV file and adds it into the Internal table.
    Now I want to update the all fields in SAP table with the Internal table.
    I want to use Update statement.
    Update <table Name> SET <field needs to update> WHERE connditon.
    I don't want to iterate through thousand on record in sap table to check the where condition.
    Could you please tell me how to do it.

    Hi. I thing you will not workaround the iterating of the internal table.
    You can pre-load all the records into another internal table
    check lt_csv[] is not initial. " important, otherwise next select would read all records of the table
    select .... into lt_dbitab for all entries in lt_csv where key-fieds = lt_csv-key_fields...
    check sy-subrc eq 0 and lt_dbitab[] is not initial.
    then do in-memory update of the it_dbitab
    loop at it_dbitab assign <fs>.
      read table lt_csv assign <fs_csv> with key ... " lt_csv should be sorted table with key, or you should try to use binary search
      if sy-subrc eq 0.
        ...change required lt_dbitab fields: <fs>-comp = <fs_csv>-comp...
      endif.
    endloop.
    ant then you can do mass-update
    update dbtab from table lt_dbitab.
    From performance view, this solution should be much faster than iterating lt_csv directly and updating every single database record
    Br
    Bohuslav

  • SAPF150D-Dunning Notice Print - With Update of Line Items and Master Record

    When I am running this program SAPF150D(Dunning Notice Print - With Update of Line Items and Master Records) with a variant containing run date, runc id, update mode, pimmed & pcount; the job is failing to execute. It is giving message like,
    "The field symbol is no longer assigned because there was an attempt makde previously in a Unicode program to set the field symbol using ASSIGN with offset and/or length specification. Here, the memory addressed by the offset/length specification was not within the allowed area."
    "GETWA_NOT_ASSIGNED_RANGE" "SAPF150D" or "F150DFS0" "SORTFELDER_ERMITTELN"

    Hi,
    Search for routine FORM SORTFELDER_ERMITTELN
    in SAPF150D.
    Put a breakpoint in statement
    ASSIGN (T047F-FELDN) TO <H1>.
    in above routine and debug to the point where error is occuring.
    Most likely there is a mismatch in the length assigned to some field FELDN in table T047F.
    In that case, simply change the T047F-LENGT field accordingly in change mode.
    Cheers,
    Vikram
    Edited by: Vikram Jalali on May 27, 2008 5:56 PM

  • Pushing BO inbox item to Lotus Notes and SAP Inbox.

    Hi ,
       Can we  Push BO inbox item to Lotus Notes and SAP Inbox. if we do it then how to do it.
      Thanks in Advance.
    Regards,
    Yagyashikha

    Hi,
    well you should ask your Lotus Notes administrator to setup an SMTP gateway on the LotusNotes side for you. I know that this is possible but I have not done it myself before. And since this is an SAP BusinessObjects forum I am not sure you will get an answer about this here.
    Regards
    Stratos
    PS: I found the following link in the internet
    [http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf/89d3962efd85426f85256b870069c0aa/f0e11c47fc62bc2e85256c1d00394ef9?OpenDocument]
    Not sure if this applies to your version though.

  • Setting required to create Business partner record in SAP GTS for the customer who transferred from the SAP ECC system

    Dear Experts,
    Can you please suggest me list of activities require to automatically  create Business partner record in SAP GTS for the customer who transferred from the SAP ECC system .
    i.e If I create the customer master record and transfer the same CMR to SAP GTS , what are the setting requires to maintain in SAP GTS sytem to automatically create the Business partner .
    Ram

    Hi Raghu,
    Below are the main settings required to enable you to transfer Customer Master Data to SAP GTS. Please note that their is a difference between, Customer Master Record and Customer Master Data in terms of data and for GTS, we transfer Customer Master Data. Hence, below are the settings required:-
    In SAP ECC system:-
    Activate the change pointers for Customer Master Data apart from enabling basic connection settings.
    Schedule a job to run at regular intervals to transfer all the customer master data for the available change pointers to the SAP GTS system
      2.  In SAP GTS system:-
    Maintain the Mapping for ECC Customers to SAP GTS Business Partners in the General settings area of the SPRO in SAP GTS system
    Ensure that the Number range is maintained for those GTS  Business Partners.
    Also, some time you may be required to maintain the organisational structure to ensure full working.
    I hope this will be helpful to you.
    Regards,
    Aman

  • How many records does SAP object BAPIE1VARKEY contain

    Hi Folks,
    I have just started learning ABAP.
    And i have following queries in mind.
    how many records does SAP object BAPIE1VARKEY contain?
    regards,
    Nithin

    Going on an interview? Going to try to fool a savvy tech manager?  I hope not...  How about you tell me why the answer is not two?

  • How can  distribute 5 lakhs records from sap R/3 setup tables ?

    How can  distribute 5 lakhs records from sap R/3 setup tables in to multiple  requests in sap BI?

    Hello,
    what is "lakhs" ?
    Please use plain English words on a world wide forum...
    Regards,
    Olivier

  • How to get Value of a item of first record when current record is second

    How to get Value of a item of first record when current record is second in Form6i ?
    get_item_instance_property dose not allow to get value.

    Gerd,
    You're right, there are several other triggers that must be coded, but I was responding to Steve's statement about Inserting or deleting records from the multi-record block. For the record, I use the following to manage a Record Group:
    * When-New-Block-Instance - Initialize the RG
    * block Post-Query - populate the RG
    * When-Create-Record - add new record to RG
    * When-Remove-Record - remove record from RG
    * block When-New-Item-Instance - capture previous value of the item or row
    * When-Validate-Item - Item specific Insert, Update, Delete of values in the RG
    There are a few other places as well, but these are the minimum. It might seem like a lot of code, but then again, I don't use this solution for every multi-line block. Like all tools, you use the right tool for the job. :-)
    Craig...

  • Relation between records and SAP Licenses.??

    Hi Experts
    The Scenario of the issue is as below.
    SAP Licenses held by the company is -- numbers.
    And the employee records including PD(appraisal),PA & OM exceeds the allowed records numbers.
    Qn1 Whats the realtion between SAP license and records ?
    Qn2 How to go about in this scenario?
    Qn3. Should i prioritise the existance of records in appraisals and delete the least priority after consulting the client?anyway OM & PA records should not be deleted.
    Please throw some light on the issue.

    Hi Abhilash,
    As rightly said by Suresh Licence has nothing to do with Records/Employees. Licences are meant for the users who maintain these records in SAP.
    You can have 1000 employees with those many records but can have 1 licence for the user who maintains it.
    Regards
    Uday

  • Creating Purchase Info Record in SAP using JCO

    I am trying to create a Purchase Info Record (ME11) in SAP using the below JCo code:
    It executes without fail and throws no error, but i am not able to get the newly created info record in SAP. In ME13 it says info record not found. Can i know what am i missing?
    I am using these FMs :
    1. ME_INITIALIZE_INFORECORD
    2. ME_DIRECT_INPUT_INFORECORD
    3. ME_POST_INFORECORD
    IFunctionTemplate ft1 = mRepository.getFunctionTemplate("ME_INITIALIZE_INFORECORD");
        JCO.Function function1 = ft1.getFunction();
        mConnection.execute(function1);
        IFunctionTemplate ft = mRepository.getFunctionTemplate("ME_DIRECT_INPUT_INFORECORD");
        JCO.Function function = ft.getFunction();
        JCO.ParameterList importparams =function.getImportParameterList();
        //  Setting HeadData Structure Information
        JCO.Structure headStructure = importparams.getStructure("I_EINA");
        //headStructure.setValue("105","MANDT");
        //headStructure.setValue("5300259768", "INFNR");
        headStructure.setValue("MYPART0006", "MATNR");     
        //headStructure.setValue("MYPART0006", "IDNLF");
        headStructure.setValue("100002","LIFNR");
        headStructure.setValue("10000","MATKL");
        headStructure.setValue("KGS","MEINS");
        headStructure.setValue("1","UMREZ");
        headStructure.setValue("1","UMREN");
        headStructure.setValue("SG","URZLA");
        headStructure.setValue("KGS","LMEIN");
        //headStructure.setValue("0000005300259768","URZZT");
        JCO.Structure headStructure1 = importparams.getStructure("O_EINA");
        //headStructure1.setValue("105","MANDT");
        //headStructure1.setValue("5300259768", "INFNR");
        headStructure1.setValue("MYPART0006", "MATNR");    
        //headStructure1.setValue("MYPART0006", "IDNLF");
        headStructure1.setValue("100002","LIFNR");
        headStructure1.setValue("10000","MATKL");
        headStructure1.setValue("KGS","MEINS");
        headStructure1.setValue("1","UMREZ");
        headStructure1.setValue("1","UMREN");
        headStructure1.setValue("SG","URZLA");
        headStructure1.setValue("KGS","LMEIN");
        //headStructure1.setValue("0000005300259768","URZZT");
        System.out.println("General Data Set");
        JCO.Structure purchaseDataStructure = importparams.getStructure("I_EINE");
        //purchaseDataStructure.setValue("105","MANDT");
        //purchaseDataStructure.setValue("5300259768", "INFNR");
        purchaseDataStructure.setValue("1000","EKORG");
        purchaseDataStructure.setValue("1000", "WERKS");
        purchaseDataStructure.setValue("003","EKGRP");
        purchaseDataStructure.setValue("USD","WAERS");
        purchaseDataStructure.setValue("3","APLFZ");
        purchaseDataStructure.setValue("1","PEINH");
        purchaseDataStructure.setValue("1","BPUMZ");
        purchaseDataStructure.setValue("1","BPUMN");
        purchaseDataStructure.setValue("1000","EFFPR");    
        purchaseDataStructure.setValue("0001","BSTAE");    
        purchaseDataStructure.setValue("100000","NETPR");
        purchaseDataStructure.setValue("X","KZABS");
        JCO.Structure purchaseDataStructure1 = importparams.getStructure("O_EINE");
        //purchaseDataStructure1.setValue("105","MANDT");
        //purchaseDataStructure1.setValue("5300259768", "INFNR");
        purchaseDataStructure1.setValue("1000","EKORG");
        purchaseDataStructure1.setValue("1000", "WERKS");
        purchaseDataStructure1.setValue("003","EKGRP");
        purchaseDataStructure1.setValue("USD","WAERS");
        purchaseDataStructure1.setValue("3","APLFZ");
        purchaseDataStructure1.setValue("1","PEINH");
        purchaseDataStructure1.setValue("1","BPUMZ");
        purchaseDataStructure1.setValue("1","BPUMN");
        purchaseDataStructure1.setValue("1000","EFFPR");       
        purchaseDataStructure1.setValue("0001","BSTAE");       
        purchaseDataStructure1.setValue("100000","NETPR");
        purchaseDataStructure1.setValue("X","KZABS");
        mConnection.execute(function);
        IFunctionTemplate ft2 = mRepository.getFunctionTemplate("ME_POST_INFORECORD");
        JCO.Function function2 = ft2.getFunction();
        JCO.ParameterList importparams2 =function2.getImportParameterList();
        importparams2.setValue("MYPART0006", "I_MATNR");
        importparams2.setValue("MYPART0006", "O_MATNR");
        mConnection.execute(function2);
    Edited by: rs_d123 on Dec 17, 2011 10:46 AM
    Edited by: rs_d123 on Dec 17, 2011 10:46 AM

    If i give this much code then it throws an error
    Exception in thread "main" com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE: Enter Purch. group :
    I have already set the purchase group in the code: EKGRP as 003. Dont know why its still asking for purchase group.
                JCO.Repository mRepository;
             mRepository = new JCO.Repository("SAPConnection", mConnection);
             System.out.println(" Repository Created ");
             IFunctionTemplate ft1 = mRepository.getFunctionTemplate("ZME_INITIALIZE_INFORECORD");
             JCO.Function function1 = ft1.getFunction();
             mConnection.execute(function1);
             IFunctionTemplate ft = mRepository.getFunctionTemplate("ZME_DIRECT_INPUT_INFORECORD");
             JCO.Function function = ft.getFunction();
              JCO.ParameterList importparams =function.getImportParameterList();
              //  Setting HeadData Structure Information
              JCO.Structure headStructure = importparams.getStructure("I_EINA");
              headStructure.setValue("MYPART0006", "MATNR");          
              headStructure.setValue("0000100002","LIFNR");
              headStructure.setValue("000010000","MATKL");
              headStructure.setValue("KGS","MEINS");
              headStructure.setValue("1","UMREZ");
              headStructure.setValue("1","UMREN");
              headStructure.setValue("SG","URZLA");
              headStructure.setValue("KGS","LMEIN");
              System.out.println("General Data Set");
              JCO.Structure purchaseDataStructure = importparams.getStructure("I_EINE");
              purchaseDataStructure.setValue("1000","EKORG");
              purchaseDataStructure.setValue("1000", "WERKS");
              purchaseDataStructure.setValue("003","EKGRP");
              purchaseDataStructure.setValue("USD","WAERS");
              purchaseDataStructure.setValue("1","APLFZ");
              purchaseDataStructure.setValue("1","PEINH");
              purchaseDataStructure.setValue("1","BPUMZ");
              purchaseDataStructure.setValue("1","BPUMN");
              purchaseDataStructure.setValue("1000","EFFPR");          
              purchaseDataStructure.setValue("0001","BSTAE");          
              purchaseDataStructure.setValue("1000","NETPR");
              purchaseDataStructure.setValue("X","KZABS");
              mConnection.execute(function);
             IFunctionTemplate ft2 = mRepository.getFunctionTemplate("ZME_POST_INFORECORD");
             JCO.Function function2 = ft2.getFunction();
              JCO.ParameterList importparams2 =function2.getImportParameterList();
              importparams2.setValue("MYPART0006", "I_MATNR");     
              mConnection.execute(function2);
              System.out.println("Execution Completed");
    Edited by: rs_d123 on Dec 19, 2011 9:04 AM

  • Automated way to update PIR records in SAP via an uploadable CSV file

    HI,
      Can we get in place an automated way to update PIR records in SAP via an uploadabel CSV file. Right now we have to manually update PIRs by going into ME12 and updating the pricing and PIR timing manually.If anyone hassuggestions of how to go about it please do pool in here. Do we have BAPI related to this ?
    Thanks,
    Sindhu.

    I woudl suggest you check ORDERS05 IDOC type (ORDCHG message type).
    FM - idoc_input_ordchg

  • Mass delete records in SAP

    Hi,
    I am just wondering if anyone can tell me how to mass delete the record in SAP. I mistakenly uploaded like 500 values in a wrong table and want to delete them.
    Thank you in advance,
    Sunny

    Hi,
    If u want to delete records in ZTEST table.
    Then u can do as
    Select * from ztest into table i_ztest.
    if sy-subrc = 0.
    Delete ztest from TABLE i_ztest.
    endif.
    Or if u have any dtae field in the table can do as
    TABLES SBOOK.
    DELETE FROM SBOOK WHERE CARRID = 'LH'      
    similarly u can give the where conditon with the specified date.
    Do a COMMIT after u delete.
    Also check
    http://help.sap.com/saphelp_46c/helpdata/en/7e/c81e1f52c511d182c50000e829fbfe/frameset.htm
    http://www.sapdevelopment.co.uk/abap/bypass/bp_updtable.htm
    Thanks & Regards,
    Judith.

  • Append variable and array items after a record array search

    I would like to update a variable and array item after a record array search, and wanted to know what would be the best way of carrying it out in Javascript.
    In this case, if a match is found between the variable and area item, then the postcode item should be appended to the variable.
    The same needs to be done for the array items, but I reckon that a for loop would work best in this scenario, as each individual item would need to be accessed somehow.
    Btw due to the nature of my program, there will always be a match. Furthermore, I need to be able to distinguish between the singleAddress and multipleAddresses variables.
    Hopefully this code explains things better:
    // before search
    var singleAddress = "Mount Farm";
    var multipleAddresses = ["Elfield Park", "Far Bletchley", "Medbourne", "Brickfields"];
    // this is the record which the search needs to be run against
    plot = [{
    postcode: "MK1",
    area: "Denbigh, Mount Farm",
    postcode: "MK2",
    area: "Brickfields, Central Bletchley, Fenny Stratford, Water Eaton"
    postcode: "MK3",
    area: "Church Green, Far Bletchley, Old Bletchley, West Bletchley",
    postcode: "MK4",
    area: "Emerson Valley, Furzton, Kingsmead, Shenley Brook End, Snelshall West, Tattenhoe, Tattenhoe Park, Westcroft, Whaddon, Woodhill",
    postcode: "MK5",
    area: "Crownhill, Elfield Park, Grange Farm, Oakhill, Knowlhill, Loughton, Medbourne, Shenley Brook End, Shenley Church End, Shenley Lodge, Shenley Wood",
    // after search is run then:
    // var singleAddress = "Mount Farm, MK1"
    // var multipleAddresses = ["Elfield Park, MK5", "Far Bletchley, MK3", "Medbourne, MK5", "Brickfields, MK2"]
    Fiddle here

    I would like to update a variable and array item after a record array search, and wanted to know what would be the best way of carrying it out in Javascript.
    In this case, if a match is found between the variable and area item, then the postcode item should be appended to the variable.
    The same needs to be done for the array items, but I reckon that a for loop would work best in this scenario, as each individual item would need to be accessed somehow.
    Btw due to the nature of my program, there will always be a match. Furthermore, I need to be able to distinguish between the singleAddress and multipleAddresses variables.
    Hopefully this code explains things better:
    // before search
    var singleAddress = "Mount Farm";
    var multipleAddresses = ["Elfield Park", "Far Bletchley", "Medbourne", "Brickfields"];
    // this is the record which the search needs to be run against
    plot = [{
    postcode: "MK1",
    area: "Denbigh, Mount Farm",
    postcode: "MK2",
    area: "Brickfields, Central Bletchley, Fenny Stratford, Water Eaton"
    postcode: "MK3",
    area: "Church Green, Far Bletchley, Old Bletchley, West Bletchley",
    postcode: "MK4",
    area: "Emerson Valley, Furzton, Kingsmead, Shenley Brook End, Snelshall West, Tattenhoe, Tattenhoe Park, Westcroft, Whaddon, Woodhill",
    postcode: "MK5",
    area: "Crownhill, Elfield Park, Grange Farm, Oakhill, Knowlhill, Loughton, Medbourne, Shenley Brook End, Shenley Church End, Shenley Lodge, Shenley Wood",
    // after search is run then:
    // var singleAddress = "Mount Farm, MK1"
    // var multipleAddresses = ["Elfield Park, MK5", "Far Bletchley, MK3", "Medbourne, MK5", "Brickfields, MK2"]
    Fiddle here

  • Biometric time recording into sap

    hi,
      Can anyone please tell me how to upload external biometric time recording into sap and into which infotype and how.
    Thanks
    raju

    Hi Kosuru,
    this is easy: Just  upload the external biometric time recording into sap and respective infotype.
    Regards,
    Clemens
    Note: Generic questions deserve generic answers. Anything more is 'consulting issue'

Maybe you are looking for