Missing session confirmation number error..?

Hi All, i'm facing missing session confirmation number error, when i try to add a product to wishlist for logged in user..?
Error :
16:01:57,218 WARN [DAFDropletEventServlet] Missing session confirmation number: Request URI: /store/product/detail.jsp,
Referer: http://localhost:8180/store/jump/productDetail/Food_&_Candy/Candy_&_Chocolate/Licorice/Licorice_Laces_(2_lb._Bag)/52607
Code Fragment:
<dsp:form method="post" action="${wishlisturl}" formid="wishListForm" id="wishListForm" name="wishListForm" >
<dsp:input type="hidden" bean="GiftlistFormHandler.giftlistId" beanvalue="Profile.wishlist.id"/>
<dsp:input bean="GiftlistFormHandler.addItemToGiftlistSucessURL" value="wishlisturl" type="hidden"/>
<dsp:input bean="GiftlistFormHandler.addItemToGiftlistErrorURL" value="wishlisturl" type="hidden" ></dsp:input>
<dsp:input bean="GiftlistFormHandler.quantity" id="wishQty" type="hidden" value="1" priority="9"></dsp:input>
<dsp:input type="hidden" bean="GiftlistFormHandler.productId" value="${productId}"/>
<dsp:input bean="GiftlistFormHandler.catalogRefIds" id="wishlistSku" value="" priority="9" type="hidden"></dsp:input>
<dsp:input type="hidden" bean="GiftlistFormHandler.AddItemToGiftlist" value="submit"/>
</dsp:form>
Please explain why the error being thrown..
Thanks,
Vishnu

Usually you should not get this unless the same form is getting submitted multiple times or outside current session's context. I have also seen this happening sometimes when submitting dsp forms through AJAX. You may check these possibilities.
Actually ATG uses a request parameter dynSessConf* whose value is a session-confirmation number to verify that the incoming request to ATG is legitimate. On submission of a form or activation of a property-setting <dsp:a> tag, DAFDropletEventServlet in request pipeline checks the value of dynSessConf against the current session's confirmation number. If it detects a mismatch or missing number, it can block form processing and return an error. This mechanism is provided to prevent cross-site scripting attacks and you can configure this behavior through following properties in /atg/dynamo/Configuration:
enforceSessionConfirmation - specifies whether the request-handling pipeline requires session confirmation in order to process the request; the default value is true.
warnOnSessionConfirmationFailure - specifies whether to issue a warning on a confirmation number mismatch; the default value is true.
You can also control session confirmation for individual requests by adding the requiresSessionConfirmation attribute to true or false on the <dsp:form> or <dsp:a> tag like:
<dsp:form requiresSessionConfirmation="false" ...>
<dsp:a requiresSessionConfirmation="false" ...>
When requiresSessionConfirmation attribute is set to false as above, the _dynSessConf parameter is not included in the HTTP request and DAFDropletEventServlet skips validation of this request's session-confirmation number.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Similar Messages

  • Serial Number Error in YMFBF confirmation for semi-finished material.

    Dear Experts,
    We are having repetitive manufacturing scenario,while confirming the Semi-finished material ( X) in YMFBF Screen, after POST with Correction and Saving the Confirmation. Error Applied....
    "Only the 0 serial numbers entered instead of 1.
    Message no. IO304
    Diagnosis
    There is a serial number obligation, so the number of serial numbers must equal the number of serial numbers in the material document.
    You can post the operation only if you entered the correct number of serial numbers previously.
    System Response
    Depending on the context in which the error arises, the system continues processing, or the required function cannot be performed.
    Procedure
    You have the following options, for example:
    Check that the serial numbers are entered fully.
    If necessary, display an error log.
    If necessary, contact your system administrator.
    Please give some solution for this,
    Thanks,
    Babarkhan

    thread is closed from my side.

  • SPML2 Error: Missing Session Token

    Hello Experts,
    I am trying to enable provisioning between Microsoft FIM 2010 and Sun IdM thru SPML2. I enabled SPML in Sun IdM and when i sent SPML request [listTargetsRequest] from FIM 2010 am getting the below error
    class org.openspml.v2.transport.RPCRouterServlet: org.openspml.v2.transport.Spml2TransportException: org.openspml.v2.util.Spml2Exception: com.waveset.util.WavesetException: Missing session token.
    Here is the Trace from RPCRouterMonitor
    TRACE: RPCRouterServlet is using this monitor.
    -----------------------------RECIEVE----------------------------
    <?xml version="1.0" encoding="utf-8"?><Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header /><Body><listTargetsRequest executionMode="synchronous" xmlns="urn:oasis:names:tc:SPML:2:0" /></Body></Envelope>
    ------------------------------SEND------------------------------
    ERROR: class org.openspml.v2.transport.RPCRouterServlet: org.openspml.v2.transport.Spml2TransportException: org.openspml.v2.util.Spml2Exception: com.waveset.util.WavesetException: Missing session token
    am not sure what am missing here. Pls advice.
    Thanks
    Prakash

    In a request response pipeline of the OSB Proxy, the header/body variable contents will remain intact, unless until they are explicitly altered. Hope this give you more insight to solve the issue you are facing.

  • Another ORA-01722: invalid number Error

    Hello All,
    I have 2 Validations on 1 Item, Not Null and Not Exists, very standard.
    select fk_session_name_id
    from hrt_session
    where fk_session_name_id = :p9_fk_session_name_id
      and fk_class_id = :p9_fk_class_id;My Item needs to be a Select List that returns the ID of FK_SESSION_NAME_ID.
    select distinct SESSION_NAME display_value, PK_SESSION_NAME_ID return_value
    from HRT_SESSION_NAME
    order by 1My Form Page throws the ORA-01722 in invalid number Error only when I make the Item a Select List. If Item is a
    Text Field and ID value entered and Create is clicked the data is saved but not when its a Select List. I have read alot
    of threads that talk about converting this Item to_number but I have not been successful in doing this. Once the Item is
    a Select List the Not Exists validation works but the Not Null Validation populates the Error Message. Can anyone
    assist me with this please? Thanks
    My Data Type is INTEGER for FK_SESSION_NAME_ID and SESSION_NAME is VARCHAR2.
    SESSION_NAME data....
    SESSION 1
    SESSION 2
    PMAS 1
    PMAS 2
    BASIC WORD 2003.....
    Edited by: Charles A on Jan 11, 2010 1:42 PM

    Hey Jari,
    The PK_SESSION_NAME_ID in the select statement is the value that is going to be returned. FK_SESSION_NAME_ID is the Foreign Key value that will get the value from the Primary Key PK_SESSION_NAME_ID.
    Yes, I do have an account that you can log into, thanks for assistance Jari.
    Once you log in Select link 'Hrt_Class' which will populate Page 2. Region 'Cascading LOVs has 4 Items. Class Meridiem, Class Name, Class End Date and Class Location. Select these values then click 'Search'. Once the values are populated click the red button at the bottom 'Add Session Info'. This will populate Page 9 which will allow you to test the Create button. You should not be able to add any Session Name that exists in the Report below and you should not be able to Create a Null FK_SESSION_NAME_ID. Let me know if this is clear, thanks again.
    The PK_SESSION_ID cannot be Null so just start with values 60116 on up to avoid that error message. I do not have any sequences or triggers created since this is just a testing app.
    Edited by: Charles A on Jan 11, 2010 4:05 PM

  • Missing orders in Number Range

    Hi Friends,
    We are facing an issue in our production systems where once in a while we find some orders missing in the number range provided. We have a custom report which tells us whenever a particular number on a sales document number range is skipped. Usually when this report identifies a missing order we will be able to find some error information from ST22 or SM13 logs and from that we identify the user who was trying to create this order and we contact them to re-enter the order. In most cases they are unaware that there has been an error since they get a success message when they save orders. But in some cases no information is available in these transactions and we are unable to identify who was creating this missing order and Business team fears that we are missing some legitimate orders which the customer thinks was created. I read thorugh lot of messages in the SDN forums and lot of similar issues were due to number range buffering but we do not have number range buffering set in our systems for sales documents. Have any of you faced this issue before and do you have a suggestion to prevent this?
    Regards,
    Praveen

    Hi Praveen,
    I remember that the module pool drwas a numer from the number range before the order is actually saved. If the creation process is cancelled, the number has been used.
    You could try to check that by setting a break-point at function module NUMBER_GET_NEXT and then manually create an order, play around with the different tabs and views, create and delete items and check when the number is drawn.
    If it is drawn as it should be in update task, you may find update fails in the update monitor and the users responsible should have received an express mail.
    Regards,
    Clemens

  • Invalid number error when calculating with sysdate

    Hello - I am getting invalid number error for query below:
    SELECT *
    FROM
    trkg
    WHERE
    trkg.tran_type=500
    AND
    trkg.mod_date_time>sysdate-0.5
    I am not sure what is wrong with above query. Strange part is that it executes fine in one environmnet and returns 'invalid number' error in other environmnet? Please help me find missing setting.

    more information:
    Table1: LOCN_HDR with field locn_brcd and locn_id
    locn_brcd locn_id
    26001A 0000086
    26002A 0000087
    26001B 0000088
    Table2: PICK_LOCN with field LOCN_ID
    locn_id
    0000086
    0000087
    0000088
    Table3: TRKG with field from_locn and mod_date_time (this is timestamp field)
    from_locn mod_date_Time
    0000086 29-MAY-13 10.09.23.000000000 AM
    0000087 29-MAY-13 10.11.48.000000000 AM
    0000088 31-MAY-13 04.07.21.000000000 PM
    Now I combine Table1 and Table3
    select * from appwms.locn_hdr lh
    join
    (SELECT lh.locn_brcd,trkg.mod_Date_Time from appwms.trkg
    join appwms.locn_hdr lh
    on trkg.FROM_LOCN = lh.LOCN_ID
    where
    trkg.TRAN_TYPE = 500
    and trkg.mod_Date_time>sysdate-5
    ) trkg1 on lh.locn_brcd=trkg1.locn_brcd
    -- returns values correctly
    Now when I join another table to above (ie table 2), it returns 'invalid number'
    select * from appwms.locn_hdr lh
    join
    (SELECT lh.locn_brcd,trkg.mod_Date_Time from appwms.trkg
    join appwms.locn_hdr lh
    on trkg.FROM_LOCN = lh.LOCN_ID
    where
    trkg.TRAN_TYPE = 500
    and trkg.mod_Date_time>sysdate-5
    ) trkg1 on lh.locn_brcd=trkg1.locn_brcd
    join
    (select pld.locn_id,lh.locn_brcd
    from APPWMS.PICK_LOCN PLD join appwms.locn_hdr lh
    on pld.locn_id = lh.LOCN_ID ) picklocn on picklocn.locn_brcd=lh.locn_brcd
    why are rows returned with one join? when i have more than one join why does it return error 'invalid number'.

  • Invalid Number Error in IR search bar.

    Hi,
    I am getting an invalid number error when i put a value in search bar without selecting the column name.
    I followed ' "Invalid number" error using Interactive Report search on collection' thread and accordingly
    1) Purged User preferences and session state.
    2) Cleared browser settings and cache.
    3) Deleted old region and Created a new region on the page with the same query.
    If I select a column and search it works fine but when I just give an arrangement id which looks like 'ARR12345' directly in search bar it throws Invalid Number.
    This is working perfectly fine in other environments which is replica of this one.
    I also ran Apex util function to remove sort preferences.
    Also my report is a very simple report like select * from a,b where a.id = b.id.
    Please help me. This is a production issue.
    Thanks a lot in advance.
    Regards
    Garima
    Edited by: 860249 on Nov 4, 2011 11:40 AM

    UPDATE SET as = '1', ad = '1', co = '1', pr = '1', date = localtimestamp, lus = 'username'SELECT * FROM sys.v_$reserved_words;
    SQL> create table test1(as varchar2(10));
    create table test1(as varchar2(10))
    ERROR at line 1:
    ORA-00904: : invalid identifier
    SQL> create table test1(sno number, date date);
    create table test1(sno number, date date)
    ERROR at line 1:
    ORA-00904: : invalid identifier
    SQL> create table test1("as" varchar2(10));
    Table created.
    SQL>
    SQL> create table test2(sno number, "date" date);
    Table created.
    SQL> desc test1
    Name                                      Null?    Type
    as                                                 VARCHAR2(10)
    SQL> desc test2
    Name                                      Null?    Type
    SNO                                                NUMBER
    date                                               DATE
    SQL> 

  • Withholding TAX Certificates Number Error

    Hi All,
    In My system, Withholding tax is working fine, Form 16A print preview is also fine But problem is When i go for take a Print out of Form 16A, System show Certificate Number error. Please confirm where I can assign number ranges for this with path?
    Regards
    Jugal Kishor

    HI,
    following path you can configure the certificate number ranges
    spro-financial accounting-financial accountingbasic setting-withholding tax-extended withholding tax-posting-india-maintain number ranges,
    ASSIGN NUMBER RANGES TO NUMBER GROUP
    MAINTAIN NUMBER GROUPS AND SAP SCRIPT FORM
    transaction code - J1INCTNO
    transaction code - J1INCT
    transaction code - J1INCRT
    assign points

  • Confirmation number reaches maximum number

    Hi,
    In my client production system, we are getting close to the limit in terms of QM Confirmation Number for Inspection Characteristic (table QAMV-RUECKMELNR).
    We have standard SAP number range configuration 1 - 99,999,999 for object QMERKRUECK and actual number is <10%
    To resolve the isse, we are planning to archive old inspection lots.
    But my question is how the confirmation number behaves after archiving a set of  inspection lots, we may face the situation where the confirmation number holds two inpsection lots ( one is archived & other is new)?
    What will happen when the system start number with 1 and we would have duplicated numbers in table QAMV.
    Please advise with details steps for archiving inspection lots and how the confirmation number reset to 1 and its consequences etc.,
    Thanks a lot and best regards,
    Nagesam

    Thanks you Sujit,
    You are saying to create new number range for inspection lots ( QCC3 ) and assign origin & type,  please calrify if I am wrong. Please find my exact issue and help to fix...
    In my production system.....
    QMERKRUECK  range is...
    00000001 to 99999999 and the current number is already 91245679
    and QLOSE intervals are below..
    000000000001 to 009999999999
    040000000000 to 049999999999
    070000000000 to 079999999999
    and the flag for 'No interval rolling ' is NOT checked, so the number range will be automatically resets to 1, once reaches to the upper limit
    Issue : Warning message ' Internal number assignment for object QMERKRUECK (numbers are in critical area)" is showing while creating inspection lots using QA01.
    What could be the best solution to fix this?
    1. Archive old inspection lots ( on specific criteria ) ? Later, once the confirmation numbers reaches to 99999999, it will reset to 1. In this case...do we get the situation where the confirmation number holds both archived inspection lot and active ( newly created) inspection lot ? Do we have any business impacts?
    2. How creating new nuber ranges for inspection lots fix the confirmation number range issue? Please clarify if I am missing anything.
    Thanks in advance,
    Nag

  • ORA-15042: ASM disk "2" is missing from group number "1"

    Hi,
    I'm working on an Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Automatic Storage Management option.
    Into the ASM I had 3 diskgroups:
    - ARCHIVELOG (4 disks)
    - ONLINELOG (1 disks)
    - DATA (10 disks)
    When I try to startup the ASM instance I got:
    A-15042: ASM disk "2" is missing from group number "1"The diskgroup won't be mounted.
    I would like to remove that disk and later add a new one.
    I can I do that?
    I'm not able to mount the ARCHIVELOG diskgroup.
    I tried the command
    SQL> alter diskgroup archivelog drop disk ARCH3 force;
    alter diskgroup archivelog drop disk ARCH3 force
    ERROR at line 1:
    ORA-15032: not all alterations performed
    ORA-15001: diskgroup "ARCHIVELOG" does not exist or is not mountedThanks in advance,
    Samuel
    Edited by: Samuel Rabini on Jan 10, 2012 4:11 PM

    As that database is on AWS, I tried this:
    - drop diskgroup archivelog
    - detach of those 4 disks
    - create new 4 disks
    - attach new disks
    - assign those disks to ASM with oracleasm utilty
    - create diskgroup archivelog
    It worked.
    But because I was on AWS and more because it was the ARCHIVELOG diskgroup.
    What would I had to do if it was the DATA diskgroup?
    Thanks

  • Creating session for the Error records

    Hi Guys,
      Iam posting some data using the Custom FM. If i get any errors out of that i need to create a BDC session for those errors.Can anyone throw some light on how to acheive this.
    Regards,
    Kittu.

    HI,
    check this code
    report  zsh_recording_fk01                      .
    tables : lfa1  .  " Vendor Master.
      I N T E R N A L T A B L E - D E C L A R A T I O N                  *
    data : begin of it_tab occurs 0,
               lifnr(16),        "account number of vendor
               ktokk(4),         "Vendor Number
               anred(15),        "Account Group
               name1(35),        "Name
               sortl(10),        "Sort field
               land1(3) ,        "Land
               spras(1),         "Language Key
               kunnr(10),        "customer number
               banks(3),         "Bank country key
               bankl(15),        "Bank Key
               bankn(18),        "Bank Account Number
               koinh(60),        "Account Holder Name
               banka(60),        "Name of bank
               provz(3),         "region
    end of it_tab.
    data : begin of it_tab1 occurs 0,
               banks(3),         "Bank country key
               bankl(15),        "Bank Key
               bankn(18),        "Bank Account Number
               koinh(60),        "Account Holder Name
               banka(60),        "Name of bank
               provz(3),         "region
    end of it_tab1.
    DATA:it_BDCtab LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
    ERROR MESSAGE TABLE
    DATA:it_MSGtab LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    data: program type BDCDATA-PROGRAM,
          dynpro  type BDCDATA-dynpro,
          fnam    type BDCDATA-fnam,
          fval    type BDCDATA-fval.
                  S E L E C T I O N  -  S C R E E N                      *
    selection-screen : begin of block bl1 with frame.
    parameter        : p_file type rlgrap-filename default
    'C:\Vendor.txt.txt' obligatory,
                       p_file1 type rlgrap-filename default
    'C:\Vendor1.txt.txt' obligatory.
    selection-screen : end of block bl1.
               A T  S E L E C T I O N  -  S C R E E N                    *
    at selection-screen on value-request for p_file.
    to get F4 help for p_file
      perform f4_get_help using p_file.
    to get F4 help for p_file
       perform f4_get_help1 using p_file1.
                S T A R T   O F   S E L E C T I O N                      *
    start-of-selection.
    Uploading data from flat file into it_tab
      perform bdc_upload.
      perform bdc_upload1.
      perform populate_bdc.
                 E N D    O F   S E L E C T I O N                        *
    end-of-selection.
    displaying fields which r uploaded from flat file.
      perform display_report.
                 T O P  _  O F _  P A G E                                *
    top-of-page.
    to display header in the report
      perform header.
    *&      Form  f4_get_help
          text
         -->P_P_FILE  text
    form f4_get_help  using    p_p_file.
      call function 'F4_FILENAME'
       exporting
         program_name        = syst-cprog
         dynpro_number       = syst-dynnr
      FIELD_NAME          = ' '
       importing
         file_name           =  p_p_file.
    endform.                    " f4_get_help
    *&      Form  bdc_upload
          text
    -->  p1        text
    <--  p2        text
    form bdc_upload .
      data: v_file type string.
      v_file = p_file.
      call function 'GUI_UPLOAD'
        exporting
          filename                      = v_file
          filetype                      = 'ASC'
      HAS_FIELD_SEPARATOR           = ' '
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
    IMPORTING
      FILELENGTH                    =
      HEADER                        =
        tables
          data_tab                      = it_tab
       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.
      endif.
    endform.                    " bdc_upload
    *&      Form  display_report
          text
    -->  p1        text
    <--  p2        text
    form display_report .
      uline 1(86).
      loop at it_tab .
        format color 2.
        write :/1   sy-vline,
                2   it_tab-lifnr,
                12  it_tab-ktokk ,
                18  it_tab-anred ,
                30  it_tab-name1 ,
                55  it_tab-sortl ,
                58  it_tab-land1 ,
                72  it_tab-spras ,
                76  it_tab-kunnr ,
                88  it_tab-banks ,
                94  it_tab-bankl ,
                112 it_tab-bankn ,
                132 it_tab-koinh ,
                194 it_tab-banka ,
                256 it_tab-provz ,
                260 sy-vline.
      endloop.
      uline 1(86).
    endform.                    " display_report
    *&      Form  header
          text
    -->  p1        text
    <--  p2        text
    form header .
      uline 1(86).
      format color col_heading.
      write :/1   sy-vline,
              2   'VEN.NO',
              12  'ACC' ,
              18  'TITLE' ,
              30  'NAME' ,
              55  'ST',
              58  'LAND' ,
              72  'L' ,
              76  'CUSTNO',
              88  'CKI',
              94  'BANKKEY',
              112 'B.NO',
              132 'ACC HOLDER NAME',
              194 'BANK NAME',
              256 'reg',
              260 sy-vline.
    endform.                    " header
    *&      Form  populate_bdc
          text
    form populate_bdc .
    loop at it_tab.
      perform build_screen_details using 'SAPMF02K' '0105'.
      perform build_fields using: 'BDC_OKCODE' '/00',
                                  'RF02K-LIFNR' it_tab-lifnr,
                                  'RF02K-KTOKK' it_tab-ktokk.
      perform build_screen_details using 'SAPMF02K'     '0110'.
      perform build_fields using:    'BDC_OKCODE' '/00',
                                   'LFA1-ANRED'  it_tab-anred,
                                   'LFA1-NAME1'  it_tab-name1,
                                   'LFA1-SORTL'  it_tab-sortl,
                                   'LFA1-LAND1'  it_tab-land1,
                                   'LFA1-SPRAS'  it_tab-spras.
      perform build_screen_details using 'SAPMF02K'     '0120'.
      perform build_fields using:    'BDC_OKCODE' '/00'.
      perform build_screen_details using 'SAPMF02K'     '0130'.
      perform build_fields using:    'BDC_OKCODE' '=BANK',
                                     'LFBK-BANKS(01)' it_tab-banks,
                                     'LFBK-BANKL(01)' it_tab-bankl,
                                     'LFBK-BANKN(01)' it_tab-bankn,
                                     'LFBK-KOINH(01)' it_tab-koinh.
      perform build_screen_details using 'SAPLBANK'     '0100'.
      perform build_fields using:    'BDC_OKCODE' '=ENTR',
                                     'BNKA-BANKA'     it_tab-banka,
                                     'BNKA-PROVZ'       it_tab-provz.
      perform build_screen_details using 'SAPMF02K'     '0130'.
      perform build_fields using:    'BDC_OKCODE' '=UPDA'.
    endloop.
      call transaction 'FK01' using it_bdctab mode 'A' update
      'S' messages into it_msgtab.
    clear it_bdctab.
    refresh it_bdctab.
    loop at it_msgtab.
    perform format_message.
    endloop.
    endform.                    " populate_bdc
    *&      Form  build_screen_details
          text
    form build_screen_details  using    p_program type BDCDATA-PROGRAM
                                        p_dynpro  type BDCDATA-dynpro.
      it_BDCtab-PROGRAM  = p_program.    " Program Name
      it_BDCtab-DYNPRO   = p_dynpro.     " Screen Number
      it_BDCtab-DYNBEGIN = 'X'.          " New screen
      Append it_bdctab.
      clear it_bdctab.
    endform.                    " build_screen_details
    *&      Form  build_fields
          text
    form build_fields  using    p_fnam
                                p_fval.
      it_BDCtab-FNAM     = p_fnam.
      it_BDCtab-FVAL     = p_fval.
      Append it_bdctab.
      clear  it_bdctab.
    endform.                    " build_fields
    *&      Form  format_message
          text
    -->  p1        text
    <--  p2        text
    form format_message .
    call function 'FORMAT_MESSAGE'
    EXPORTING
       ID              = SY-MSGID
       LANG            = sy-langu
       NO              = SY-MSGNO
       V1              = SY-MSGV1
       V2              = SY-MSGV2
       V3              = SY-MSGV3
       V4              = SY-MSGV4
    IMPORTING
       MSG             = it_msgtab
    EXCEPTIONS
       NOT_FOUND       = 1
       OTHERS          = 2
    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.                    " format_message
    *&      Form  bdc_upload1
          text
    -->  p1        text
    <--  p2        text
    form bdc_upload1 .
    data : v_file1 type string.
    v_file1 = p_file1.
    call function 'GUI_UPLOAD'
      exporting
        filename                      = v_file1
       FILETYPE                      = 'ASC'
      HAS_FIELD_SEPARATOR           = ' '
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
      DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
    IMPORTING
      FILELENGTH                    =
      HEADER                        =
      tables
        data_tab                      = it_tab1
    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.
    endif.
    endform.                    " bdc_upload1
    *&      Form  f4_get_help1
          text
         -->P_P_FILE1  text
    form f4_get_help1  using    p_p_file1.
    call function 'F4_FILENAME'
    EXPORTING
       PROGRAM_NAME        = SYST-CPROG
       DYNPRO_NUMBER       = SYST-DYNNR
      FIELD_NAME          = ' '
    IMPORTING
       FILE_NAME           = p_p_file1
    endform.                    " f4_get_help1
    Regards,
    Laxmi

  • BDC_INSERT, session not opened Error

    Hi,
    I have a BDC program to Add, Update and Delete a customer. If I do either Add, Update or Delete it is working fine. But if I have ADD and Update And Delete or any two of those it is giving me BDC_INSERT session not opened error. I have BDC_OPEN_GROUP, BDC_CLOSE_GROUP and BDC_INSERT.
    Can someone please help me to resolve this error.
    Thanks,
    veni.
        when 'UPDATE'.
          DESCRIBE TABLE itab_output LINES lv_cnt.
          DO lv_cnt TIMES.
            lv_index = sy-index + 3.
            READ LINE lv_index FIELD VALUE chk.
            IF chk = 'X'.
              READ TABLE itab_output INTO wa_index INDEX sy-index.
              IF sy-subrc EQ 0.
                wa_index-index = sy-index.
                APPEND wa_index TO itab_output2.
                CLEAR wa_index.
              ENDIF.
            ENDIF.
            CLEAR chk.
          ENDDO.
          set pf-status 'NORM1'.
          LOOP at itab_output2.
            IF itab_output2-transpzone = 'ADDITION'.
              MOVE itab_output2-name        TO wa1-name.
              MOVE itab_output2-name_2      TO wa1-name_2.
              MOVE itab_output2-name_3      TO wa1-name_3.
              MOVE itab_output2-name_4      TO wa1-name_4.
              MOVE itab_output2-city        TO wa1-city .
              MOVE itab_output2-city_no     TO wa1-city_no.
              MOVE itab_output2-postl_cod1  TO wa1-postl_cod1.
              MOVE itab_output2-transpzone  TO wa1-transpzone.
              MOVE itab_output2-street      TO wa1-street.
              MOVE itab_output2-str_suppl1  TO wa1-str_suppl1.
              MOVE itab_output2-country     TO wa1-country.
              MOVE itab_output2-extens_1    TO wa1-extens_1.
              PERFORM FORMAT_STORENO.
              APPEND wa1 TO itab_output3.
              CLEAR: wa1.
            ELSEIF itab_output2-transpzone = 'CHANGE'.
              MOVE itab_output2-name        TO wa1-name.
              MOVE itab_output2-name_2      TO wa1-name_2.
              MOVE itab_output2-name_3      TO wa1-name_3.
              MOVE itab_output2-name_4      TO wa1-name_4.
              MOVE itab_output2-city        TO wa1-city .
              MOVE itab_output2-city_no     TO wa1-city_no.
              MOVE itab_output2-postl_cod1  TO wa1-postl_cod1.
              MOVE itab_output2-transpzone  TO wa1-transpzone.
              MOVE itab_output2-street      TO wa1-street.
              MOVE itab_output2-str_suppl1  TO wa1-str_suppl1.
              MOVE itab_output2-country     TO wa1-country.
              MOVE itab_output2-extens_1    TO wa1-extens_1.
              PERFORM FORMAT_STORENO.
              APPEND wa1 TO itab_output4.
              CLEAR: wa1.
            ELSEIF itab_output2-transpzone = 'DELETE'.
              MOVE itab_output2-name        TO wa1-name.
              MOVE itab_output2-name_2      TO wa1-name_2.
              MOVE itab_output2-name_3      TO wa1-name_3.
              MOVE itab_output2-name_4      TO wa1-name_4.
              MOVE itab_output2-city        TO wa1-city .
              MOVE itab_output2-city_no     TO wa1-city_no.
              MOVE itab_output2-postl_cod1  TO wa1-postl_cod1.
              MOVE itab_output2-transpzone  TO wa1-transpzone.
              MOVE itab_output2-street      TO wa1-street.
              MOVE itab_output2-str_suppl1  TO wa1-str_suppl1.
              MOVE itab_output2-country     TO wa1-country.
              MOVE itab_output2-extens_1    TO wa1-extens_1.
              PERFORM FORMAT_STORENO.
              APPEND wa1 TO itab_output5.
              CLEAR: wa1.
            endif.
          endloop.
          clear chk.
          refresh itab_output2.
          DESCRIBE TABLE itab_output3 LINES lv_cnt.
          if lv_cnt <> 0.
            perform add_shipto.
          endif.
          clear lv_cnt.
          DESCRIBE TABLE itab_output4 LINES lv_cnt.
          if lv_cnt <> 0.
            perform change_shipto.
          endif.
          clear lv_cnt.
          DESCRIBE TABLE itab_output5 LINES lv_cnt.
          if lv_cnt <> 0.
            perform delete_shipto.
          endif.
          clear lv_cnt.
      endcase.
    FORM FORMAT_STORENO.
      IF itab_output2-storeno >= 1 AND itab_output2-storeno <= 9.
        CONCATENATE '1012'
                    '00000'
                    itab_output2-storeno
                    INTO wa1-storeno.
      ELSEIF itab_output2-storeno > 9 AND itab_output2-storeno < 100.
        CONCATENATE '1012'
                    '0000'
                    itab_output2-storeno
                    INTO wa1-storeno.
      ELSEIF itab_output2-storeno > 99 AND itab_output2-storeno < 1000.
        CONCATENATE '1012'
                    '000'
                    itab_output2-storeno
                    INTO wa1-storeno.
      ELSEIF itab_output2-storeno > 999 AND itab_output2-storeno < 10000.
        CONCATENATE '1012'
                    '00'
                    itab_output2-storeno
                    INTO wa1-storeno.
      ENDIF.
    ENDFORM.                    " FORMAT_STORENO
    FORM add_shipto.
      loop at itab_output3.
        MOVE '1012'                TO WA_EDPAR-KUNNR.
        MOVE 'WE'                  TO WA_EDPAR-PARVW.
        MOVE itab_output3-name_4   TO WA_EDPAR-EXPNR.
        MOVE itab_output3-storeno  TO WA_EDPAR-INPNR.
        INSERT INTO EDPAR VALUES WA_EDPAR.
        CLEAR WA_EDPAR.
      endloop.
      IF gd_open <> gc_true.
        m_grpid = 'ADD_SHIPTO'.
        PERFORM open_bdc_session.
      ENDIF.
      LOOP AT itab_output3 INTO wa1.
        lv_lzone = wa1-postl_cod1(3).
        perform bdc_dynpro      using 'SAPMF02D' '0107'.
        perform bdc_field       using 'BDC_CURSOR' 'RF02D-KTOKD'.
       // BDC to add customer
        PERFORM bdc_transaction USING gc_tcode2.
        m_count = m_count + 1.
      ENDLOOP.
      IF sy-subrc = 0.
        WRITE: /01 'Batch job created successfully',
               /01 'Number of new records added', m_count.
      ENDIF.
      clear m_count.
      IF gd_open = gc_true.
        PERFORM close_bdc_session.
      ENDIF.
    ENDFORM.                    " add_shipto
    FORM change_shipto.
      loop at itab_output4.
        UPDATE EDPAR SET   expnr = itab_output4-name_4
                     WHERE kunnr = '0000001012'   AND
                           inpnr = itab_output4-storeno.
      endloop.
      IF gd_open <> gc_true.
        m_grpid = 'CHANGE_SHIPTO'.
        PERFORM open_bdc_session.
      ENDIF.
      LOOP AT itab_output4 INTO wa1.
        lv_lzone = wa1-postl_cod1(3).
        perform bdc_dynpro      using 'SAPMF02D' '0108'.
        perform bdc_field       using 'BDC_CURSOR' 'RF02D-D0125'.
       // BDC to change customer
        PERFORM bdc_transaction USING gc_tcode1.
        m_count = m_count + 1.
      ENDLOOP.
      IF sy-subrc = 0.
        WRITE: /01 'Batch job created successfully',
               /01 'Number of records changed', m_count.
      ENDIF.
      clear m_count.
      IF gd_open = gc_true.
        PERFORM close_bdc_session.
      ENDIF.
    ENDFORM.                    " change_shipto
    FORM delete_shipto.
      loop at itab_output5.
        DELETE FROM EDPAR
                     WHERE kunnr = '0000001012'   AND
                           expnr = itab_output5-name_4 AND
                           inpnr = itab_output5-storeno.
      endloop.
      IF gd_open <> gc_true.
        m_grpid = 'DELETE_SHIPTO'.
        PERFORM open_bdc_session.
      ENDIF.
      LOOP AT itab_output5 INTO wa1.
        perform bdc_dynpro      using 'SAPMF02D' '0507'.
        perform bdc_field       using 'BDC_CURSOR' 'RF02D-SPART'.
        perform bdc_field       using 'BDC_OKCODE' '/00'.
        perform bdc_field       using 'RF02D-KUNNR' wa1-storeno.
        perform bdc_field       using 'RF02D-VKORG' '300'.
        perform bdc_field       using 'RF02D-VTWEG' '20'.
        perform bdc_field       using 'RF02D-SPART' '01'.
        perform bdc_dynpro      using 'SAPMF02D' '0520'.
        perform bdc_field       using 'BDC_CURSOR' 'KNA1-LOEVM'.
        perform bdc_field       using 'BDC_OKCODE' '=UPDA'.
        perform bdc_field       using 'KNA1-LOEVM' 'X'.
        PERFORM bdc_transaction USING gc_tcode3.
        m_count = m_count + 1.
      ENDLOOP.
      IF sy-subrc = 0.
        WRITE: /01 'Batch job created successfully',
               /01 'Number of records deleted', m_count.
      ENDIF.
      clear m_count.
      IF gd_open = gc_true.
        PERFORM close_bdc_session.
      ENDIF.
    ENDFORM.                    " delete_shipto
    FORM open_bdc_session.
      CALL FUNCTION 'BDC_OPEN_GROUP'
           EXPORTING
                client = sy-mandt
                group  = m_grpid
                keep   = 'X'
                user   = sy-uname.
      IF sy-subrc <> 0.
        MESSAGE e208(00) WITH 'Session open error'.
      ELSE.
        gd_open = gc_true.
      ENDIF.
    ENDFORM.                    " open_bdc_session
    FORM close_bdc_session.
      IF gd_open = gc_true.
        CALL FUNCTION 'BDC_CLOSE_GROUP'
             EXPORTING
                  client = sy-mandt
                  group  = m_grpid
                  keep   = 'X'
                  user   = sy-uname.
      ENDIF.
    ENDFORM.                    " close_bdc_session
    FORM bdc_dynpro USING    p_program
                             p_screen.
      CLEAR: itab_bdcdata.
      itab_bdcdata-program  = p_program.
      itab_bdcdata-dynpro   = p_screen.
      itab_bdcdata-dynbegin = gc_true.
      APPEND itab_bdcdata.
    ENDFORM.                    " bdc_dynpro
    FORM bdc_field USING    p_fieldname
                            p_value.
      CLEAR itab_bdcdata.
      itab_bdcdata-fnam = p_fieldname.
      itab_bdcdata-fval = p_value.
      APPEND itab_bdcdata.
    ENDFORM.                    " BDC_FIELD
    FORM bdc_transaction USING    p_tcode.
      CALL FUNCTION 'BDC_INSERT'
           EXPORTING
                tcode     = p_tcode
           TABLES
                dynprotab = itab_bdcdata.
      REFRESH itab_bdcdata.
      CLEAR: itab_bdcdata.
    ENDFORM.                    " bdc_transaction

    Thank you Rob.
    I just added this in BDC_CLOSE_GROUP, and it worked.
      IF sy-subrc = 0.
        gd_open = ' '.
      ENDIF.
    In BDC_OPEN_GROUP if gd_open = ' ', then only it opens a new session.
    Thanks,
    Veni.
    Edited by: veni reddy on Feb 8, 2008 8:52 PM

  • TO_NUMBER getting invalid number error

    I want to use TO_NUMBER function to converse some float number,
    but the following query always gets invalid number error:
    select to_number('12.1073') from dual;
    but if I add the format in, it runs as expected:
    select to_number('12.1073', '99.9999') from dual;
    From the syntax, the format parameter is optional, is it only optional for integers?
    Thanks!

    Same here.
    So, or you replace dot by comma, or you change the territory (or nls_numeric_characters) defined for your session :
    SQL> select to_number('12.1073') from dual;
    select to_number('12.1073') from dual
    ERROR at line 1:
    ORA-01722: invalid number
    Elapsed: 00:00:00.00
    SQL> alter session set nls_territory='america';
    Session altered.
    Elapsed: 00:00:00.00
    SQL> select to_number('12.1073') from dual;
    TO_NUMBER('12.1073')
                 12.1073
    Elapsed: 00:00:00.00
    SQL> alter session set nls_territory='france';
    Session altered.
    Elapsed: 00:00:00.00
    SQL> select to_number('12.1073') from dual;
    select to_number('12.1073') from dual
    ERROR at line 1:
    ORA-01722: invalid number
    Elapsed: 00:00:00.00
    SQL> alter session set nls_numeric_characters='.,';
    Session altered.
    Elapsed: 00:00:00.00
    SQL> select to_number('12.1073') from dual;
    TO_NUMBER('12.1073')
                 12.1073
    Elapsed: 00:00:00.00
    SQL> Nicolas.

  • Ifconfig pcelx0 plumb fails with Bad file number error

    Hi,
    I installed solaris 8 (x86) on a Toshiba Tecra 8000.
    The Tecra uses Neomagic NM2200 chipset for it's display.
    Even though it is not supported by the Sun Drivers, getting xfree86 for sun fixed the display problem for me.
    Now according to the various sources that guided me in this task seemed to point at a few things that I had to do in order to make the Tecra work okay with Solaris 8 :
    1)Change the PCMCIA mode in the BIOS from automatic to PCIC mode
    2)Make sure that there were no IRQ conflicts on the system.
    3)Install the OS.
    Once the OS was installed, I ran prtconf -D and saw that the network instance #0 pcelx0 was showing up under pcic.
    I did not have to install the xig init-pcic patch.
    But it did not create an entry in /devices or /dev (as a link) with the error
    "pcelx0 requested IRQ failed 6".
    Also, I suppose that is the reason why when pcelx0 is plumbed, it comes out with the error message:
    ifconfig pcelx0 plumb : "bad file number"
    Any help will be greatly appreciated.
    Thanks,
    Dwai.

    Thanks Alex,
    I found out -
    ifconfig adapter plumb will fail with Bad File number error when the device file that is being referred to is missing.
    I checked and found that the pcelx link is not being made in the /dev directory and the file not created in /devices.
    I also found that when /reconfigure is run, it tries to create the device for pcelx but fails with this eror message:
    pcelx : RequestIRQ fail 6
    I am assuming that there is some IRQ conflict with some other device.
    Thanks,
    Dwai.

  • Confirmation Number Range

    Dears,
    While doing PM order confirmation through IW41 we are getting error message as Update was teminated. When we analyzed this is because of number range conflict. Where do we maintain this number range?
    Kindly advice
    Senthil

    Hi,
    Once you create the Order, confirmation number will be assigned to that. While doing confirmation, against that predefined number, that confirmation will happen.
    Give the order number (AUFNR) as input in AFKO table to get the Operation Task list number (AUFPL). Give AUFPL value in AFVC table to get the assigned confirmation number.
    Against that number only, old confirmation will happen. Only for the new orders, new confirmation number range will be assigned.
    Regards,
    Maheswaran.

Maybe you are looking for

  • I just ran Software Update and now many applications crash on launch

    Hardware Overview:   Model Name:    MacBook Pro   Model Identifier:    MacBookPro5,3   Processor Name:    Intel Core 2 Duo   Processor Speed:    2.66 GHz   Number Of Processors:    1   Total Number Of Cores:    2   L2 Cache:    3 MB   Memory:    4 GB

  • How to import into ical 2

    i want a txt-file or tab dilimited file imported in ical. I used to use iCalTextImport, but I get an error message on opening the program, saying something like 'an error has occurred - please check your settings! the eror was: can't make "5,11108644

  • In which table data is stored by text editor

    we enter text in  text editor control. but i can't figure out :: it store the text entered in text editor in which table. can you help me in this. regards.

  • Territory Management Exception rules

    Guys, we are on CRM 7.0 and need your expertise to understand how to build exception rules in Territory Management. We have rules built upon Country/Regions and postal codes in US e.g. 1. If country is US and region is New York then return Territory

  • Issues with merging layers with layer styles

    Just downloaded CS6 Photoshop off the creative cloud and the merge layer command does not work. What is happening is there is one layer with a layer style then a shape layer and when I hit Cmd E it merges the layers but the layer style will not merge