4507-E LineCards Throughput Division. (URGENT)

My Company has bought a Modular 4507-E to be implemented in Our Backbone, the Line Cards are as Follows:
WS-X4248-FE-SFP    Catalyst 4500 48PT 100Base-X
WS-C4507R+E           Catalyst 4500E 7 Slot chassis for 48Gbps/slot
WS-X4640-CSFP-E    Catalyst 4500 40 SFP/80 C-SFP ports 1000Base-X (SFP Optional)
WS-X4648-RJ45-E     Catalyst 4500 E-Series 48-Port 10/100/1000 (RJ45)
We would like to know the Throughput Division over each ports of the Line Cards.
For Example: 8:1 or 2:1. And a DataSheet of those Line Cards will be Very useful.
Regards.

Hi Jesus,
I had a look at the data sheet and here it is
WS-X4648-RJ45-E 2:1
WS-X4640-CSFP-E   2:1
WS-X4248-FE-SFP : It should be non-blocking since the total utlization can't go over 4.8Gig
For detailed reading, you can use the below Linecard datasheet.
http://www.cisco.com/c/en/us/products/collateral/interfaces-modules/catalyst-4500-series-line-cards/product_data_sheet0900aecd802109ea.html
Hope this helps and kindly do rate all useful posts.
Thanks,
Madhu
Hope this helos

Similar Messages

  • FPGA quick questions: High Throughput Division vs. Multiplication Implementation (rounding?)

    Hi all,
    I'm trying to implement a simple routine where I divide a FXP by the number 7 in FPGA. I wanted to use the high throughput division but it seems to only round to the nearest integer although the output is capable of representing fractions. Alternatively, I could multiply my number by 1/7 using the high throughput multiplication and I get what I want. I'm not too familiar with FXP arithmetic. Without fully understanding the problem, I at least have a solution which is to use the multiplication. I'd just like to know a little more. Can anyone please shine some insight on why the division rounds even though it can handle fractions?
    Thanks for your help
    Jeffrey Lee
    Solved!
    Go to Solution.
    Attachments:
    highthroughputdivisionormultiply.png ‏31 KB

    Thanks for the suggestions. I recreated this and indeed was able to get the correct results! So what happened?
    This may blow your minds, but there is something inherently wrong with my x/y indicator. I have it on "adapt to source". I created another supposedly identical indicator ("x/y 2") off the same wire and get the correct result with that indicator. This seems like some kind of bug but it worries me because I should have never run into it.
    I've attached a screenshot of the code in action as well as the VI (i'm using 2011)
    Thanks
    Jeffrey Lee
    Attachments:
    highthroughputdivisionormultiply_2.png ‏52 KB
    highthroughputdivideIssue.vi ‏21 KB

  • CRS-1/3 MSC/FP Fwd Scaling license

    Hello guys,
    When configuring a CRS router I found that the MSC-40/FP-40 linecards have two modes of BW operation(20/40Gbps), and you need a license to operate at 40Gbps
    MSCs and CRS-FP40s can operate at 40-Gbps throughput when a license is enabled. You must use the hw-module linecard throughput command to enable 40-Mbps throughput once a license is  available. The MSC includes this license, but it must be purchased  separately to enable  40-Gbps throughput on the CRS-FP40.
    http://www.cisco.com/en/US/docs/routers/crs/software/crs_r3.9/system_management/configuration/guide/yc39crs1_chapter4.html#task_1026098
    So I checked on the price list and found this part number:
    XC-LC20GTO40G-LIC=      
    Cisco CRS-1 Series MSC 20G to 40G upgrade   License          
    N/A      
    $130,000
    If the MSC includes the license but the FP-40 does not ... My CRS-1 with FP-40 linecards operate at 20Gbps by default, is this correct? Does the same apply for the MSC/FP-140 linecards?
    Where can I get more information regarding this issue?
    Thanks in advance
    Regards!
    Alex

    Hi Jaime, Sam,
    no more SP in the CRS-3 line cards (FP140...), all the environmental monitoring is done by an embedded board now.
    The bootflash has been replaced by a eUSB of 4GB in the card (lcdisk0: and lcdisk0a:). You don't need to defrag it.
    Cheers,
    N.

  • Supervisory engine, backplane switching,line cards

    Hello,
    i have a couple of questions and they are thus:
    1.Is the line card a module or are they different parts of the switch. What is the function of the line card ?
    2.From my understanding the supervisory engine is like the brain of the device. It controls all or most of the software related functionality of the device. Am I correct?
    3.What is the difference between the SUP720 and SUP32?
    4.Is the CatOS solely for layer 2 switching while the IOS is for routing?
    5. when we refer to backplane does that mean how fast a switch switches packets ?
    Best Regards,
    DJ.

    Hello,
    Please find below answers inline,
    1.Is the line card a module or are they different parts of the switch. What is the function of the line card ?
    Yes, Linecards/Modules are different part of the switch. You can insert multiple cards into the Chassis. You can also have service moduels like Wism/FWSM/ACE
    depends upon the business needs.
    2.From my understanding the supervisory engine is like the brain of the device. It controls all or most of the software related functionality of the device. Am I correct?
    Yes, Supervisor is the brain of the switch controls each function. A typical Supervisor consists of PFC which has TCAM L2/L3 Engines and RP/SP Processor and A replication engine (Hyperion) for Multicast. TCAM is the area where the RP/SP programmes the switch. There are multiple things that get programmed in TCAM like QoS/ACL/Netflow etc.
    They have their respective hardware entries in the TCAM. If the entry is not found that is when the packet gets punted to CPU. If the linecard has a DFC on it then it can download the information from L2/L3 Engines from TCAM and switching gets fast as everytime the lookup happens in the Linecard instead of the Supervisor.
    3.What is the difference between the SUP720 and SUP32?
    SUp 32 : 32Gb backplane supporting hardware accelerated Layer 2 and 3, QoS and Security policies up to 15Mpps…
    Sup 720: 720Gb backplane supporting hardware accelerated Layer 2 and 3, QoS and Security policies up to 400Mpps…
    4.Is the CatOS solely for layer 2 switching while the IOS is for routing?
    If you have a hybrid switch with CATOS/MSFC(IOS) CATos represents the switching part and MSFC represents the Routing part of the network.
    5. when we refer to backplane does that mean how fast a switch switches packets ?
    Backplane is used for communication between SUP - LC's.The area divided into three subsections,
    1) D-bus - Used for data flow
    2) R-bus - Used for result lookups
    3) EOBC - Control communications like IPC/ScP which is helps the Supervisor to maintain the other line cards.
    Depends on the line card the backplane can work in three different modes,
    1) Flowthrough
    Between non fabric modules and between a non fabric and a fabric enabled linecard
    Throughput – 15 Mpps (@ 64 byte frames)
    Bandwidth – 16 Gbps of bandwidth shared throughout
    Data Bus frame size is variable; min of 4 cycles (64B Data) on the DBus for every frame +1 wait cycle
    2) compact
    When only ALL fabric enabled linecards in a chassis
    Throughput – 30 Mpps (@ any frame size)
    Bandwidth – 8 G CEF256; 20 G/channel CEF720
    Data Bus frame size is constant (compact header); 2 cycles (32 B Data) on the DBus for every frame + no wait cycle
    3) truncated
    Between fabric linecards when a non fabric linecard is in the chassis.
    Throughput – 15 Mpps (@ 64 byte frames); independent of frame size for CEF256 and CEF720
    Bandwidth – 16 G shared for classic; 8 G per CEF256; 20 G/channel CEF720.
    Data Bus frame size is variable; min of 4 cycles (64 Bytes Data) on the Data Bus for every frame.
    Thanks,
    Ricky Micky
    *Rate Useful posts

  • DIVISION DASHBOARD REPORT????   URGENT

    hi gurus,
    i have got the chance to create functional specs, so can you guys please tell me the related tables and fields to generate <b>DIVISION DASHBOARD REPORT?
    URGENT PLEASE</b>
    thanks very much
    venu v.

    Hudson,
    I'm aware of a speedometer in Visual Composer - but not in the WAD I'm, afraid.
    Regards
    Gill

  • Division in MV45FZZ ......Very urgent

    Hi Guys/Gals,
    I'm going the foll. arithmetical operation in MV45AFZZ include...
    Data: NUM type VBAP-KWMENG,
             DEN type VBAP-KWMENG,
             RES type VBAP-KWMENG.
    clear:num,den,res.
          num = 1000.000.
          den = 10000.000
          res = num / den .
    This gives me zero(0) as result....
    suppose the value of num = 10000 and den = 1000
    then the res is 0.10 ...
    Can anyone help me in this...
    Regs.
    Jiku

    Hi
    First it will give syntax error.
    see this it will work
    Data: NUM type VBAP-KWMENG,
    DEN type VBAP-KWMENG,
    RES type VBAP-KWMENG.
    clear:num,den,res.
    num = '1000.000'.
    den = '10000.000'.
    res = num / den .
    write:/ res.
    Reward points for useful Answers
    Regards
    Anji

  • CAN ANY BODY EXPLAIN THESE QUESTIONS, VERY URGENT

    WHAT IS THE USE OF CHAPTER ID, IN CHAPTER ID RATES    WILL  BE   DETERMINES.
    HOW MANY TAX CODES NEED CST, LST.
    WHERE CAN I SEE EXCISE REGISTER
    WHAT IS MEANT BY RG1 CAN ANY BODY EXPLAIN BRIEFLY, WHAT IS THE USE OF RG1
    HOW DO I GET OPENING BALANCE FOR EVERY MONTH.
    IN DEPOT SALES, IF CREATING  EXCISE INVOICE A CERTIFICATED WILL ISSUE, IN A CERTIFICATE WHICH FIELDS WILL BE THERE.
    WHAT IS MEANT BY JURISDICTION CODE & COUNTY CODE.
    IN SD FACTORY SALES WHICH A/C ENTERIES GENERATED.
    CAN ANY BODY EXPLAIN THESE FORMS, WHICH SITUATION THESE FORMS WE ARE USING.  I NEED VERY URGENT.
    a) A form
    b) D form
    c) C form
    d) H form
    e) DDP form
    f) TR6 form
    g) D3 form.
    H) ARE.
    I) ARE 1
    j) ARE 2
    IN DEPOT SALES PRICING PROCEDURE JFACT, WHICH CONDITION TYPES  WILL COME,
    IN FACTORY SALES PRICING PROCEDURE JFACT, WHICH CONDITION TYPES WILL COME
    NOW WHAT IS THE VAT TAX.
    what is the use of common distribution channel and common divisions
    PLS FORWARD ANSWERS TO THIS MAIL ID.
    i hope that definitely people will help
    thanks every body.

    Dear vara prasad
    You can take it for granted if you post so much questions in one thread like this, nobody will answer / clarify you.
    So please make one thread per question.
    Meanwhile, just I would like to clarify for few questions
    1)  The most important feature of chapter id is that based on this chapter id which you maintain in "Excise Tax Rate",  all your excise tax rates will be flowing into your sale order / billing
    2) If the rate of tax differs, then you need to maintain a separate tax code.  For example, the LST / VAT in some state is 4%, and in some state it is 12%.  So in this case, you need to maintain two tax codes
    thanks
    G. Lakshmipathi

  • Help urgent

    HI ALL,
    I WANT TO KNOW THE INPUT FILE STRUCTURE FOR THE BELOW PROGRAM.
    ITS TRUELY URGENT.
    *--Constant
    CONSTANTS : c_maint(1)  value 'M'.
    *data from the Excel is picked up into this internal table
    DATA : BEGIN OF ITAB OCCURS 0,
         FIELD1(200),
         FIELD2(20),
         FIELD3(20),
         FIELD4(30),
         FIELD5(50),
         FIELD6(50),
         FIELD7(50),
         FIELD8(50),
         FIELD9(50),
         FIELD10(50),
         END OF ITAB.
    Data:
           MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE,
           E_GROUP_OPENED,
           P_BDCNM LIKE APQI-GROUPID VALUE 'TRA_ORD_ERRORS'.
    *--Header information for sales order is stored in this table
    DATA : BEGIN OF IVBAK,
         auart      like vbak-auart,       "Order type
         VBELN      LIKE VBAK-VBELN,       "Sales Order number
         VKORG      LIKE VBAK-VKORG,       "Sales Organisation
         VTWEG      LIKE VBAK-VTWEG,       "Distribution channel 10
         SPART      LIKE VBAK-SPART,       "Division 10
         SOLD_TO    LIKE KNA1-KUNNR,       "Sold to party
         SHIP_CONT  LIKE KNA1-NAME2,       "SHIP to contact
         SHIP_TO    LIKE KNA1-KUNNR,       "Ship to party
         INSTALL_TO LIKE KNA1-KUNNR,       "Install to party
         BILL_TO    LIKE KNA1-KUNNR,       "Bill to Party
         BILL_CONT  LIKE KNA1-NAME2,       "Bill to contact
         payer      like KNA1-kunnr,       "Payer
         SUBMI      LIKE VBAK-SUBMI,       "Collective number for RFQs
         ZTERM      LIKE VBKD-ZTERM,       "Payment terms
         BSTNK      LIKE VBAK-BSTNK,       "Purchase order number
         AUDAT(10),                        "Booking date
         bstdk(10),                        "PO Date
         SA         LIKE KNA1-KUNNR,       "Sales rep
         CE         LIKE KNA1-KUNNR,
         SR         LIKE KNA1-KUNNR,
         waerk      like VBAK-WAERK,
         belnr      like bkpf-belnr,       "FI Document
         desc(1),
       END OF IVBAK.
    *---Item level data is stored in this table
    DATA : BEGIN OF IVBAP OCCURS 0,
       POSNR   LIKE VBAP-POSNR,            "Item number in spread sheet
       MATNR   LIKE VBAP-MATNR,            "Material number
       ZMENG(14)   TYPE C ,                "Quantity
       VENDAT  LIKE VEDA-VENDDAT,          "Cycle end date
       MWERT1  LIKE RCTMS-MWERT,           "Relase number
       KBETR(15) TYPE C,                   "AMount
       WBS(24)  TYPE C,                    "WBS element
       text(1) type c,
      END OF IVBAP.
    *--Use for call function to display message
    DATA  BEGIN OF MSG OCCURS 0.
             INCLUDE STRUCTURE FIMSG.
    DATA  END   OF MSG.
    *--bdc table
    DATA : BEGIN OF BDC_TAB OCCURS 0.
             INCLUDE STRUCTURE BDCDATA .
    DATA : END OF BDC_TAB.
    *--Capture the errors in the transaction
    DATA : BEGIN OF ERR_MSG  OCCURS 100 .
             INCLUDE STRUCTURE BDCMSGCOLL .
    DATA : END OF ERR_MSG.
    DATA: BEGIN OF SUBSTRINGS OCCURS 10,
       LINE(72) TYPE C,
    END OF SUBSTRINGS.
    Table for splitting incoming line texts into multiple 72 char length
    strings to be inserted in line long text field.
    DATA: BEGIN OF line_texts OCCURS 10,
       line_no type i,
       seq_no type i,
       text(72) TYPE C,
    END OF line_texts.
    *--Function key Exclude table
    DATA : BEGIN OF PFKEY OCCURS 2,
        FCODE(4),
       END OF PFKEY.
    *--BDC loop  field declaration
    DATA : MATERIAL(13)    VALUE 'VBAP-MATNR( )',
            QUANTITY(15)    VALUE 'RV45A-KWMENG( )',
            Item_cat(13)     VALUE 'VBAP-PSTYV( )',
            SELECTION(29)   VALUE 'RV45A-VBAP_SELKZ( )',
            BILL_DATE(13)   VALUE  'FPLT-AFDAT( )',
            BILL_QTY(13)    VALUE  'FPLT-FAKWR( )',
            COUNTE(1) TYPE N,
            INDEX(1)  TYPE N.
    data tab_idx type i.
    *--Flag and temerary variables
    data: ERRORS,                         "Error message
           V_VBELN LIKE VBAK-VBELN.        "Document number hold
    data: line_no type i.
    data: seq_no  type i.
    data: txt_fld(2040) type c.
    *--File name
    SELECTION-SCREEN BEGIN OF BLOCK BK1 WITH FRAME TITLE TEXT-001.
    Sales Org
    parameters: p_vkorg like vbak-vkorg obligatory.
    *--File name
    PARAMETERS : P_FILENM LIKE IBIPPARMS-PATH
                   DEFAULT 'C:\MY document\FAM2.TXT' obligatory.
    SELECTION-SCREEN END OF BLOCK BK1.
    *--File name display
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILENM.
       CALL FUNCTION 'F4_FILENAME'
            IMPORTING
                 FILE_NAME = P_FILENM
            EXCEPTIONS
                 OTHERS    = 1.
    *--User command
    AT USER-COMMAND.
    *--Display the documents when there is no error in updating sales order
    *--Variable is set after the call transaction
       IF ERRORS = ' '.
    *--Variable V_vbeln is set after the sales order updated from the error
    *--Message table depending on the error message number
         SET PARAMETER ID 'AUN' FIELD V_VBELN.
         CASE SY-UCOMM.
           WHEN 'DISP'.
    *--Display sales order
             PERFORM DISPLAY_SALES_ORDER.
           WHEN 'CHAN'.
    *--Change the sales order
             PERFORM CHANGE_SALES_ORDER.
         ENDCASE.
       ENDIF.
    START-OF-SELECTION.
    *--Initialis the messages
       CALL FUNCTION 'FI_MESSAGE_INIT'.
    *--Perform the Excel file
       PERFORM UPLOAD_EXCEL_FILE.
       IF ERRORS = 'X'.
          message e000 with 'Error while uploading the input file'.
       ENDIF.
    *--Update the header data from  first 3 rows
       PERFORM UPDATE_HEADER.
    *--update  the item data and billing plan.
       PERFORM UPDATE_ITEMS.
    *----Update bdc table
       PERFORM UPDATE_BDC.
    *--Call transaction
       PERFORM CALL_VA01.
    *&      Form  UPLOAD_EXCEL_FILE
    Upload the data from excel file
    FORM UPLOAD_EXCEL_FILE.
       data : v_filenm like RLGRAP-FILENAMe.
       clear v_filenm.
       move p_filenm to v_filenm.
    *--uploade the excel file.
       CALL FUNCTION 'WS_UPLOAD'
            EXPORTING
                 FILENAME            = v_FILENM
                 FILETYPE            = 'DAT'
            TABLES
                 DATA_TAB            = ITAB
            EXCEPTIONS
                 CONVERSION_ERROR    = 1
                 FILE_OPEN_ERROR     = 2
                 FILE_READ_ERROR     = 3
                 INVALID_TABLE_WIDTH = 4
                 INVALID_TYPE        = 5
                 NO_BATCH            = 6
                 UNKNOWN_ERROR       = 7
                 OTHERS              = 8.
       IF SY-SUBRC NE 0.
    *--Fill messages
         PERFORM FILL_MSG USING 'ZZ' 'E' '920' P_FILENM SPACE SPACE SPACE.
    *--Collect it
         PERFORM COLLECT_MSG.
         ERRORS = 'X'.
       ENDIF.
       read table itab index 1.
       if sy-subrc <> 0 or ( itab-field1 = space and itab-field2 = space and
                             itab-field3 = space and itab-field4 = space ).
         ERRORS = 'X'.
       endif.
    ENDFORM.                              " UPLOAD_EXCEL_FILE
          FORM FILL_MSG                                                 *
    This subroutine fills data into internal structure, MSG, which      *
    stores relevant error message information.                          *
    -->  MSGNO - Message no.                                           *
    -->  MSGV1 - Message variable 1                                    *
    -->  MSGV2 - Message variable 2                                    *
    -->  MSGV3 - Message variable 3                                    *
    -->  MSGV4 - Message variable 4                                    *
    FORM FILL_MSG USING MSGID MSGTY MSGNO MSGV1 MSGV2 MSGV3 MSGV4.
       MSG-MSORT = '1'.
       MSG-MSGID = MSGID.
       MSG-MSGTY = MSGTY.
       MSG-MSGNO = MSGNO.
       MSG-MSGV1 = MSGV1.
       MSG-MSGV2 = MSGV2.
       MSG-MSGV3 = MSGV3.
       MSG-MSGV4 = MSGV4.
    ENDFORM.
          FORM COLLECT_MSG                                              *
    This subroutine logs all errors occur during the execution of       *
    BDC                                                                 *
    FORM COLLECT_MSG.
       CALL FUNCTION 'FI_MESSAGE_COLLECT'
            EXPORTING
                 I_FIMSG       = MSG
            EXCEPTIONS
                 MSGID_MISSING = 1
                 MSGNO_MISSING = 2
                 MSGTY_MISSING = 3
                 OTHERS        = 4.
    ENDFORM.
    *&      Form  UPDATE_HEADER
    Update the data at the header level of the sales order
    FORM UPDATE_HEADER.
    *--third line will be the header information
       READ TABLE ITAB INDEX 3.
       ivbak-auart    = 'OR'.
       IVBAK-VKORG    = p_vkorg.
       IVBAK-VTWEG    = '10'.
       IVBAK-SPART    = '10'.
       IVBAK-SOLD_TO  = ITAB-FIELD4.
       IVBAK-INSTALL_TO = ITAB-FIELD4.
       read table itab index 5.            "Booking date
       ivbak-audat   = itab-field10.
       IF IVBAK-AUDAT = SPACE.             "System date if book date = ' '.
         write sy-datum to IVBAK-AUDAT.
       ENDIF.
       read table itab index 7.            "PO Number
       write itab-field6 to ivbak-bstnk right-justified.
       IVBAK-BSTDK    = ITAB-FIELD10.
       read table itab index 11.                                "RFQ
       IVBAK-SUBMI    = ITAB-FIELD6.
       read table itab index 9.            "Bill to and Sales Rep
       IVBAK-BILL_TO  = ITAB-FIELD4.
       IVBAK-Payer    = IVBAK-BILL_TO.
       IVBAK-SA       = ITAB-FIELD6.
       IVBAK-CE       = ITAB-FIELD6.
       IVBAK-SR       = ITAB-FIELD6.
       read table itab index 15.           "Bill to contact
       concatenate itab-field3 itab-field4 into ivbak-bill_cont separated by
                                                space.
       read table itab index 16.           "Ship to
       IVBAK-SHIP_TO    = ITAB-FIELD4.
       read table itab index 21.           "Payment terms
       ivbak-zterm = itab-field10.
       read table itab index 23.
       concatenate itab-field3 itab-field4 into ivbak-ship_cont
                 separated by space.      "Ship to contact
       iVBAK-WAERK    = itab-field10.
    *--Get header text
       tab_idx = 26.
       READ TABLE ITAB index tab_idx.
       line_no = 0.
       seq_no = 0.
       while itab-field1 ns 'Training Line Item Information'.
         concatenate itab-field1 itab-field2 itab-field3
                     itab-field4 itab-field5 itab-field6 itab-field7
                     itab-field8 itab-field9 itab-field10
                into txt_fld SEPARATED by space.
         if txt_fld <> space.
           ivbak-desc = 'Y'.
           perform parse_text_n using txt_fld.
           loop at substrings.
             seq_no = seq_no + 1.
             line_texts-line_no = line_no.
             line_texts-seq_no = seq_no.
             line_texts-text = substrings-line.
             append line_texts.
           endloop.
           refresh substrings.
           clear txt_fld.
         endif.
         tab_idx = tab_idx + 1.
         read table itab index tab_idx.
       endwhile.
    ENDFORM.                              " UPDATE_HEADER
    *&      Form  UPDATE_ITEMS
    Update the item data into IVBAP and Billing plan bill_plan table
    FORM UPDATE_ITEMS.
    *--The item data start from line 5
       Do.
         tab_idx = tab_idx + 1.
         read table itab index tab_idx.
    Item line column headings
         if ( itab-field1 = space and itab-field2 CS 'Course No.' and
          itab-field3 = 'Business Unit' and itab-field4 = 'WBS Element' ) or
            ( itab-field1 = space and itab-field2 = space and
              itab-field3 = space and itab-field4 = space ).
           continue.
         elseif itab-field1 co '0123456789 ' and itab-field2 <> space and
                itab-field4 <> space and itab-field10 co '0123456789.," '.
           perform fill_item_data.
         elseif itab-field7 <> 'Currency'.
           exit.                           "End of line items.
         ENDIF.
       ENDDO.
    *--Rearrange the internal  tables
       DELETE IVBAP WHERE (  MATNR = '0' or matnr = ' ' ).
       SORT IVBAP BY POSNR.
    ENDFORM.                              " UPDATE_ITEMS
    *&      Form  UPDATE_BDC
    Update the BDC table
    FORM UPDATE_BDC.
    *--Update header information
       PERFORM UPDATE_HEADER_INFO.
    *--Update item information
       PERFORM UPDATE_ITEM_INFO.
    *--Save document
       PERFORM SAVE_SALES_ORDER.
    ENDFORM.                              " UPDATE_BDC
    PERFORM DYNPRO USING :
           'X'   'SAPMV45A'         '0101',       "Initial screen
           ' '   'VBAK-AUART'       ivbak-auart,  "Order type ZVC
           ' '   'VBAK-VKORG'       IVBAK-VKORG,  "Sales organisation
           ' '   'VBAK-VTWEG'       IVBAK-VTWEG,  "Distribution channel
           ' '   'VBAK-SPART'       IVBAK-SPART,  "Division
           ' '   'BDC_OKCODE'       '=ENT2'.
         PERFORM DYNPRO USING:
            'X'   'SAPMV45A'         '4001',        "Overview screen
            ' '   'KUAGV-KUNNR'      IVBAK-SOLD_TO, "Sold to
            ' '   'VBKD-BSTKD'       IVBAK-BSTNK,   "Purchase order number
            ' '   'VBKD-BSTDK'       IVBAK-BSTDK,   "PO DATE
            ' '   'VBKD-ZTERM'       IVBAK-ZTERM,   "Payment terms
            ' '   'BDC_OKCODE'       'KBES'.
         PERFORM DYNPRO USING:
            'X'   'SAPMV45A'         '4002',       "Header business data
            ' '   'VBAK-SUBMI'       IVBAK-SUBMI,  "RFQ#
            ' '  'BDC_SUBSCR'        'SAPMV45A',
            ' '  'BDC_OKCODE'        '=T\01',
            'X'   'SAPMV45A'         '4002',
            ' '  'VBAK-AUDAT'        IVBAK-AUDAT,   "Document date
            ' '  'BDC_OKCODE'        '=T\10'.
      if not ivbak-waerk is initial.
        PERFORM DYNPRO USING :
            ' '   'VBAK-WAERK'       IVBAK-WAERK.  "Currency
      endif.
    PERFORM DYNPRO USING :
         ' '   'BDC_OKCODE'       '/EBACK'.
    PERFORM DYNPRO USING :
        ' '  'BDC_OKCODE'       '=BACK',
        'X'   'SAPMV45A'         '4001',     "Overview screen
        ' '  'BDC_OKCODE'        'ZSRS',     "Sales rep
        'X'  'SAPLZSSR'          '9000',     "Sales rep popup screen
        ' '  'SZORS-KUNNRSR(3)'  IVBAK-SR,   "Sales rep
        ' '  'BDC_OKCODE'        'CONT',
        'X'  'SAPMV45A'         '4001'.      "Overview screen
    PERFORM DYNPRO USING :
        ' '   'BDC_OKCODE'       'KPAR',
        'X'   'SAPDV02P'         '6924',      "Header partnrs
        ' '   'RV02P-KUNDE(2)'   IVBAK-INSTALL_TO,  "Install-at party (IN)
        ' '   'RV02P-SELKZ(3)'   'X',
        ' '   'RV02P-KUNDE(3)'  IVBAK-BILL_to, "Bill to party
        ' '   'BDC_OKCODE'       '=S\PICK',
    *Start Comment Lokesh
       'X'   'SAPDV02P'         '0644',
       ' '   'VBADR-NAME2'       IVBAK-bill_CONT,
    *End Comment Lokesh
    *Start Lokesh
        'X'   'SAPLV09C'         '5000',
        ' '   'ADDR1_DATA-NAME2'       IVBAK-bill_CONT,
    *End Lokesh
    Start venkatp
      ' '   'BDC_OKCODE'       '=BACK',
        ' '   'BDC_OKCODE'       'ENT1',
    End venkatp
        'X'   'SAPDV02P'         '6924'. "Header partnrs
    if not  IVBAK-payer is initial.
        PERFORM DYNPRO USING :
            ' '   'RV02P-KUNDE(4)'   IVBAK-payer.     "Payer   (BP)
      endif.
    PERFORM DYNPRO USING :
           ' '   'RV02P-SELKZ(5)'   'X',
           ' '   'RV02P-KUNDE(5)'   IVBAK-SHIP_TO,   "Ship to party
           ' '   'BDC_OKCODE'       '=S\PICK',
    *Start Comment Lokesh
          'X'   'SAPDV02P'         '0644',
          ' '   'VBADR-NAME2'       IVBAK-SHIP_CONT,
    *End Comment Lokesh
    *Start Lokesh
        'X'   'SAPLV09C'         '5000',
        ' '   'ADDR1_DATA-NAME2'       IVBAK-SHIP_CONT,
    *End Lokesh
    Start venkatp
      ' '   'BDC_OKCODE'       '=BACK',
        ' '   'BDC_OKCODE'       'ENT1',
    End venkatp
           'X'   'SAPDV02P'          '6924',        "Header partnrs
           ' '   'BDC_OKCODE'        '=S\BACK',
           'X'   'SAPMV45A'         '4001'.        "Overview screen
           IF IVBAK-DESC <> SPACE.
    *-Long text.
              PERFORM DYNPRO USING :
                ' '   'BDC_OKCODE'       'KTEX',
                'X'   'SAPMV45A'         '4002',
                ' '   'RTEXT-SPRAS(3)'   'EN',
                ' '   'RTEXT-SELKZ(3)'   'X',
                ' '   'BDC_OKCODE'       '/2',
                'X'     'SAPLSTXX'       '1100'.
           perform input_long_texts using 0.
           PERFORM DYNPRO USING :
                'X'   'SAPMV45A'         '4002',
                ' '   'BDC_OKCODE'       '=BACK'.
           PERFORM DYNPRO USING :
                'X'   'SAPMV45A'         '4001'.
    endif.
    PERFORM DYNPRO USING :
          ' '  MATERIAL               IVBAP-MATNR,   "Material number
          ' '  QUANTITY               IVBAP-ZMENG,   "Quantityt
          ' '  ITEM_CAT               'ZOR5'.        "item category
         IF IVBAK-AUART = 'OR'.
           PERFORM DYNPRO USING :
            ' '  'BDC_OKCODE'           '=ENT1',        "Material Config
            'X'  'SAPLCEI0'             '0109',        "Config screen
            ' '  'RCTMS-MNAME(1)'       'RELEASE',     "Release
            ' '  'RCTMS-MWERT(1)'       IVBAP-MWERT1,  "Release #
            ' '  'BDC_OKCODE'           '=BACK'.
        ENDIF.
       Chages Lokesh Ecc 5.0
         PERFORM DYNPRO USING :
          'X'  'SAPMV45A'             '4001',        "Overview screen
          ' '  SELECTION               'X',
         ' '  'BDC_OKCODE'           'PKON',       "Material Pricing screen
          ' '  'BDC_OKCODE'           'PKAU',       "Material Pricing screen
          'X'  'SAPMV45A'             '4003',
          ' '  'BDC_OKCODE'           'PEIN',       "Material Pricing screen
          ' '  'BDC_OKCODE'           'T\06',       "Material Pricing screen
          'X'  'SAPMV45A'             '5003',        "Overview screen
         'X'  'SAPMV61A'             '6200',
          ' '  'BDC_OKCODE'           'V69A_KOAN',       "Add new pricing
         'X'  'SAPMV61A'             '6200',       "Material pricing screen
          'X'  'SAPMV45A'             '5003',        "Overview screen
         'X'  'SAPLV69A'             '6201',       "Material pricing screen
          ' '  'KOMV-KSCHL(02)'       'ZPR0',       "Condition type
          ' '  'KOMV-KBETR(02)'       IVBAP-KBETR.  "Condition Amount
         IF IVBAK-AUART = 'OR'.
           PERFORM DYNPRO USING :
            ' '  'BDC_SUBSCR'           'SAPMV45A',     "Account Assignment
            ' '  'BDC_OKCODE'           '=T\07',
            'X'  'SAPMV45A'             '4003',
            ' '  'BDC_OKCODE'           '=BACK',
            'X'  'SAPLKACB'             '0002',
            ' '  'COBL-PS_PSP_PNR'      IVBAP-WBS,
            ' '  'BDC_OKCODE'           '=ENTE'.
        else.
           PERFORM DYNPRO USING :
               ' '  'BDC_OKCODE'        '=BACK'.
        ENDIF.
    Input long texts
         PERFORM DYNPRO USING :
          'X'  'SAPMV45A'             '4001',"Overview screen
          ' '   SELECTION             'X',
          ' '  'BDC_OKCODE'           '=PTEX',
         'X'  'SAPMV45A'              '4003',
         ' '   'RTEXT-SPRAS(2)'       'EN',
         ' '   'RTEXT-SELKZ(2)'       'X',
         ' '   'BDC_OKCODE'           '/2',
        'X'  'SAPLSTXX'               '1100'.
         perform parse_text_n using ivbap-text. "Load header texts
         perform input_long_texts using ivbap-posnr.
        PERFORM DYNPRO USING :
        'X'  'SAPMV45A'           '4003',
        ' '  'BDC_OKCODE'         '=BACK',
        'X'  'SAPMV45A'           '4001'.
      ENDLOOP.

    HI
    There are following 10 fields .
    FIELD1(200),
    FIELD2(20),
    FIELD3(20),
    FIELD4(30),
    FIELD5(50),
    FIELD6(50),
    FIELD7(50),
    FIELD8(50),
    FIELD9(50),
    FIELD10(50),
    FIELD1(200), means its a filed with 200 characters.
    Reward if helpful

  • Problem in accessing webservice over https with auth cert enabled...Urgent

    Hi All,
    I am stuck in accessing webservices using ssl and auth certificate.
    I am using jdk 6 and it is not any issue with the problem I am facing...
    This is what I do...
    I have a webservice deployed which is accessible over https.
    On server, I run..
    - to generate keystoye
    keytool -genkey -alias tomcat-sv -dname "CN=<Server Machine Id>, OU=X, O=Y, L=Z, S=XY, C=YZ" -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
    generate server certificate
    keytool -export -alias tomcat-sv -storepass changeit -file server.cer -keystore server.keystore
    On client, i run..
    To generate client keystore-
    keytool -genkey -alias tomcat-cl -dname "CN=<Client Machine Id>, OU=X, O=Y, L=Z, S=XY, C=YZ" -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore
    To generate client certificate -
    keytool -export -alias tomcat-cl -storepass changeit -file client.cer -keystore client.keystore
    Thne I import server's certificate into client keystore and Client's certificate to server's keystore by
    import server's cer to client keystore -
    keytool -import -v -trustcacerts -alias tomcat -file "C:\java\jdk1.6.0_10\bin\server.cer" -keystore client.keystore -keypass changeit -storepass changeit
    inport client's cer to server keystore -
    keytool -import -v -trustcacerts -alias tomcat -file "C:\jdk1.6.0_06\bin\client.cer" -keystore server.keystore -keypass changeit -storepass changeit
    when i try to call webservices through a java client (which is called by a python script), I get error as
    *"Exception while waiting for close java.net.SocketException: Software caused connection abort: recv failed"*
    *"faultString: java.net.SocketException: Software caused connection abort: recv failed"*
    complete log is as following
    C:\apache-tomcat-6.0.10\webapps\webservice>tradereport.py
    Jun 23, 2008 3:05:59 PM currenex.share.log.CxLogger log
    INFO: details=before SSL change
    Jun 23, 2008 3:05:59 PM currenex.share.log.CxLogger log
    INFO: details=after SSL change
    log4j:WARN No appenders could be found for logger (org.apache.axis.i18n.ProjectResourceBundle).
    log4j:WARN Please initialize the log4j system properly.
    trigger seeding of SecureRandom
    done seeding SecureRandom
    %% No cached client session
    *** ClientHello, TLSv1
    RandomCookie: GMT: 1214213509 bytes = { 50, 7, 252, 244, 34, 192, 54, 190, 160, 197, 162, 65, 78, 3, 120, 182, 179, 199
    , 160, 208, 223, 247, 41, 216, 188, 138, 228, 70 }
    Session ID: {}
    Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_1
    28_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_
    DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA
    _EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WI
    TH_DES40_CBC_SHA]
    Compression Methods: { 0 }
    main, WRITE: TLSv1 Handshake, length = 73
    main, WRITE: SSLv2 client hello message, length = 98
    main, READ: TLSv1 Handshake, length = 7873
    *** ServerHello, TLSv1
    RandomCookie: GMT: 1214213504 bytes = { 98, 89, 26, 148, 19, 15, 45, 155, 163, 196, 220, 193, 150, 127, 19, 44, 130, 16
    5, 78, 243, 155, 34, 214, 123, 198, 89, 102, 15 }
    Session ID: {72, 95, 110, 128, 129, 101, 2, 252, 120, 147, 235, 106, 51, 210, 236, 197, 28, 197, 154, 236, 116, 85, 185
    , 177, 153, 9, 235, 160, 228, 124, 191, 206}
    Cipher Suite: SSL_RSA_WITH_RC4_128_MD5
    Compression Method: 0
    %% Created: [Session-1, SSL_RSA_WITH_RC4_128_MD5]
    ** SSL_RSA_WITH_RC4_128_MD5
    *** Certificate chain
    chain [0] = [
    Version: V3
    Subject: CN=Anuj-Shukla, OU=X, O=Y, L=Z, ST=XY, C=YZ
    Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5
    Key: Sun RSA public key, 1024 bits
    modulus: 1155910927093088021038703558200517321935975136532818479526927502986487608253029863427194046282623217778572406
    007584457425344367852682875007488075549568987019062497769571000978532532156228707400592262495876461712276454493567147822
    56749486566093981751121311864618619780132448329770352303648687445023336431685957
    public exponent: 65537
    Validity: [From: Mon Jun 23 14:17:18 GMT+05:30 2008,
                   To: Sun Sep 21 14:17:18 GMT+05:30 2008]
    Issuer: CN=Anuj-Shukla, OU=X, O=Y, L=Z, ST=XY, C=YZ
    SerialNumber: [    485f6316]
    Algorithm: [SHA1withRSA]
    Signature:
    0000: 48 05 F9 A9 89 C6 87 83 C4 02 C4 44 F4 7C A0 54 H..........D...T
    0010: F6 9A 57 69 F0 DB 37 79 FD 8F 90 E9 8F 3E C2 DB ..Wi..7y.....>..
    0020: 9F D7 CC 15 28 0A 73 80 0A DC D0 7F EC 1C EE BD ....(.s.........
    0030: 23 EF E7 28 79 F3 7F C7 CC 7D A6 C6 F7 59 9A 17 #..(y........Y..
    0040: 73 ED 8B FF 6A 76 7F F7 4F 97 48 DF 23 A6 4C 42 s...jv..O.H.#.LB
    0050: B2 B4 5C 00 D0 77 88 12 F4 97 4E 66 7C EE F0 66 ..\..w....Nf...f
    0060: E6 95 8C B1 58 BF C5 E8 B5 64 A3 D5 5E EA 07 02 ....X....d..^...
    0070: FE 3D 63 7F F4 0B DC 86 66 B7 4B 4F 0C 1C 69 0F .=c.....f.KO..i.
    *** CertificateRequest
    Cert Types: RSA, DSS
    Cert Authorities:
    <CN=GlobalSign Root CA, OU=Root CA, O=GlobalSign nv-sa, C=BE>
    <[email protected], CN=Thawte Personal Freemail CA, OU=Certification Services Division, O=Thawte
    Consulting, L=Cape Town, ST=Western Cape, C=ZA>
    <[email protected], CN=Thawte Server CA, OU=Certification Services Division, O=Thawte Consulting cc,
    L=Cape Town, ST=Western Cape, C=ZA>
    <CN=AddTrust Qualified CA Root, OU=AddTrust TTP Network, O=AddTrust AB, C=SE>
    <CN=Equifax Secure Global eBusiness CA-1, O=Equifax Secure Inc., C=US>
    <CN=GTE CyberTrust Global Root, OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US>
    <CN=Baltimore CyberTrust Root, OU=CyberTrust, O=Baltimore, C=IE>
    <CN=Entrust.net Client Certification Authority, OU=(c) 2000 Entrust.net Limited, OU=www.entrust.net/GCCA_CPS incorp. by
    ref. (limits liab.), O=Entrust.net>
    <OU=Class 3 Public Primary Certification Authority, O="VeriSign, Inc.", C=US>
    <CN=DigiCert High Assurance EV Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US>
    <CN=Baltimore CyberTrust Code Signing Root, OU=CyberTrust, O=Baltimore, C=IE>
    <CN=TC TrustCenter Class 4 CA II, OU=TC TrustCenter Class 4 CA, O=TC TrustCenter GmbH, C=DE>
    <OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 2 Public Primary Certificat
    ion Authority - G2, O="VeriSign, Inc.", C=US>
    <OU=Class 2 Public Primary Certification Authority, O="VeriSign, Inc.", C=US>
    <CN=Entrust.net Secure Server Certification Authority, OU=(c) 1999 Entrust.net Limited, OU=www.entrust.net/CPS incorp. b
    y ref. (limits liab.), O=Entrust.net, C=US>
    <CN=TC TrustCenter Universal CA I, OU=TC TrustCenter Universal CA, O=TC TrustCenter GmbH, C=DE>
    <[email protected], CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consu
    lting cc, L=Cape Town, ST=Western Cape, C=ZA>
    <CN=Entrust.net Client Certification Authority, OU=(c) 1999 Entrust.net Limited, OU=www.entrust.net/Client_CA_Info/CPS i
    ncorp. by ref. limits liab., O=Entrust.net, C=US>
    <CN=VeriSign Class 3 Public Primary Certification Authority - G3, OU="(c) 1999 VeriSign, Inc. - For authorized use only"
    , OU=VeriSign Trust Network, O="VeriSign, Inc.", C=US>
    <[email protected], CN=http://www.valicert.com/, OU=ValiCert Class 2 Policy Validation Authority, O="ValiCe
    rt, Inc.", L=ValiCert Validation Network>
    <CN=AddTrust Class 1 CA Root, OU=AddTrust TTP Network, O=AddTrust AB, C=SE>
    <CN=DigiCert Global Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US>
    <CN=AddTrust External CA Root, OU=AddTrust External TTP Network, O=AddTrust AB, C=SE>
    <OU=Equifax Secure Certificate Authority, O=Equifax, C=US>
    <OU=Starfield Class 2 Certification Authority, O="Starfield Technologies, Inc.", C=US>
    <CN=Equifax Secure eBusiness CA-1, O=Equifax Secure Inc., C=US>
    <CN=VeriSign Class 2 Public Primary Certification Authority - G3, OU="(c) 1999 VeriSign, Inc. - For authorized use only"
    , OU=VeriSign Trust Network, O="VeriSign, Inc.", C=US>
    <CN=AAA Certificate Services, O=Comodo CA Limited, L=Salford, ST=Greater Manchester, C=GB>
    <OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 1 Public Primary Certificat
    ion Authority - G2, O="VeriSign, Inc.", C=US>
    <CN=DigiCert Assured ID Root CA, OU=www.digicert.com, O=DigiCert Inc, C=US>
    <OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certificat
    ion Authority - G2, O="VeriSign, Inc.", C=US>
    <OU=Equifax Secure eBusiness CA-2, O=Equifax Secure, C=US>
    <CN=GlobalSign, O=GlobalSign, OU=GlobalSign Root CA - R2>
    <CN=Anuj-Shukla, OU=X, O=Y, L=Z, ST=XY, C=YZ>
    <CN=Entrust.net Secure Server Certification Authority, OU=(c) 2000 Entrust.net Limited, OU=www.entrust.net/SSL_CPS incor
    p. by ref. (limits liab.), O=Entrust.net>
    <OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US>
    <[email protected], CN=Thawte Personal Premium CA, OU=Certification Services Division, O=Thawte C
    onsulting, L=Cape Town, ST=Western Cape, C=ZA>
    <[email protected], CN=Thawte Personal Basic CA, OU=Certification Services Division, O=Thawte Consu
    lting, L=Cape Town, ST=Western Cape, C=ZA>
    <CN=Client, OU=X, O=Y, L=Z, ST=XY, C=YZ>
    <CN=GeoTrust Global CA, O=GeoTrust Inc., C=US>
    <OU=Class 1 Public Primary Certification Authority, O="VeriSign, Inc.", C=US>
    <CN=Sonera Class1 CA, O=Sonera, C=FI>
    <OU=Go Daddy Class 2 Certification Authority, O="The Go Daddy Group, Inc.", C=US>
    <CN=UTN-USERFirst-Hardware, OU=http://www.usertrust.com, O=The USERTRUST Network, L=Salt Lake City, ST=UT, C=US>
    <CN=UTN-USERFirst-Client Authentication and Email, OU=http://www.usertrust.com, O=The USERTRUST Network, L=Salt Lake Cit
    y, ST=UT, C=US>
    <CN=VeriSign Class 1 Public Primary Certification Authority - G3, OU="(c) 1999 VeriSign, Inc. - For authorized use only"
    , OU=VeriSign Trust Network, O="VeriSign, Inc.", C=US>
    <CN=America Online Root Certification Authority 1, O=America Online Inc., C=US>
    <CN=Entrust.net Certification Authority (2048), OU=(c) 1999 Entrust.net Limited, OU=www.entrust.net/CPS_2048 incorp. by
    ref. (limits liab.), O=Entrust.net>
    <CN=GTE CyberTrust Root 5, OU="GTE CyberTrust Solutions, Inc.", O=GTE Corporation, C=US>
    <CN=UTN-USERFirst-Object, OU=http://www.usertrust.com, O=The USERTRUST Network, L=Salt Lake City, ST=UT, C=US>
    <CN=UTN - DATACorp SGC, OU=http://www.usertrust.com, O=The USERTRUST Network, L=Salt Lake City, ST=UT, C=US>
    <CN=Sonera Class2 CA, O=Sonera, C=FI>
    <CN=TC TrustCenter Class 2 CA II, OU=TC TrustCenter Class 2 CA, O=TC TrustCenter GmbH, C=DE>
    *** ServerHelloDone
    *** Certificate chain
    *** ClientKeyExchange, RSA PreMasterSecret, TLSv1
    main, WRITE: TLSv1 Handshake, length = 141
    SESSION KEYGEN:
    PreMaster Secret:
    0000: 03 01 E5 87 BC 2A E8 70 60 BA DE FA BB 42 2D 1E .....*.p`....B-.
    0010: 3D 21 DB 52 A7 6C FC 55 9F 77 3A 97 B5 33 F7 33 =!.R.l.U.w:..3.3
    0020: 2A FD 65 5A 78 CE 1F F4 63 29 15 D1 48 4C 46 7A *.eZx...c)..HLFz
    CONNECTION KEYGEN:
    Client Nonce:
    0000: 48 5F 6E 85 32 07 FC F4 22 C0 36 BE A0 C5 A2 41 H_n.2...".6....A
    0010: 4E 03 78 B6 B3 C7 A0 D0 DF F7 29 D8 BC 8A E4 46 N.x.......)....F
    Server Nonce:
    0000: 48 5F 6E 80 62 59 1A 94 13 0F 2D 9B A3 C4 DC C1 H_n.bY....-.....
    0010: 96 7F 13 2C 82 A5 4E F3 9B 22 D6 7B C6 59 66 0F ...,..N.."...Yf.
    Master Secret:
    0000: 98 D5 9E C0 97 14 DB 9F 0E 3B 15 6B 1E F8 06 2C .........;.k...,
    0010: 27 99 A4 69 B8 E4 16 03 BD 89 B9 D0 CB C5 C9 DF '..i............
    0020: AE 4B 16 56 56 B2 02 F8 E0 71 1D D8 04 05 11 BF .K.VV....q......
    Client MAC write Secret:
    0000: 6F B7 22 74 D6 1E 44 16 C5 CB CE CE 8E 0F 46 E1 o."t..D.......F.
    Server MAC write Secret:
    0000: F8 DA 34 1A 53 55 E0 6D 50 25 3E 7F E5 69 91 51 ..4.SU.mP%>..i.Q
    Client write key:
    0000: F7 05 6E 10 62 0C AE 4A BC 96 E2 25 BA BC 46 BD ..n.b..J...%..F.
    Server write key:
    0000: E2 7D 11 FF 4A F3 C5 4F 94 9D 5C 57 71 5A 16 D1 ....J..O..\WqZ..
    ... no IV used for this cipher
    main, WRITE: TLSv1 Change Cipher Spec, length = 1
    *** Finished
    verify_data: { 216, 54, 180, 236, 72, 70, 181, 20, 31, 128, 165, 12 }
    main, WRITE: TLSv1 Handshake, length = 32
    main, waiting for close_notify or alert: state 1
    main, Exception while waiting for close java.net.SocketException: Software caused connection abort: recv failed
    main, handling exception: java.net.SocketException: Software caused connection abort: recv failed
    Jun 23, 2008 3:06:06 PM currenex.share.log.CxLogger log
    INFO: details=Exception occured while calling Login service in callLoginWebService
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: java.net.SocketException: Software caused connection abort: recv failed
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:java.net.SocketException: Software caused connection abort: recv failed
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.waitForClose(Unknown Source)
    at com.sun.net.ssl.internal.ssl.HandshakeOutStream.flush(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.sendChangeCipherSpec(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.sendChangeCipherAndFinish(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:186)
    at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at currenex.webservice.share.definitions.AuthenticationBindingStub.login(AuthenticationBindingStub.java:362)
    at currenex.webservice.clients.util.WebserviceTestUtil.callLoginLogoutWebService(WebserviceTestUtil.java:132)
    at currenex.webservice.clients.util.TradeCreateTester.createWebLogin(TradeCreateTester.java:64)
    {http://xml.apache.org/axis/}hostname:anuj
    java.net.SocketException: Software caused connection abort: recv failed
    at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:154)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)
    at org.apache.axis.client.Call.invoke(Call.java:1812)
    at currenex.webservice.share.definitions.AuthenticationBindingStub.login(AuthenticationBindingStub.java:362)
    at currenex.webservice.clients.util.WebserviceTestUtil.callLoginLogoutWebService(WebserviceTestUtil.java:132)
    at currenex.webservice.clients.util.TradeCreateTester.createWebLogin(TradeCreateTester.java:64)
    Caused by: java.net.SocketException: Software caused connection abort: recv failed
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.readFully(Unknown Source)
    at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.waitForClose(Unknown Source)
    at com.sun.net.ssl.internal.ssl.HandshakeOutStream.flush(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.sendChangeCipherSpec(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.sendChangeCipherAndFinish(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverHelloDone(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at org.apache.axis.components.net.JSSESocketFactory.create(JSSESocketFactory.java:186)
    at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:191)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:404)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    ... 12 more
    Jun 23, 2008 3:06:06 PM currenex.share.log.CxLogger log
    INFO: details=Login response is null, login was not successful
    Login was unsuccessful
    *In apache's server.xml, My webservice is deployed as*
    <Connector className="org.apache.catalina.connector.http.HttpConnector"
         port="8443" minProcessors="5" maxProcessors="75" enableLookups="true"
         acceptCount="10" debug="0"
         protocol="HTTP/1.1" SSLEnabled="true" secure="true"
    maxThreads="150" scheme="https"
         keystoreFile="lib/server.keystore"
    keystorePass="changeit" clientAuth="true"
              >
              <Factory className="org.apache.catalina.net.SSLServerSocketFactory"
         protocol="TLS"/>
    </Connector>
    Please note clientAuth="true" parameter,
    when I set it to false, My test runs smoothly and no exception/issue is reported
    Not to forget, my javaclient has following lines too..
    //System.setProperty("javax.net.ssl.keyStore", "C:\\java\\jdk1.6.0_10\\jre\\lib\\security\\cacerts");
    //System.setProperty("javax.net.ssl.keyStorePassword", "changeit");
    //System.setProperty("javax.net.ssl.trustStore", "C:\\java\\jdk1.6.0_10\\jre\\lib\\security\\cacerts");
    //System.setProperty("java.protocol.handler.pkgs" , "com.sun.net.ssl.internal.www.protocol");
    System.setProperty("javax.net.ssl.trustStore","C:\\java\\jdk1.6.0_10\\bin\\client.keystore");
    System.setProperty("javax.net.ssl.trustStorePassword","changeit");
    //System.setProperty("com.sun.net.ssl.rsaPreMasterSecretFix" , "true");
    //System.setProperty("javax.net.ssl.keyStore", "C:\\java\\jdk1.6.0_10\\bin\\server.keystore");
    //System.setProperty("javax.net.ssl.keyStorePassword","changeit");
    System.setProperty("javax.net.debug", "ssl");
    s_log.info("after SSL change");
    I tried all possible combinbations of these properties but nothing worked...
    Please let me know if I am missing any required step.. here
    Ask me if you want to know more details about my problem.
    This is very urgent and critical.. Many thanks in advance.

    Hi ejp,
    thanks for your reply. I did read your post in other thread that you pointed.
    I had searched quite a lot on this issue and had idea that it might be due to firewall settings..
    but sadly, I don't know the solution. Well, you have seen the entire code that I wrote and exception too, Could you suggest me a way out? or any specific firewall setting or a workaround?
    Please let me know if you need any other info from my side regarding the code.
    Thanks a Ton!
    Anuj

  • Extremely Urgent - Help Please - ( PA Interview Q & A )

    Hi Guys,
    I wanted to know Personnel Administration interview question And Answers , it is most urgent for me.
    Your detail response will be highly appreciated.
    Thanks – Sam
    Edited by: Sameer Sameer on Mar 6, 2008 10:07 PM

    1)     How the joining process is carried out in the concerned organization?
    2)      What are the different types of recruitment i.e. campus recruitment, employee ward, through consultant etc are carried out by the organization?
    3)      What are the different recruitment instruments i.e. ESS, newspaper, internet, job portals etc used by the company for the purpose of recruitment by the organization?
    4)      What are the different types of joining i.e. new appointment, on contract, re employment (transfer back from other company ) etc used by the organization?
    5)      Is there any probation period in the organization? If so, how long?
    6)     Is the salary structure same for newly joined persons from probation compared to that of the regular officers. If not so, then how is the salary structure different from regular employees?
    7)      What data are maintained for a newly joined person?
    8)      Is the joining process different for different employee subgroups?
    9)      Is there any one person-one position concept?
    10)      Is the joining process same for regular & contractual employees?
    11)      Do you need to intimate (Notification) any other division when a person joins?
    check this one and from these try to prepare questinonire by ur oown
    Edited by: Sikindar on Mar 7, 2008 9:43 AM

  • What is the data throughput in labview. I want to use the parallel as acheap digital i/o to drive a stepper motor.

    I am trying to use the parallel port on a win xp machine to send data a@ up to a 3k rate. This is for the the purpose of driving a stepper motor. I have tried the port.out vi and placed this vi in a loop and it on a scope it looks like I am limited to a a 200hz rate. What am I doing wrong??? Can labview do this or is it too slow ???
    Thanks

    snook wrote:
    > what is the data throughput in labview. I want to use the parallel as
    > acheap digital i/o to drive a stepper motor.
    >
    > I am trying to use the parallel port on a win xp machine to send data
    > a@ up to a 3k rate. This is for the the purpose of driving a stepper
    > motor. I have tried the port.out vi and placed this vi in a loop and
    > it on a scope it looks like I am limited to a a 200hz rate. What am I
    > doing wrong??? Can labview do this or is it too slow ???
    Basically the way the Port I/O VIs are implemented they call through a
    device driver for each port access. This slows down the maximum port
    accesses to something like 1000 times per second depending on the speed
    of your CPU.
    There is a way to do it faster but that is a little more trick
    y. The
    idea is to use a device driver to enable particular port addresses to be
    accessed directly from the application level instead of always going
    through the kernel.
    I have written such a VI library and accompagning DLL and device driver
    and made it available on OpenG. It is not yet part of the standard
    binary distribution packets so you will have to get it from the CVS
    repository.
    Go to:
    http://cvs.sourceforge.net/viewcvs.py/opengtoolkit/portIO/built/portio/
    and download all the files in there including the ones in the
    subdirectory "ogportio.llb" and if you like "docs"
    If you want the nitty gritty technical details you can also look at
    http://cvs.sourceforge.net/viewcvs.py/*checkout*/opengtoolkit/portIO/c_source/Description.htm?rev=1.5
    On my 866 MHz Pentium mobile I can increase the number of port accesses
    in this way from 440 ms for 4000 read byte port accesses (100us ms per
    access) to 20 ms for the same number of read accesses (5 us per access).
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Urgently need help with this

    Hi!!
    I urgently need help with this:
    When I compile this in Flex Builder 3 it says: The element type 'mx:Application' must be terminated by the matching end-tag '</mx:Application>'.
    but I have this end tag in my file, but when I try to switch from source view to desgin view it says, that: >/mx:Script> expected to terminate element at line 71, this is right at the end of the .mxml file. I have actionscript(.as) file for scripting data.
    This is the mxml code to terminate apllication tag which I did as you can see:
    MXML code:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#007200, #000200]" width="1024" height="768" applicationComplete="popolni_vse()">
    <mx:HTTPService id="bazaMME" url="lokalnabaza/baza_MME_svn.xml" showBusyCursor="true" resultFormat="e4x"/>
    <mx:Script source="dajzaj.as"/>
    <mx:states>
    <mx:State name="Galerije">
        <mx:SetProperty target="{panel1}" name="title" value="Galerije MME"/>
        <mx:SetProperty target="{panel2}" name="title" value="opis slik"/>
        <mx:SetProperty target="{panel3}" name="title" value="Opis Galerije"/>   
        <mx:AddChild relativeTo="{panel1}" position="lastChild">
        <mx:HorizontalList x="0" y="22" width="713.09863" height="157.39436" id="ListaslikGalerije"></mx:HorizontalList>
                </mx:AddChild>
                <mx:SetProperty target="{text1}" name="text" value="MME opisi galerij "/>
                <mx:AddChild relativeTo="{panel1}" position="lastChild">
                    <mx:Label x="217" y="346" text="labela za test" id="izbr"/>
                </mx:AddChild>
                <mx:SetProperty target="{label1}" name="text" value="26. November 2009@08:06"/>
                <mx:SetProperty target="{label1}" name="x" value="845"/>
                <mx:SetProperty target="{label1}" name="width" value="169"/>
                <mx:SetProperty target="{Gale}" name="text" value="plac za Galerije"/>
            </mx:State>
            <mx:State name="Projekti"/>
        </mx:states>
    <mx:MenuBar id="MMEMenu" labelField="@label" showRoot="true" fillAlphas="[1.0, 1.0]" fillColors="[#043D01, #000000]" color="#9EE499" x="8" y="24"
             itemClick="dajVsebino(event)" width="1006.1268" height="21.90141">
           <mx:XMLList id="MMEmenuModel">
                 <menuitem label="O nas">
                     <menuitem label="reference podjetja" name="refMME" type="check" groupName="one"/>
                     <menuitem label="reference direktor" name="refdir" type="check" groupName="one"/>
                  <menuitem label="Kontakt" name="podatMME" groupName="one" />
                  <menuitem label="Kje smo" name="lokaMME" type="check" groupName="one" />
                 </menuitem>           
                 <menuitem type="separator"/>
                 <menuitem label="Galerija">
                     <menuitem label="Slovenija" name="galSvn" type="check" groupName="one"/>
                     <menuitem label="Nemčija" name="galDeu" type="check" groupName="one" />
                 </menuitem>
                 <menuitem type="separator"/>
                 <menuitem label="projekti">
                     <menuitem label="Slovenija" name="projSvn" type="check" groupName="one"/>
                     <menuitem label="Nemčija" name="projDeu" type="check" groupName="one" />
                     <menuitem label="Madžarska" name="projHun" type="check" groupName="one"/>
                 </menuitem>
             </mx:XMLList>                       
             </mx:MenuBar>
        <mx:Label x="845" y="10" text="25. November 2009@08:21" color="#FFFFFF" width="169" height="18.02817" id="label1"/>
        <mx:Label x="746" y="10" text="zadnja posodobitev:" color="#FFFFFF"/>
        <mx:Panel x="9" y="57" width="743.02814" height="688.4507" layout="absolute" title="Plac za Vsebino" id="panel1">
            <mx:Text x="0" y="-0.1" text="MME vsebina" width="722.95776" height="648.4507" id="Gale"/>
        </mx:Panel>
        <mx:Label x="197.25" y="748.45" color="#FFFFFF" text="Copyright © 2009 MME d.o.o." fontSize="12" width="228.73239" height="20"/>
        <mx:Label x="463.35" y="748.45" text="izdelava spletnih strani: FACTUM d.o.o." color="#FBFDFD" fontSize="12" width="287.60565" height="20"/>
        <mx:Panel x="759" y="53" width="250" height="705.07043" layout="absolute" title="Plac za hitre novice" id="panel3">
            <mx:Text x="0" y="0" text="MME novice" width="230" height="665.07043" id="text1"/>
            <mx:Panel x="-10" y="325.35" width="250" height="336.61972" layout="absolute" title="začasna panela" color="#000203" themeColor="#4BA247" cornerRadius="10" backgroundColor="#4B9539" id="panel2">
                <mx:Label x="145" y="53" text="vrednost" id="spremmen"/>
                <mx:Label x="125" y="78" text="Label"/>
                <mx:Label x="125" y="103" text="Label"/>
                <mx:Label x="0" y="53" text="spremenljivka iz Menuja:"/>
                <mx:Label x="45" y="78" text="Label"/>
                <mx:Label x="45" y="103" text="Label"/>
            </mx:Panel>
        </mx:Panel>
        <mx:Label x="9.9" y="10" text="plac za naslov MME vsebine" id="MMEnaslov" color="#040000"/>
         </mx:states></mx:Application>

    I know it's been a while but… did you fix this?
    It looks to me like you are terminating the <mx:Application> tag at the top. The opening tag should end like this: resultFormat="e4x">, not resultFormat="e4x"/> (Remove the /).
    Carlos

  • Bus Area, Product, Plant, Division wise Balance sheet

    HI Experts,
    How to map in SAP to get the balance sheet at Plant wise, Bus Area wise, Division wise, Product wise. Is it possible to get Balance Sheet at All of these Levels. Because my Client having different Branches and different Products.
    Some plants are Depots where as some are Manufacturing Two kind of products. So in this My client wants to See the Balance sheet Like Product wise at the same time Plant wise also.
    So please give me any solution. its an very urgent for implementation project.
    Thanks in advance!!!!!!!!!!!!!
    AKHIL

    Hi,
       I know it is possible to get balance sheets at business area level but i do not think its possible at plant or product level.
    For BA refer
    http://help.sap.com/printdocu/core/print46c/en/data/pdf/FIBUSI/FIBUSI.pdf
    Business area wise balance sheet
    regards
    Waman

  • Urgent Need ASAP , an EDI scenario.

    Scenario
    The Customer will send a Purchase order Details to Vendor, Process the Purchase order and create the Sales order. After Successful creation of Sales Order, confirmations to be send to the Vendor.
    Inbound Sales Order Process
    Assumption: Subsystem Process the EDI file and formatted into CSV (or tab delimited file). Subsystem filters Customer Purchase order, populates Organizational Details and contains fields required for Sales Order Process.
    Fields in CSV file:
    ·+ Sales Organization
    · Distribution Channel
    · Division
    · Sold to Party
    · Ship to Party
    · Customer Purchase Order no.
    · Item no
    · Material No
    · Plant
    · Quantity
    +
    Requirements:
    ü Since Vendor Receives Customer PO in CSV format a Report Program has to be created to generate an IDOC.
    ü User can specify the file name (CSV) which can be present either in application server or presentation server.
    ü All required Screen Validation has to be done in the report.
    ü Report Program that generates an IDoc can be stored in Database (EDI tables).
    ü Inbound Sales order Process has to be configured in the system.
    Messages
    Message Types: ORDERS and ORDRSP.
    Basic Type: ORDERS05
    Use Standard inbound and outbound Process code.
    Thanks In Advance.
    Revert me ASAP... Very Urgent.
    Give me the steps to follow , how to do Since Vendor Receives Customer PO in CSV format a Report Program has to be created to generate an IDOC. 

    How many pages are in the overall document? Do you have Page Breaks between the individual pages? If you print the document using the application that created it (not print to PDF), does it print properly?
    When you scroll through the document, do all the pages appear in portrait format? Could it be that one of the pages was formatted in landscape & somehow it resulted in all of the pages shifting to landscape.
    The above comments are purely guesses.
     Cheers, Tom

  • Urgent!!!Need code to fetch all sales order data and download to flat file

    urgent!!!Need code to fetch all sales order data and download to flat file

                  D A T A B A S E  T A B L E S                          *
    TABLES: vbak,                          "Sales Document: Header Data
            VBAP,                          "Sales Document: Item Data
            MARA,VAPMA,VBPA,VBLB,VBEP,
             VBKD.   "Murali Poli                         .
                  I N T E R N A L   T A B L E S                         *
    Internal table to hold the Delphi material numbers file
    DATA: BEGIN OF tbl_matnr OCCURS 0,
            matnr LIKE mara-matnr,         "Material number
          END   OF tbl_matnr.
    Internal table to hold customer cross ref data
    DATA: BEGIN OF TBL_CUST_SA OCCURS 0,
            OLD_KUNNR LIKE KNA1-KUNNR,     "Old Customer
            OLD_VKORG LIKE A004-VKORG,     "Old Sales organisation
            OLD_VTWEG LIKE A004-VTWEG,     "Old Distribution channel
            NEW_KUNNR LIKE KNA1-KUNNR,     "New Customer
            NEW_VKORG LIKE A004-VKORG,     "New Sales organisation
            NEW_VTWEG LIKE A004-VTWEG,     "New Distribution channel
            PARVW LIKE VBPA-PARVW ,         "Partner function
    END   OF TBL_CUST_SA.
    Internal table to check the material numbers of the input file
    DATA: tbl_mara LIKE tbl_matnr OCCURS 0 WITH HEADER LINE.
    Work area to hold the header record
    DATA: BEGIN OF w_sa_header,
             recordtype(1),                "Record type
             schedulingagreement(4),       "SA Type
             contractreference(10),        "Contract Reference
             salesorg(4),                  "Sales Organization
             distrchannel(2),              "Distribution channel
             division(2),                  "Sales division
             PONUMBER(35),                 "Purchase order number"gsbhondave
             soldtoparty(12),              "Sold-to party
             shiptoparty(12),              "Ship-to party
             collectivenumber(10),         "Collective number
             description(40),              "Description
             roundqty(13),                 "Rounding Qty
             pdsi(4),                                           "PDI
             correctiondeliverydate(8),    "Correction Delivery Dt
             correctionqty(13),            "Correction Qty
             cumulativereceivedqty(13),    "Cumulative Received Qty
             forecastdeliveryschedule(17), "Forecast Delivery Schedule
             forecastdelscheddate(8),      "Forecast Delivery Schedule Dt
             jitdeliveryschedule(17),      "JIT Delivery Schedule
             jitdeliveryscheduledate(8),   "JIT Delivery Schedule Dt
             materialnumber(18),           "Material number
             plant(4),                     "Plant
             item_category(4),             "Item Category
             suppliercode(15),             "Supplier code
             scac(4),                      "SCAC
             deloc(12),                    "DELOC
             pkg_id(12),                   "Packaging ID
             catno(30),                    "Ultimate Cust Part
             lgort(4),                     "Storage Location
             vstel(4),                     "Shipping point
    Adding fields by Murali Poli
             VSBED(2),                     "Shipping conditions
             INCO1(3),                     "Incoterms (part 1)
             INCO2(28),                    "Incoterms (part 2)
             ZECN(1),                      "Engineering Change Letter
    End of Adding fields by Murali Poli
           END OF w_sa_header.
    Work area to hold the forecast record
    DATA: BEGIN OF w_sa_forecast,
             recordtype(1),                "Record Type
             dateformat(1),                "Date format
             forecastdate(8),              "Forecast date
             forecastorderqty(13),         "Order Qty
           END OF w_sa_forecast.
    Work area to hold the jit record
    DATA: BEGIN OF w_sa_jit,
             recordtype(1),                "Record Type
             dateformat(1),                "Date format
             jitdate(8),                   "JIT date
             jittime(6),                   "JIT Time
             jitorderqty(13),              "Order Qty
           END OF w_sa_jit.
    Internal table to hold the Extracted data
    DATA: BEGIN OF tbl_record OCCURS 0,
            record_type,
            DATA(400), " changed from 325 to 400
           END OF tbl_record.
    Internal table to capture the errors
    DATA: BEGIN OF tbl_error OCCURS 0,
            error_text(135),
          END   OF tbl_error.
    Internal table to hold the records of VBAP_VAPMA
    DATA: BEGIN OF tbl_vbap_vapma OCCURS 0,
    VBELN LIKE VAPMA-VBELN, "Sales and distribution document number
    POSNR LIKE VAPMA-POSNR,                "Item number
    AUART LIKE VAPMA-AUART,                "SA Type
    VKORG LIKE VAPMA-VKORG,                "Sales Organization
    VTWEG LIKE VAPMA-VTWEG,                "Distribution channel
    SPART LIKE VAPMA-SPART,                "Division
    KUNNR LIKE VAPMA-KUNNR,                "Sold-to
           plavo like vbap-plavo, "PDI
    MATNR LIKE VAPMA-MATNR,                "Material number
    WERKS LIKE VAPMA-WERKS,                "Plant
    TRVOG LIKE VAPMA-TRVOG,                "Transaction group
    VBTYP LIKE VBAK-VBTYP, "SD document category "Murali Poli
    VSBED LIKE VBAK-VSBED, "Shipping conditions   "Murali Poli
    BSTNK LIKE VBAK-BSTNK,  " Purchase order number " gsbhondave
    KTEXT LIKE VBAK-KTEXT,
    VGBEL LIKE VBAP-VGBEL,                 "Reference document no
    ABLFZ LIKE VBAP-ABLFZ,                 "Rounding qty
    PSTYV LIKE VBAP-PSTYV,                 "Item category
    LGORT LIKE VBAP-LGORT,                 "Storage location
    VSTEL LIKE VBAP-VSTEL,                 "Shipping point
    END   OF TBL_VBAP_VAPMA.
    DATA: BEGIN OF TBL_VBAP OCCURS 0,
    VBELN LIKE VAPMA-VBELN,
    POSNR LIKE VAPMA-POSNR,
    VGBEL LIKE VBAP-VGBEL,
    ABLFZ LIKE VBAP-ABLFZ,
    PSTYV LIKE VBAP-PSTYV,
    LGORT LIKE VBAP-LGORT,
    VSTEL LIKE VBAP-VSTEL,
    END   OF TBL_VBAP.
    Adding by Murali Poli
    DATA:BEGIN OF TBL_VBKD OCCURS 0,
          VBELN LIKE  VBKD-VBELN,
          POSNR LIKE  VBKD-POSNR,
          INCO1 LIKE  VBKD-INCO1,
          INCO2 LIKE  VBKD-INCO2,
         END OF TBL_VBKD.
    End by Murali Poli
    Internal table to hold temporarily the records of VBAP_VAPMA
    DATA: tbl_vbap_vapma_temp LIKE tbl_vbap_vapma OCCURS 0 WITH HEADER LINE.
    Internal table to hold the records of VBPA
    DATA: BEGIN OF tbl_vbpa OCCURS 0,
            vbeln LIKE vbpa-vbeln,         "Sales and distribution
                                           "document number
            posnr LIKE vbpa-posnr,         "Item number
            parvw LIKE vbpa-parvw,         "SP Partner type
            kunnr LIKE vbpa-kunnr,         "Customer number
            lifnr LIKE vbpa-lifnr,         "SCAC code     "DN3K923909
          END   OF tbl_vbpa.
    Internal table to hold the records of VBLB (Forecast)
    DATA: BEGIN OF tbl_vblb_forecast OCCURS 0,
            vbeln  LIKE vblb-vbeln,
            posnr  LIKE vblb-posnr,
            abart  LIKE vblb-abart,        "Release type
            abefz  LIKE vblb-abefz,        "Cumulative Quantity
                                           "Received by Customer
            labnk  LIKE vblb-labnk,        "Delivery schedule
            abrdt  LIKE vblb-abrdt,        "Deivery date
            gjkun LIKE vblb-gjkun,         "Current fiscal year
            vjkun LIKE vblb-vjkun,         "Previous fiscal year
          END   OF tbl_vblb_forecast.
    Internal table to hold the records of VBLB (JIT)
    DATA: BEGIN OF tbl_vblb_jit OCCURS 0,
            vbeln  LIKE vblb-vbeln,
            posnr  LIKE vblb-posnr,
            abart  LIKE vblb-abart,        "Release type
            abefz  LIKE vblb-abefz,        "Cumulative Quantity
                                           "Received by Customer
            labnk  LIKE vblb-labnk,        "Delivery schedule
            abrdt  LIKE vblb-abrdt,        "Deivery date
            gjkun LIKE vblb-gjkun,         "Current fiscal year
            vjkun LIKE vblb-vjkun,         "Previous fiscal year
          END   OF tbl_vblb_jit.
    Internal table to hold the Forecast Schedule lines
    DATA: BEGIN OF tbl_vbep_forecast OCCURS 0,
           vbeln LIKE vbep-vbeln,          "Sales document
           posnr LIKE vbep-posnr,          "Item number
           etenr LIKE vbep-etenr,          "Schedule line
           edatu LIKE vbep-edatu,          "Schedule line date
           ezeit LIKE vbep-ezeit,          "Arrival time       "DN3K923909
           wmeng LIKE vbep-wmeng,          "Order quantity in sales units
           prgrs LIKE vbep-prgrs, "Date type (day, week, month, interval)
           abart LIKE vbep-abart,          "Release type       "DN3K923909
          END   OF tbl_vbep_forecast.
    Internal table to hold the JIT Schedule lines
    DATA: BEGIN OF tbl_vbep_jit OCCURS 0,
           vbeln LIKE vbep-vbeln,          "Sales document
           posnr LIKE vbep-posnr,          "Item number
           etenr LIKE vbep-etenr,          "Schedule line
           edatu LIKE vbep-edatu,          "Schedule line date
           ezeit LIKE vbep-ezeit,          "Arrival time
           wmeng LIKE vbep-wmeng,          "Order quantity in sales units
           prgrs LIKE vbep-prgrs, "Date type (day, week, month, interval)
           abart LIKE vbep-abart,          "Release type      "DN3K923909
          END   OF tbl_vbep_jit.
    Internal table for Long texts
    DATA: tbl_tline  LIKE tline OCCURS 0 WITH HEADER LINE.
                    V A R I A B L E S                                   *
    DATA: v_count               TYPE i,
          V_REPID               LIKE SY-REPID,
          w_eins                LIKE vbap-umvkz VALUE 1,
          v_cumulative_deli_qty LIKE vblb-abefz,
          v_text_name           LIKE thead-tdname,
          v_week                LIKE scal-week,
          v_count_h             TYPE i,    "Count of header records
          v_count_f             TYPE i,    "Count of Forecast records
          v_count_j             TYPE i,    "Count of JIT records
          v_count_t             TYPE i.    "Count of Shipping instructions
    TYPES: unixfile LIKE rlgrap-filename,
           unixdir LIKE rlgrap-filename.
    DATA: v_file1 TYPE unixfile,
          v_file2 TYPE unixfile.
    DATA: tbl_dynpfields LIKE dynpread OCCURS 0 WITH HEADER LINE.
    *data  tbl_cust_sa.
          S E L E C T - O P T I O N S / P A R A M E T E R S             *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
             Valid-to date
    PARAMETER:
              p_gueen like vbak-gueen obligatory,
             Correction Delivery date
               P_DELDT LIKE VBAK-GUEEN OBLIGATORY.
    Begin of Changes - TIR-40266
                  Plant
    SELECT-OPTIONS: s_werks FOR vbap-werks.
    *SD document category
    SELECT-OPTIONS: S_VBTYP FOR VBAK-VBTYP OBLIGATORY." Murali Poli
             Sales organization
    SELECT-OPTIONS: S_VKORG FOR VBAK-VKORG OBLIGATORY.
    End   of Changes - TIR-40266
    SELECTION-SCREEN SKIP 1.
    PARAMETER:      r1  RADIOBUTTON GROUP rg1.
             Material numbers file
    PARAMETER: P_FILE1 LIKE RLGRAP-FILENAME.
    PARAMETER: P_FILE6 LIKE RLGRAP-FILENAME.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT  1(32) text-003.
    SELECTION-SCREEN POSITION 33.
             SD SA Extract file
    PARAMETER: P_FILE2 LIKE RLGRAP-FILENAME
      DEFAULT 'C:\sd_sa_extract.txt'.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN SKIP 2.
    PARAMETER:      r2  RADIOBUTTON GROUP rg1.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT  1(32) text-004.
    SELECTION-SCREEN POSITION 33.
    PARAMETER: p_path1 TYPE unixdir OBLIGATORY DEFAULT '/tmp/'.
    SELECTION-SCREEN END OF LINE.
             Material numbers file
    PARAMETER: PU_FILE1 LIKE RLGRAP-FILENAME.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT  1(32) text-003.
    SELECTION-SCREEN POSITION 33.
             SD SA Extract file
    PARAMETER: PU_FILE2 LIKE RLGRAP-FILENAME.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT  1(64) text-005.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END   OF BLOCK b1.
            A T  S E L E C T I O N   S C R E E N   E V E N T S          *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
      v_repid = syst-repid.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
           EXPORTING
                program_name  = v_repid
           CHANGING
                file_name     = p_file1
           EXCEPTIONS
                mask_too_long = 1
                OTHERS        = 2.
      IF sy-subrc <> 0.
        MESSAGE e009.
      Message shown as 'Error while getting the file name'
      ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE6.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
           EXPORTING
                program_name  = v_repid
           CHANGING
                FILE_NAME     = P_FILE6
           EXCEPTIONS
                mask_too_long = 1
                OTHERS        = 2.
      IF sy-subrc <> 0.
        MESSAGE e009.
      Message shown as 'Error while getting the file name'
      ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file2.
      v_repid = syst-repid.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
           EXPORTING
                program_name  = v_repid
           CHANGING
                file_name     = p_file2
           EXCEPTIONS
                mask_too_long = 1
                OTHERS        = 2.
      IF sy-subrc <> 0.
        MESSAGE e009.
      Message shown as 'Error while getting the file name'
      ENDIF.
    AT SELECTION-SCREEN ON RADIOBUTTON GROUP rg1.
      IF r1 = 'X'.
        IF  p_file1 = '' OR p_file2 = ''.
          MESSAGE w000 WITH 'Please select a PC file'.
        ENDIF.
        LOOP AT SCREEN.
          IF screen-name = 'P_FILE1' OR
             screen-name = 'P_FILE2'.
            screen-input = '1'.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ELSEIF r2 = 'X'.
        PERFORM get_value USING 'P_PATH1' CHANGING p_path1.
        PERFORM get_value USING 'PU_FILE1' CHANGING pu_file1.
        PERFORM get_value USING 'P_PATH1' CHANGING p_path1.
        PERFORM get_value USING 'PU_FILE2' CHANGING pu_file2.
        IF  pu_file1 = '' OR pu_file2 = ''.
          MESSAGE w000 WITH 'Please select a UNIX file'.
          LOOP AT SCREEN.
            IF screen-name = 'PU_FILE1' OR
               screen-name = 'PU_FILE2'.
              screen-input = '1'.
              MODIFY SCREEN.
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR pu_file1.
      PERFORM get_value USING 'P_PATH1' CHANGING p_path1.
      PERFORM get_value USING 'PU_FILE1' CHANGING pu_file1.
      PERFORM popup_unix_filename CHANGING p_path1 pu_file1.
      PERFORM set_value USING 'P_PATH1' p_path1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR pu_file2.
      PERFORM get_value USING 'P_PATH1' CHANGING p_path1.
      PERFORM get_value USING 'PU_FILE2' CHANGING pu_file2.
      PERFORM popup_unix_filename CHANGING p_path1 pu_file2.
      PERFORM set_value USING 'P_PATH1' p_path1.
                     T O P - O F - P A G E                              *
    TOP-OF-PAGE.
    PERFORM delphi_header(z_delphi_header_footer)
         USING
         'E & S SD SCHEDULING AGREEMENTS EXTRACT DATA'(016)
          space
          sy-linsz.
               S T A R T - O F  - S E L E C T I O N                     *
    START-OF-SELECTION.
      IF r1 = 'X'.
        PERFORM upload_data_from_pc_files.
      ELSEIF r2 = 'X'.
        PERFORM upload_data_from_unix_files.
      ENDIF.
      PERFORM check_input_data.
      PERFORM get_sd_sa_data.
                   E N D - O F - S E L E C T I O N                      *
    END-OF-SELECTION.
      PERFORM process_data.
                        S U B - R O U T I N E S                          *
    *&      Form  get_value
    FORM get_value USING value(p_fieldname)
                CHANGING value(p_fieldvalue).
      IF v_repid IS INITIAL.
        v_repid = syst-repid.
      ENDIF.
      REFRESH: tbl_dynpfields.
      CLEAR: tbl_dynpfields.
      tbl_dynpfields-fieldname = p_fieldname.
      APPEND tbl_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
           EXPORTING
                dyname               = v_repid
                dynumb               = '1000'
           TABLES
                dynpfields           = tbl_dynpfields
           EXCEPTIONS
                invalid_abapworkarea = 1
                invalid_dynprofield  = 2
                invalid_dynproname   = 3
                invalid_dynpronummer = 4
                invalid_request      = 5
                no_fielddescription  = 6
                invalid_parameter    = 7
                undefind_error       = 8
                double_conversion    = 9
                stepl_not_found      = 10
                OTHERS               = 11.
      IF syst-subrc = 0.
        READ TABLE tbl_dynpfields INDEX 1.
        p_fieldvalue = tbl_dynpfields-fieldvalue.
      ENDIF.
      REFRESH: tbl_dynpfields.
    ENDFORM.                               " get_value
          FORM POPUP_UNIX_FILENAME                                      *
    Pops up dialog box to explore the unix filesystem and select a file *
    -->  VALUE(P_PATH)      Path where to start exploring from         *
    -->  VALUE(P_FILENAME)  Default filename in the dialog box         *
    FORM popup_unix_filename CHANGING value(p_path) TYPE unixdir
                                      value(p_filename) TYPE unixfile.
    DATA: v_length TYPE i,
           v_filename TYPE unixfile,
           v_directory LIKE draw-filep,
           v_file LIKE draw-filep.
    IF p_filename(1) = '/'  OR
        p_path IS INITIAL.
       v_filename = p_filename.
    ELSE.
       v_length = strlen( p_path ) - 1.
       IF p_path+v_length(1) <> '/'.
         CONCATENATE p_path '/' INTO p_path.
       ENDIF.
       CONCATENATE p_path p_filename INTO v_filename.
    ENDIF.
    CALL FUNCTION 'Z_UNIX_FILENAME_GET'
          EXPORTING
               def_filename     = v_filename
               mask             = ',*.'
               mode             = 'G'
               title            = 'Get UNIX file...'
          IMPORTING
               filename         = v_filename
          EXCEPTIONS
               inv_winsys       = 1
               no_batch         = 2
               selection_cancel = 3
               selection_error  = 4
               OTHERS           = 5.
    CHECK syst-subrc = 0.
    CALL FUNCTION 'CV120_SPLIT_PATH'
          EXPORTING
               pf_path  = v_filename
          IMPORTING
               pfx_path = v_directory
               pfx_file = v_file
          EXCEPTIONS
               OTHERS   = 1.
    CHECK syst-subrc = 0.
    IF v_directory = p_path.
       p_filename = v_file.
    ELSE.
       p_filename = v_filename.
    ENDIF.
    ENDFORM.
          FORM SET_VALUE                                                *
    Sets the value of a field on the selection screen.                  *
    -->  VALUE(P_FIELDNAME)   Name of the field on the selection screen*
    -->  VALUE(P_FIELDVALUE)  Value of the field                       *
    FORM set_value USING value(p_fieldname)
                         value(p_fieldvalue).
      IF v_repid IS INITIAL.
        v_repid = syst-repid.
      ENDIF.
      CLEAR: tbl_dynpfields.
      tbl_dynpfields-fieldname = p_fieldname.
      tbl_dynpfields-fieldvalue = p_fieldvalue.
      APPEND tbl_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_UPDATE'
           EXPORTING
                dyname               = v_repid
                dynumb               = '1000'
           TABLES
                dynpfields           = tbl_dynpfields
           EXCEPTIONS
                invalid_abapworkarea = 1
                invalid_dynprofield  = 2
                invalid_dynproname   = 3
                invalid_dynpronummer = 4
                invalid_request      = 5
                no_fielddescription  = 6
                undefind_error       = 7
                OTHERS               = 8.
    ENDFORM.
    *&      Form  upload_data_from_pc_files
    This subroutine is used to upload the data from input files
    FORM upload_data_from_pc_files.
      REFRESH: tbl_matnr.
      CLEAR:   tbl_matnr.
    Upload the data from Delphi Materials file
      CALL FUNCTION 'WS_UPLOAD'
           EXPORTING
                filename                = p_file1
                filetype                = 'DAT'
           TABLES
                data_tab                = tbl_matnr
           EXCEPTIONS
                conversion_error        = 1
                file_open_error         = 2
                file_read_error         = 3
                invalid_type            = 4
                no_batch                = 5
                unknown_error           = 6
                invalid_table_width     = 7
                gui_refuse_filetransfer = 8
                customer_error          = 9
                OTHERS                  = 10.
      IF sy-subrc <> 0.
        MESSAGE e008 WITH 'Materials file'.
      Message shown as "Error while reading Materials file"
      ENDIF.
      IF sy-subrc = 0 AND tbl_matnr[] IS INITIAL.
        MESSAGE e013 WITH 'Materials'.
      Message shown as "No records found in Materials file"
      ENDIF.
      DELETE tbl_matnr WHERE matnr = ''.
      CALL FUNCTION 'WS_UPLOAD'
           EXPORTING
                FILENAME                = P_FILE6
                filetype                = 'DAT'
           TABLES
                DATA_TAB                = TBL_CUST_SA
           EXCEPTIONS
                conversion_error        = 1
                file_open_error         = 2
                file_read_error         = 3
                invalid_type            = 4
                no_batch                = 5
                unknown_error           = 6
                invalid_table_width     = 7
                gui_refuse_filetransfer = 8
                customer_error          = 9
                OTHERS                  = 10.
      IF sy-subrc <> 0.
        MESSAGE E008 WITH 'Customer/Sales Area Cross Reference file'.
      Message shown as "Error while reading Materials file"
      ENDIF.
    ENDFORM.                               " upload_data_from_pc_files
    *&      Form  upload_data_from_unix_files
    This subroutine is used to upload the data from UNIX files
    FORM upload_data_from_unix_files.
      REFRESH: tbl_matnr.
      CLEAR:   tbl_matnr.
    Get the complete filename for the Materials file
      PERFORM get_full_filename USING pu_file1 CHANGING v_file1.
    Open the Materials file
      PERFORM open_dataset USING v_file1 'I' 'T' 1.
      CHECK syst-subrc = 0.
    Read the materials file
      DO.
        READ DATASET v_file1 INTO tbl_matnr.
        IF syst-subrc <> 0.
          EXIT.
        ENDIF.
    Populate the read data into the internal table
        APPEND tbl_matnr.
      ENDDO.
      PERFORM close_dataset USING v_file1.
    ENDFORM.                               " upload_data_from_unix_files
          FORM GET_FULL_FILENAME                                        *
    Uses the logical path if necessary to get the full filename         *
    If the filename already has a directory specified, that itself will *
      be the full filename                                              *
    Else the logical path for Conversions will be prefixed to the given *
      filename                                                          *
    FORM get_full_filename USING value(p_file) TYPE unixfile
                        CHANGING value(p_fullfile) TYPE unixfile.
      DATA: v_length TYPE i.
    IF p_file(1) = '/'  OR
        p_path1 IS INITIAL.
       p_fullfile = p_file.
    ELSE.
       v_length = strlen( p_path1 ) - 1.
       IF p_path1+v_length(1) = '/'.
         CONCATENATE p_path1 p_file INTO p_fullfile.
       ELSE.
         CONCATENATE p_path1 '/' p_file INTO p_fullfile.
       ENDIF.
    ENDIF.
    ENDFORM.
          FORM OPEN_DATASET                                             *
    Opens dataset in the specified mode                                 *
    -->  VALUE(P_FILE)    Name of file to be opened                    *
    -->  VALUE(P_IOMODE)  'I' for Input / 'O' for Output               *
    -->  VALUE(P_BTMODE)  'T' for Text / 'B' for Binary                *
    -->  VALUE(P_LEVEL)   If set to > 1, will write error message to   *
                           list Else will supress the error message but *
                           will be available in SYST-MSGV1              *
    FORM open_dataset USING value(p_file) TYPE unixfile
                            value(p_iomode) TYPE c
                            value(p_btmode) TYPE c
                            value(p_level) TYPE i.
      DATA: v_rc LIKE syst-subrc,
            v_msg(100),
            v_listmsg(100).
      IF p_iomode = 'O'.
        IF p_btmode = 'B'.
          OPEN DATASET p_file FOR OUTPUT IN BINARY MODE MESSAGE v_msg.
        ELSE.
          OPEN DATASET p_file FOR OUTPUT IN TEXT MODE MESSAGE v_msg.
        ENDIF.
      ELSE.
        IF p_btmode = 'B'.
          OPEN DATASET p_file FOR INPUT IN BINARY MODE MESSAGE v_msg.
        ELSE.
          OPEN DATASET p_file FOR INPUT IN TEXT MODE MESSAGE v_msg.
        ENDIF.
      ENDIF.
      IF syst-subrc <> 0.
        v_rc = syst-subrc.
        syst-msgv1 = v_msg.
        IF p_level > 0.
          CONCATENATE 'Unable to open' p_file
                 INTO v_listmsg
            SEPARATED BY space.
          IF p_iomode = 'O'.
            CONCATENATE v_listmsg 'for Output'
                   INTO v_listmsg
              SEPARATED BY space.
          ELSE.
            CONCATENATE v_listmsg 'for Input'
                   INTO v_listmsg
              SEPARATED BY space.
          ENDIF.
          IF p_iomode = 'B'.
            CONCATENATE v_listmsg 'in Binary mode'
                   INTO v_listmsg
              SEPARATED BY space.
          ELSE.
            CONCATENATE v_listmsg 'in Text mode'
                   INTO v_listmsg
              SEPARATED BY space.
          ENDIF.
          WRITE: / v_listmsg.
          WRITE: /3 '--', v_msg.
          syst-subrc = v_rc.
        ENDIF.
      ENDIF.
    ENDFORM.
          FORM CLOSE_DATASET                                            *
    Closes dataset                                                      *
    -->  VALUE(P_FILE)  Name of the file to be closed                  *
    FORM close_dataset USING value(p_file) TYPE unixfile.
      CLOSE DATASET p_file.
    ENDFORM.
    *&      Form  check_input_data
    This subroutine is used to check the data from X Ref files
    FORM check_input_data.
      DESCRIBE TABLE tbl_matnr LINES v_count.
    Use the material conversion routine to pad the material numbers
    with zeroes
      LOOP AT tbl_matnr.
        CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
             EXPORTING
                  input        = tbl_matnr-matnr
             IMPORTING
                  output       = tbl_matnr-matnr
             EXCEPTIONS
                  length_error = 1
                  OTHERS       = 2.
        TRANSLATE tbl_matnr-matnr TO UPPER CASE.
        MODIFY tbl_matnr.
      ENDLOOP.
    Get the materials from SAP database using the input materials
      IF NOT tbl_matnr[] IS INITIAL.
        SORT tbl_matnr BY matnr.
        SELECT matnr FROM mara
          INTO TABLE tbl_mara
           FOR ALL ENTRIES IN tbl_matnr
         WHERE matnr = tbl_matnr-matnr.
        SORT tbl_mara BY matnr.
      ENDIF.
    Check the existence of input materials in SAP database
      LOOP AT tbl_matnr.
        READ TABLE tbl_mara WITH KEY matnr = tbl_matnr-matnr
             BINARY SEARCH.
        IF sy-subrc <> 0.
          CONCATENATE 'Material' tbl_matnr-matnr 'does not exist'
                 INTO tbl_error-error_text
            SEPARATED BY space.
          APPEND tbl_error.
          CLEAR  tbl_error.
          DELETE tbl_matnr.
        ENDIF.
      ENDLOOP.
    ENDFORM.                               " check_input_data
    *&      Form  get_sd_sa_data
    This subroutine is used to get the SD Scheduling data from database
    FORM get_sd_sa_data.
    *begin of changes - DN3K923909
      DATA: tbl_vbep LIKE tbl_vbep_forecast OCCURS 0 WITH HEADER LINE,
            tbl_vblb LIKE tbl_vblb_forecast OCCURS 0 WITH HEADER LINE.
    *end of changes - ND3K923909
      REFRESH: tbl_vbap_vapma, tbl_vbpa, tbl_vblb_forecast,
               tbl_vblb_jit, tbl_vbep_forecast, tbl_vbep_jit.
      CLEAR:   tbl_vbap_vapma, tbl_vbpa, tbl_vblb_forecast,
               tbl_vblb_jit, tbl_vbep_forecast, tbl_vbep_jit.
    Get the Scheduling Agreements
      SELECT avbeln aposnr
           a~vgbel
             AAUART avkorg avtweg aspart a~kunnr
            a~ablfz
             A~MATNR
           a~pstyv
             a~werks
           a~lgort
            a~vstel
              ATRVOG BVBTYP BVSBED  BBSTNK B~KTEXT
        FROM VAPMA AS A INNER JOIN VBAK AS B
          ON bvbeln = avbeln
        INTO TABLE tbl_vbap_vapma
         FOR ALL ENTRIES IN tbl_mara
       WHERE a~matnr = tbl_mara-matnr
    Begin of Changes - TIR-40266
         AND a~vkorg IN s_vkorg
         AND a~werks IN s_werks
    End of Changes - TIR-40266
         AND A~TRVOG = '3'
         AND B~VBTYP IN S_VBTYP.           "Murali Poli
        and a~abgru = ''
        and b~gueen >= p_gueen.
      SORT tbl_vbap_vapma BY vbeln posnr.
      IF NOT tbl_vbap_vapma[] IS INITIAL.
        SELECT VBELN POSNR VGBEL ABLFZ PSTYV LGORT VSTEL FROM VBAP
         INTO TABLE  TBL_VBAP FOR ALL ENTRIES IN TBL_VBAP_VAPMA
           WHERE VBELN = TBL_VBAP_VAPMA-VBELN
            AND POSNR = TBL_VBAP_VAPMA-POSNR.
        LOOP AT TBL_VBAP_VAPMA.
          READ TABLE TBL_VBAP WITH KEY VBELN = TBL_VBAP_VAPMA-VBELN
                                       POSNR = TBL_VBAP_VAPMA-POSNR.
          IF SY-SUBRC = 0 .
            TBL_VBAP_VAPMA-VBELN  = TBL_VBAP-VBELN.
            TBL_VBAP_VAPMA-POSNR  = TBL_VBAP-POSNR.
            TBL_VBAP_VAPMA-VGBEL  = TBL_VBAP-VGBEL.
            TBL_VBAP_VAPMA-ABLFZ  = TBL_VBAP-ABLFZ.
            TBL_VBAP_VAPMA-PSTYV  = TBL_VBAP-PSTYV.
            TBL_VBAP_VAPMA-LGORT  = TBL_VBAP-LGORT.
            TBL_VBAP_VAPMA-VSTEL  = TBL_VBAP-VSTEL.
            MODIFY TBL_VBAP_VAPMA .
          ENDIF.
        ENDLOOP.
        tbl_vbap_vapma_temp[] = tbl_vbap_vapma[].
    *--Begin of UnCommentDIR-51476-DN3K932648
    -------------- Begin of Comment -----------  CCR-50124  DN3K928457
        SORT tbl_vbap_vapma_temp BY vbeln.
        DELETE ADJACENT DUPLICATES FROM tbl_vbap_vapma COMPARING vbeln.
    -------------- End of Comment -----------  CCR-50124  DN3K928457
    *--End of UnCommentDIR-51476-DN3K932648
    *--Begin of CommentDIR-51476-DN3K932648
    -------------- Begin of Insert -----------  CCR-50124  DN3K928457
    Duplicate Line Items are being deleted.
       SORT tbl_vbap_vapma BY vbeln posnr.
    DELETE ADJACENT DUPLICATES FROM tbl_vbap_vapma COMPARING vbeln posnr.
    The field for contract in SA is being modified for uniqueness
       loop at tbl_vbap_vapma.
         clear: v_vgbel, v_posnr.
         v_vgbel = tbl_vbap_vapma-vgbel.
         v_posnr = tbl_vbap_vapma-posnr.
         if not v_vgbel is initial .
           shift v_vgbel left deleting leading v_zero.
           shift v_posnr left deleting leading v_zero.
           v_posnr = v_posnr / 10.
           condense: v_vgbel, v_posnr.
           if v_posnr le 9.
             concatenate v_vgbel '0' v_posnr into v_vgbel.
           else.
             concatenate v_vgbel v_posnr into v_vgbel.
           endif.
         endif.
         tbl_vbap_vapma-vgbel = v_vgbel.
         modify tbl_vbap_vapma.
       endloop.
    -------------- End of Insert -----------  CCR-50124  DN3K928457
    *--End of CommentDIR-51476-DN3K932648
    Get the Partner details
       select vbeln posnr parvw kunnr
    *Start of Murali Poli
        SELECT VBELN POSNR INCO1 INCO2
               INTO TABLE TBL_VBKD
               FROM VBKD
               FOR ALL ENTRIES IN TBL_VBAP_VAPMA
               WHERE VBELN = TBL_VBAP_VAPMA-VBELN.
              and posnr  = tbl_vbap_vapma-posnr.
    *End of Murali Poli
        SELECT vbeln posnr parvw kunnr lifnr                    "DN3K923909
          INTO TABLE tbl_vbpa
          FROM vbpa
           FOR ALL ENTRIES IN tbl_vbap_vapma_temp
         WHERE vbeln = tbl_vbap_vapma_temp-vbeln
           AND parvw IN ('WE', 'SP').
    *begin of changes - DN3K923909
       select vbeln posnr abart abefz labnk abrdt gjkun vjkun
         into table tbl_vblb_forecast
         from vblb
          for all entries in tbl_vbap_vapma
        where vbeln = tbl_vbap_vapma-vbeln
          and posnr = tbl_vbap_vapma-posnr
          and abrli = '0000'
          and abart = '1'.
        SELECT vbeln posnr abart abefz labnk abrdt gjkun vjkun
          INTO TABLE tbl_vblb
          FROM vblb
           FOR ALL ENTRIES IN tbl_vbap_vapma
         WHERE vbeln = tbl_vbap_vapma-vbeln
           AND posnr = tbl_vbap_vapma-posnr
           AND abrli = '0000'
           AND abart IN ('1','2').
        SELECT vbeln posnr etenr edatu ezeit wmeng prgrs abart
          INTO TABLE tbl_vbep
          FROM vbep
           FOR ALL ENTRIES IN tbl_vbap_vapma
         WHERE vbeln = tbl_vbap_vapma-vbeln
           AND posnr = tbl_vbap_vapma-posnr
           AND abart IN ('1','2').
    Get the current Forecast delivery schedule
        tbl_vblb_forecast[] = tbl_vblb[].
        DELETE tbl_vblb_forecast WHERE abart = '2'.
    Get the current Forecast Schedule lines
        tbl_vbep_forecast[] = tbl_vbep[].
        DELETE tbl_vbep_forecast WHERE abart = '2'.
    Get the current JIT delivery Schedule
       select vbeln posnr abart abefz labnk abrdt gjkun vjkun
         into table tbl_vblb_jit
         from vblb
          for all entries in tbl_vbap_vapma
        where vbeln = tbl_vbap_vapma-vbeln
          and posnr = tbl_vbap_vapma-posnr

Maybe you are looking for

  • Facing issues with JCA DB Adapter

    Hi, I have to create a DB Adapter in BPEL on Reporting Database of OSB. I have a requirement to extract DATA_VALUE from WLI_QS_REPORT_DATA Table stored in BLOB datatype by passing parameters in WLI_QS_REPORT_ATTRIBUTE with a join condition of a commo

  • Ad hoc network for Airplay Mirroring

    Can you create an ad hoc network between an Apple TV and a MacbookPro to use air play mirroring? It would be useful when there is no available wireless network?

  • File_upload PJC.x509

    Hi, can i install PJC.x509 certficate (file_upload utility), from forms, or from html with some script?

  • Dynamic record mapping

    Hi All, We are having a requirement where we need to merge the data from two endeca indexes at runtime. The scenario is like this. We have two endeca indexes hosted on two dgraphs. 1. One Dgraph is hosting product catalog information 2. Other Dgraph

  • Transaction TAN is missing

    dear gurus, while creatinfg sales order it is showing transaction TAN is missing and in details item category tan and mrp type is nt allowed .tell me plaz wt to do?