DataSource Update mode field

I need to export data from BW (7.0) to another non-SAP Oracle based DB table. This external DB system has a text file interface that BW must export to that requires an update method field in order to use a delta method. The values required are "I" for input, "U" for update and "D" for delete.
I was thinking of using a DSO with the 0RECORDMODE field to indicate the delta method. Research tells me that to populate the 0RECORDMODE field I need to add it to the "Record Mode Field" (INVFIELD) in the ROOSFIELD table. How do I do that without editing ROOSFIELD table directly, i.e. is there a transaction to edit like RSA2 Extraction tab, Record Mode Field?
On a sidenote, has anyone else exported to a non-SAP Oracle DB from BW using a delta update?
Al

Hello,
Not sure why you are going for ROOSFIELD tables.
Since its a text file interface then you may want to use open hub to store the file imported from DSO to a text file and then use it as source for the oracle system.
If you use the delta option from the DSO to update to the files then the recordmode field is automatically populated based on kind of change to the records.
Since the delta will be loaded from the change log of the DSO therefore you need not maintain it manually in a table.You may not get the values which you are looking for like I and U but it will contain before and after image which you can try to use ...may be only after image is required.
As far as I know nothing needs to be maintained for the table ROOSFIELD.
Thanks
Ajeet

Similar Messages

  • Adding a row in matrix[Update Mode]

    Hi All,
    I am using a document type table, which has a matrix and i have created the UDO for dis. in Add mode its working properly. In update mode also its working properly but when i add a new row in the matrix its displaying the previous rows data n if i empty the fields and i tried to update then its showing the error like "This entry already exists in the following tables (ODBC -2035)  [Message 131-183]" .pls provide a solution for this.
    Regards,
    Vijay Kumar.

    Hi Vijay,
    You Can try this Code:
    oDBDataSource.Clear();
                                oMatrix.AddRow(1, oMatrix.RowCount);
    Here I am assuming that the matrix is bind with the DBDatasource.
    The whole point is that you have to Clear the Datasource before adding the new row, otherwise it will pickup the last supplied value from the Datasource.
    HTH
    Prashant Bansal

  • How can I get the Tables in my report to update their field lists?

    I am working with Crystal Reports 2008, and I have a ReportDocument loaded in a .NET project.
    I want to update the field lists of the tables (stored procedures) used in the report.  I am calling "VerifyDatabase()", but this does not update the field lists.  Through the designer, I accomplish this by going to the Database -> Set Datasource Location..., then clicking on the stored procedure (i.e. table) in the report, clicking on the stored procedure under the database in the bottom pane, and then clicking "Update".
    How can I accomplish this in code?
    Thanks for any help.

    Hello,
    You have to use RAS and the replace connection method. The Report Engine does not have the ability.
    Search forums for "ReplaceConnection_Click" and you'll find sample code that should work for you.
    Thank you
    Don

  • How to use a single page for create and update mode.

    Hi,
    I need to develop a single page to be used for both create and update modes.
    I am going to use a variable MODE
    and i will set this in the emp summary page.
    Based on the button clicked by the user i have to render the JSF page.
    For tis if the user selects a perticular and cliks on update thn i will pass the empno to the next.
    so there in the next i will appy a ViewCreiteria on my View Obj to fetch only that row so that only that emp will be displayed ion update mode.
    This is working fione for me.
    So now the issue is
    when the user clicks on CreatEmp button.
    i need to enable my VO for insert operations.
    for this i wrote the code like this in the beforePhase event
    FacesContext ctx = FacesContext.getCurrentInstance();
    ValueBinding valBinding = ctx.getApplication().createValueBinding("#{data}");
    BindingContext bContext = (BindingContext) valBinding.getValue(ctx);
    DCDataControl dcControl = bContext.findDataControl("DataControl");
    Application app = ctx.getApplication();
    ApplicationModule am = (ApplicationModule) dcControl.getDataProvider();
    System.out.println("After Appmodule initiation");
    // get the VO reference and initiate the query
    System.out.println("Before Page VO initiation");
    PrismDmPageSectionViewImpl vo = (ViewImpl)am.findViewObject("View");
    //ViewRowImpl row = (ViewRowImpl) vo.createRow();
    /* TO CREATE AN EMPTY ROW*/
    Row row=vo.createRow();
    System.out.println("New Row is created");
    //vo.createKey(row);
    vo.insertRow(row);
    vo.setCurrentRow(row);
    By doing this a new empty page is rendered.
    But when i fill up the values and click on ok.. i am getting the error like this..
    JBO-27023: Failed to validate all rows in a transaction.
    JBO-27027: Missing mandatory attributes for a row with key null of type View3
    JBO-27014: Attribute Id in View3 is required
    JBO-27014: Attribute PageeId in View3 is required
    Please point me out where i am missing.
    Thanks

    Hi,
    In my opinion you are over complicating things.
    This is what I do for using the sme page as both create and update without all this code.
    1) Create a browse page containing a an adf table with a select one component bound to your view object.
    2) Create an additional edit page containing only an edit form containing fields of your view object that your users must enter in order to add or edit rows.
    3) Link the pages in the JSF diagram with an "edit" navigation case from browse to edit page and a "return" navigation case from edit to browse (make sure that redirect option is NOT set on both cases)
    4) Remove the submit button from the edit page and add two application module bindings for the commit and rollback operations as command buttons in the form footer facet. Make sure that both buttons has an action of return and that their disabled property is set to false. You will probably change their labels to ok and cancel respectively.
    5) Drop a create action for your view object from the data control palette inside your page as a command button and set the action property to edit also.
    3) Set the action property of the view button to edit
    This should basically work without any code from your part. -- at least it does so for me -- if you like to make it a bit more funcy you may add am action listener inside your buttons and set a requeScope variable for example #{requestScope.editing} to true or false depending on the button clicked. Then add a title to your page with a value like #{requestScope.editing == true ? 'Editing record' : 'Adding a new record'}..
    Hope that helps.
    Thanassis

  • How to update information fields of a profile in Oracle UCM using RIDC

    Hi All
    I have a requirement in which i need to modify/update the metadata/information fields of a Profile in Oracle Webcenter Content(UCM).
    I found out that this can be achieved using RIDC api, but i have little knowledge about the same.
    If someone could suggest about how to retrieve and update the fields in UCM using RIDC or some other approach would be of great help.
    It's really important.Kindly help
    Regards
    ACM

    user13069455 wrote:
    Hi Jiri
    Even i have thought about the same as one of the approaches, but i was a bit apprehensive about using this one.
    I have few stupid queries regarding this:
    1)Will it expose the production database(connection details) to the environment?Yes. If you don't like the idea of giving connection to the database to a "third-party" program, you could go from the other side - create a UCM component (some kind of scheduled job), which will be a part of UCM, but do the same. It will be a bit more complicated, but might be considered more secure.
    2)Will it have any performance impact?I don't think there will be much impact - most of time, tables will be accessed in read-only mode (pulling the data out), so except few per cent of CPU and some memory it should not consume anything. Besides, you should be able to schedule upload to "quiet hours", if there are some
    3)Will it still be an integration with the UCM?Well, yes. It will be integration at the database level. But honestly, as long as it works, do you care how is it called?
    >
    Thanks
    ACM

  • Report to Form (in Update mode), update, "Close" back to report (just like QBE).

    Alright, I have been through the entire board and found bit and pieces here and there on how to do this, but I am not satisfied with the results. Answers to these questions will dictate whether we use this product or not.
    1) The QBE solution is great for the above EXCEPT I am unable (it seems) to make updates to the form portion of the Report/Form combination. I need to be able to lock off certain fields and disallow certain functions. Other's have asked whether this can be done. No answers issued forth.
    Is there some way short of hacking into the PL/SQL code of updating the form on a wizard created QBE?
    2) I was able to create my own report, link (via link object) to a custom form (update the form as I needed). Now I would like my users not to have to hit the query button (which is absurd in this case because they already have the proper record displayed). So I need to open the form in "update" mode. I have seen some different approaches to this on the board, and all kinds of code, but is there a simple way to do this (preferably from the tool, not hacking code)?
    I see the code in the various posting (including the FAQ), the question is where I put in in the context of my link from report to form (if it is in the native pl/sql, this is not an answer because we will not go that route; having code blown away by the tool and have to be reentered. It goes in in the context of the tool or we don't use the tool).
    Also, is there a way to utilize the "close" button from the QBE that so nicely takes you back to the report and does a refresh?
    This is the simplest app I could dream up to test this product and it looks like it falls short.
    In summation:
    1) Generate a report. (yes)
    2) Link to form (yes)
    2a) Link direct to record (no query click) (no, without hacking)
    3) update the form (yes, if after query click)
    4) Jump back to report at spot where you left, do automatic refresh (just like QBE) (No, without hacking)
    Again, this is the simplest and most common of apps, I cannot understand why it would be so hard to accomplish. What am I missing? Anybody on the board, please advise.
    null

    If your report is created using ‘Reports From SQL Query’ then you can modify it using the following to achieve this:
    1. Remove the link from ‘Column Formatting’ section of the report object.
    2. In the SQL of the report , use custom link to the column where you want to provide link using the syntax
    select a.empno,’‘||a.ename||’‘ ename_link,a.deptno
    from scott.emp a
    Order by a.empno
    and the form will always open in ‘INSERT’ mode with passed values filled in.
    Thanks
    Krishnamurthy

  • Data collection task in Update mode is not posible with Original list

    Hi Friends,
    When I try to Execute the Task for data collection in sa38.I am getting the Error with in 9 sec.
    UPDATE MODE IS NO POSSIBLE WITH ORIGINAL LIST
    Message No. UCS0111
    Diagnosis :
    If you select the indicator"original list"the current task status is ignored.In this case,the system simulates a task run in with all of the organisational units are not yet blocked.Thus,setting this indicator is meaningful and valid only if the task is executed in test mode at tthe same time.
    procedure : select the original list & Test run together.
    My problem is I can not select the Test run in production  server.
    Can any one please help me to solve the Issue.

    I Thank you all for Responding to me.
    Hi Dan,
    SA38 provides all the needed parameters- Con.Group,Company,Version,Fis.Year,Period,Group currency.
    Iam trying to run the task with SA38 for Data Collection.
    Hi Lucio,
    When I Check the Fields Both the  Log & Original list . The programe gives an error message "UPDATE MODE IS NOT POSSIBLE WITH ORIGINAL LIST"
    Even when I tried with Log,Test Run & Original List Iam getting the Same error Message "UPDATE MODE IS NOT POSSIBLE WITH ORIGINAL LIST"
    I can run the task Successfully with selecting the Log option only. But my Client need  to Use both Log & Original list ( as they used to run in BIW 3.5 ) Now it we are using BI 7.
    Hi Christopher,
    We are running the programe UCBATCH01,with the T code SA38.
    Hi Eugene,
    I will look in to the link and i will Discuss with the Basis team.
    Once again Thank you all for responding
    Suraj.

  • GRPO Document  Opening in Update Mode

    Hi All
    When i saved the GRPO Document and again i try to navigate to the saved document it is opening in update mode and if i update then it become 'ok' mode and again if i try to navigate the posted document  it is opening in update mode again
    how can i overcome this issue
    iam using PL10 and iam also using User Defined fields in the Title Level Document
    Thanks in Advance

    Hi Madhu......
               I think you have applied FMS on any one of the field and kept it refresh regularly on some other field. So either you should remove the FMS or you should keep it on display saved values. This will fix your problem.....
    Regards,
    Rahul

  • Want to change an update mode from Delta to Full for 2LIS-11-VAHDR

    We went live recently and since that moment, we are having problem with this DataSource. We've been able to complete the Init and the Delta ran 1 time (the day after).  Since then, it's scheduled to run every night but the data package are always empty.
    2LIS-11-VASCL and 2LIS-11-VAITM are running in Full and are executing with success every night which gives us the idea to turn 2LIS-11-VAHDR in Full too.  We are not very concerned by the volume of transactions in Sales Order.  That's not what triggered the Init/Delta choice.
    I'm now looking for the steps to follow to turn VAHDR in Full.  I know that I have to adjust the Process Chain too. Any recommendations are welcome too. Here's a snapshot of the PC:
    Thank you all for your help!

    In my eyes i think the better idea is to check and identify the issue related to delta.I understand today you have less data so you are able to do the full load daily but for sure after some time the data will be huge.During that time running full will consume all the system resources and it will lead to huge loading time.
    I feel the cons i mentioned above are enough to look for the solution that why delta records are not getting updated.
    Check the update mode for application 11 if it is queued delta then check in LBWQ whether you get records there or not.Then check if V3 job is scheduled or not to push the data from LBWQ to RSA7.
    Hope this helps.
    Regards,
    AL

  • V1, V2, V3 update modes

    Hi,
    Can anyone tell me what are V1, V2, V3 update modes. Please tell me the difference between all the three. Are there any other update modes? How are the above different from - Direct Delta , Queued delta and unserialized v3 update methods?
    Am actually very confused with the above topics.
    It would be great if someone could explain in details.
    Thanks in advance,
    maddy

    Hi Maddy.
    V1 denotes time-critical updates used for updating the
    actual transaction tables.
    V2 denotes non-time-critical updates used for updating
    statistics tables related to the transaction tables.
    For instance, after a sales order entry transaction
    is completed, the corresponding sales order tables would be
    updated in V1 mode, and the corresponding statistics tables
    would be updated in V2 mode.
    V3 update mode(Uses delta queue technology) is similar
    to the V2 update mode. The main difference is that V2
    updates are always triggered by applications, while V3
    updates may be scheduled independently. Many extraction
    programs available for mySAP.com applications today use the
    delta queue technology to identify deltas.
    and also check this
    hi
    V1,V2,V3 updates
    v1, v2,and v3 updates
    V1, V2 and V3 updates in LO
    LO Cockpit contains a set of extract structures and enable extraction of logistics data to your SAP BI system via logistics DataSources.
    Check the following links
    /people/sap.user72/blog/2004/12/16/logistic-cockpit-delta-mechanism--episode-one-v3-update-the-145serializer146
    LOGISTIC COCKPIT DELTA MECHANISM - Episode two: V3 Update, when some problems can occur...
    LOGISTIC COCKPIT DELTA MECHANISM - Episode three: the new update methods
    LOGISTIC COCKPIT - WHEN YOU NEED MORE - First option: enhance it !
    LOGISTIC COCKPIT: a new deal overshadowed by the old-fashioned LIS ?
    Also check the step by step guide below.
    http://www.sap-img.com/business/lo-cockpit-step-by-step.htm
    thanks
    sreeni

  • URGENT: Updating FISTL field using BAPI_PO_CHANGE

    HI Friends,
    I am about to update the field FISTL and GEBER in EKKN .
    I am using BAPI_PO_CHANGE to update those fields . I have tried passing the fields to the table
    POITEM  and POACCOUNT in BAPI.
    i have also given the values to POITEMX  and POACCOUNTX tables .
    I have given the BAPI_COMMIT_TRANSACTION also . i have given wait time also . Even then the value is not updated in EKKN table .
    What could be reason for value not getting updated .
    Is the table to which i am passing in BAPI is ok?
    Please help me in this issue , its urgent.
    Reward is sure

    Hi Gokul,
    Try 'BAPI_PO_CREATE1' and see if you can achieve the result.
    *& Report  YDM_PO_CREATE                                               *
    REPORT  ydm_po_create.
    *-- Input File Declaration
    TYPES: BEGIN OF ty_input_file,
           column1 TYPE char50,
           column2 TYPE char50,
           column3 TYPE char50,
           column4 TYPE char50,
           column5 TYPE char50,
           column6 TYPE char50,
           column7 TYPE char50,
           column8 TYPE char50,
           column9 TYPE char50,
           column10 TYPE char50,
           column11 TYPE char50,
           column12 TYPE char50,
           column13 TYPE char50,
           column14 TYPE char50,
           column15 TYPE char50,
           column16 TYPE char50,
           column17 TYPE char50,
           column18 TYPE char50,
    END OF ty_input_file.
    DATA: i_input_file  TYPE STANDARD TABLE OF ty_input_file,
          wa_input_file TYPE ty_input_file.
    CONSTANTS: c_path     TYPE char20 VALUE 'C:\',
               c_mask     TYPE char9  VALUE ',*.*,*.*.',
               c_mode     TYPE char1  VALUE 'O',
               c_filetype TYPE char10 VALUE 'ASC',
               c_x        TYPE char01 VALUE 'X'.
    PARAMETERS : p_fname   LIKE rlgrap-filename.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
    *-- Browse Presentation Server
      PERFORM f4_presentation_file.
    START-OF-SELECTION..
    *-- Read presentation server file
      PERFORM f1003_upload_file.
      IF NOT i_input_file[] IS INITIAL.
        PERFORM split_data.
      ENDIF.
    *&                  Form  f4_presentation_file
    *&                F4 Help for presentation server
    FORM f4_presentation_file .
      CALL FUNCTION 'WS_FILENAME_GET'
        EXPORTING
          def_path         = c_path
          mask             = c_mask
          mode             = c_mode
          title            = text-001
        IMPORTING
          filename         = p_fname
        EXCEPTIONS
          inv_winsys       = 1
          no_batch         = 2
          selection_cancel = 3
          selection_error  = 4
          OTHERS           = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " f4_presentation_file
    *&                      Form  f1003_upload_file
    *&                         Upload File
    FORM f1003_upload_file .
      DATA: lcl_filename TYPE string.
      lcl_filename = p_fname.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                = lcl_filename
          filetype                = c_filetype
          has_field_separator     = c_x
        TABLES
          data_tab                = i_input_file
        EXCEPTIONS
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          OTHERS                  = 17.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        EXIT.
      ENDIF.
    ENDFORM.                    " f1003_upload_file
    *&      Form  split_data
          Collect data for creating Purchase Order
    FORM split_data .
      DATA: i_poitem        TYPE STANDARD TABLE OF bapimepoitem,
            i_poitemx       TYPE STANDARD TABLE OF bapimepoitemx,
            i_poitem_sch    TYPE STANDARD TABLE OF bapimeposchedule,
            i_poitem_schx   TYPE STANDARD TABLE OF bapimeposchedulx,
            i_acct_***      TYPE STANDARD TABLE OF bapimepoaccount,
            i_acct_assx     TYPE STANDARD TABLE OF bapimepoaccountx,
            i_services      TYPE STANDARD TABLE OF bapiesllc ,
            i_srvacc        TYPE STANDARD TABLE OF bapiesklc,
            i_return        TYPE STANDARD TABLE OF bapiret2,
            wa_header       TYPE bapimepoheader,
            wa_headerx      TYPE bapimepoheaderx,
            wa_poitem       TYPE bapimepoitem,
            wa_poitemx      TYPE bapimepoitemx,
            wa_poitem_sch   TYPE bapimeposchedule,
            wa_poitem_schx  TYPE bapimeposchedulx,
            wa_acct_***     TYPE bapimepoaccount,
            wa_acct_assx    TYPE bapimepoaccountx,
            wa_services     TYPE bapiesllc,
            wa_srvacc       TYPE bapiesklc,
            wa_return       TYPE bapiret2,
            ws_po           TYPE bapimepoheader-po_number.
      break gbpra8.
      wa_services-pckg_no = 10.
      wa_services-line_no = 1.
      wa_services-outl_no = '0'.
      wa_services-outl_ind = c_x.
      wa_services-subpckg_no = 20.
      APPEND wa_services TO i_services.
      wa_srvacc-pckg_no = 10.
      wa_srvacc-line_no = 1.
      wa_srvacc-serno_line = 01.
      wa_srvacc-serial_no = 01.
      wa_srvacc-percentage = 100.
      APPEND wa_srvacc TO i_srvacc.
      LOOP AT i_input_file INTO wa_input_file.
        IF wa_input_file-column2 EQ 'HD'.
          wa_header-doc_type = wa_input_file-column3.
          wa_header-creat_date = sy-datum.
          wa_header-created_by = sy-uname.
          wa_header-vendor = wa_input_file-column4.
          PERFORM conversion_output USING wa_header-vendor
                                    CHANGING wa_header-vendor.
          wa_header-comp_code = 'DE03'.
          wa_header-purch_org = 'DE03'.
          wa_header-pur_group = 'DE1'.
          wa_header-vper_start = wa_input_file-column9.
          wa_header-vper_end = wa_input_file-column10.
          wa_headerx-comp_code = c_x.
          wa_headerx-doc_type = c_x.
          wa_headerx-creat_date = c_x.
          wa_headerx-created_by = c_x.
          wa_headerx-vendor = c_x.
          wa_headerx-purch_org = c_x.
          wa_headerx-pur_group = c_x.
          wa_headerx-vper_start = c_x.
          wa_headerx-vper_end = c_x.
        ENDIF.
        IF wa_input_file-column2 EQ 'IT'.
          wa_poitem-po_item = wa_input_file-column3.
          wa_poitem-short_text = wa_input_file-column6.
          wa_poitem-plant = wa_input_file-column8.
          wa_poitem-quantity = '1'.
          wa_poitem-tax_code = 'V0'.
          wa_poitem-item_cat = 'D'.
          wa_poitem-acctasscat = 'K'.
          wa_poitem-matl_group = wa_input_file-column7.
          wa_poitem-pckg_no = '10'.
          APPEND wa_poitem TO i_poitem .
          wa_poitemx-po_item = wa_input_file-column3.
          wa_poitemx-po_itemx = c_x.
          wa_poitemx-short_text = c_x.
          wa_poitemx-plant = c_x.
          wa_poitemx-quantity = c_x.
          wa_poitemx-tax_code = c_x.
          wa_poitemx-item_cat = c_x.
          wa_poitemx-acctasscat = c_x.
          wa_poitemx-matl_group = c_x.
          wa_poitemx-pckg_no = c_x.
          APPEND wa_poitemx TO i_poitemx.
          wa_poitem_sch-po_item = wa_input_file-column3.
          wa_poitem_sch-delivery_date = sy-datum.
          APPEND wa_poitem_sch TO i_poitem_sch.
          wa_poitem_schx-po_item = wa_input_file-column3.
          wa_poitem_schx-po_itemx = c_x.
          wa_poitem_schx-delivery_date = c_x.
          APPEND wa_poitem_schx TO i_poitem_schx.
          wa_acct_***-po_item = 10.
          wa_acct_***-serial_no = 01.
          wa_acct_***-gl_account = '0006360100'.
          wa_acct_***-co_area  = '1000'.
          wa_acct_***-costcenter = 'KC010000'.
          APPEND wa_acct_*** TO i_acct_***.
          wa_acct_***-po_item = 10.
          wa_acct_***-serial_no = 02.
          wa_acct_***-gl_account = '0006360100'.
          wa_acct_***-co_area  = '1000'.
          wa_acct_***-costcenter = 'KC010000'.
          APPEND wa_acct_*** TO i_acct_***.
          wa_acct_assx-po_item = 10.
          wa_acct_assx-serial_no = 01.
          wa_acct_assx-po_itemx = c_x.
          wa_acct_assx-serial_nox = c_x.
          wa_acct_assx-gl_account = c_x.
          wa_acct_assx-co_area  = c_x.
          wa_acct_assx-costcenter = c_x.
          APPEND wa_acct_assx TO i_acct_assx.
          wa_acct_assx-po_item = 10.
          wa_acct_assx-serial_no = 02.
          wa_acct_assx-po_itemx = c_x.
          wa_acct_assx-serial_nox = c_x.
          wa_acct_assx-gl_account = c_x.
          wa_acct_assx-co_area  = c_x.
          wa_acct_assx-costcenter = c_x.
          APPEND wa_acct_assx TO i_acct_assx.
          wa_services-pckg_no = 20.
          wa_services-line_no = 2.
          wa_services-service = wa_input_file-column9.
          wa_services-quantity = '100'.
          wa_services-gr_price = '100'.
          wa_services-userf1_txt = wa_input_file-column13.
          APPEND wa_services TO i_services.
          wa_srvacc-pckg_no = 20.
          wa_srvacc-line_no = 1.
          wa_srvacc-serno_line = 02.
          wa_srvacc-serial_no = 02.
          wa_srvacc-percentage = 100.
          APPEND wa_srvacc TO i_srvacc.
        ENDIF.
      ENDLOOP.
      CALL FUNCTION 'BAPI_PO_CREATE1'
        EXPORTING
          poheader                     = wa_header
          poheaderx                    = wa_headerx
      POADDRVENDOR                 =
      TESTRUN                      =
      MEMORY_UNCOMPLETE            =
      MEMORY_COMPLETE              =
      POEXPIMPHEADER               =
      POEXPIMPHEADERX              =
      VERSIONS                     =
      NO_MESSAGING                 =
      NO_MESSAGE_REQ               =
      NO_AUTHORITY                 =
      NO_PRICE_FROM_PO             =
       IMPORTING
         exppurchaseorder             = ws_po
      EXPHEADER                    =
      EXPPOEXPIMPHEADER            =
       TABLES
         return                       = i_return
         poitem                       = i_poitem
         poitemx                      = i_poitemx
      POADDRDELIVERY               =
         poschedule                   = i_poitem_sch
         poschedulex                  = i_poitem_schx
         poaccount                    = i_acct_***
      POACCOUNTPROFITSEGMENT       =
         poaccountx                   = i_acct_assx
      POCONDHEADER                 =
      POCONDHEADERX                =
      POCOND                       =
      POCONDX                      =
      POLIMITS                     =
      POCONTRACTLIMITS             =
         poservices                   = i_services
         posrvaccessvalues            = i_srvacc
      POSERVICESTEXT               =
      EXTENSIONIN                  =
      EXTENSIONOUT                 =
      POEXPIMPITEM                 =
      POEXPIMPITEMX                =
      POTEXTHEADER                 =
      POTEXTITEM                   =
      ALLVERSIONS                  =
      POPARTNER                    =
      break gbpra8.
      LOOP AT i_return INTO wa_return.
      ENDLOOP.
    ENDFORM.                    " split_data
    *&      Form  conversion_output
          Conversion exit input
    FORM conversion_output  USING    p_ip
                            CHANGING p_op.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = p_ip
        IMPORTING
          output = p_op.
    ENDFORM.                    " conversion_output
    <b>Reward points if this helps.
    Manish</b>

  • Adobe Interactive - Problem Updating Form Fields within tables

    I am working with Interactive forms. My scenario is I download the form, update, upload to the Web and then submit to the backend, I am basically use a blend of the tutorials available. From a Web Dynpro perspective all is working well.
    The problem I am having is in the Form itself.
    I have 10 fields which I want the user to update.  Fields which are bound at Page Level, work fine. e.g.
    <CONTEXT>.<PAGE>.<FIELD>::Change
    Data_Source.Page1.Langu::Change
    However Fields in a table do not seemed to work properly. e.g.
    <CONTEXT>.<PAGE>.<TABLE>.<ROW[x]>.<CELL[y]>.<FIELD>::Change
    Data_Source.Page1.tblCusDetails.Row[0].Cell[1].Name
    If I perform an update in the form Langu works well, Name does not.
    e.g. Page1.Langu.rawValue = "EN"                             This works OK
           Page1.tblCusDetails.Row[0].Cell[1].Name = "Andrew "            This does not work.
    I got round this issue by searching for the attribute at runtime.
    Now (Based on my scenario) I am trying to update my form;
    I download the form to the front end. Update and save. When I open the form again only Langu has saved, Name reverts back to <Emtpy>.
    My workaround would be to remove all the tables, which I will start now, but  I am wondering if I am doing something wrong or if its a bug in the form,?
    Can anyone help?
    Andrew

    Hello Bhavik:
    Thank you, for your quick response.  To be honest, I went through the tutorial from SAP TechEd, "Creating Interactive Forms in Web Dynpro for JAVA, and it is drving me crazy.
    I did create under the Contect actually Value Node:
    DataSource and within that two Value Node for PersonalData and TravelData.  For PersonalData, the following Value Attribute: CostCenter, Department, Name etc etc........
    The properties is already set for the value attributes to string, I tried to change it to init it will not take it? 
    Please call me Amr.  Thank you,

  • Updating KNA1 field PSTLZ

    Hello all, I am trying to update a field in KNA1.  As ou know the user exits for the customer master do not have access to update this table.  I tried several BTE's also with no luck.  They do not have access to KNA1 fields either.
    I need to do this in an online mode for transaction VD02.  I tried setting up a call transaction in BTE 00001321, but the call transaction locks becuase I am already have the customer locked. 
    I also tried a trick to assign the value using a field symbol as suggested in a previous forum, but this dumped becuase I was trying to update a protected field.
    Any ideas would be greatly appreciated.
    Troy

    Hi,
    Did you try in update task mode?
    Also please try transaction MASS with object type KNA1.
    Regards,
    Ferry Lianto

  • To Activate the Approval Process when document is in update mode

    Dear Expert,
                        I have applied the Approval Process for UDF using the query "Select Distinct 'True' From ORDR T0
    Where IsNull($[ORDR.U_Rebate.number],0)>0 and $[ORDR.DocType]='I' ".
    Now as the field is UDF user is able to modify even after approval procedure.
    Please help me to apply the above query for the  Approval process even when the document is in update mode.
    regards,
    PankajK

    Dear Pankaj,
    Current B1 design only support approval for adding document. Update will not trigger approval.
    You may use SP_TN instead to block user updating it. If you are not familiar with the SP, search the forum first.
    Thanks,
    Gordon

  • Updating LIFSK field of  VBAK table

    Hi,
    I have a workarea of type VBAK.
    The workarea has field VBELN and LIFSK populated.
    I want to Update the field LIFSK of database table VBAK.
    I assume, using statement "UPDATE" would have some implications while changing master table VBAK.
    Hence i want to know if there any function module or BAPI is available to do this?
    Regards
    Nishant
    Message was edited by: Nishant Gupta

    hi,
    check this sample...
    REPORT  Z_SALES_ORDER_CHANGE
            NO STANDARD PAGE HEADING
            LINE-SIZE  132
            LINE-COUNT 65(0)
            MESSAGE-ID ZZ.
    TABLES: VBAP.
    DATA:
    V_FILEIN(90)   TYPE C,
    V_RECIN        TYPE I,
    V_RECVBAP      TYPE I,
    V_RECORDER     TYPE I,
    V_VBELN        LIKE VBAP-VBELN,
    ORDERHEADERINX LIKE BAPISDH1X.
    DATA: BEGIN OF I_ORDERS OCCURS 0,
    VBELN LIKE VBAK-VBELN,
    POSNR LIKE VBAP-POSNR,
    BRGEW(18) TYPE C,
    VOLUM(18) TYPE C,
    END OF I_ORDERS.
    DATA: BEGIN OF I_OUTPUT OCCURS 0,
    VBELN LIKE VBAK-VBELN,
    POSNR LIKE VBAP-POSNR,
    * GEWEI LIKE VBAP-GEWEI,
    BRGEW LIKE VBAP-BRGEW,
    VOLUM LIKE VBAP-VOLUM,
    CKWGT TYPE C,
    CKVOL TYPE C,
    END OF I_OUTPUT.
    DATA: BEGIN OF ORDERITEMIN OCCURS 0.
            INCLUDE STRUCTURE BAPISDITM.
    DATA: END OF ORDERITEMIN.
    DATA: BEGIN OF ORDERITEMINX OCCURS 0.
            INCLUDE STRUCTURE BAPISDITMX.
    DATA: END OF ORDERITEMINX.
    DATA: BEGIN OF RETURN OCCURS 0.
            INCLUDE STRUCTURE BAPIRET2.
    DATA: END OF RETURN.
    DATA: BEGIN OF BAPIRETURN OCCURS 0.
            INCLUDE STRUCTURE BAPIRET2.
    DATA: END OF BAPIRETURN.
    PARAMETERS:
    P_PATH(45) TYPE C DEFAULT '/usr/users/ftpsapom/' LOWER CASE,
    P_FNAME(32) TYPE C DEFAULT '/sweetjo.txt' LOWER CASE.
    START-OF-SELECTION.
    * CONCATENATE PATH AND FILE NAME INTO ONE VARIABLE
      CONCATENATE P_PATH P_FNAME INTO V_FILEIN.
    * OPEN DATASET
      IF V_FILEIN IS INITIAL.
        MESSAGE E002 WITH 'FILE' V_FILEIN 'DOES NOT CONTAIN ANY DATA!'.
      ELSE.
        OPEN DATASET V_FILEIN
             FOR INPUT
             IN TEXT MODE.
        IF SY-SUBRC = 0.
    * READ DATASET
          DO.
            READ DATASET V_FILEIN INTO I_ORDERS.
            IF SY-SUBRC = 0.
              APPEND I_ORDERS.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
    * CLOSE DATASET
          CLOSE DATASET V_FILEIN.
          IF SY-SUBRC <> 0.
            MESSAGE E002 WITH 'ERROR - CLOSING' V_FILEIN.
          ENDIF.
        ELSE.
          MESSAGE E002 WITH 'ERROR - COULD NOT OPEN' V_FILEIN.
        ENDIF.
      ENDIF.
    * SORT AND REMOVE DUPLICATES FROM I_ORDERS
      SORT I_ORDERS BY VBELN POSNR.
      DELETE ADJACENT DUPLICATES FROM I_ORDERS.
    * POPULATE I_OUTPUT
      LOOP AT I_ORDERS.
        SHIFT I_ORDERS-POSNR LEFT  DELETING LEADING SPACE.
        CONCATENATE '0' I_ORDERS-POSNR INTO I_ORDERS-POSNR.
        SELECT SINGLE BRGEW VOLUM
        FROM VBAP
        INTO (VBAP-BRGEW, VBAP-VOLUM)
        WHERE VBELN = I_ORDERS-VBELN
          AND POSNR = I_ORDERS-POSNR.
        IF SY-SUBRC = 0.
          IF VBAP-BRGEW = 0.
            I_OUTPUT-CKWGT = 'X'.
          ENDIF.
          IF VBAP-VOLUM = 0.
            I_OUTPUT-CKVOL = 'X'.
          ENDIF.
          I_OUTPUT-VBELN = I_ORDERS-VBELN.
          I_OUTPUT-POSNR = I_ORDERS-POSNR.
    *     I_OUTPUT-GEWEI = 'ST'.
          I_OUTPUT-BRGEW = I_ORDERS-BRGEW.
          I_OUTPUT-VOLUM = I_ORDERS-VOLUM.
          APPEND I_OUTPUT.
          CLEAR: I_OUTPUT.
        ENDIF.
        V_RECIN = V_RECIN + 1.
      ENDLOOP.
    * POPULATE BAPI DATA AND RUN BAPI
      CLEAR: ORDERHEADERINX, ORDERITEMIN, ORDERITEMINX,
             RETURN, BAPIRETURN.
      REFRESH: ORDERITEMIN, ORDERITEMINX, RETURN, BAPIRETURN.
      ORDERHEADERINX-UPDATEFLAG = 'U'.
      LOOP AT I_OUTPUT WHERE CKWGT = 'X' OR CKVOL = 'X'.
        V_RECVBAP = V_RECVBAP + 1.
        IF I_OUTPUT-VBELN <> V_VBELN AND SY-TABIX <> 1.
          V_RECORDER = V_RECORDER + 1.
          CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
               EXPORTING
                    SALESDOCUMENT    = V_VBELN
                    ORDER_HEADER_INX = ORDERHEADERINX
               TABLES
                    RETURN           = RETURN
                    ORDER_ITEM_IN    = ORDERITEMIN
                    ORDER_ITEM_INX   = ORDERITEMINX.
          CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
               EXPORTING
                    WAIT   = 'X'
               IMPORTING
                    RETURN = BAPIRETURN.
    * WRITE OUT RETURN
          LOOP AT RETURN.
            WRITE: / RETURN.
          ENDLOOP.
          WRITE: / BAPIRETURN.
          SKIP.
          CLEAR: ORDERITEMIN, ORDERITEMINX,
                 RETURN, BAPIRETURN.
          REFRESH: ORDERITEMIN, ORDERITEMINX, RETURN, BAPIRETURN.
        ENDIF.
        ORDERITEMIN-ITM_NUMBER = I_OUTPUT-POSNR.
    *   ORDERITEMIN-UNTOF_WGHT = I_OUTPUT-GEWEI.
        IF NOT I_OUTPUT-CKWGT IS INITIAL.
          ORDERITEMIN-GROSS_WGHT = I_OUTPUT-BRGEW.
          ORDERITEMINX-GROSS_WGHT = 'X'.
        ENDIF.
        IF NOT I_OUTPUT-CKVOL IS INITIAL.
          ORDERITEMIN-VOLUME = I_OUTPUT-VOLUM.
          ORDERITEMINX-VOLUME = 'X'.
        ENDIF.
        APPEND ORDERITEMIN.
        ORDERITEMINX-ITM_NUMBER = I_OUTPUT-POSNR.
    *   ORDERITEMINX-UNTOF_WGHT = 'X'.
        ORDERITEMINX-UPDATEFLAG = 'U'.
        APPEND ORDERITEMINX.
        V_VBELN = I_OUTPUT-VBELN.
      ENDLOOP.
    * RUN BAPI ON LAST ORDER
      IF NOT ORDERITEMIN IS INITIAL.
        V_RECORDER = V_RECORDER + 1.
        CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
             EXPORTING
                  SALESDOCUMENT    = V_VBELN
                  ORDER_HEADER_INX = ORDERHEADERINX
             TABLES
                  RETURN           = RETURN
                  ORDER_ITEM_IN    = ORDERITEMIN
                  ORDER_ITEM_INX   = ORDERITEMINX.
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
             EXPORTING
                  WAIT   = 'X'
             IMPORTING
                  RETURN = BAPIRETURN.
    * WRITE OUT RETURN
        LOOP AT RETURN.
          WRITE: / RETURN.
        ENDLOOP.
        WRITE: / BAPIRETURN.
        SKIP.
      ENDIF.
    * WRITE OUT RECORD COUNT FROM FILE
      WRITE: / 'RECORD COUNT FROM FILE ', V_RECIN.
      SKIP.
    * WRITE OUT RECORD COUNT FROM FILE
      WRITE: / 'RECORD COUNT OF LINES TO CHANGE ', V_RECVBAP.
      SKIP.
    * WRITE OUT RECORD COUNT FROM FILE
      WRITE: / 'RECORD COUNT OF ORDERS TO CHANGE ', V_RECORDER.
      SKIP.
    * TOP OF PAGE
    TOP-OF-PAGE.
      WRITE:/1(5)    TEXT-H01,    6(8) SY-DATUM MM/DD/YY,
            100(8)   TEXT-H02,  126(8) SY-PAGNO.
      WRITE:/1(5)    TEXT-H03,    6(8) SY-UZEIT USING EDIT MASK '__:__:__',
            20(77)   TEXT-H04,
           100(8)    TEXT-H05, 108(25) SY-REPID.
      WRITE:/1(6)    TEXT-H06,   8(12) SY-UNAME,
            20(4)    TEXT-H07,  25(32) SY-HOST,
           100(13)   TEXT-H08,  121(8) SY-SYSID,
           129 '/',             130(3) SY-MANDT.
      ULINE.
      SKIP.
    here i am changing the items, but in your case it is simple.
    only thing you need to pass is
    VALUE(SALESDOCUMENT) LIKE  BAPIVBELN-VBELN
    *"     VALUE(ORDER_HEADER_IN) LIKE  BAPISDH1 STRUCTURE  BAPISDH1
    *"       OPTIONAL
    *"     VALUE(ORDER_HEADER_INX) LIKE  BAPISDH1X STRUCTURE  BAPISDH1X
    first one is sales order, sencond is ORDER_HEADER_IN-del_block , and third one is ORDER_HEADER_INX -updflag = 'U' and relevant field for lifsk = 'X' .
    try this and get back if you have any doubts.
    Regards
    vijay

Maybe you are looking for

  • Video playback on flash plugin is very bad

    This is double post from safari forum. I am not shure if this is a macbook, grapic card, safari or flash10 plugin isue. My guess is the grapich card. When I try to play a video made by Norwegian Broadcasting, it doesent play. It only shows purple noi

  • Still looking for answers about wifi problems

    Hi there since the last update, i couldn't get connected to the net using wifi, i talked with my provider, and the best solution they gave was to unlock the secuity in my modem or router, whatever, i did, i was aware of the consequences, and i've bee

  • Apps not synching after 2.1 update...

    i searched the foru for my question but didnt find one that applied... i did the update by downloading the update only, then doing a restore... then uploading the update.. i also restored with my back up, then synched my phone.... but the apps , none

  • Inbound IDOC for Payroll results

    Hi, does anybody know the import IDOC for payroll results? Anybody? Or other method to import payroll results? Thanks, Juzio Edited by: Juzio Kowlaski on Nov 16, 2010 9:43 AM

  • LayeredPane in a JApplet?

    Hi, my problem is that the LayeredPane in my applet doesn't seem to appear. Basically my code starts with this: JLayeredPane layeredPane = getLayeredPane();Then when a certain button is pressed, I want the layered pane to display a component, a JList