How to handle subcontractor scrap

Hi All,
We have a requirement in subcontractor scrap handling , the process is like input materials are sent to subcontractor for processing , in some situation the input materials sent will have hidden defect/damage and at the time of subcontractor processing only the defect will be known and the  whole assembly gets fully scrapped , so the vendor returns back the same.
My question is how to take back the scrap? by doing migo 101 and 543 and then scrapping in quality? or do 542 and take back the assembly and then scrap it in 551? if we do migo 101 and 543 , then the PO will be considered as closed and further if we need to send fresh input materials to vendor against the same PO reference this will be a trouble , since we have activated a user exit for not allowing excess qty against the PO line item for 541 movement type , this is same case if we do 542 and PO will get open once again and user exit will now allow the input materials to be sent in 541.  The other option is doing 553 (scrap at vendor end) which will not suit our business need. Also if we do scrapping only the  Assembly gets scrapped and not the components ? correct . Anyone who had this same requirement pls provide your valuable inputs/suggestions.
Thanks in advance
Benny

Hi There
1. Do 542 for the problematic components and send the fresh batch of material and it will solve,, it is not confused process, it is straight away you can get the clear vision,,
2. Scrpping at vendor- will may impact in Vendor Performance( if the Vendor evaluation is active) and the cost may involve in their cost,, (Check with your FICo team for more details on this)
If the user exist is not active, you can do the following also,,
Maintain in the PO-Sub con BOM, for the rejected qty as by product and receive the goods only for the finished qty, consumbtion will happen only for the recd qty and the rejected qty as By product, you can get the material back which is really scrapped,,
Hope it helps to get the idea of further step
Thanks
Senthil

Similar Messages

  • How to handle scrap occured during processing

    Hi all,
    I am facing problem with handling the scrap occured during processing. The case here is i want to scrap the material eg ABC, and want to sell the same material with different material no., unit of measurement.
    The present process is as below,
    The scrap occured during process is been collected & is scraped using Tcode MB1A, with movement type 551 or is added in the scrap feild during confirmation CO15. As per my knowledge this scrap is accounted against the costcenter and then it is out of the system. Now in order to sell the scrap the same scrap with new material no.is loaded back in the system using movement type 501. The same is been sold.
    Requirement is that i want the link between the scrap & the scrap been sold.
    Want to avoid movement 551 & 501, which is in practice rt now.
    The same process is followed from past 5 months. So we cant go with the option of Byproduct / phantom assembly as we need to change all master data.
    Can some one suggest me how to go about it, its urgent!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Regards,
    Arun

    we will take a simple scenario - decide if this helps you
    1. Input RM1 and RM2 (both rawmaterials to produce a finished goods(fg))
       FG1
    2. Now one scrap is produced -wecan call it as SC1
    3. your bom shoudl have positive entries for the RM1 ,RM2 -which will be consumed during the production confirmation
    4. the SC1 the scrap material needs to have a negateive qty in the BOM which will be getting produced with 531 movement type
    5. so this scrap will be avilable in scrap and the same can be sold and processed futher
    this is one of the best practiices if
    a. know what qty of scrap willbe produced
    b. if we have diffeent material number for scrap ..
    In another case if u need to sell the same material then keep the same material with the negative qty in the bom so the same material will be produced with 531 mvt type.
    Thansk and regards..

  • How to handle defect items in sap sd..

    Hi Friends,
    How to handle defect items in sap sd..
    My requirement is some of the XYZ materials are damaged 10%.Some more materials(Material number is XYZ) are damaged to 20%.When sales order is created with these defect items,the system should pickup the defect items only?One more thing is for 10% damaged items,one price is given.For 20% damaged items,one more price is given and so on.How this will be configured in sap sd.
    We hav an idea that making these type of defects as scrap.Then create one more material number  as AXYZ(Defects of XYZ) and receipt without po.We can use the defects in sales order and soon.But how pricing will be set for different levels of damages?
    Any ideas,documents and settings required for this scenario and share any ideas
    Thanks in advace....VM

    Hi All,
    Thank you very much for your replies and sharing your valuable information
    Just I am giving all the meeting points and those are
    They donu2019t want to convert into scrap.
    One more point is that if materials are in batches then???
    When we create sales order that damaged one only should be picked by the system.
    Manual entering the price need to be stopped
    Without maintaining separate material for the damaged, any possibilities?
    We discussed abt Split valuation point .Is it suitable to this? then how?
    How to handle this we are thinking.
    Both Rithvikau2019s point and Jigneshu2019s point need to be considered, actually this is main issue. There are more chances of malpractices/confusion to the user as mentioned by Rithvika. Here one more constraint is more material codes required for 10%, 20%, 30%........90% damaged one for one material as said by Jignesh
    Actually I mentioned only as example 10% and 20% but have many.
    Any ideas how to proceed...
    Thanks and Regardsu2026VM
    Edited by: vm on Apr 13, 2009 4:45 PM

  • Handling the scrap

    Dear friends,
    Our client is having manufacturing industry.
    During the process, Nearly 10 types of scrap will be generating and storing in seperate place.
    Once in a year , Procurement dept, go for auction and sell the scrap.
    Requirement :
    These scrap needs to monitored on quantity .
    ---From MM side how to Map in SAP , do we need any material type as scrap,
    --How to transfer to scrap.
    Please suggest the step by step how to handle it/map it in SAP.
    Regards,
    Cannad

    HI  ANAND  BY  USING MOVT  TYPE  551    U CAN  SCRAPTHE  MTERIAL  FORM  UNRESTRICETED   STOCK  THERE  WILL  BE  ACC   DOC  CONT   DOC AND  MATERIAL   DOC  WILL  BE   GENERATED   THERE   IS  NO  SPECIFIC  MATERIAL  TYPE  TO SCRAP
    OK
    REGARDS 
    KISHORE

  • How to Handle Rework Scenario

    Dear Sir,
    We have following scenario :
    We created a Production Order (type PP01) for 1 piece of  Component 'X' . The Order was confirmed using Co11n and subsequently MB31 (GR) was done for the Order .  An Inspection Lot got created after the GR .  During Inspection , it was found that Processed Material need some Rework and Quality Inspector posted the Compopnent under BLOCK Stock during the UD .
    Now we need to start Rework on this Component .  Pl guide us what steps need to be followed for completing the Rework cycle .
    I have gone thru many of posting available in this forum related to REWORK , where it has been suggested to make a PP03 type Order in CO07 .
    But I fail to understand that following issues in this :
    a) How to issue faulty Compponent to Rework Order
    b) How to clear the Stock from earlier BLOCK Stock
    c) How to bring Stock back after Rework Order is confirmed and Inspected .
    I request you to kindly help me pl .
    Rgds
    Sonia Agarwal

    Here is the expalanation..
    THis is how we handle the scenario in our place..
    There are two types.
    1.      Repairing done by external persons or subcontractors..
    2.      Refurbishment done inside the plant.
    The second is done by the production department..
    The Refurbishment process is bit different from other production processes..
    The Defective material is received from different locations to the stores through MIGO.
    Here we will specify from and to locations of the defective Assemblies..
    The TO storage location is RMMS.. Here the valuation tye is SF-DEF..
    The refurbishment order is created in IW81.
    Order type is PM04
    In the Header, Refurbishment tab page is Important..The from to details have to given promptly(from val type defective to val type repaired)..
    Then the other things are like your usual production order..
    The GI is done in MB11,261 movement..(Against the order)
    After the execution is done, in MIGO goods issue is done with movement 531..Receipt of byproduct. the material is now converted from DEF to REP..
    Components issue has to be as followed.In the components tab , the materials to be issued has to given as usual. and the same materials has to be mentioned again as -1.It means you are taking away the defective components and adding the good ones...
    Confirmation is done on IW41..
    Hope the above clarifies..

  • How to handle returned products originally issued out using Transport Order

    Dear Experts
    I transfer a batch containing 10 cartons from production plant NDE1 to sales plant NDE2 within same company code using a stock transport order.
    Each carton is valued at 1dollar each, that is total value of transfered stock is $10
    After two weeks, 3 cartons went bad and needs to be returned to production plant NDE1.
    How do I capture this return process in SAP?
    If it were an outright sales to a customer, a Return Order with reference to the invoive will be created, return delivery done,PGI done which brings the returned stock into inventory, and a credit memo posted against the original billing.
    How do I handle my 3 cartons of returned stock since it was given out using a transport order?
    What will the accounting entries be in the system? i mean which accounts will be credited and debited by the $3 value of th ereturned three cartons?

    It depends how you handle the stock .Your accounting document generated in NDE2  in plant only.
    The first step you transfered the material through sto from NDE1 to NDE2 ,here there is no impact on accounting entries as you are transffering the stock with in company code.
    After you get return stock from customer NDE2 you can directly scrap or after inspecction of the stock if the stock is good then you can keep in Unresticted use for further sales.
    I dont think so you need again one more sto to get return stock from NDE2 to NDE1 as it is damaged stock and un necessary paying transport costs.
    If you scrap the material then the 3 qty of stock 3 doller price hit to scrap account.

  • How to Handle Cancelation of PO, Partial Order Acceptance

    Dear Experts,
    Please give me the answers -
    1] How to cancel purchase order on eleventh hour.
        I mean user have created purchase order, released the PO. For any reason the purchase order to be canceled.
    2] Partial Order acceptance -
        Actual PO Quantity - 500. GR is to be posted for quantity - 250. How to cancel the rest 250 Qty.
        cancellation means no further GR is to be posted for the same.
    3] How to handle complaints and material return to vendor in SAP?
    4] How to handle Returnable packaging.
        That mean my company provides a container to Vendor to pack the material and deliver it to me.
    Thanks in Advance !

    hi,
    1. You can delete the line item and then save the PO...
    2. Use "delivery completed indicator" at GR for showing the indication that your requirement is fulfilled while the rest qty is not further req. but possible...
    3. Complaints is not necessary but you provide direct indication may be via scrapping etc..and vendor return is handled via using the proper mvt type like 122 etc...for returning the mateiral to vendor as per the business scenerio...
    4. check with the SD or few forums on same ....
    Regards
    Priyanka.P

  • Handling subcontract scrap

    Hi
    For subcontract process
    Components (with BOM) provided to Vendor using mvt 541.
    SFG - 10 pcs (To be GR)
    RAW - 25 pcs (Comp to be issued to vendor)
    2 pcs RAW damaged at vendor place.
    How to handle this ? How to GR ?
    I cant have a scrap material (dummy) with BOM. Biz doesn't allow.
    Thanks
    MM

    SAP-MM1 wrote:
    Hi
    >
    > For subcontract process
    >
    > Components (with BOM) provided to Vendor using mvt 541.
    > SFG - 10 pcs (To be GR)
    > RAW - 25 pcs (Comp to be issued to vendor)
    > 2 pcs RAW damaged at vendor place.
    >
    > How to handle this ? How to GR ?
    > I cant have a scrap material (dummy) with BOM. Biz doesn't allow.
    >
    > Thanks
    > MM
    Hi
    Raise a subsequent debit to the vendor wrt to PO.
    Shiva

  • How to handle exception CX_SY_REF_IS_INITIAL

    hi experts,
    im working on a test scenario for abap mapping in SAP XI im getting this error
    An exception with the type CX_SY_REF_IS_INITIAL occurred, but was neither handled locally, nor declared in a RAISING clause Dereferencing of the NULL reference
    i understand that i need to catch this exception in the abap coding but i'm not familiar with oops concepts
    can any one please suggest me how to handle this exception for the following code...
    method IF_MAPPING~EXECUTE.
      break x1149.
    * initialize iXML
      TYPE-POOLS: ixml.
      class cl_ixml definition load.
    ** Instances & Variable declaration =======================
    * instance main factory
      TYPES: BEGIN OF t_xml_line,
              data(256) TYPE x,
            END OF t_xml_line.
      DATA: l_ixml TYPE REF TO if_ixml,
    * instance input stream factory
       l_streamfactory TYPE REF TO if_ixml_stream_factory,
    * instance input stream
      l_istream  TYPE REF TO if_ixml_istream,
    * instance input document
      l_document TYPE REF TO if_ixml_document,
    * instance parse input document
      l_parser TYPE REF TO if_ixml_parser,
    * instance for elements within the nodes
      node      TYPE REF TO if_ixml_node,
    *instance of nodemap
      nodemap   TYPE REF TO if_ixml_named_node_map,
    * instance for iterator
      iterator  TYPE REF TO if_ixml_node_iterator,
      name      TYPE string,
      value     TYPE string,
    * instance main factory
       o_ixml   TYPE REF TO if_ixml,
    * instance output document
       o_document TYPE REF TO if_ixml_document,
    * instance output stream
      o_istream  TYPE REF TO if_ixml_ostream,
    * instance parse output document
      o_parser  TYPE REF TO if_ixml_parser,
    * instance fot renderer
      renderer type ref to if_ixml_renderer,
      irc type i,
      l_xml_size   TYPE i,
    *ROOT ELEMENT
    l_element_MT_DEMANDTEC_COST TYPE REF TO if_ixml_element,
    *NEXT CHILD ELEMENT FROM THE ABOVE PARENT
    l_element_DT_DEMANDTEC TYPE REF TO if_ixml_element,
    *CHILDREN1 ELEMENT FOR DT_DEMANDTEC
    l_element_DT_WHSE  TYPE REF TO if_ixml_element,
    *CHILDREN2 ELEMENT FOR DT_DEMANDTEC
    l_element_DT_DC    TYPE REF TO if_ixml_element,
    *CHILDREN3 ELEMENT FOR DT_DEMANDTEC
    l_element_DT_PLANT    TYPE REF TO if_ixml_element,
    *CHILDREN4 ELEMENT FOR DT_DEMANDTEC
    l_element_DT_QTY    TYPE REF TO if_ixml_element.
    *saving the xml document
      DATA: l_xml_table       TYPE TABLE OF t_xml_line.
      types: begin of t_source,
              whse(5),
              dc(4) ,
              plant(4),
              qty    type i,
             end of t_source.
      types: tt_source TYPE STANDARD TABLE OF t_source.
      data:  wa_source type t_source.
      data: it_source TYPE  tt_source,
            ivalue type string.
    * Procedures and business logic =======================================
    *   Creating the main iXML factory
      l_ixml = cl_ixml=>create( ).
    *   Creating a stream factory
      l_streamfactory = l_ixml->create_stream_factory( ).
    * create input stream
      l_istream = l_streamfactory->create_istream_xstring( source ).
    *  initialize input document
      l_document = l_ixml->create_document( ).
    *  Create a Parser
      l_parser = l_ixml->create_parser( stream_factory = l_streamfactory
                                          istream        = l_istream
                                          document       = l_document ).
    * parse input document
      l_parser->parse( ).
    *   Validate a document
      l_parser->set_validating( mode = if_ixml_parser=>co_validate ).
    *   Parse the stream
      IF l_parser->parse( ) NE 0.
        IF l_parser->num_errors( ) NE 0.
          DATA: parseerror TYPE REF TO if_ixml_parse_error,
                str        TYPE string,
                i          TYPE i,
                count      TYPE i,
                index      TYPE i.
          count = l_parser->num_errors( ).
          WRITE: count, ' parse errors have occured:'.
          index = 0.
          WHILE index < count.
            parseerror = l_parser->get_error( index = index ).
            i = parseerror->get_line( ).
            WRITE: 'line: ', i.
            i = parseerror->get_column( ).
            WRITE: 'column: ', i.
            str = parseerror->get_reason( ).
            WRITE: str.
            index = index + 1.
          ENDWHILE.
        ENDIF.
      ENDIF.
    *   Process the document
      IF l_parser->is_dom_generating( ) EQ 'X'.
        refresh : it_source.
        node ?= l_document.
        CHECK NOT node IS INITIAL.
    *   create a node iterator
        iterator  = node->create_iterator( ).
    *   get current node
        node = iterator->get_next( ).
    *   loop over all nodes
        WHILE NOT node IS INITIAL.
          CASE node->get_type( ).
            WHEN if_ixml_node=>co_node_element.
    *         element node
              name    = node->get_name( ).
              nodemap = node->get_attributes( ).
            WHEN if_ixml_node=>co_node_text.
    *         text node
              value  = node->get_value( ).
              if name eq 'DT_WHSE'.
                wa_source-whse = value.
              ELSEIF name eq 'DT_DC'.
                wa_source-DC = value.
              ELSEIF name eq 'DT_PLANT'.
                wa_source-PLANT = value.
              ELSEIF name eq 'DT_QTY'.
                wa_source-QTY = value.
                COLLECT wa_source INto it_source.
                CLEAR   wa_source.
              ENDIF.
          endcase.
          node = iterator->get_next( ).
        endwhile.
      ENDIF.
      loop at it_source into wa_source .
        at first.
    *       Creating a ixml factory
          o_ixml = cl_ixml=>create( ).
    *       Creating the dom object model
          o_document = l_ixml->create_document( ).
        endat.
    *       Build and Fill  root node MT_DEMANDTEC_COST
        AT FIRST.
          l_element_MT_DEMANDTEC_COST    =
    O_document->create_simple_element(
                                  name   = 'MT_DEMANDTEC_COST'
                                  parent = o_document ).
        ENDAT.
    *      Build and Fill  Child node DT_DEMANDTEC for parent
    *                                                  MT_DEMANDTEC_COST
        l_element_DT_DEMANDTEC    = O_document->create_simple_element(
                                     name   = 'DT_DEMANDTEC'
                                     parent = l_element_MT_DEMANDTEC_COST ).
    *      Build and Fill  Child node1 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-WHSE.
        l_element_DT_WHSE    = O_document->create_simple_element(
                                         name   = 'DT_WHSE'
                                         VALUE  = ivalue
                                         parent = l_element_DT_DEMANDTEC  ).
    *      Build and Fill  Child node2 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-DC.
        l_element_DT_DC   = O_document->create_simple_element(
                                             name   = 'DT_DC'
                                              VALUE  = ivalue
                                    parent = l_element_DT_DEMANDTEC ).
    *      Build and Fill  Child node3 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-PLANT.
        l_element_DT_PLANT   = O_document->create_simple_element(
                                                 name   = 'DT_PLANT'
                                                  VALUE  = ivalue
                                   parent = l_element_DT_DEMANDTEC  ).
    *      Build and Fill  Child node4 DT_QTY for parent DT_DEMANDTEC
        ivalue              = wa_source-QTY.
        l_element_DT_QTY     = O_document->create_simple_element(
                                                 name   = 'DT_QTY'
                                                  VALUE  = ivalue
                                   parent = l_element_DT_DEMANDTEC  ).
      endloop.
    * render document ======================================================
    * create output stream
      o_istream  = l_streamfactory->create_ostream_xstring( result ).
    *   Connect internal XML table to stream factory
      o_istream  = l_streamfactory->create_ostream_itable( table =
    l_xml_table ).
      renderer = o_ixml->create_renderer( ostream = o_istream
                                              document = o_document ).
      irc = renderer->render( ).
    * how do i catch the exception for type CX_SY_REF_IS_INITIAL ...?
    endmethod.
    full reward points for answers.
    Thanks & Regards,
    Uday Kumar.
    Edited by: UDAY on May 6, 2008 9:32 PM

    Hi Uday,
    Its occurs because you're trying to access a objects with null reference. Or you forgot to create an instance or an error occurs during the instance creation. So You should put all your "Procedures and business logic" inside a Try/catch block. as follow.
    " Define a class exception object to get error message......
    DATA o_exception TYPE REF TO cx_sy_ref_is_initial.
    "// Use the statment Try block to catch the error.
    TRY.
    *   Creating the main iXML factory
      l_ixml = cl_ixml=>create( ).
    *   Creating a stream factory
      l_streamfactory = l_ixml->create_stream_factory( ).
    * create input stream
      l_istream = l_streamfactory->create_istream_xstring( source ).
    *  initialize input document
      l_document = l_ixml->create_document( ).
    *  Create a Parser
      l_parser = l_ixml->create_parser( stream_factory = l_streamfactory
                                          istream        = l_istream
                                          document       = l_document ).
    * parse input document
      l_parser->parse( ).
    *   Validate a document
      l_parser->set_validating( mode = if_ixml_parser=>co_validate ).
    *   Parse the stream
      IF l_parser->parse( ) NE 0.
        IF l_parser->num_errors( ) NE 0.
          DATA: parseerror TYPE REF TO if_ixml_parse_error,
                str        TYPE string,
                i          TYPE i,
                count      TYPE i,
                index      TYPE i.
          count = l_parser->num_errors( ).
          WRITE: count, ' parse errors have occured:'.
          index = 0.
          WHILE index < count.
            parseerror = l_parser->get_error( index = index ).
            i = parseerror->get_line( ).
            WRITE: 'line: ', i.
            i = parseerror->get_column( ).
            WRITE: 'column: ', i.
            str = parseerror->get_reason( ).
            WRITE: str.
            index = index + 1.
          ENDWHILE.
        ENDIF.
      ENDIF.
    *   Process the document
      IF l_parser->is_dom_generating( ) EQ 'X'.
        refresh : it_source.
        node ?= l_document.
        CHECK NOT node IS INITIAL.
    *   create a node iterator
        iterator  = node->create_iterator( ).
    *   get current node
        node = iterator->get_next( ).
    *   loop over all nodes
        WHILE NOT node IS INITIAL.
          CASE node->get_type( ).
            WHEN if_ixml_node=>co_node_element.
    *         element node
              name    = node->get_name( ).
              nodemap = node->get_attributes( ).
            WHEN if_ixml_node=>co_node_text.
    *         text node
              value  = node->get_value( ).
              if name eq 'DT_WHSE'.
                wa_source-whse = value.
              ELSEIF name eq 'DT_DC'.
                wa_source-DC = value.
              ELSEIF name eq 'DT_PLANT'.
                wa_source-PLANT = value.
              ELSEIF name eq 'DT_QTY'.
                wa_source-QTY = value.
                COLLECT wa_source INto it_source.
                CLEAR   wa_source.
              ENDIF.
          endcase.
          node = iterator->get_next( ).
        endwhile.
      ENDIF.
      loop at it_source into wa_source .
        at first.
    *       Creating a ixml factory
          o_ixml = cl_ixml=>create( ).
    *       Creating the dom object model
          o_document = l_ixml->create_document( ).
        endat.
    *       Build and Fill  root node MT_DEMANDTEC_COST
        AT FIRST.
          l_element_MT_DEMANDTEC_COST    =
    O_document->create_simple_element(
                                  name   = 'MT_DEMANDTEC_COST'
                                  parent = o_document ).
        ENDAT.
    *      Build and Fill  Child node DT_DEMANDTEC for parent
    *                                                  MT_DEMANDTEC_COST
        l_element_DT_DEMANDTEC    = O_document->create_simple_element(
                                     name   = 'DT_DEMANDTEC'
                                     parent = l_element_MT_DEMANDTEC_COST ).
    *      Build and Fill  Child node1 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-WHSE.
        l_element_DT_WHSE    = O_document->create_simple_element(
                                         name   = 'DT_WHSE'
                                         VALUE  = ivalue
                                         parent = l_element_DT_DEMANDTEC  ).
    *      Build and Fill  Child node2 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-DC.
        l_element_DT_DC   = O_document->create_simple_element(
                                             name   = 'DT_DC'
                                              VALUE  = ivalue
                                    parent = l_element_DT_DEMANDTEC ).
    *      Build and Fill  Child node3 DT_WHSE for parent DT_DEMANDTEC
        ivalue              = wa_source-PLANT.
        l_element_DT_PLANT   = O_document->create_simple_element(
                                                 name   = 'DT_PLANT'
                                                  VALUE  = ivalue
                                   parent = l_element_DT_DEMANDTEC  ).
    *      Build and Fill  Child node4 DT_QTY for parent DT_DEMANDTEC
        ivalue              = wa_source-QTY.
        l_element_DT_QTY     = O_document->create_simple_element(
                                                 name   = 'DT_QTY'
                                                  VALUE  = ivalue
                                   parent = l_element_DT_DEMANDTEC  ).
      endloop.
    * render document ======================================================
    * create output stream
      o_istream  = l_streamfactory->create_ostream_xstring( result ).
    *   Connect internal XML table to stream factory
      o_istream  = l_streamfactory->create_ostream_itable( table =
    l_xml_table ).
      renderer = o_ixml->create_renderer( ostream = o_istream
                                              document = o_document ).
      irc = renderer->render( ).
    "   The Statement CATCH define a block that catches the exceptions of the
    "   exception class cx_sy_ref_is_initial
        CATCH cx_sy_ref_is_initial INTO o_exception.
    " If you need to get the error message text do as follow
    DATA errorMsg type string.
    " Get the message text
      errorMsg = o_exception->GET_TEXT( ).
    " Display the error information
      MESSAGE errorMsg TYPE 'I'.
      ENDTRY.
    The TRY block defines a guarded area whose class-based exceptions can be caught in the subsequent CATCH blocks. If no exception occurs in the TRY block and it reaches its end, the system continues the processing after ENDTRY. If a class-based exception occurs in the TRY block, the system searches for an exception handler in the same or an external TRY control structure.
    Font: SAP Help
    You can see a how to create and use an exception in this example [ ABAP Objects - Defining a Class-based exceptions|https://wiki.sdn.sap.com/wiki/x/19w] .
    Best Regards.
    Marcelo Ramos

  • How to handle null values in RTF templates

    Hi - I have two groups in a report for different SQL and two formulas for each group, CF_ELE_CNT and CF_ELE_CNT1. In the template I use the below code to print or not print a section.
    <?if:number(CF_ELE_CNT +CF_ELE_CNT1) >0?>    
    The problem is when there is no data in the second group its not creating the XML tag for CF_ELE_CNT1, though CF_ELE_CNT has 13, it still does not print that partucular section. If I remove CF_ELE_CNT1 from the condition it works fine. I was wondering how to handle this.
    Any help would be appreciated!!
    Thanks,
    Rav

    Hey Rav,
    You can add a check to identify it the element/tag is present or not
    <?if:(CF_ELE_CNT1)?> will give true, if the element is present otherwise falsesince you are adding the two elements, you have to add a or condition.
    <?if:(CF_ELE_CNT and number(CF_ELE_CNT) >0 ) or ( CF_ELE_CNT1 and CF_ELE_CNT1 >0)?>

  • How to handle file on application server without coading?

    HI all,
    can anybody tell me How to handle file on application server without coading? Is there any solution?
    Thanks in advance.

    > can anybody tell me How to handle file on application server without coading? Is there any solution?
    what is that you want to handle. what you do if you don't code ...

  • Thoughts on how LabVIEW handles checkout of file from SCC when file already open

    When you already have a file/project open in LabVIEW and it is set to read only because you haven't checked it out, you can go into SCC and do a checkout then save the file immediately. The issue with this is, if your local copy doesn't match the copy in SCC, you will probably be overwriting changes. Sometimes this is convenient because if you have ever edited a MS Word file and then gone to save and it won't let you because it was opened as read-only...then that sucks because you either lose your work, or have to do a copy of the entire word file->close the program->re-open as writable, then paste. This can be avoided with the "LabVIEW way", but the "MS Word" way seems much safer because it forces you to conscioiusly make the file writable (by either checking it out or manually write clicking and changing to writable) BEFORE opening it. I just wanted people's opinions on how LabVIEW handles this, and if there would be a better way.
    CLA, LabVIEW Versions 2010-2013

    VSS 
    CLA, LabVIEW Versions 2010-2013

  • How to handle password changes if we implement singlesignon between BO& BI7

    Hi,
    As we know ,we can implement single signon between BO and SAP BI 7, by importing roles and users through CMC and by selecting the option "Use Single signon during report refresh time".
    My doubt here is, When we import roles from SAP and Auto import the users, is it only the SAP usernames that are stored in BO repository or both username and password. If  second case holds true then how to handle/manage password change for a user who is already imported in BO sometime back?
    Would the password changes be reflected automatically in BO?
    Please guide me if you think that I'm thinking in a wrong direction.

    Hi Naresh,
    password changes are reflected automatically in BO. BO just forwards the data to the SAP side and it does the real authentification.
    Regards,
    Stratos
    PS: Keep in mind that you cannot change the SAP password on the BO login screen if your SAP password has expired. You have to do this with the SAP client (SAP GUI)

  • How to handle rpc/encoded style messages using BizTalk?

    I am integrating with a lot of services and one of our customers has a service with rpc/encoded style
    I could consume and generate schema from their wsdl file via BizTalk consume WCF wizard.
    Once I am trying to call the service with request message that generated from the schema, it is giving an error that can not desterilize the first element of the message. 
    No Deserializer found to deserialize a 'FieldName' using encoding style 'null'
    I compared the stub xml request message from SaopUI and I noticed that the xml expecting the data type with the element like this .
    <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsb="WSBanka">
    <soapenv:Header/>
    <soapenv:Body>
    <wsb:bnkBorcsorgulama soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <sozlesmeNo xsi:type="xsd:string">?</sozlesmeNo>
    <bankaKodu xsi:type="xsd:string">?</bankaKodu>
    <anahtar xsi:type="xsd:string">?</anahtar>
    </wsb:bnkBorcsorgulama>
    </soapenv:Body>
    </soapenv:Envelope>
    On the other hand, I got the request of the message from Fiddler using the BizTalk , and the generate xml of the BizTalk schema without the data type.
    <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsb="WSBanka">
    <soapenv:Header/>
    <soapenv:Body>
    <wsb:bnkBorcsorgulama>
    <sozlesmeNo>?</sozlesmeNo>
    <bankaKodu>?</bankaKodu>
    <anahtar>?</anahtar>
    </wsb:bnkBorcsorgulama>
    </soapenv:Body>
    </soapenv:Envelope>
    In SoapUi, if I remove a datatype from the message, I will get same error from the BizTalk request.
    I read some articles that rpc/encoded style are not supported but I am not sure and these articles are not clear.
    I also read that it was supported with Soap adapter but now it is deprecated.
    So, Is there any one has an experience in rpc/encoded style messages and how to handle these message in BizTalk or is there any work around to handle these messages?
    Your inputs really appreciate it.
    Thanks in advance,
    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer

    Hi,
    Please refer to the document which might help you:
    #RPC/Encoded Style
    http://www.c-sharpcorner.com/UploadFile/martinkropp/DesigningInteroperableWebService11232005044847AM/DesigningInteroperableWebService.aspx

  • How to handle the OK button of the parameters prompt of a crystal report

    Hi,
    how to handle the OK button of the parameters prompt of a crystal report in vba.NET?
    I want to use the parameter prompt from the crystal report itself and I want to know when the report is ready. I need to export programatically by sending email to a list of employees after the parameters has been set. The emails I send depends on the results of the report.
    Im using a CrystalReportViewer control  in VS2010 and Crystal Report for VS2010 v13.0.1.220.

    Right. But the parameter screen is driven by the viewer. Unless you create your own parameter screen and pass the parameters to the report via code.
    Another thing I am not sure about:
    "Then by code I want to read all the employees id from the report and send email to them with specified pages of the report. (1 page per employee)"
    How do you plan on reading the employee ID from the report? I am not aware of any API that will read a value in a report so that you can then decide what page to send to whom.
    I think you're approaching this kinda backwards. A question to ask is; can you do what you are trying to do in code in the CR designer? If not, using APIs will not work either. I suspect your approach should be a report that uses an employee filter. Run the report for employee x, get the report populated with the data for that employee and email it. Repeat for employee x1, employee x2, etc.
    - Ludek

Maybe you are looking for

  • CBO generating different plans for the same data in similar Environments

    Hi All I have been trying to compare an SQL from 2 different but similar environments build of the same hardware specs .The issue I am facing is environment A, the query executes in less than 2 minutes with plan mostly showing full table scans and ha

  • Using Static Variable against Context Attribute for Holding IWDView

    Dear Friends, I have a method which is in another DC which has a parameter of the type IWDView. In my view, I will have an action which will call the method in another component by passing the value for the view parameter. Here, I can achieve this in

  • URL Mapping problem

    Hi, we are beginning to deploy a Portal in Production and we need to know how to mapping different iViews developed against the followind DNS names: http://ep01/irj/portal---- http://www.myname.com/login http://ep01/irj/port/servlet/....myiView1----

  • Another DWM and Multiple Monitors Thread

    I'm still relatively new to tiling window managers and have been playing mostly with Awesome and Xmonad.  Recently, however, I decided to give DWM and try and am absolutely loving it!  But one of the things that I like about Awesome and Xmonad is how

  • ThinkPad 2nd HDD Adapter for T40 -do I need to configure the hard drive?

    I purchased a new Samsung HM160HC hard drive and a Thinkpad 2nd HDD adapter for Ultrabay slim for a Thinkpad T40. When I install the PATA hard drive into the adapter do I need to configure the hard drive as slave, cable select, or leave as master? An