Strating a process triggered by db table content change

Hi all
I am new to BPM.
I am trying to understand if BPM answers our requirements.
Is there a possibility to start a process when a field from data base table changes?
Thanks,
Nitsan

Hi,
Yes It can be acheived Check this [document|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/80ddeba4-e780-2b10-7bb2-fc7a33efabbd]
also search with keyword Change Document in SCN lot of discussions are available...
Regards
Pavan

Similar Messages

  • Process triggered before update table filled

    Hello,
    We have a program that
    - calls one FM (RSSM_SDL_INFOPACKAGE_DIALOG) that gives direct access to a specific infopackage (via program parameters) that is uploading an ODS when executed
    - secondly calls another FM (BP_EVENT_RAISE) that triggers an event that activates the ODS (and some other processes afterwards).
    The problem is: The event is triggered when the infopackage is left - and the infopackage might be left before the update table is filled. So the activating process might start before the filling of the update table has been done (monitor status not green).
    How can this issue be solved keeping in mind that the end-user should only execute one transaction (the one that's execute the program).
    Kind regards,
    Johnny

    Hi Simon,
    Can you provide me with information of how to build in this loop. Please check the relevant part of our program:
      CALL FUNCTION 'RSSM_SDL_INFOPACKAGE_DIALOG'
        EXPORTING
          SOURCE.......
    IMPORTING
    EXCEPTIONS
       error                  = 1
       OTHERS                 = 2.
      IF sy-subrc <> 0.
      PERFORM log_nogo.
        MESSAGE e001(00) WITH 'FM Error: Infopackage error message succesfully logged'.
      ELSE.
        IF NOT p_evtid IS INITIAL.
          PERFORM raise_event
               USING p_evtid
            CHANGING ret_code.
          IF ret_code <> 0.
            MESSAGE e002(zbps) WITH 'Error raising event '
                                   p_evtid.
          ELSE.
            MESSAGE s002(zbps) WITH 'Event'
                                  p_evtid
                                  ' successfully' ' raised'.
          ENDIF.
        ENDIF.
      ENDIF.
    Thanks,
    Johnny

  • Problem with clip area occurred when table content is transited

    Platform: JavaFX 1.2.1.
    Hi all
    <b>Preface</b>: I created my own table because the cell content should be not standart: buttons, progress bars, etc...and text as well.
    There is no standart decision for this and simple there is no table control in JavaFx as well :) (swing JTable in a SwingComponent wrap
    doesn't fix the problem - only combo box, check box, text box can be placed into a cell). So, I did the following: I created a sequence
    of instances of the Group class. Each instance represents one cell of the table. I put a rectangle (Rectangle class) as a cell visualization
    and other controls(buttons, progress bars, text, etc. as a cell content) to each Group instance (cell). All cells in the sequence are located
    in rows and columns as in a usual table. and I put this sequence of cells to one common Group. The whole area of all rows and columns is large
    so I use the clip variable of the Group class (common Group) and two scrollbars (vertical and horizontal) to transit the rows and
    columns. It's simple thing as in a usual table.
    <b>Problem description</b>: when I transit a thumb of a scrollbar (whatever horizontal or vertical) part of each border cells appear out of common
    Group clip area, i.e. that part of each border cell (as on the left, rigth side of the clip area for horizontal scrollbar so as on the top, botton
    side of the clip area for vertical scrollbar) that should be disapeared is appeared over other GUI controls located near this table. I tried to
    use ClipView - the problem is reproduced as well. Screenshot here:
    Initial state:
    http://foto.nnov.ru/psh500/0/86/51/e1/4e/a0/ae/0bd8ef7ebf233614.png
    Screenshots with bugs:
    http://foto.nnov.ru/psh500/0/f8/1c/28/77/b5/79/f53bbc4fd8ba8158.png
    http://foto.nnov.ru/psh500/0/3a/95/c3/6c/0e/4f/9aff2e16a544bb37.png
    Help please.
    Thanks in advance!

    Code is simple. There are two classes: TableColumn.fx and Table.fx. And as an example of use: Main.fx
    * TableColumn.fx
    package mytabletest;
    import javafx.scene.Group;
    public class TableColumn {
        public var name: String;
        public var width: Number;
        public var rows: Group[];
    * Table.fx
    package mytabletest;
    import javafx.scene.CustomNode;
    import javafx.scene.Group;
    import javafx.scene.Node;
    import javafx.scene.control.ScrollBar;
    import javafx.scene.layout.LayoutInfo;
    import javafx.scene.shape.Rectangle;
    import javafx.scene.text.Text;
    import javafx.scene.text.TextOrigin;
    import javafx.scene.transform.Translate;
    import javafx.scene.paint.Color;
    public class Table extends CustomNode {
        // Table width
        public var width:Number;
        // Table height
        public var height:Number;
        // Table row hight
        public var rowHeight:Number = 25;
        // Space between two cells
        public var rowMargin:Number = 2;
        var tableContent : Group;
        // Columns
        var columns: TableColumn [];
        var scrollBarWidth: Number = 8;
        // Cliping area: visible active area of the table
        var clipWidth = bind width - scrollBarWidth;
        var clipHeight = bind height - scrollBarWidth;
        // Vertical scrollbar
        var vScrollBar: ScrollBar = ScrollBar {
            height: bind clipHeight
            clickToPosition: true
            min: 0
            max: 5
            vertical: true
        // Horizontal scrollbar
        var hScrollBar: ScrollBar = ScrollBar {
            width: bind clipWidth
            clickToPosition: true
            min: 0
            max: 3
            vertical: false
        // Scroll bars triggers to transit table content in X and Y coordinates
        var vScrollBarTrigger = bind vScrollBar.value on replace {
            (tableContent.content[0] as Group).translateY =
                - vScrollBar.value * (rowHeight + rowMargin);
        var hScrollBarTrigger = bind hScrollBar.value on replace {
            (tableContent.content[0] as Group).translateX =
                - hScrollBar.value * clipWidth / getNumOfColumns();
        public override function create():Node {
            return Group {
                content: [
                    // Scrollbars
                    Group {
                        translateX: bind clipWidth
                        content: [vScrollBar]
                    Group {
                        translateY: bind clipHeight
                        content: [hScrollBar]
                    tableContent = Group {
                        clip:
                            Rectangle {
                                width: clipWidth
                                height: clipHeight
                        content: [Group{}]
        * Calculates locations for the table columns
        function calcLocations(columns:TableColumn[], e:Integer) {
            var position : Number = 0;
            if (getNumOfColumns() > 0) {
                for (i in [0..e - 1]) {
                    position += columns.width;
    return position;
    * Adds row to the table
    * @param obj sequence of objects to be added to a new row
    public function addRow(obj: Group[]): Boolean {
    var cell: Group;
    var row = getNumOfRows() + 1;
    var isEven = row mod 2 == 0;
    for (column in columns){
    cell = Group {
    transforms: Translate.translate(
    calcLocations(columns, indexof column) + indexof column * rowMargin,
    ((rowHeight + rowMargin) * row))
    clip:
    Rectangle {
    width: column.width
    height: rowHeight
    content: bind [
    Rectangle {
    width: column.width
    height: rowHeight
    fill: Color.rgb(147, 0, 255)
    Group {
    content: [obj[indexof column]]
    layoutInfo: LayoutInfo {
    width : column.width
    height: rowHeight
    insert cell into column.rows;
    insert cell into (tableContent.content[0] as Group).content;
    return true;
    * Sets columns to the table.
    public function addColumn(name: String, width: Number): Void {
    // Check if the name is an empty string then column name will be the
    // following: "Column{i}" where i is a number of columns (zero based)
    var columnName : String = if(name == "") "Column{getNumOfColumns()}" else name;
    var column: TableColumn = TableColumn {
    name: columnName
    width: width
    //Add column head
    var cell: Group;
    cell = Group {
    var rec: Rectangle;
    transforms: Translate.translate(
    calcLocations(columns, getNumOfColumns()) + getNumOfColumns() * rowMargin, 0)
    clip:
    Rectangle {
    width: width
    height: rowHeight
    content: bind [
    rec = Rectangle {
    width: width
    height: rowHeight
    Group {
    var node : Node = Text {
    textOrigin: TextOrigin.TOP
    content: columnName
    transforms: bind
    Translate.translate(width / 2 - node.boundsInLocal.width / 2,
    rowHeight / 2 - node.boundsInLocal.height / 2 + 2)
    content: [node]
    insert cell into column.rows;
    insert cell into (tableContent.content[0] as Group).content;
    insert column into columns;
    * Returns number of rows
    public function getNumOfRows(): Integer {
    if(sizeof columns > 0) {
    return sizeof columns[0].rows - 1; // The first cell is a column title
    else {
    return 0;
    * Returns number of columns
    public function getNumOfColumns(): Integer {
    return sizeof columns;
    * Main.fx
    package mytabletest;
    import javafx.stage.Stage;
    import javafx.scene.Scene;
    import javafx.scene.Group;
    * @author Naight
    var table : Table = Table {
    translateX: 100
    translateY: 100
    width: 200
    height: 200
    Stage {
    title: "Application title"
    width: 400
    height: 400
    scene: Scene {
    content: [table]
    table.addColumn("Column1", 100);
    table.addColumn("Column2", 100);
    table.addColumn("Column3", 100);
    for(i in [0..9])
    table.addRow([Group{}, Group{}, Group{}]);

  • API or Trick to Access Decision Table Content

    Hi,
    I am modeling a BPM process which calls web services based on a BRM rule with a decision table. In the beginning I need to read the decision table content into the BPM process context (in order to get the selection condition for reading objects from an SCM system). Is there a way I can access the content of this BRM decision table (via web service, java or any other way)?
    Thanks,
    Eduard

    Hi Eduard,
    From what I understand(from the post and my brief discussion with Michael Hill few days back), there are a set of work orders in the SCM system that you want to read and see if they meet the scrap tolerance level. But the Decision Table doesnt have scrap tolerance level defined for all combinations of product type/date etc.
    So you want to
    (1)initially get the parameters for which scrap tolerance is defined (read the contents of decision table)
    (2)get only those work orders from the SCM (filter outside rules)
    (3)check if these work orders satisfy the scrap tolerance level (rule execution)
    Please correct me if I am wrong.
    Can we remove the steps (1) and (2) and instead get all the work orders from the SCM system and see if they satisfy the scrap tolerance level(only rule execution, filtering is also done in rule). For work orders whose scrap tolerance is not defined, the decision table will not return the default value. So if the default value is returned(filtering), no check is made if scrap is within tolerance.
    Please let me know your opinion.
    Regards,
    Sowmya

  • How to export table contents in xml file format through SQL queries

    hi,
    i need to export the table data in to xml file format. i got it through the GUI what they given.
    i'm using Oracle 10g XE.
    but i need to send the table name from Java programs. so, how to call the export commands from programming languages through. is there any sql commands to export the table contents in xml format.
    and one more problem is i created each transaction in two tables. for example if we have a transaction 'sales' , that will be saved in db as
    sales1 table and sales2 table. here i maintained and ID field in sales1 as PK. and id as FK in sales2.
    i get the combined data with this query,
    select * from sales1 s1, sales2 s2 where s1.id=s2.id order by s1.id;
    it given all the records, but i'm getting two ID fields (one from each table). how to avoid this. here i dont know how many fields will be there in each table. that will be known at runtime only.
    the static information is sales1 have one ID field with PK and sales2 will have one ID filed with FK.
    i need ur valuable suggestions.
    regards
    pavan.

    You can use DBMS_XMLGEN.getXML('your Query') for generating data in tables to XML format and you can use DBMS_XMLGEN.SETROWSETTAG to change the parent element name other wise it will give rowset as well as DBMS_XMLGEN.SETROWTAG for row name.
    Check this otherwise XMLELEMENT and XMLFOREST function are also there to convert data in XML format.

  • How to do parallel processing with dynamic internal table

    Hi All,
    I need to implement parallel processing that involves dynamically created internal tables. I tried doing so using RFC function modules (using starting new task and other such methods) but didn't get success this requires RFC enabled function modules and at the same time RFC enabled function modules do not allow generic data type (STANDARD TABLE) which is needed for passing dynamic internal tables. My exact requirement is as follows:
    1. I've large chunk of data in two internal tables, one of them is formed dynamically and hence it's structure is not known at the time of coding.
    2. This data has to be processed together to generate another internal table, whose structure is pre-defined. But this data processing is taking very long time as the number of records are close to a million.
    3. I need to divide the dynamic internal table into (say) 1000 records each and pass to a function module and submit it to run in another task. Many such tasks will be executed in parallel.
    4. The function module running in parallel can insert the processed data into a database table and the main program can access it from there.
    Unfortunately, due to the limitation of not allowing generic data types in RFC, I'm unable to do this. Does anyone has any idea how to implement parallel processing using dynamic internal tables in these type of conditions.
    Any help will be highly appreciated.
    Thanks and regards,
    Ashin

    try the below code...
      DATA: w_subrc TYPE sy-subrc.
      DATA: w_infty(5) TYPE  c.
      data: w_string type string.
      FIELD-SYMBOLS: <f1> TYPE table.
      FIELD-SYMBOLS: <f1_wa> TYPE ANY.
      DATA: ref_tab TYPE REF TO data.
      CONCATENATE 'P' infty INTO w_infty.
      CREATE DATA ref_tab TYPE STANDARD TABLE OF (w_infty).
      ASSIGN ref_tab->* TO <f1>.
    * Create dynamic work area
      CREATE DATA ref_tab TYPE (w_infty).
      ASSIGN ref_tab->* TO <f1_wa>.
      IF begda IS INITIAL.
        begda = '18000101'.
      ENDIF.
      IF endda IS INITIAL.
        endda = '99991231'.
      ENDIF.
      CALL FUNCTION 'HR_READ_INFOTYPE'
        EXPORTING
          pernr           = pernr
          infty           = infty
          begda           = '18000101'
          endda           = '99991231'
        IMPORTING
          subrc           = w_subrc
        TABLES
          infty_tab       = <f1>
        EXCEPTIONS
          infty_not_found = 1
          OTHERS          = 2.
      IF sy-subrc <> 0.
        subrc = w_subrc.
      ELSE.
      ENDIF.

  • Problem in page overflow with table contents having control level

    Hello members,
    My scenario is to display table contents from (Master Page)MP1 and then overflow to MP2 and use the MP2 for the rest of the overflowed pages too. In the form context, the table has control level grouping on a field(F1), which is set in context, because of which we can sub total for the group of records based on field F1.
    Take the scenario that the content area(CA1) of MP1 fits only 10 records and content area(CA2) of MP2 fits only 20 records.
    Test scenario 1:
    If the table contents have records upto 20, then MP1 gets filled with first 10 records and then MP2 with rest of the 10 records. This scenario works fine.
    Test scenario 2:
    If the table contents have records upto 5, then only MP1  with current 5 records gets filled. This scenario also works fine.
    Test scenario 3:( ISSUE BEING FACED)
    If the table contents have records upto 50,(which are more than the combined number of rows of MP1 and MP2) then no data is displayed on MP1 and data starts filling in next MP2 and only approx 22 records are visible where few even cross the content area of the MP2. And no over flow for the rest of the records happen.
    We use SFP Transaction in SAP to modify the layouts of the forms. Please let us know if the table having group set by control level causes any issue in this scenarion Test scenario 3.
    Thanks
    Vivek
    [email protected]

    Hi,
    master pages don't support page breaks. Those pages are only used for the background things of body pages like page numbers, company logs or letter head layouts.
    Don't use repeating objects on masterpages that may overflow its content area, this will always end up with unexpected results.
    Put all those objects on a regular page (body page) which allows page breaks.

  • Problem in creating 800 client to see table content .

    HI,
        I am new to sap .  I have ideas 4.7 in windows 2003.  i can see table content under user sap* and password 060719* . I  have created a user sapuser . through client 000 , i can create create abap program , but could not find ant table content like mara . at first time  after creating sapuser , it asked me the access key. i gave 36687663221261278694 and it has taken . but to see table content , i created a new user as partha in client 800. but at first time at the time of logging it is asking the access key. though i am giving same key it is not taking .
       1) is there any other key for that educational version ?
       2) how to crreate a user in client 800 . pls give step by step procedure .
       3) for creating a user under client 800 . should i delete my sapuser created under 000 client.

    Hi Jack,
    First of all, the client 000 is one of the standard clients that comes with any SAP R/3 installation (with client 001 and 066 (for EarlyWatch for SAP auditory purposes)). To work with the system you should always make a copy of the client 000 or 001 to a new client i.e. client 200, 400, or whatever name.
    In the case of IDES, the system always comes with the client 800, where you can find all the IDES configuration and data (for test, training, sandbox). If you want to work in the system you should work on this client (800). To check the tables you can always use transaction se12 (table structure: fields, keys) and se16 to see the table content. If you want to create users you should always do it in the client 800 or any other client you've created (not in the standard ones 000, 001, 066, try to maintain these clients clean of any custom data).
    To view the tables data you dont need any key.  The keys are requested when you want to register a developer user (to create a new abap program (all the new programs must start with Z (or X,Y) to differentiate from the standard SAP programs. The keys are also requested when you want to edit a standard program or table or any other standard SAP object.
    1) To get the keys for any SAP system (there are 2 types of keys: developer user and for editing any standard object) you must log on the OSS service (with the user and password provided by SAP when you got your SAP software) : service.sap.com/sscr. Here you use the installation number of your IDES system (the system must be registered in OSS) and then you can create your developer users or standard object keys.
    2)To create a user in any system you need to go to transaction SU01. Here you can make a copy of SAP* user for example (choosing in the trx the button copy) to create your new user. you assign a password to the user and save it. You need to login again on the system and put your new password. This is the easiest way, otherwise you can create a user from zero but you will need to add more information to the user. To start you can create a copy of SAP* or DDIC users.
    3) Yes, I suggest you delete the user you've created in client 000, try to keep it clean of any customer modifications (you could leave it there but is not a good practice).If you want to work with your IDES system and the IDES data, use the client 800.
    Good luck,

  • How to write two triggers on same table how it works?

    Hello sir..
    I have to write two triggers on same table for auditing different columns of different pages (may be different modules).
    I will have an audit table in which i will insert data such as (user_id,module_id,column_name,old_col_val,new_col_ val,timestamp)
    Now different users from different pages will update the data on same table may be same columns!
    If we write directly, we will not be able to know which column is updated from different pages.
    My question is how can we control the triggers to raise based on the pages

    A trigger is executed whenever the table is inserted / updated / deleted (depend on trigger definition). It won't know what 'page' caused the operation. You can prepare a trigger for one page.
    In order to fulfill your need, you need some way to tell the trigger where you are. There are many ways to accomplish this. Some possible methods are (please check the documents for detail)
    DBMS_SESSION.SET_IDENTIFIER
    DBMS_APPLICATION_INFO.SET_MODULEFor example, you can call DBMS_SESSION.SET_IDENTIFIER to set an ID from your page, and then call sys_context to read the ID back:
    In Page:
    exec dbms_session.set_identifier('Page1');
    ...In Trigger
    pageid  := sys_context('USERENV', 'CLIENT_IDENTIFIER') ;
    ...Note that if you use a connection pool, you may need to properly reset the session information before return, in order to avoid messing up the session information when the connection is used next time.

  • Two triggers on same table

    Hi Friend.
    I have to write two triggers on same table for auditing different columns of different users(may be different modules).
    I will have an audit table in which i will insert data such as (user_id,module_id,column_name,old_col_val,new_col_val,timestamp)
    Now different users from different modules will update the data on same table may be same columns from different front end forms!
    If we write directly, we will not be able to know which column is updated by which user.
    My question is in this case how can we control the triggers to raise differently?

    You can use WHEN clause to fire a trigger only when some condition is true - you can check an user also,
    look at simple example:
    - suposse we have two users US1 and US2:
    C:\>sqlplus sys as sysdba
    SQL*Plus: Release 10.2.0.1.0 - Production on Pn Gru 6 13:14:22 2010
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    Enter password:
    Connected to:
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
    SQL> create user us1 identified by us1;
    User created.
    SQL> create user us2 identified by us2;
    User created.
    SQL> grant connect, resource to us1, us2;
    Grant succeeded.
    SQL> grant create public synonym to us1, us2;
    Grant succeeded.and suposse we have a table with three columns + audit table:
    SQL> connect us1
    Enter password:
    Connected.
    SQL> create table tab123(
      2  col1 number,
      3  col2 number,
      4  col3 number);
    Table created.
    SQL> create table audit_tab123(
      2  username varchar2(100),
      3  col1 number,
      4  col2 number,
      5  col3 number );
    Table created.
    SQL>  grant select, update, insert on tab123 to us2;
    Grant succeeded.
    SQL>  grant select, update, insert on audit_tab123 to us2;
    Grant succeeded.
    SQL> create public synonym tab123 for tab123;
    Synonym created.
    SQL> insert into tab123 values( 1, 1, 1 );
    1 row created.
    SQL> commit;
    Commit complete.We want a trigger that is fired only by user US1 and only after update of COL1 and COL2
    (COL3 is ignored):
    SQL> connect us1/us1
    Connected.
    SQL> CREATE OR REPLACE TRIGGER Trig_123_US1
      2  AFTER UPDATE OF col1, col2 ON tab123
      3  FOR EACH ROW
      4  WHEN ( user = 'US1' )
      5  BEGIN
      6    INSERT INTO audit_tab123( username, col1, col2 )
      7    VALUES( user, :new.col1, :new.col2 );
      8 END;
    SQL> /
    Trigger created.And we want a second trigger that is fired only by user US2 and only after update of COL2 and COL3
    (COL1 is ignored):
    SQL> connect us1/us1
    Connected.
    SQL> CREATE OR REPLACE TRIGGER Trig_123_US2
      2  AFTER UPDATE OF col2, col3 ON tab123
      3  FOR EACH ROW
      4  WHEN ( user = 'US2' )
      5  BEGIN
      6    INSERT INTO audit_tab123( username, col2, col3 )
      7    VALUES( user, :new.col2, :new.col3 );
      8  END;
      9  /
    Trigger created.and now let test our triggers:
    SQL> connect us1/us1
    Connected.
    SQL> update tab123 set col1 = 22;
    1 row updated.
    SQL> update tab123 set col2 = 22;
    1 row updated.
    SQL> update tab123 set col3 = 22;
    1 row updated.
    SQL> commit;
    Commit complete.
    SQL> select * from audit_tab123;
    USERNAME         COL1       COL2       COL3
    US1                22          1
    US1                22         22
    SQL> connect us2/us2
    Connected.
    SQL> update tab123 set col1 = 333;
    1 row updated.
    SQL> update tab123 set col2 = 333;
    1 row updated.
    SQL> update tab123 set col3 = 333;
    1 row updated.
    SQL> commit
      2  ;
    Commit complete.
    SQL> select * from us1.audit_tab123;
    USERNAME         COL1       COL2       COL3
    US1                22          1
    US1                22         22
    US2                          333         22
    US2                          333        333As you see, each trigger is fired only once, first triger only for user US1 and columns COL1 and COL2,
    and second trigger only for user US2 and only after update of COL2 and COL3.
    I hope this will help.

  • DYNAMIC CHANGE OF TABLE CONTENTS IN WEBDYNPRO VIEW

    Hi,
      I have a requirement to display a table contents, and there are two buttons, When i select some records and clk on a button i need to delete these records in the database table as well as in webdynpro view.
    I am able to delete the records in database but the contents of table in view of webdynpro remains unchanged. Can anyone tell me how to delete the contents in the view also??
    Regards
    Naveen

    Hi Naveen,
    You need to Refresh the data you are binding to the table to make the latest data
    visible on the screen.
    On action of the button you are deleting entries from the database. After this
    Fetch data again from the database and bind to the node of the table.
    Hope this solves your problem..
    Regards,
    Ismail.

  • Extracting/Setting PDF Table contents using javascript

    Hello,
    Can you experts please let me know the following?
    1. Is there a way to extract PDF table contents?
    2. Can I set the row value via java script?
    Bottom line is I need to implement editable table in PDF. What are the ways I can achieve this feat?
    Thanking you in advance!
    Best Regards

    Hi PDL,
    I am actually writing a piece (C++) of code that generates Acroform currently. It is still in the primitive stage, just provided support only for text fields, choice fields and buttons.
    As I mentioned above, I have a requirement to generate a editable table...
    Sure I can provide the PDF(acroform) that is generated by the code.
    But how can I send the file to you? Can you share your email-Id? Or can I paste the content of the output here ?
    %PDF-1.5
    %%âãÏÓ
    1 0 obj
    <<
    /Pages 2 0 R
    /AcroForm 6 0 R
    /Type /Catalog
    >>
    endobj
    6 0 obj
    <<
    /CO []
    /Fields [ 7 0 R 9 0 R 10 0 R 11 0 R ]
    /NeedAppearances true
    >>
    endobj
    2 0 obj
    <<
    /Type /Pages
    /Count 1
    /Resources
    <<
    /ProcSet 3 0 R
    >>
    /Rotate 0
    /Kids [4 0 R ]
    >>
    endobj
    7 0 obj
    <<
    /A 8 0 R
    /BS <</W 1 /S /S>>
    /DA (/Helv 12.00 Tf 0.00 0.00 0.00 rg 0 G)
    /DR
    <<
    /Font <</Helv 14 0 R >>
    >>
    /F 4
    /FT /Btn
    /Ff 65536
    /H /P
    /MK
    <<
    /BC[0.87 0.83 0.55]
    /BG[1.00 0.94 0.55]
    /CA(PDF Button)
    >>
    /P 4 0 R
    /Rect [300.00 690.00 400.00 710.00]
    /Subtype /Widget
    /T (Button)
    /TU (PDF Button)
    /Type /Annot
    >>
    endobj
    8 0 obj
    <<
    /S /JavaScript
    /JS (if \(app.viewerVersion>=5\) {app.alert\("I-PDF 0.1 DEMO", 1\);})
    >>
    endobj
    9 0 obj
    <<
    /BS <</W 1 /S /S>>
    /DA (/Helv 12.00 Tf 0.00 0.00 0.00 rg 0 G)
    /DR
    <<
    /Font <</Helv 12 0 R >>
    >>
    /F 4
    /FT /Tx
    /Ff 12582912
    /H /P
    /MK
    <<
    /BC[0.00 0.00 0.00]
    /BG[1.00 1.00 1.00]
    >>
    /MaxLen 45
    /P 4 0 R
    /Rect [200.00 750.00 400.00 770.00]
    /Subtype /Widget
    /T (Text Field1)
    /Type /Annot
    >>
    endobj
    10 0 obj
    <<
    /BS <</W 1 /S /S>>
    /DA (/Helv 12.00 Tf 0.00 0.00 0.00 rg 0 G)
    /DR
    <<
    /Font <</Helv 13 0 R >>
    >>
    /F 4
    /FT /Tx
    /Ff 12591104
    /H /P
    /MK
    <<
    /BC[0.00 0.00 0.00]
    /BG[1.00 1.00 1.00]
    >>
    /MaxLen 15
    /P 4 0 R
    /Rect [200.00 720.00 400.00 740.00]
    /Subtype /Widget
    /T (Text Field2)
    /Type /Annot
    >>
    endobj
    11 0 obj
    <<
    /DA (/Helv 10.00 Tf 0.00 0.00 0.00 rg 0 G)
    /DR
    <<
    /Font <</Helv 15 0 R >>
    >>
    /F 4
    /FT /Ch
    /Ff 67239936
    /MK <</BG[0.87 0.83 0.55]>>
    /Opt [[( )( )] [(AMX) (American Express)] [(CBL) (Carte Blanche)] [(DCL) (Diners club)] [(DSC) (Discover)] [(ENR) (EnRoute)] [(JCB) (JCB)] [(MSC) (Mastercard)] [(VIS) (Visa)]]
    /P 4 0 R
    /Rect [200.00 650.00 300.00 670.00]
    /Subtype /Widget
    /T (Choice)
    /Type /Annot
    /V (VIS)
    >>
    endobj
    4 0 obj
    <<
    /Parent 2 0 R
    /Annots [7 0 R 9 0 R 10 0 R 11 0 R ]
    /MediaBox [0 0 595.00 842.00]
    /Resources
    <<
    /ProcSet [/PDF /Text /ImageI /ImageC]
    >>
    /Contents 5 0 R
    /Type /Page
    >>
    endobj
    5 0 obj
    <</Length 26>>
    stream
    q
    BT
    36 806 Td
    ET
    Q
    0 0 m
    endstream
    endobj
    3 0 obj
    <<[/PDF /Text /ImageI /ImageC]>>
    endobj
    12 0 obj
    <<
    /BaseFont /Helvetica
    /Subtype /Type1
    /Encoding /WinAnsiEncoding
    /Type /Font
    >>
    endobj
    xref
    0 13
    0000000000 65535 f
    0000000016 00000 n
    0000000172 00000 n
    0000002016 00000 n
    0000001756 00000 n
    0000001942 00000 n
    0000000081 00000 n
    0000000272 00000 n
    0000000603 00000 n
    0000000709 00000 n
    0000001017 00000 n
    0000001326 00000 n
    0000002064 00000 n
    trailer
    <<
    /Root 1 0 R
    /Size 13
    >>
    startxref
    2162
    %%EOF

  • Deleting DB table contents using internal table

    Hi Gurus,
    I have a requirement of deleting DB table contents. Requirement is as follows,
    User will select the DB table description in the seletion screen using drop down list.
    Whichever description he selects,the corresponding table contents should be deleted and we should not hardcode the table name in if or case conditions.
    Is this possible?
    Regards,
    G.Srinivasan

    Hi,
    You can get the Table name from the desciption from table DD02T.
    Use the Key word DELETE to delete the contents of a table from program.
    PARAMETERS : p_ddtext type ddtext.
    select single * from dd02t into table db_tab where DDLANGUAGE = 'EN' and ddtext = p_ddtext.
    DELETE DB_TAB-TABNAME
    FROM ITAB. " Take F1 help on this Key word
    IMPORTANT --> Do not manually delete the contents of a DB table in SAP.
    The individual records only deleted through BDC or any other Acceptable Methods.
    Rest is left to you. Be careful about this activity. Take enough Authourizations/ Permissions or consult your BASIS or other team members.
    Cheerz
    Ram

  • Display Table contents using HTMLB...Urgent Help Plz...

    Hello All,
    Im working on EP SP14 and SQL Server 2000.
    I have successfully established database connection.
    I want to know <b>how can I display Table contents using TableViewModel in HTMLB</b>.
    Please help.
    Its urgent.
    Awaiting Reply.
    Thanks in advance,
    Uday<b></b>

    See /thread/80270 [original link is broken]
    (please stop crossposting every question into two forums; thanks in advance)

  • How to print table contents?

    hi @,
    I am having a view which is dsiplaying data fetched from the R/3 through Adaptive RFC in a table. This table need to have a print functionality to print on the client.
    How to do this I am not having any function / UI to do this.
    Any help.
    Regards

    Hi,
    Try This:
    When the user click on Print button, launch a new window as below:
    public void onActionPrint(com.sap.xyz.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionPrint(ServerEvent)
              StringBuffer strB = new StringBuffer("/webdynpro/dispatcher/xyz.com/(component name space) ab~xyz~testprint/(application name)PrintTestApp");
              IWDWindow window = wdComponentAPI.getWindowManager().createNonModalExternalWindow(strB.toString(), "Print");
              window.show();
        //@@end
    The above code helps to launch a new window with your Web Dynpro application. The application is sepecific to print functionality.
    ThePrintTest App should have the content with format what exactly you would like to print. (Users use the browser standard print functionality to print the table content).
    This is a kind of work around and as of NW 7.0 there is no standard print functionality available in Web Dynpro.
    Thanks
    Krishna

Maybe you are looking for