New Sample Code: Querying techniques, integration events, book assignment

We have just posted a new CRM On Demand Web Services code sample to Oracle Sample Code. This sample uses a combination of WS v1.0 and WS v2.0 to demonstrate advanced samples like querying techniques, processing integration events, and book assignment.
The sample is written using .Net framework 1.1 and VS studio 2003. Users will need to have Microsoft .NET (.Net Framework 1.1) installed on their machine.
<a title="Click here" href="https://codesamples.samplecode.oracle.com/servlets/Scarab/action/ExecuteQuery?query=crm_on_demand" target="_blank">Click here</a> to go to the CRM On Demand code samples. Look for Artifact ID S517, Advanced WS Techniques (in .NET Framework 1.1)

I found some examples in the Web Services Resource Library.
you can access this through the "Training and Support" link from within CRM OD.
Then click on "Web Services Library" then download the Getting Started kits
Edited by: user10730659 on 20/01/2009 16:11

Similar Messages

  • Query Regarding Integration Event

    I have a scenario where i have to create an opportunity team based on the data that user enters in oppportunity and it has to be done when new record is saved in opportunity object.
    We cannot use out of box workflow functionality in this scenario so in this case i have opted to use integration event in the workflow.
    I have planeed to develop a windows service which will timelly read the INtegration Event queue and will fetch the lastEventID using INtegrationservice.
    PLease let me know if this approach is correct or not.
    I am also facing another isssue.
    In one of my test application i am trying to fetch the last event ID using the integrationservice.I am hitting the particular event where my workflow is registered but still i am not able to get the lasteventId.
    Please let me know if I am missing something
    Thanks In Advance!!
    -Mitesh

    If all of your event cases will be the same except for the array constant, turn all of that inside a subVI and put it outside of your event structure.  The idea here is that the event structure just passes out the data to send.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Sample code to call web dympro from event

    Hi.
    I have a web dympro form. I want to call this form with dynamic url to which I want to pass parameter transaction_id. For example url http://www.zzz.com&transaction_id=7712
    I created new button and event in component from which i want to make a call. Now i want to know if someone has a sample code which would from event call this dynamic url.
    Thanks in advance.

    hi,
    see below thread ,  may be it helps.
    Re: Start dynamic URL from CRM Opportunity

  • How to create a database for sample code from Tutorial/Book?

    I want to try out the sample code from [http://shop.oreilly.com/product/0636920013471.do] for the book SQL Pocket Guide 3rd Ed.
    I have downloaded the oracle vm/appliance for oracle 11g2 and I have started sqlplus as sysdba.
    I'm feeling overwhelmed with these links describing how to create a database:
    [http://www.adp-gmbh.ch/ora/admin/creatingdbmanually.html]
    [http://tldp.org/HOWTO/Oracle-7-HOWTO-3.html]
    [http://www.adp-gmbh.ch/ora/admin/creatingdbmanually.html]
    (1) What is the command to list the existing databases?
    (2) What is the command to delete an existing database?
    (3) When creating a new database with the create database command, is it necessary to specify the logfile, character set, national character set, datafile, sysaux datafile, undo tablespace, temp table space? Do these have reasonable defaults? I'm not sure what proper directories are to specify for Linux and the examples are for windows.
    Can someone give me a simplified create database command to create a database called 3rdEdPocketGuide? Should I follow the example at [http://tldp.org/HOWTO/Oracle-7-HOWTO-3.html] and instead of orcl use 3rdEdPocketGuide?
    (4) What command do I use to execute the script that comes with the book SQL Pocket Guide 3rd Ed? This is the script that has all the drop table, create table and insert commands in it.
    (5) What command do I use in sqlplus to set the current default database prior to running this script? Perhaps this is the connect command? I don't want my script to create tables in the system database.
    (6) I tried the command "connect 3rdEdPocketGuide" and it prompted for a password! Yikes! What password? Do I need to specify a password when I create a database? I cannot tell if I have successfully created such a database or it is just prompting me for a password to thwart malicious users. Is it is possible to create databases which don't require a password or maybe a zero length password?
    Thanks
    Siegfried
    Edited by: user8816970 on Sep 26, 2012 12:01 PM
    Edited by: user8816970 on Sep 26, 2012 12:18 PM

    user8816970 wrote:
    Paul,
    Thanks! I tried changing my profile name to siegfried but I'm not seeing the change...
    Anyway, I'm trying your suggestion to use SQL Developer which was already installed in the virtual box appliance and I cannot figure out how to get a connection.
    When I use the defaults of sid=xe, port=1521, hostname=localhost and specify
    username=sysdba
    password=
    I get status: failure - test failed: listener refursed connection with the following error: ORA 12505, TNS: listener does not current know of sid given.
    So I try sid=orcl and that works better: status: failure - test failed: ORA-01017: invalid username/passowrd; login denied
    OK, sqlplus let me in with out a password, why does not this work?
    So I try checking the box for "OS Authentication" and I get the same error!
    Hoek: I tried searching the documentation and found "3 Exploring Oracle Database with SQL Developer" at http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/toc.htm but following those directions did not help. Can you be more specific? The directions were for a tutorial and I need to know what the passwords are for the database set up with [http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html|http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html] . I also found [http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/tdddg_connecting.htm#CEGHFHIG|http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/tdddg_connecting.htm#CEGHFHIG] but that did not help either.
    Everyone:
    Do I need to create a user using SQL*Plus first so I can login with "Oracle SQL Developer" so I create my database called? What would be the "create user" command I would execute?
    OK, so I run sqlplus and issue these commands
    create user siegfried identified by abc ;
    grant connect to siegfried ;
    connect siegfried/abc;
    Now, how do I create a database? In Microsoft SQL Server one has to create a database first and if you just start creating tables without creating a database first, the tables will be created in the system database and this is usually undesirable.
    Sometimes a database is known in the java connection string as the catalog. Is there any such analog in oracle SQL plus?
    So now what do I do? I want to create a bunch of tables using my script I downloaded from 3rd Ed SQL Pocket Guide. Does my new user "siegfried" have the right to create tables? I guess I could try but I don't want to create tables in the system database.
    I noticed I can also use "Oracle SQL Developer" to connect with my new "siegfried" account. It seems that I should have been able to connect with sysdba... strange.
    So now I am connected in the "Oracle SQL Developer" and I see no list of databases.
    Thanks!
    Siegfried
    >Paul,
    Thanks! I tried changing my profile name to siegfried but I'm not seeing the change...
    Anyway, I'm trying your suggestion to use SQL Developer which was already installed in the virtual box appliance and I cannot figure out how to get a connection.
    When I use the defaults of sid=xe, port=1521, hostname=localhost and specify
    username=sysdba
    password=
    I get status: failure - test failed: listener refursed connection with the following error: ORA 12505, TNS: listener does not current know of sid given.
    So I try sid=orcl and that works better: status: failure - test failed: ORA-01017: invalid username/passowrd; login denied
    OK, sqlplus let me in with out a password, why does not this work?
    So I try checking the box for "OS Authentication" and I get the same error!
    Hoek: I tried searching the documentation and found "3 Exploring Oracle Database with SQL Developer" at http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/toc.htm but following those directions did not help. Can you be more specific? The directions were for a tutorial and I need to know what the passwords are for the database set up with [http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html|http://www.oracle.com/technetwork/database/enterprise-edition/databaseappdev-vm-161299.html] . I also found [http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/tdddg_connecting.htm#CEGHFHIG|http://docs.oracle.com/cd/E11882_01/appdev.112/e10766/tdddg_connecting.htm#CEGHFHIG] but that did not help either.
    Everyone:
    Do I need to create a user using SQL*Plus first so I can login with "Oracle SQL Developer" so I create my database called? What would be the "create user" command I would execute?
    OK, so I run sqlplus and issue these commands
    create user siegfried identified by abc ;
    grant connect to siegfried ;
    connect siegfried/abc;
    above does NOT use SQL*Net to connect to the instance
    >
    Now, how do I create a database? In Microsoft SQL Server one has to create a database first and if you just start creating tables without creating a database first, the tables will be created in the system database and this is usually undesirable.
    Sometimes a database is known in the java connection string as the catalog. Is there any such analog in oracle SQL plus?
    So now what do I do? I want to create a bunch of tables using my script I downloaded from 3rd Ed SQL Pocket Guide. Does my new user "siegfried" have the right to create tables? I guess I could try but I don't want to create tables in the system database.
    I noticed I can also use "Oracle SQL Developer" to connect with my new "siegfried" account. It seems that I should have been able to connect with sysdba... strange.
    So now I am connected in the "Oracle SQL Developer" and I see no list of databases.SQL Developer can only connect to the instance via SQL*Net
    >
    Thanks!
    Siegfrieda database in SQL Server is same as schema/user in Oracle

  • Oracle Text query parser - sample code

    I've posted a new entry on my "searchtech" blog which includes code for a "Google-like" query syntax parser:
    https://blogs.oracle.com/searchtech/entry/oracle_text_query_parser
    Currently it's just sample code, but if it goes down well we might include it, or something similar, in a future release of the product.
    I'd very much welcome feedback on it, either here on the forum, or on the blog, or directly to me email address (which is included in the download file).
    Thanks, everyone.

    When I select the "open in browser" option for each now, I get formatted, readable code, which can easily be copied and pasted into a file without the extra txt extension, and I much prefer that. So, for me, that is a sufficient fix.
    It seems like this is handy, virtually idiot-proof code, easy to create the package, easy to use it, and provides the Google-like search that users expect, without raising errors or producing unexpected results. Frequently, on the OraFAQ forums, where I am a moderator, when there are various ways to solve a problem and I provide a Text solution, the complaint is that it is too complicated to create all of the formatting to fix potential problems with user input. Your code solves that problem and I hope it will be included in the next version. If you don't mind, I will post an announcement in the OraFAQ Text forum with the permanent link that you provided.

  • New cluster sample code

    Hello,
    There is a new cluster sample code under the sample code directory.
    Description:
    Giving a new collection of documents or a document hitlist from a new query, it will be more efficient for
    users to known what is in the collection by organizing the collection based on the document sementics. To
    partition a collection is the task of clustering. Here is an implementation and sample code of clustering
    based on Oracle Text.
    http://otn.oracle.com/sample_code/products/text/htdocs/cluster.html

    You'll find all the details you need to accomplish this in the ADF Developer's Guide for Forms/4GL Developers on the ADF Learning Center at http://www.oracle.com/technology/products/adf/learnadf.html.
    Section "8.3 Adding a Custom Service Method" explains how to add a service method to your application module.
    Section "7.8.3 Example of Creating a New Service Request" shows the code required to create a new row in a view object.
    Then you would just use the setAttribute() method on the target row to set the desired attributes to the new values based on the values from the source row.
    Section "8.4.1 How to Publish Custom Service Methods to Clients" describes how you would publish your service method to clients.
    Section "10.3.3 How the Data Model and Service Methods Appear in the Data Control Palette" describes where to look to see your published client methods in the data control palette to drop them as a button on a page.
    Section "4.5 Understanding the Active Data Model" explains why the UI will automatically refresh to display the changes you've made in your application module method when it's invoked.

  • Query - Integration Event

    I have a scenario where i have to create an opportunity team based on the data that user enters in oppportunity and it has to be done when new record is saved in opportunity object. We cannot use out of box workflow functionality in this scenario so in this case i have opted to use integration event in the workflow. I have planeed to develop a windows service which will timelly read the INtegration Event queue and will fetch the lastEventID using INtegrationservice. PLease let me know if this approach is correct or not. I am also facing another isssue. In one of my test application i am trying to fetch the last event ID using the integrationservice.I am hitting the particular event where my workflow is registered but still i am not able to get the lasteventId. Please let me know if I am missing something

    Hi Akesh,
    I think your scenario works fine, but in my opinion you missed the idea of the LastEventId. For your new opportunity you get an event (with the oppty key data like id and the fields you track). You will process these events to create your opportunity team (perhaps you have to add a opportunity query- depends on your use case). The LastEventId is a Id you get for every integrationevent query. You can use this id to delete all events which are included in this query, I guess... It is not event related.
    BR Michael
    <ns:IntegrationEventWS_GetEvents_Output xmlns:ns="urn:crmondemand/ws/integrationevent/">
    <ListOfEvent xmlns="urn:/crmondemand/xml/integrationevent">
    *<Event object="Opportunity" name="oppty_craeted" operation="insert">*
    *<SiebelMessage>*
    *<ListOfOpportunity xmlns="urn:/crmondemand/xml/opportunity">*
    *<Opportunity>*
    *</Opportunity>*
    *</ListOfOpportunity>*
    *</Event>*<Event object=...>
    </Event
    </ListOfEvent>
    <ns:LastEventId>20100809191347595_.....</ns:LastEventId>
    <ns:QueueName>Default Queue</ns:QueueName>
    </ns:IntegrationEventWS_GetEvents_Output>

  • Visual Studio Sample Code for Web Services Integration

    I am new to the CRM OnDemand web services and am looking to write an interface for querying and updating data. I have imported the .wsdl and got the log-in and log-out functioning but rather than re-inventing the wheel I was wondering if anybody had some sample code of how to work with the business objects such as Account or Contact.
    I am using Visual Studio .Net (Prefer c#). Any sample would be greatly appreciated.
    Thanks in advance....
    Edited by: user10730659 on 9/01/2009 23:08
    Edited by: user10730659 on 20/01/2009 16:11

    I found some examples in the Web Services Resource Library.
    you can access this through the "Training and Support" link from within CRM OD.
    Then click on "Web Services Library" then download the Getting Started kits
    Edited by: user10730659 on 20/01/2009 16:11

  • DRM API Sample code & new to API work recommendations

    Hello Gurus,
    I am getting ready to venture into the world of DRM API. I'm a SQL / integration / app type person with no experience related to working wth APIs. Can someone please post some sample code and perhaps recommend some reference books, training, approach I should consider? I welcome the opportunity to learn. I just need a nudge in the right direction. Your recommendations are greatly appreciated!
    Cheers!

    http://docs.oracle.com/cd/E17236_01/epm.1112/drm_api_ref.html
    Thanks,
    Murali

  • New company integration - Should or not create a new company code?

    Hi Gurus,
    my customer is acquiring a new company and the related population will be integrated in our sap payroll system.
    The FI team is now asking for the creation of a new company code (the new population should be maintained separated from the old one, with a different PMO and budject) but the HR Department does not want to manage (for several internal reasons) a new company code.
    Now the question is: is it absolutely necessary to create a new company code or is it possible to manage this situation in another way (maybe linking the new population to a new personnel area, related to an already existing company code)? And what about the posting?
    From the payroll point of view, the new population should be managed exactly as the old population. It is just a question to maintain them separated from the FI point of view.
    Do you already faced a problem like this? And which is your feedback?
    Thanks and Regards,
    Gaetano

    Creation of new company code is depending on the legal reason...if you legal department and Finance users decide that this new company is a separate legal entity and Profit & Loss will reported separate, Tax Id number is different from parent company, then all this means that this newly acquired company will need a new company code in SAP. Then comes how they want to do the costing...that may also require them to report all the salary cost to this new company code.
    Whether it is a new company code or old company code...you would required to identify these new entity as Personnel area or personnel subarea right?
    If the Tax id number is different, then it is best recommended to create a separate enterprise structure and bring the employee under the new CC/PA/PSA.
    If the tax id is same, only for costing and PnL , then you can use the existing Enterprise structure and override the costing logic using the Substitute cost center or overriding BAdI in HR-FI posting.
    Let me know your feedback

  • Need Sample Code in C#  to Insert,Update,Query data using W 2.0 wsdl

    Hi,
    Can anyone please share sample code in C# to Insert,Update,Query data using W 2.0 wsdl.
    Thanks in advance

    I have found solution.
    Need add following line for non string data type.
    objOutreachUpdateList.Opportunity[0].IndexedNumber0Specified = true;

  • How to set product Id for event booking order?

    We take paid bookings for a number of events through the year. Since the event booking information is identical for every event (only the event details change), we have implemented this by embedding the HTML from a standardised web form into each event's details section.
    However, when the event booking is submitted by the customer, Business Catalyst creates a product whose name is constructed as {form name}/{event name} to correspond to this event. This product is referenced in the CRM order for this event that is linked to the customer. This means we get a separate product for each event type.
    The problem is that the product code that is assigned to the event booking product is the ID of the web form that was used to process the event (ie. the form embedded in the event detail). Since we use the same web form for multiple events we are now seeing duplicate product codes.
    I would like to create a common product for all event bookings and pass this product ID when posting the form on submit of the event booking. The reason for a single booking product is to simplify the synchronisation to our accounting system - otherwise we need to create a new product in the accounting system every time we add a new event.
    Is there a query parameter I can include on the form's action URL or as an input field to the form that controls the product ID and / or the product name that will be used for the booking order?
    The only other solution I can think of to solve this challenge is to create a unique web form - event combination for every single event. This is not a great solution due to the unnecessary duplication that this will involve - I would rather re-use a common piece of code.
    Thanks for any help and advice.

    Hello
    If I'm not mistaken, the 'text range' in PowerPoint does not have 'language id' property whereas the 'text range' in Word does.
    Check the terminology dictionary of PowerPoint.
    cf.
    http://www.microsoft.com/mac/developers/default.mspx
    Sorry for the bad news...
    H

  • Integration Event set-up

    I am new at using workflow to generate integration events. Any guidance would be appreciated.
    My business need is to share Contact information with an outside system. This is a bi-directional interface. When a Contact is added, changed, or deleted in CRM the other system needs to know about it. Also, when a Contact is associated with an Account or dissociated from an Account, the other system needs to know about it.
    My questions have to do with the set of fields you see when you click "configure" on the integration event action. What should be selected for an Add? All the Contact fields? Just the Row ID? What about on an update? All the fields? Just the modified date? And on a delete? The External Unique ID so the integration code knows which record to delete in the other system?
    Anybody know why there isn't a "configure" on the After association with Parent trigger event? It is still rather vague when this WF actually fires.
    Much appreciated.
    Jeff

    There is no UI or a wizard to see the data inside the Queue the only option is to query INtegration Event Queue using Web Services
    Regards,
    Deepak H Andeli

  • FBL3N- Abap error for new company code

    Hello Forum,
    I have created a new company code and created few GL accounts in My Test system. However when i try to run this report FBL3n it gives a runtime error.
    Runtime Errors         CALL_FUNCTION_NOT_FOUND
    Except.                CX_SY_DYN_CALL_ILLEGAL_FUNC
    Date and Time          02/11/2014 11:13:48
    Short text
         Function module "LINE_ITEMS_GET_GKNOT" not found.
    However it works fine with other company codes and report is executable and displaying the values properly.
    Any help is apreciatable
    Thanks
    David

    Hello David,
    Please go through in the below link which is already answered for your query.
    http://scn.sap.com/thread/1859902
    Yes, you are correct there is no  Function module "LINE_ITEMS_GET_GKNOT" with this name. PFA the screenshot for your easy reference.
    This is because of spelling error. Correct FM is LINE_ITEMS_GET_GKONT
    Please  follow the below given steps to correct the FM Name spelling error.
    Go to FIBF ---> Settings tab ---> Choose P/S Modules ----> Of a Customer ---->
    Event: 00001650
    Product: ZFBLOFF (which has been created in the previous step)
    Function Module: LINE_ITEMS_GET_GKONT
    Modify GKNOT as GKONT by choosing the correct line entry and then save.
    I hope it will resolves.
    Thanks & Regards,
    Lakshmi S

  • Hi guys please give me sample code for call transaction that handles error

    hi guys, please give me sample code for call transaction that handles error,
    please send me the sample code in which there should be all decleration part and everything, based on the sample code i will develop my code.
    please do help me as it is urgent.
    thanks and regards.
    prasadnn.

    Hi Prasad,
    Check this code.
    Source Code for BDC using Call Transaction
    *Code used to create BDC
    *& Report  ZBDC_EXAMPLE                                                *
    *& Example BDC program, which updates net price of item 00010 of a     *
    *& particular Purchase order(EBELN).                                   *
    REPORT  ZBDC_EXAMPLE  NO STANDARD PAGE HEADING
                          LINE-SIZE 132.
    Data declaration
    TABLES: ekko, ekpo.
    TYPES: BEGIN OF t_ekko,
        ebeln TYPE ekko-ebeln,
        waers TYPE ekko-waers,
        netpr TYPE ekpo-netpr,
        err_msg(73) TYPE c,
    END OF t_ekko.
    DATA: it_ekko  TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko  TYPE t_ekko,
          it_error TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_error TYPE t_ekko,
          it_success TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_success TYPE t_ekko.
    DATA: w_textout            LIKE t100-text.
    DATA: gd_update TYPE i,
          gd_lines TYPE i.
    *Used to store BDC data
    DATA: BEGIN OF bdc_tab OCCURS 0.
            INCLUDE STRUCTURE bdcdata.
    DATA: END OF bdc_tab.
    *Used to stores error information from CALL TRANSACTION Function Module
    DATA: BEGIN OF messtab OCCURS 0.
            INCLUDE STRUCTURE bdcmsgcoll.
    DATA: END OF messtab.
    *Screen declaration
    SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME
                                        TITLE text-001. "Purchase order Num
    SELECT-OPTIONS: so_ebeln FOR ekko-ebeln OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK block1.
    SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME
                                        TITLE text-002. "New NETPR value
    PARAMETERS:  p_newpr(14)   TYPE c obligatory.  "LIKE ekpo-netpr.
    SELECTION-SCREEN END OF BLOCK block2.
    *START-OF-SELECTION
    START-OF-SELECTION.
    Retrieve data from Purchase order table(EKKO)
      SELECT ekkoebeln ekkowaers ekpo~netpr
        INTO TABLE it_ekko
        FROM ekko AS ekko INNER JOIN ekpo AS ekpo
          ON ekpoebeln EQ ekkoebeln
       WHERE ekko~ebeln IN so_ebeln AND
             ekpo~ebelp EQ '10'.
    *END-OF-SELECTION
    END-OF-SELECTION.
    Check data has been retrieved ready for processing
      DESCRIBE TABLE it_ekko LINES gd_lines.
      IF gd_lines LE 0.
      Display message if no data has been retrieved
        MESSAGE i003(zp) WITH 'No Records Found'(001).
        LEAVE TO SCREEN 0.
      ELSE.
      Update Customer master data (instalment text)
        LOOP AT it_ekko INTO wa_ekko.
          PERFORM bdc_update.
        ENDLOOP.
      Display message confirming number of records updated
        IF gd_update GT 1.
          MESSAGE i003(zp) WITH gd_update 'Records updated'(002).
        ELSE.
          MESSAGE i003(zp) WITH gd_update 'Record updated'(003).
        ENDIF.
    Display Success Report
      Check Success table
        DESCRIBE TABLE it_success LINES gd_lines.
        IF gd_lines GT 0.
        Display result report column headings
          PERFORM display_column_headings.
        Display result report
          PERFORM display_report.
        ENDIF.
    Display Error Report
      Check errors table
        DESCRIBE TABLE it_error LINES gd_lines.
      If errors exist then display errors report
        IF gd_lines GT 0.
        Display errors report
          PERFORM display_error_headings.
          PERFORM display_error_report.
        ENDIF.
      ENDIF.
    *&      Form  DISPLAY_COLUMN_HEADINGS
          Display column headings
    FORM display_column_headings.
      WRITE:2 ' Success Report '(014) COLOR COL_POSITIVE.
      SKIP.
      WRITE:2 'The following records updated successfully:'(013).
      WRITE:/ sy-uline(42).
      FORMAT COLOR COL_HEADING.
      WRITE:/      sy-vline,
              (10) 'Purchase Order'(004), sy-vline,
              (11) 'Old Netpr'(005), sy-vline,
              (11) 'New Netpr'(006), sy-vline.
      WRITE:/ sy-uline(42).
    ENDFORM.                    " DISPLAY_COLUMN_HEADINGS
    *&      Form  BDC_UPDATE
          Populate BDC table and call transaction ME22
    FORM bdc_update.
      PERFORM dynpro USING:
          'X'   'SAPMM06E'        '0105',
          ' '   'BDC_CURSOR'      'RM06E-BSTNR',
          ' '   'RM06E-BSTNR'     wa_ekko-ebeln,
          ' '   'BDC_OKCODE'      '/00',                      "OK code
          'X'   'SAPMM06E'        '0120',
          ' '   'BDC_CURSOR'      'EKPO-NETPR(01)',
          ' '   'EKPO-NETPR(01)'  p_newpr,
          ' '   'BDC_OKCODE'      '=BU'.                      "OK code
    Call transaction to update customer instalment text
      CALL TRANSACTION 'ME22' USING bdc_tab MODE 'N' UPDATE 'S'
             MESSAGES INTO messtab.
    Check if update was succesful
      IF sy-subrc EQ 0.
        ADD 1 TO gd_update.
        APPEND wa_ekko TO it_success.
      ELSE.
      Retrieve error messages displayed during BDC update
        LOOP AT messtab WHERE msgtyp = 'E'.
        Builds actual message based on info returned from Call transaction
          CALL FUNCTION 'MESSAGE_TEXT_BUILD'
               EXPORTING
                    msgid               = messtab-msgid
                    msgnr               = messtab-msgnr
                    msgv1               = messtab-msgv1
                    msgv2               = messtab-msgv2
                    msgv3               = messtab-msgv3
                    msgv4               = messtab-msgv4
               IMPORTING
                    message_text_output = w_textout.
        ENDLOOP.
      Build error table ready for output
        wa_error = wa_ekko.
        wa_error-err_msg = w_textout.
        APPEND wa_error TO it_error.
        CLEAR: wa_error.
      ENDIF.
    Clear bdc date table
      CLEAR: bdc_tab.
      REFRESH: bdc_tab.
    ENDFORM.                    " BDC_UPDATE
          FORM DYNPRO                                                   *
          stores values to bdc table                                    *
    -->  DYNBEGIN                                                      *
    -->  NAME                                                          *
    -->  VALUE                                                         *
    FORM dynpro USING    dynbegin name value.
      IF dynbegin = 'X'.
        CLEAR bdc_tab.
        MOVE:  name TO bdc_tab-program,
               value TO bdc_tab-dynpro,
               'X'  TO bdc_tab-dynbegin.
        APPEND bdc_tab.
      ELSE.
        CLEAR bdc_tab.
        MOVE:  name TO bdc_tab-fnam,
               value TO bdc_tab-fval.
        APPEND bdc_tab.
      ENDIF.
    ENDFORM.                               " DYNPRO
    *&      Form  DISPLAY_REPORT
          Display Report
    FORM display_report.
      FORMAT COLOR COL_NORMAL.
    Loop at data table
      LOOP AT it_success INTO wa_success.
        WRITE:/      sy-vline,
                (10) wa_success-ebeln, sy-vline,
                (11) wa_success-netpr CURRENCY wa_success-waers, sy-vline,
                (11) p_newpr, sy-vline.
        CLEAR: wa_success.
      ENDLOOP.
      WRITE:/ sy-uline(42).
      REFRESH: it_success.
      FORMAT COLOR COL_BACKGROUND.
    ENDFORM.                    " DISPLAY_REPORT
    *&      Form  DISPLAY_ERROR_REPORT
          Display error report data
    FORM display_error_report.
      LOOP AT it_error INTO wa_error.
        WRITE:/      sy-vline,
                (10) wa_error-ebeln, sy-vline,
                (11) wa_error-netpr CURRENCY wa_error-waers, sy-vline,
                (73) wa_error-err_msg, sy-vline.
      ENDLOOP.
      WRITE:/ sy-uline(104).
      REFRESH: it_error.
    ENDFORM.                    " DISPLAY_ERROR_REPORT
    *&      Form  DISPLAY_ERROR_HEADINGS
          Display error report headings
    FORM display_error_headings.
      SKIP.
      WRITE:2 ' Error Report '(007) COLOR COL_NEGATIVE.
      SKIP.
      WRITE:2 'The following records failed during update:'(008).
      WRITE:/ sy-uline(104).
      FORMAT COLOR COL_HEADING.
      WRITE:/      sy-vline,
              (10) 'Purchase Order'(009), sy-vline,
              (11) 'Netpr'(010), sy-vline,
              (73) 'Error Message'(012), sy-vline.
      WRITE:/ sy-uline(104).
      FORMAT COLOR COL_NORMAL.
    ENDFORM.                    " DISPLAY_ERROR_HEADINGS
    Hope this resolves your query.
    Reward all the helpful answers.
    Regards

Maybe you are looking for