Error in calling pa_project_pub.UPDATE_TASK to update attribute8 of pa_task

Hi All,
I am calling procedure pa_project_pub.UPDATE_TASK to update attribute8 od pa_tasks, it runs fine if one setup WORKPLAN is disabled, but when it is enabled, this API gives me following error
The flex field values you have entered are invalid.
User-Defined Exception in Package PA_PROJ_TASK_STRUC_PUB Procedure update_task_structure
Do any body have any ideas, how to tackle this setup in API. I want to run this API successfully irrespective of this setup.
I found one parameter p_structure_type in this API pa_project_pub.UPDATE_TASK, i tried to pass 'WORKPLAN' for this. but then it gives me error
Wrong structure type provided. Either the Workplan structure does not exist for this project.
Any idea would help..
Thanks

Hi All,
Thank you All.
Actualy I was watching the thread and got no Reply.this enable me to search more for the cause and eventually for the solution.
The Error "The flex field values you have entered are invalid" was because of DFF values only. I found this solution from API code only. It takes me to PA_PROJECTS_PVT where I Found the Error Code and then to flex field validation and then to Task utility Package.
Actually when you are not passing any value for Attributes, It will take the Old values only. and If the old values fails to Validate, this issue may arise. Same was the cause in this case. For An attribute the Value Set was "Standard Date" and it was accepting "DD-MON-RRRR" from Front End, but keeping "DD-MON-RRRR HH:MI:SS" as a value in the Attribute. For Eg. 12-DEC-2012 will be stored as 12-DEC-2012 00:00:00. It was there for almost all the Tasks.
And when it was passed internally to API, It was causing the Error that Value enterted are Invalid.
I came to know only after running the Desc Flex Field Validate API, which PA_PROJECTS_PVT was using.
Got the Solution and feel like sharing with you all.
Thanks,
Amit

Similar Messages

  • API pa_project_pub.UPDATE_TASK is not updating attributes

    Hi All,
    I am facing a strange problem in calling API pa_project_pub.UPDATE_TASK. It updates fields like task name, description etc, but it doesn;t updates attribute8, or any attribute fields. The DFF which is on this table pa_tasks, is context basis, and we are updating it for 'Shipping' context, and I am giving this value means 'Shipping' in attribute_category fields, becasue in table pa_tasks, it stores this value in attribute_category only.
    Below is the code, i m using... Please let me know if I am missing any parameter, becasue this API is giving SUCCESS, so I dont know why the values are not getting updated.
    pa_project_pub.UPDATE_TASK(p_api_version_number => 1.0,
    p_commit => FND_API.G_TRUE,
    p_init_msg_list => FND_API.G_TRUE,
    p_msg_count => l_msg_count,
    p_msg_data => l_msg_data,
    p_return_status => l_return_status,
    p_pm_product_code => 'SERVICE REQUEST',
    p_pa_project_id => '18090',
    p_pm_task_reference => '90000',
    p_pa_task_id => p_task_id,
    p_service_type_code => 'NORDIC_EMLP_PROJECT',
    p_attribute_category => 'Shipping',
    p_attribute8 => 'test1',
    p_out_pa_task_id => p_out_pa_task_id,
    p_out_pm_task_reference => p_out_pm_task_reference,
    p_update_task_structure => 'Y');
    Thanks and Regards,
    Nidhi

    Are you using a vision instance? Which release are you in?
    If the issue is yet to be resolved after checking and compiing the invalid objects, as suggested by Hussein, then you can do the following:
    - Check the responsibility ID of "Projects, Vision Operations (USA)", the one you are using. In vision instances the responsibility ID 20420 (as provided in apps_initialize) is little odd. In 11.5.10.x and R12 vision instances the responsibility ID is normally 56486. Though it can be different in your instance.
    - If the responsiblity ID is correct OR you are using a different responsibility then check whether responsibility Menu is having "Open Integration Toolkit Funtions Menu" submenu (without any prompt) assigned and active (grants checkbox). Please also check within this submenu whether "Activity Management Gateway:Add Task" function is assigned and active (grants checkbox)
    - For seeded Project responsibilities the submenu & underlying function is seeded, but if you using a non project responsibility for creating project/ task etc then that responsibility should have "Open Integration Toolkit Funtions Menu" submenu (without any prompt) assigned and active.
    Thanks
    Supro

  • Update termination error while calling FM in Update task

    Hi Friends,
    I am calliing my Z Function Module in update task from my report, my function module contain reuse alv list display fm which should create a Spool in the spool list.
    When ever i am directly executing my Z function module i am getting spool in SP01, but when ever i am calling the Z Function Module in update task from my report i am getting a message as "Express document "Update was terminated" received from author.
    I want to call the Function module in update task and it should generate spools .
    Syntax:
    CALL FUNCTION 'ZLOK_TEST' IN UPDATE TASK.
    Commit work.
    Thanks Regards,
    Sandipan jena

    Hi sandipan jena,
    a function called in update task will not create a spool list if not told so to to. Only reports scheduled in a JOB will put the output into spool.
    Make sure you have no COMMIT WORK and no MESSAGE output when in UPDATE TASK. You can enter /h and in debugger switch on UPDATE debugging. This will lead you to any error occurring.
    You should analyze the errors you get. Mabe NEW-PAGE PRINT ON can help you.
    Regards
    Clemens

  • Support problem. The adviser tried to diagnose the failure of an application called JOTNOT PRO to update. He said he'd phone back at 8pm. I pick up his call at 8pm. Electronic voice: thank you for calling apple. We are now closed" So now I have 2 problems

    Support problem. The adviser tried to diagnose the failure of an application called JOTNOT PRO to update. He said he'd phone back at 8pm. I pick up his call at 8pm. Electronic voice: thank you for calling apple. We are now closed" So now I have 2 problems: the adviser had got me to reset so bye bye wifi passwords and settings. And then when he phones back as we agreed he's not actually on the phone, it's just a voice saying Apple Support is now closed! What on earth is going on at apple support I wonder.
    Anyway, the original problem: an application called JotNot Pro fails to update. The error message says something like "you cannot update this cos either you bought it with a different Apple ID or somebody else bought it."
    Neither applies. Can anybody help?
    PS. This is my first approach to the support community so please bear with me!
    William

    You might have better luck contacting the app's support or developers.

  • Flex4 Zend AMF error - NetConnection.Call.Failed: HTTP

    Hi,
    I'm working with FLEX 4 (developing in flash builder 4 plugins for eclipse) and PHP Zend Framework v 1.9.
    When I run the application from the flash builder the AMF comunication work fine, but when I try to run directly from URL in a browser I got the following error: 
    Send failed
    Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Failed: url: 'http://localhost/Project-debug/gateway.php'
    I think that I get this error since I have update my flash builder plugin.... previos version of my .swf project didn't give my this issue.
    Somebody can help me? I don't realy have any idea how to solve this problem.
    P.S.
    I don't have services-config.xml file in my project cause the amf zend samples that I followed don't say to create it, somebody knows why flex 4 doesn't need it?
    Thanks

    The MessageBroker servlet is not installed properly. The context-root of the two Tomcat LC DS installs must be different. Test hitting the context-root Flex_App on both machines (http://hostIP:8080/Flex_App). If the context-root is valid you will hit the index.html page of the valid context-root which looks like this...
    Welcome to Adobe LiveCycle Data Services ES2 Version  3!
    This is an empty LiveCycle Data Services ES application that serves as a  template for creating your custom application.
    Visit the product page for documentation and further information.
    Steve

  • Calling Function Module in Update Task

    Hello Experts,
                              Can anyone let me know about
    Calling Function Module in Update Task.
    Why do we use this " In Update Task "  ??
    How do we Use ??
    What is the Use... ??
    Kindly let me know....
    Thanks and Regards
    Pramod

    hi,
    Why do we use this " In Update Task " ??
    The main update technique for bundling database changes in a single database LUW is to use CALL FUNCTION... IN UPDATE TASK.
    How do we Use ??
    A typical R/3 installation contains dialog work processes and at least one update work process. The update work processes are responsible for updating the database. When an ABAP program reaches a COMMIT WORK statement, any function modules from CALL FUNCTION... IN UPDATE TASK statements are released for processing in an update work process. The dialog process does not wait for the update to finish. This kind of update is called asynchronous update.
    What is the Use... ??
    Asynchronous update is useful when response time from the transaction is critical, and the database updates themselves are so complex that they justify the extra system load
    Real time scenario.
    Suppose a user wants to change an entry in a database table, or add a new one. He or she enters the necessary data, and then starts the update process by choosing Save. This starts the following procedure in the ABAP program:
    Firstly, the program locks the database entry against other users, using the enqueue work process (or the message server in the case of a distributed system). This generates an entry in the lock table. The user is informed whether the update was successful, or whether the lock could not be set because of other users.
    If the lock is set, the program reads the entry that is to be changed and modifies it. If the user has created a new entry, the program checks whether a record with the same key values already exists.
    In the current dialog work process, the program calls a function module using CALL FUNCTION... IN UPDATE TASK, and this writes the change details as an entry in table VBLOG.
    When the program is finished (maybe after further dialog steps), a COMMIT WORK statement starts the final part of the SAP LUW. The work process that is processing the current dialog step starts an update work process.
    Based on the information passed to it from the dialog work process, the update work process reads the log entries belonging to the SAP LUW from table VBLOG.
    The update work process passes this data to the database for updating, and analyzes the return message from the database. If the update was successful, the update work process triggers a database commit after the last database change and deletes the log entries from table VBLOG.
    If an error occurred, the update work process triggers a database rollback, leaves the log entries in table VBLOG, flags them as containing errors, and sends a SAPoffice message to the user, who should then inform the system administrator.
    The corresponding entries in the lock table are reset by the update work process.
    Hope this is helpful, Do reward.

  • CALL FUNCTION update_function IN UPDATE TASK

    hi
    please give me an <b>example  for implementation</b> of  CALL FUNCTION update_function IN UPDATE TASK
    plz help.. its urgent
    useful solutions will be rewarded
    <b>note</b>: dont give me link. i need simple straight forward example
    thanks
    ravish

    Hi,
       When u want to call function which has to be executed in the Update work process.
    1. You have to set the "Processing Type"  to  "Update Module" and select "Immediate Start" which makes the function to be processed using V1 update process(for critical updates)
    function module parameters must be passed by using Pass by Value only.
    Export parameters are not supported.
    In the source code of the function
    to perform a ROLLBACK in case of any error
    Generate a message using type A(Abend)
    2. Call the function from the program using
       CALL FUNCTION 'Z_FM' in update task
       EXPORTING
      TABLES
      COMMIT WORK .  
    hope this will help.
    Reward if so.
    Regards,
    Varma

  • How to rectify the errors through call transaction metod in bdc

    how to rectify the errors through call transaction metod in bdc

    Hi ,
    View the highlited part of the below code.
    REPORT ygfrivat1 NO STANDARD PAGE HEADING
                     LINE-SIZE 165
                     MESSAGE-ID yif_groc.
    Program     YGFRIVAT1
    Function    Report to Upload the VAT Adjustment File.
    Author      ARENAPU
    Date        11.05.2007
    PMTS        AM12810157
    Transport   G6DK937834
    Description:
    Modification log:
    1. Changed by  :
       Changed on  :
       PMTS        :
       Transport   :
       Tag         :
       Description :
           T A B L E S   D E C L A R A T I O N S
    TABLES: edidc,  "Control record (IDoc)
            edids,  "Status Record (IDoc)
            t001w.
    Internal Tables Declaration.
    Internal table to hold data from table EDIDS
    DATA: BEGIN OF t_edids OCCURS 0,
           docnum LIKE edids-docnum,
           logdat LIKE edids-logdat,
           logtim LIKE edids-logtim,
           countr LIKE edids-countr,
           credat LIKE edids-credat,
           uname  LIKE edids-uname,
          END OF t_edids,
    Internal table to hold data from table EDIDC
          BEGIN OF t_edidc OCCURS 0,
           docnum LIKE edidc-docnum,
           rcvprt LIKE edidc-rcvprt,
           rcvprn LIKE edidc-rcvprn,
           credat LIKE edidc-credat,
          END OF t_edidc,
    Internal table to hold data from upload file
          BEGIN OF t_tab OCCURS 0,
           cust(10),        "site/customer number
           date(10),        "transaction date
           currency(04),    "currency
           extnbr(15),      "external reference number
           pos-cont(05),    "POS controler
           pos-id(25),      "POS id
           cashier(10),     "cashier name
           qualif(04),      "qualifier of the article
           matnr(25),       "article number
           qty(10),         "quantity
           sale(16),        "sale value
           pos-tr(04),      "POS transfert type
           paymeth(04),     "payment method
           final(35),       "final price
           tarcur(04),      "target currency
           assign(35),      "assignment day
           error,
          END OF t_tab,
    Internal table for Report display.
          BEGIN OF t_tab1 OCCURS 0,
           cust(10),                    "site/customer number
           date(10),                    "transaction date
           currency(04),                "currency
           extnbr(15),                  "external reference number
           pos-cont(05),                "POS controler
           pos-id(25),                  "POS id
           cashier(10),                 "cashier name
           qualif(04),                  "qualifier of the article
           matnr(25),                   "article number
           qty(16)   TYPE p DECIMALS 2, "quantity
           sale(16)  TYPE p DECIMALS 2, "sale value
           pos-tr(04),                  "POS transfert type
           paymeth(04),                 "payment method
           final(16) TYPE p DECIMALS 2, "final price
           tarcur(04),                  "target currency
           assign(35),                  "assignment day
          END OF t_tab1,
          t_tab_temp LIKE t_tab OCCURS 0 WITH HEADER LINE,
    Internal table to Validate Customer no.
          BEGIN OF t_check OCCURS 0,
           werks LIKE t001w-werks,
           vkorg LIKE t001w-vkorg,
           value(40),
          END OF t_check,
          t_check_temp LIKE t_check OCCURS 0 WITH HEADER LINE.
    Internal table to hold data from table ZCS_PARAM.
    DATA: BEGIN OF t_zcs_param OCCURS 0.
            INCLUDE STRUCTURE zcs_param.
    DATA: vkorg LIKE t001w-vkorg,
          END OF t_zcs_param.
    *Internal table to hold Messages.
    DATA: BEGIN OF t_message OCCURS 0,
             msgnum TYPE msgnum,
             msgtyp TYPE msgtyp,
             msgtxt TYPE msgtext,
           END OF t_message.
    *Work area for table t_message
    DATA : w_message LIKE LINE OF t_message.
    Internal table to hold BDC data
    DATA: t_bdcdata LIKE bdcdata    OCCURS 0 WITH HEADER LINE,
    Internal table to collect error messages
          messtab   LIKE bdcmsgcoll OCCURS 0  WITH HEADER LINE.
    *Internal table to hold messages from call transaction
    DATA: BEGIN OF t_text OCCURS 0,
           desc(150),
           msgtxt(100),
          END OF t_text.
           D A T A   D E C L A R A T I O N S
    DATA: n TYPE i,
          gv_status(11) TYPE c, "Shows status, Production or Test
          gv_exit TYPE c,  "Exit Flag
          gv_qty(16)   TYPE p DECIMALS 2, "Variable to sum Quantity
          gv_sale(16)  TYPE p DECIMALS 2, "Variable to sum Amount
          gv_final(16) TYPE p DECIMALS 2. "Variable to sum Final Amount
    DATA: w_text(100),
          gv_mode TYPE c,
          error TYPE c.  "Flag to Indicate error.
    CONSTANSTS DECLARATION
    CONSTANTS : gc_fieldname LIKE dynpread-fieldname VALUE 'P_FNAME',
                gc_seq_no LIKE zcs_param-seq_no VALUE '00110',
                gc_object LIKE zcs_param-object VALUE 'YGFVAT',
                gc_paraname LIKE zcs_param-paraname VALUE 'VKORG',
                gc_back TYPE c VALUE 'N',
                gc_error TYPE c VALUE 'E',
                gc_all TYPE c VALUE 'A'.
               S E L E C T I O N   S C R E E N
    SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
    PARAMETERS : p_fname LIKE rlgrap-filename OBLIGATORY.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(31) text-002 FOR FIELD p_test.
    PARAMETERS : p_test AS CHECKBOX.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK a1.
    SELECTION-SCREEN BEGIN OF BLOCK a2 WITH FRAME TITLE text-006.
    PARAMETERS : rb_back RADIOBUTTON GROUP rb1 DEFAULT 'X',
                 rb_error RADIOBUTTON GROUP rb1,
                 rb_all RADIOBUTTON GROUP rb1.
    SELECTION-SCREEN END OF BLOCK a2.
    AT SELECTION SCREEN
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
    *Subroutine to provide F4 help for file name
      PERFORM fr_get_filename.
           I N I T I A L I Z A T I  O N
    INITIALIZATION.
    *Subroutine to check authorization.
    PERFORM fr_authority_check.
            T O P - O F - P A G E
    TOP-OF-PAGE.
    *Subroutine to diplay header
      PERFORM fr_display_header.
             S T A R T - O F - S E L E C T I O N
    START-OF-SELECTION.
    *Subroutine to upload data from presentation server.
      PERFORM fr_upload_data.
    *Subroutine to validate records from uploaded file.
      PERFORM fr_validate_data.
    *Subroutine to build report internal table.
      PERFORM fr_build_rep.
             E N D - O F - S E L E C T I O N
    END-OF-SELECTION.
    *Subroutine to display report.
      PERFORM fr_write_report.
            F O R M   S U B R O U T I N E S
    *&      Form  fr_get_filename
          text
    FORM fr_get_filename.
      DATA : lv_repid LIKE sy-repid,         " Report id
             lv_file  LIKE ibipparms-path.   " File Path
      lv_repid = sy-repid.
    F4 help for file path.
      CALL FUNCTION 'F4_FILENAME'
           EXPORTING
                program_name  = lv_repid
                dynpro_number = syst-dynnr
                field_name    = gc_fieldname                    " p_fname1
           IMPORTING
                file_name     = lv_file.
      IF NOT lv_file EQ space.
        p_fname = lv_file.
      ELSE.
        MESSAGE e999 WITH 'Invalid Path'(005).
      ENDIF.
    ENDFORM.                    " fr_get_filename
    *&      Form  fr_upload_data
          text
    FORM fr_upload_data.
      DATA: lv_fname TYPE string.
      CLEAR lv_fname.
      lv_fname = p_fname.
    Uploading file from PC or presentation server to internal table.
      CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
                filename            = lv_fname
                filetype            = 'ASC'
                has_field_separator = 'X'
           TABLES
                data_tab            = t_tab
           EXCEPTIONS
                file_open_error     = 1.
      IF sy-subrc <> 0.
        DESCRIBE TABLE t_message LINES n.
        w_message-msgnum = n + 1.
        w_message-msgtyp = 'E'.
        MOVE text-m01  TO w_message-msgtxt.
        APPEND w_message TO t_message.
    Subroutine for writing log.
        PERFORM fr_write_log.
      ENDIF.
    ENDFORM.                    " fr_upload_data
    *&      Form  fr_validate_data
          text
    FORM fr_validate_data.
      DATA : lv_lines1 TYPE i,
             lv_lines2 TYPE i.
    *Obtain Status depending on Check box selected.
      IF p_test IS INITIAL.
        gv_status = 'PRODUCTION'.
      ELSE.
        gv_status = 'TEST RUN'.
      ENDIF.
    *Batch Mode
      CLEAR gv_mode.
      IF rb_back EQ 'X'.          "No Display
        MOVE gc_back TO gv_mode.
      ELSEIF rb_error EQ 'X'.     "Error Only
        MOVE gc_error TO gv_mode.
      ELSEIF rb_all EQ 'X'.       "All Screens
        MOVE gc_all TO gv_mode.
      ENDIF.
      IF NOT t_tab[] IS INITIAL.
        SORT t_tab BY cust.
        REFRESH t_tab_temp.
        t_tab_temp[] = t_tab[].
        SORT t_tab_temp BY cust.
        DELETE ADJACENT DUPLICATES FROM t_tab_temp COMPARING cust.
        IF NOT t_tab_temp[] IS INITIAL.
          SELECT werks vkorg FROM t001w
                             INTO TABLE t_check
                             FOR ALL ENTRIES IN t_tab_temp
                             WHERE werks = t_tab_temp-cust+0(4).
          IF sy-subrc = 0.
            SORT t_check BY werks.
          ENDIF.
          LOOP AT t_check.
            IF t_check-vkorg <> ' '.
              MOVE t_check-vkorg TO t_check-value.
              MODIFY t_check TRANSPORTING value.
            ENDIF.
          ENDLOOP.
        ENDIF.
        FREE t_tab_temp.
      ENDIF.
      IF NOT t_check[] IS INITIAL.
        REFRESH t_check_temp.
        t_check_temp[] = t_check[].
        SORT t_check_temp BY value.
        DELETE ADJACENT DUPLICATES FROM t_check_temp COMPARING value.
        IF NOT t_check_temp[] IS INITIAL.
          SELECT * FROM zcs_param INTO TABLE t_zcs_param
                   FOR ALL ENTRIES IN t_check_temp
                   WHERE seq_no   EQ gc_seq_no
                     AND object   EQ gc_object
                     AND paraname EQ gc_paraname
                     AND value    EQ t_check_temp-value.
          IF sy-subrc = 0.
            SORT t_zcs_param BY value.
          ENDIF.
        ENDIF.
        FREE t_check_temp.
      ENDIF.
      IF NOT t_tab[] IS INITIAL.
        LOOP AT t_tab.
          READ TABLE t_check WITH KEY werks = t_tab-cust BINARY SEARCH.
          IF sy-subrc <> 0.
            MOVE 'X' TO t_tab-error.
            MODIFY t_tab TRANSPORTING error.
            DESCRIBE TABLE t_message LINES n.
            w_message-msgnum = n + 1.
            w_message-msgtyp = 'E'.
            CONCATENATE t_tab-cust text-030
            INTO w_message-msgtxt SEPARATED BY space.
            APPEND w_message TO t_message.
    Subroutine for writing log.
            PERFORM fr_write_log.
            EXIT.
          ELSE.
            READ TABLE t_zcs_param WITH KEY value = t_check-vkorg
                                                         BINARY SEARCH.
            IF sy-subrc <> 0.
              MOVE 'X' TO t_tab-error.
              MODIFY t_tab TRANSPORTING error.
              DESCRIBE TABLE t_message LINES n.
              w_message-msgnum = n + 1.
              w_message-msgtyp = 'E'.
              CONCATENATE text-003 t_tab-cust text-004 t_check-vkorg
              INTO w_message-msgtxt SEPARATED BY space.
              APPEND w_message TO t_message.
    Subroutine for writing log.
              PERFORM fr_write_log.
              EXIT.
            ELSE.
              PERFORM fr_format_tab.
            ENDIF.
          ENDIF.
        ENDLOOP.
      ENDIF.
      DESCRIBE TABLE t_tab LINES lv_lines1.
      IF lv_lines1 <> 0.
        DELETE t_tab WHERE error EQ 'X'.
      ENDIF.
      DESCRIBE TABLE t_tab LINES lv_lines2.
      IF lv_lines2 <> 0.
        IF lv_lines2 <> lv_lines1.
          EXIT.
        ELSE.
          IF p_test IS INITIAL.
            LOOP AT t_tab.
    *Subroutine to build BDC table
              PERFORM fr_fill_bdctab.
    *Subroutine to Post Data into SAP.
              PERFORM fr_data_posting.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDFORM.                    " fr_validate_data
    *&      Form  fr_write_log
          text
    FORM fr_write_log.
      CLEAR error.
      error = 'X'.
      WRITE:/1 'Msg No'(027), 10 'Type'(028), 20 'Text'(029).
      ULINE:/1(120).
      FORMAT RESET.
      LOOP AT t_message.
        IF t_message-msgtyp = 'E'.
          FORMAT COLOR 6 INTENSIFIED .
        ELSEIF t_message-msgtyp = 'W'.
          FORMAT COLOR 3 INTENSIFIED .
        ELSEIF t_message-msgtyp = 'I'.
          FORMAT COLOR 5 INTENSIFIED .
        ENDIF.
        WRITE:/1 t_message-msgnum,
              10 t_message-msgtyp,
              20 t_message-msgtxt.
        FORMAT RESET.
      ENDLOOP.
      ULINE:/1(120).
    ENDFORM.                    " fr_write_log
    *&      Form  fr_write_report
          text
    FORM fr_write_report.
      CLEAR gv_exit.
      LOOP AT t_message.
        IF t_message-msgtyp = 'E'.
          gv_exit = 'X'.
          EXIT.
        ENDIF.
      ENDLOOP.
      IF NOT gv_exit IS INITIAL.
        EXIT.
      ELSE.
        PERFORM fr_display_report.
        IF NOT t_text[] IS INITIAL.
    Subroutine for Display Call Transaction messages.
          PERFORM fr_write_msg.
        ENDIF.
      ENDIF.
    ENDFORM.                    " fr_write_report
    *&      Form  fr_display_report
          text
    FORM fr_display_report.
      IF NOT t_tab1[] IS INITIAL.
        CLEAR: gv_qty, gv_sale, gv_final.
        LOOP AT t_tab1.
          WRITE:/1(10) t_tab1-cust,
                13(10) t_tab1-date,
                25(05) t_tab1-currency,
                32(14) t_tab1-extnbr,
                48(09) t_tab1-pos-cont,
                60(18) t_tab1-matnr,
                80(16) t_tab1-qty RIGHT-JUSTIFIED ,
                98(16) t_tab1-sale RIGHT-JUSTIFIED ,
               116(07) t_tab1-paymeth,
               125(16) t_tab1-final RIGHT-JUSTIFIED,
               143(06) t_tab1-tarcur,
               152(12) t_tab1-assign.
          gv_qty   = t_tab1-qty   + gv_qty.
          gv_sale  = t_tab1-sale  + gv_sale.
          gv_final = t_tab1-final + gv_final.
        ENDLOOP.
        FORMAT COLOR 3.
        ULINE: /(164).
        WRITE:/ 'TOTALS',
          80(16) gv_qty RIGHT-JUSTIFIED,
          98(16) gv_sale RIGHT-JUSTIFIED,
         125(16) gv_final RIGHT-JUSTIFIED,
         182 ''.
        ULINE: /(164).
        FORMAT RESET.
      ENDIF.
    ENDFORM.                    " fr_display_report
    *&      Form  FR_DISPLAY_HEADER
          text
    FORM fr_display_header.
      IF error IS INITIAL.
        FORMAT COLOR 1.
        WRITE:/ 'Date upload           :'(007),   25 sy-datum,  38 ''.
        WRITE:/ 'Production or Test Run:'(008),   25 gv_status, 38 ''.
        WRITE:/ 'Upload User Logon     :'(009),   25 sy-uname,  38 ''.
        ULINE: /(164).
        WRITE:/1(04) 'Site'(010),
              13(10) 'Date'(011),
              25(05) 'Curr.'(012),
              32(14) 'Receipt'(013),
              48(09) 'Cashier'(014),
              60(18) 'Article'(015),
              92     'Qty'(016),
              102    'Item Amount'(017),
              116(7) 'M.o.P.'(018),
              128    'Tender Amount'(019),
              143(6) 'T.Curr'(020),
             152(12) 'Assignment'(021).
        ULINE:/(164).
        FORMAT RESET.
      ENDIF.
    ENDFORM.                    " FR_DISPLAY_HEADER
    *&      Form  fr_newdynpro
          text
    FORM fr_newdynpro USING program LIKE bdcdata-program
                            dynpro  LIKE bdcdata-dynpro.
      t_bdcdata-program = program .
      t_bdcdata-dynpro  = dynpro.
      t_bdcdata-dynbegin = 'X'.
      APPEND t_bdcdata.
      CLEAR t_bdcdata.
    ENDFORM.                    " fr_newdynpro
    *&      Form  fr_loadfield
          text
    FORM fr_loadfield USING field LIKE bdcdata-fnam
                            value.
      t_bdcdata-fnam = field.
      t_bdcdata-fval = value.
      APPEND t_bdcdata.
      CLEAR t_bdcdata.
    ENDFORM.                    " fr_loadfield
    *&      Form  fr_fill_bdctab
          text
    FORM fr_fill_bdctab.
      REFRESH t_bdcdata.
      PERFORM fr_newdynpro USING 'SAPMWPUK' '100'.
      PERFORM fr_loadfield USING 'G_FILIALE' t_tab-cust.
      PERFORM fr_loadfield USING 'G_DATUM'   t_tab-date.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'BON'.
      PERFORM fr_newdynpro USING 'SAPMWPUK' '500'.
      PERFORM fr_loadfield USING 'WPSCB01-POSKREIS'   t_tab-pos-cont.
      PERFORM fr_loadfield USING 'WPSCB01-KASSID'     t_tab-pos-id.
      PERFORM fr_loadfield USING 'WPSCB01-BELEGWAERS' t_tab-currency.
      PERFORM fr_loadfield USING 'WPSCB01-CSHNAME'    t_tab-cashier.
      PERFORM fr_loadfield USING 'WPSCB01-BONNUMMER'  t_tab-extnbr.
      PERFORM fr_loadfield USING 'E1WPB02-QUALARTNR(01)'  t_tab-qualif.
      PERFORM fr_loadfield USING 'E1WPB02-ARTNR(01)'      t_tab-matnr.
      PERFORM fr_loadfield USING 'E1WPB02-MENGE(01)'      t_tab-qty.
      PERFORM fr_loadfield USING 'WPSCB03-KONDVALUE(01)'  t_tab-sale.
      PERFORM fr_loadfield USING 'E1WPB02-VORGANGART(01)' t_tab-pos-tr.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'ZAHL'.
      PERFORM fr_newdynpro USING 'SAPMWPUK' '530'.
      PERFORM fr_loadfield USING 'WPSCB06-ZAHLART'  t_tab-paymeth.
      PERFORM fr_loadfield USING 'WPSCB06-SUMME'    t_tab-final.
      PERFORM fr_loadfield USING 'WPSCB06-WAEHRUNG' t_tab-tarcur.
      PERFORM fr_loadfield USING 'WPSCB06-ZUONR'    t_tab-assign.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'SAVE'.
      PERFORM fr_newdynpro USING 'SAPMWPUK' '530'.
      PERFORM fr_loadfield USING 'WPSCB06-ZAHLART'  t_tab-paymeth.
      PERFORM fr_loadfield USING 'WPSCB06-SUMME'    t_tab-final.
      PERFORM fr_loadfield USING 'WPSCB06-WAEHRUNG' t_tab-tarcur.
      PERFORM fr_loadfield USING 'WPSCB06-ZUONR'    t_tab-assign.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'BACK'.
      PERFORM fr_newdynpro USING 'SAPLSPO1' '0200'.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'YES'.
      PERFORM fr_newdynpro USING 'SAPMWPUK' '100'.
      PERFORM fr_loadfield USING 'G_FILIALE' t_tab-cust.
      PERFORM fr_loadfield USING 'G_DATUM'   t_tab-date.
      PERFORM fr_loadfield USING 'BDC_OKCODE' 'BACK'.
    ENDFORM.                    " fr_fill_bdctab
    *&      Form  fr_data_posting
          text
    FORM fr_data_posting.
      IF NOT t_bdcdata[] IS INITIAL.
        REFRESH messtab.
        CALL TRANSACTION 'WPUK' USING t_bdcdata
                                MODE gv_mode
                                UPDATE 'S'
                                MESSAGES INTO messtab.
        IF sy-subrc = 0 .
          CLEAR w_text.
          LOOP AT messtab.
            CALL FUNCTION 'FORMAT_MESSAGE'
                 EXPORTING
                      id        = messtab-msgid
                      lang      = sy-langu
                      no        = messtab-msgnr
                      v1        = messtab-msgv1
                      v2        = messtab-msgv2
                      v3        = messtab-msgv3
                      v4        = messtab-msgv4
                 IMPORTING
                      msg       = w_text
                 EXCEPTIONS
                      not_found = 1
                      OTHERS    = 2.
            MOVE w_text TO t_text-msgtxt.
            CONCATENATE 'Site:'(031)    t_tab-cust
                        'Article:'(024) t_tab-matnr
                        'Posted Sucessfully'(032)
              INTO t_text-desc SEPARATED BY space.
            APPEND t_text.
            CLEAR t_text.
          ENDLOOP.
        ELSE.
          CLEAR w_text.
          LOOP AT messtab.
            CALL FUNCTION 'FORMAT_MESSAGE'
                 EXPORTING
                      id        = messtab-msgid
                      lang      = sy-langu
                      no        = messtab-msgnr
                      v1        = messtab-msgv1
                      v2        = messtab-msgv2
                      v3        = messtab-msgv3
                      v4        = messtab-msgv4
                 IMPORTING
                      msg       = w_text
                 EXCEPTIONS
                      not_found = 1
                      OTHERS    = 2.
            MOVE w_text TO t_text-msgtxt.
            IF messtab-msgnr EQ '213'.
              CONCATENATE 'Site:'(031)    t_tab-cust
                          'Article:'(024) t_tab-matnr
                          'Posted Sucessfully'(032)
               INTO t_text-desc SEPARATED BY space.
              APPEND t_text.
              CLEAR t_text.
              EXIT.        ELSE.
              CONCATENATE 'Site:'(031)    t_tab-cust
                          'Article:'(024) t_tab-matnr
                          'Not Posted'(033)
               INTO t_text-desc SEPARATED BY space.
              APPEND t_text.
              CLEAR t_text.
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
    ENDFORM.                    " fr_data_posting
    *&      Form  fr_authority_check
          text
    FORM fr_authority_check.
      AUTHORITY-CHECK OBJECT 'Y_VATADJ'
               ID 'VKORG' FIELD t001w-vkorg
               ID 'TCD'   FIELD 'YGFVAT'.
      IF sy-subrc NE 0.
        MESSAGE e999 WITH text-m02.
      ENDIF.
    ENDFORM.                    " fr_authority_check
    *&      Form  fr_write_msg
          text
    FORM fr_write_msg.
      SKIP.
      ULINE:/(164).
      WRITE:/
      'Messages encountered while Calling Transaction WPUK'(025),
          90 'Message Text'(026).
      ULINE:/1(164).
      LOOP AT t_text.
        WRITE:/1 t_text-desc,
              90 t_text-msgtxt,
              164 ''.
      ENDLOOP.
      ULINE:/1(164).
    ENDFORM.                    " fr_write_msg
    *&      Form  FR_BUILD_REP
          text
    FORM fr_build_rep.
      IF error IS INITIAL.
        IF NOT t_tab[] IS INITIAL.
          LOOP AT t_tab.
            MOVE:
              t_tab-cust     TO t_tab1-cust,        "site/customer number
              t_tab-date     TO t_tab1-date,        "transaction date
              t_tab-currency TO t_tab1-currency,    "currency
            t_tab-extnbr   TO t_tab1-extnbr,      "external reference number
              t_tab-pos-cont TO t_tab1-pos-cont,    "POS controler
              t_tab-pos-id   TO t_tab1-pos-id,      "POS id
              t_tab-cashier  TO t_tab1-cashier,     "cashier name
             t_tab-qualif   TO t_tab1-qualif,      "qualifier of the article
              t_tab-matnr    TO t_tab1-matnr,       "article number
              t_tab-pos-tr   TO t_tab1-pos-tr,      "POS transfert type
              t_tab-paymeth  TO t_tab1-paymeth,     "payment method
              t_tab-tarcur   TO t_tab1-tarcur,      "target currency
              t_tab-assign   TO t_tab1-assign.
            REPLACE ',' WITH '.' INTO t_tab-qty.
            CONDENSE t_tab-qty NO-GAPS.
            MOVE t_tab-qty TO t_tab1-qty.
            REPLACE ',' WITH '.' INTO t_tab-sale.
            CONDENSE t_tab-sale NO-GAPS.
            MOVE t_tab-sale TO t_tab1-sale.
            REPLACE ',' WITH '.' INTO t_tab-final.
            CONDENSE t_tab-final NO-GAPS.
            MOVE t_tab-final TO t_tab1-final.
            APPEND t_tab1.
            CLEAR t_tab1.
          ENDLOOP.
        ENDIF.
      ENDIF.
    ENDFORM.                    " FR_BUILD_REP
    *&      Form  fr_format_tab
          text
    FORM fr_format_tab.
      DATA : lv_qty TYPE string.
      IF NOT t_tab-qty IS INITIAL.
        IF t_tab-qty+0(1) EQ '-'.
          CLEAR lv_qty.
          MOVE t_tab-qty TO lv_qty.
          CLEAR t_tab-qty.
          SHIFT lv_qty LEFT CIRCULAR.
          CONDENSE lv_qty NO-GAPS.
          MOVE lv_qty TO t_tab-qty.
          MODIFY t_tab TRANSPORTING qty.
        ENDIF.
      ENDIF.
    ENDFORM.                    " fr_format_tab

  • Runtime error when calling on SpellUI to enable spelling

    I run into a problem with SpellUI in the Squiggly package that is just released. I am trying to use Squiggly for an Air 2.0 application with Flex 4.0.0 sdk, and my IDE is Flash Builder 4.0.0.
    When I have an event handler method that calls on either SpellUI.enableSpelling() or setSpellingMenuEntries(), no matter the code is in a mxml component or an AS class, an error #1014 will occur during the time when the UI component or the class is loaded from a module that is built as a swf. If I choose to ignore the error and call on the event handler, nothing happens. The following is the stack trace message:
    VerifyError: Error #1014: Class mx.flash::UIMovieClip could not be found.
        at flash.display::MovieClip/nextFrame()
        at mx.core::FlexModuleFactory/deferredNextFrame()[E:\dev\4.0.0\frameworks\projects\framework \src\mx\core\FlexModuleFactory.as:631]
        at mx.core::FlexModuleFactory/update()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\cor e\FlexModuleFactory.as:401]
        at mx.core::FlexModuleFactory/moduleCompleteHandler()[E:\dev\4.0.0\frameworks\projects\frame work\src\mx\core\FlexModuleFactory.as:718]
    I tried to invoke SpellUI in the Air example project "UserDictionaryExample" attached in the downloaded package, I got a similar error as shown below, but the applicaiton still works.
    VerifyError: Error #1014: Class IIMEClient could not be found.
        at flash.display::MovieClip/nextFrame()
        at mx.managers::SystemManager/deferredNextFrame()[E:\dev\4.0.0\frameworks\projects\framework \src\mx\managers\SystemManager.as:267]
        at mx.managers::SystemManager/preloader_preloaderDocFrameReadyHandler()[E:\dev\4.0.0\framewo rks\projects\framework\src\mx\managers\SystemManager.as:2460]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.preloaders::Preloader/timerHandler()[E:\dev\4.0.0\frameworks\projects\framework\src\mx \preloaders\Preloader.as:488]
        at flash.utils::Timer/_timerDispatch()
        at flash.utils::Timer/tick()
    As I can tell, the major difference between my app and the example is that my app uses spark components, including the top WindowedApplication. Another difference is that my component is loaded from a swf, whereas the exmple does not do that. Is SpellUI tested with Air 2.0, spark, and modules? Does anyone have any idea what the problem could be? Any help would be greatly appreciated!
    Thanks!

    Thanks for your response and tests.
    I figured out the problems and fixed it with a workaround to make it work for spark TextArea as you also tested.
    But the workaround is not the way I want. I have an air application project with several module projects, and at runtime the modules are loaded dynamically as swfs. One of the mudules is built as a runtime shared library. That "class not found" error will go away ONLY IF the SpellUI class is forced to be built into the runtime shared library that loads other modules dynamically, including the one containing the text editor control that uses squiggly for spelling check. Ideally, I should not do that. But it seems the only way I can get rid of the error and make SpellUI work. Interestingly, I don't have this kind of problem with SpellChecker class, which is from a different swc. This seems to me is a build issue, but I am not sure. Do you have any idea why I have to do that and why SpellUI behaves differently than SpellChecker?
    In addition to the above issue, I found SpellUI doesn't work for spark.components.RichEditableText. When I call SpellUI.enableSpelling() on it, nothing happens and no exception is thrown. If RichEditableText is not currently supported, do you have an plan to support RichEditableText in the future?
    Thanks again.

  • "FRM-40501: Oracle error: Unable to Reserve Record For Update or Delete"

    "FRM-40501: Oracle error: Unable to Reserve Record For Update or Delete"
    as I can unblock a session in the graphical surroundings of administration of the BD 10g of Oracle

    From experience with this problem since the blocked customer form has been coded not to wait for the updating session to complete then there is likely no waiter on the system now so you cannot find the blocking session.
    What you need to do is determine what row the Form was going after then using SQLPlus issue an update on the row. If the blocking session has not yet committed then this update will wait. Now if you look for blocking sessions you will be able to find it and make a determination if the session should be killed or if someone needs to call the user and ask he or she to flip through their screens and get out of the blocking screen.
    Applications screens written not to wait on currently being updated data need to also be written to expose the information necessary to identify the row(s) in question.
    HTH -- Mark D Powell --

  • [nQSError: 12002] Socket communication error at call=recv: (Number=10004)

    Can any1 plz help...!
    I am unable to start presentation services...! I am currently using windows server 2003 service pack 2. I tried configuring scheduler after which I got the message:
    "Windows could'nt start Oracle BI Presentation server on local computer. For more information review the system event log. If this is a non-microsft service, contact the service vendor, and refer to service-specific error code -1."
    I am getting these 2 errors:
    In nqserver.log shows below error
    [nQSError: 12002] Socket communication error at call=recv: (Number=10004) A blocking operation was interrupted by a call to WSACancelBlockingCall.
    In nqscheduler.log shows below error
    [nQSError: 12002] Socket communication error at call=: (Number=10048) Only one usage of each socket address (protocol/network address/port) is normally permitted.
    I have changed scheduler port (in Job manager-->file-->configure options..>schedule-->general tab) to an available open port since 9705 is not available. I also updated port number in instanceconfig.xml file.
    Any suggestions would be really appreciated.

    have you seen the blog of John about this? http://obiee101.blogspot.com/2008/08/obiee-configuring-configuring-scheduler.html
    hope this heps

  • [nQSError: 12002] Socket communication error at call=(Number=10004, 10048)

    Can any1 plz help...!
    I am unable to start presentation services...! I am currently using windows server 2003 service pack 2. I tried configuring scheduler after which I got the message:
    "Windows could'nt start Oracle BI Presentation server on local computer. For more information review the system event log. If this is a non-microsft service, contact the service vendor, and refer to service-specific error code -1."
    I am getting these 2 errors:
    In nqserver.log shows below error+
    [nQSError: 12002] Socket communication error at call=recv: (Number=10004) A blocking operation was interrupted by a call to WSACancelBlockingCall.
    In nqscheduler.log shows below error_
    [nQSError: 12002] Socket communication error at call=: (Number=10048) Only one usage of each socket address (protocol/network address/port) is normally permitted.
    I have changed scheduler port (in Job manager-->file-->configure options..>schedule-->general tab) to an available open port since 9705 is not available. I also updated port number in instanceconfig.xml file.
    Any suggestions would be really appreciated.

    user12970693 wrote:
    Can any1 plz help...!Gawsh. That's awful.
    I wonder whether people who deal primarily with BI Server might be able to help you better than people who deal primarily with the database?
    http://forums.oracle.com/forums/category.jspa?categoryID=145
    I am unable to start presentation services...! I am currently using windows server 2003 service pack 2. I tried configuring scheduler after which I got the message:
    "Windows could'nt start Oracle BI Presentation server on local computer. For more information review the system event log. If this is a non-microsft service, contact the service vendor, and refer to service-specific error code -1."
    I am getting these 2 errors:
    In nqserver.log shows below error+
    [nQSError: 12002] Socket communication error at call=recv: (Number=10004) A blocking operation was interrupted by a call to WSACancelBlockingCall.
    In nqscheduler.log shows below error_
    [nQSError: 12002] Socket communication error at call=: (Number=10048) Only one usage of each socket address (protocol/network address/port) is normally permitted.
    I have changed scheduler port (in Job manager-->file-->configure options..>schedule-->general tab) to an available open port since 9705 is not available. I also updated port number in instanceconfig.xml file.
    Any suggestions would be really appreciated.On first guess, I'd almost think some anti-virus or firewall is haunting that machine.

  • An error occurred calling 'LogMultipleResults' in 'ITSDBLog' of 'zNI TestStand Database Logging'

    A test rig that worked fine started thowing the floowing error for me.
    See screen capature.
    Problem doesn't appear on the development PC.
    The code that I'm using is using the default settings for logging to the access database that ships with TS. All worked fine for a few weeks now it keeps ... breaking.
    An error occurred calling 'LogMultipleResults' in 'ITSDBLog' of 'zNI TestStand Database Logging'
    An error occurred executing a statement.
    Statement: STEP_RESULT.
    Description: The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.
    Number: -2147217887
    NativeError: -105121349
    SQLState: 3022
    Reported by: Microsoft JET Database Engine
    Source: TSDBLog
    Attachments:
    NIDBerror.png ‏17 KB

    Hello,
    As far as I remember the DB size was approx ~ 1.5 GB, I don't have access to that test station till Wednesday so I'll double check but it could be as simple as exceeding the DB size, I'll verify that when I'm on-site again.
    To answer a few questions from Scott:
    1) I'm using TestStand 2012 ( as it came with the installation disks shipped in the first quarter of this year ).
    The test station is offline so no updates have been applied since the install.
    2) I'm using the default NI Schema and an Access DB. ( No modifications have been made )
    3) I'm using the On-The-Fly feature logging feature both to ATML and the DB.
    ATML works with no issues, DB used to work fine until it refused.
    4) Fails every time when I start the sequence, disabling logging to the Database sorts the issue out.
    5) I originally used the BatchUUT.seq example that ships with test stand.
    I have developed a test that has three test sockets that have a common Initialize, Run Tests in parralel and have a sequence of common test steps.
    Scott:
    The issue you've sent speaks of UUIDCreate; I'm gettin issues with the STEP_RESULT .... I think these things are not related.
    Secondly I'm suing TS 2012 so a fix should have been propagated to my version.
    So to answer your question I'm using multiple processes on one computer.
    I will emphasize that everything worked fine up to a certain point ... so I'm guessing Doug might be right on the money with the fact that I've chosen a misfortunate Database ( Access ) for the job.
    Regards,
    Maciej

  • BAPI_ALM_ORDER_MAINTAIN error "BAPI call must have a SAVE or DIALOG method"

    I have this test code below that I have written to update the work duration on a work order to 5 hours using the BAPI BAPI_ALM_ORDER_MAINTAIN.  I however keep getting the error "BAPI call must have a SAVE or DIALOG method".  Can someone tell me what I am doing wrong
    data: begin of it_methods occurs 0.
            include structure bapi_alm_order_method.
    data: end of it_methods.
    data: begin of it_operation occurs 0.
            include structure bapi_alm_order_operation.
    data: end of it_operation.
    data: begin of it_operation_up occurs 0.
            include structure bapi_alm_order_operation_up.
    data: end of it_operation_up.
    data: begin of it_return occurs 0.
            include structure bapiret2.
    data: end of it_return.
    data: begin of it_et_numbers occurs 0.
            include structure bapi_alm_numbers.
    data: end of it_et_numbers.
    it_methods-refnumber = '0000040000020010'.
    it_methods-objecttype = 'OPERATION'.
    it_methods-method = 'CHANGE'.
    it_methods-objectkey = '0000040000020010'.
    append it_methods.
    it_operation-duration_normal =       '5'.
    append it_operation.
    it_operation_up-duration_normal =       'X'.
    append it_operation_up.
    call function 'BAPI_ALM_ORDER_MAINTAIN'
      tables
        it_methods              = it_methods
        it_operation            = it_operation
        it_operation_up         = it_operation_up
        return                  = it_return
        et_numbers              = it_et_numbers.
    call function 'BAPI_TRANSACTION_COMMIT'
         IMPORTING
           RETURN        = it_return.
    Edited by: Martin Kay on Mar 5, 2009 2:17 PM

    hello martin
    u have to use the save method for saving the contents
    in mehtod tabel u have to add method as save
    if ur  method internal table is it_method then
    it_method-method =  'save'.
    append it_method .
    and also in ur bapi code u have assigned wrong reference number
    reference number always should start from 1
    it_methods-refnumber  =  '0000001'
    not '0000000400123' which u have used for order number
    and after call of bapi u have to call
    bapi_transaction_commitn which u have used
    hope it solves ur problem

  • Error when calling CLIPBOARD_IMPORT

    hi all,
    i have the following BDC call and process the return message. It is wokrng fine at foreground.
    When execute In background, the write statement return only "Error when calling CLIPBOARD_IMPORT".
    please advise what could be the mistake i have made? thanks.
    CALL TRANSACTION tcode USING bdcdata
                       MODE   ctumode
                       UPDATE cupdate
                       MESSAGES INTO messtab.
      l_subrc = sy-subrc.
      CLEAR i_message.
      REFRESH i_message.
      LOOP AT messtab.
        SELECT SINGLE * FROM t100 WHERE sprsl = messtab-msgspra
                                  AND   arbgb = messtab-msgid
                                  AND   msgnr = messtab-msgnr.
        IF sy-subrc = 0.
          l_mstring = t100-text.
          IF l_mstring CS '&1'.
            REPLACE '&1' WITH messtab-msgv1 INTO l_mstring.
            REPLACE '&2' WITH messtab-msgv2 INTO l_mstring.
            REPLACE '&3' WITH messtab-msgv3 INTO l_mstring.
            REPLACE '&4' WITH messtab-msgv4 INTO l_mstring.
          ELSE.
            REPLACE '&' WITH messtab-msgv1 INTO l_mstring.
            REPLACE '&' WITH messtab-msgv2 INTO l_mstring.
            REPLACE '&' WITH messtab-msgv3 INTO l_mstring.
            REPLACE '&' WITH messtab-msgv4 INTO l_mstring.
          ENDIF.
          CONDENSE l_mstring.
          w_message-msgtyp = messtab-msgtyp.
          w_message-mstring = l_mstring(250).
    *     APPEND w_message TO i_message.
          WRITE: /02 w_message-mstring.
          CLEAR w_message.
        ELSE.
          w_message-mstring = messtab.
    *      APPEND w_message TO i_message.
          WRITE: /02 w_message-mstring.
          CLEAR w_message.
        ENDIF.
      ENDLOOP.

    friend .......
    check this link........may be useful to u
    Upload Excel table to internal table in background

Maybe you are looking for