Objectdatasource / Table Adapter Command Time Out

Hello. I am not sure if this is posted in exactly the right place.... Here is the background:
    ---Visual Studio 2013
    ---ASPX with ReportViewer Control included on page.
    ---ReportViewer Control is pulling from a ObjectDataSource
    ---Report (.rdlc file) is referencing back to a Dataset (.xsd file)
    ---Dataset (.xsd file) includes the Table Adapter.
    ---Page Language="VB"
    ---ASPX File is named Default.aspx
    ---CodeFile="Default.aspx.vb"
ObjectDataSources and SQLDataSources both have a default timeout of 30 Seconds. That is ok for most small select statements. However, for something a little larger - it could go over. I know how to override a SQLDataSource CommandTimeout. Something like this:
    Protected Sub SqlDataSource1_WhatType_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1_WhatType.Selecting
    e.Command.CommandTimeout = ######
    End Sub
However, for a objectdatasource I am stumped. From the hours of research I have done - it seems to be tied back to the dataset or even the table adapter -- needs to be set there.
Anyways, I am starting over with this to see if anyone here has run in to this? Things to try?
Thank you!!

Hi there,
Your post is thorough, but it is misplaced.  =P  I can't move it for you, so please repost at
http://forums.asp.net
But before you do, check out this article:
http://blog.csharpner.com/2008/05/setting-timeout-on-typed-dataset.html
It looks like this is the general solution given
this search.
Most of the examples appear to be in C#, but the principle would be the same in VB; create your own partial class for the adapter and then expose the timeout property on each command.
Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

Similar Messages

  • SOAP Adapter: Connection time out error

    Hi Guys,
                I do it one scenario for Proxy to webservice Asynchronous . I have send the input details through Proxy. In Sxmb_Moni shows success message. But Receiver side doesn't reach the payload. Because receiver side (Soap Adapter) shows connection time out error. But i have given correct URL and SOAP Action in receiver communication channel. Please give some suggestions to solve that issues. Please don't refer links.
    Thanks & Regards
    Vijay

    hi
    this is a time out error
    increase the timeout value by specifying the parameter
    XI.Timeout in the module parameter of soap Adapter
    OR
    1. This is because of TimeOut. The default timeout value for synchronous calls is 5
    minutes. You can increase this value by setting parameter XI.Timeout in the module parameter table of
    the SOAP adapter. The value must be given in milliseconds. For example, value 600000
    represents the timeout value of 10 minutes. This parameter is not recognized in systems prior to SP13.
    2.The Other Options is send the queue id with your request message.
    http://host:port/XISOAPAdapter/MessageServlet?channel=p:s:c
    &version=3.0&...&QueueId=xxxxxxxxxxxxxxxx
    where xxxxxxxxxxxxxxxx is an ABAP queue ID.
    3.Check your RWB message monitoring.
    Is there any system failure message and holding message be there.
    If then clear the messages.
    4. Increase the time out parameter for HTTP in your altova xml spy.Defaultly it will be very low.

  • FTP Adapter Error time out

    Hi
    I have read that a polling files from an FTP server windows but I had some problems because the polling ejecutarce to mark the following error log
    <2009-06-01 20:44:52,822> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Managed Connection Created
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Adding Event Listener
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Connection
    <2009-06-01 20:44:52,822> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection Created
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection manager allocated connection :oracle.tip.adapter.ftp.FTPConnection@1e2d982
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host name is 'MyHost'.
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Reading reply from MyHost
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: USER cajero
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: USER, reply:
    331 Password required for cajero.
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHostFTP command: PASS
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASS, reply:
    230 User cajerologged in.
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: PASV
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASV, reply:
    227 Entering Passive Mode (192,168,0,150,15,190).
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Passive: ip = 192.192.0.192, port = 4030
    <2009-06-01 20:44:52,822> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connecting to MyHost:4030
    <2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host MyHost FTP command: NLST C:\pub\cashier
    <2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: NLST, reply:
    125 Data connection already open; Transfer starting.
    <2009-06-01 20:44:52,838> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket being read by [JCA-work-instance:FTP Adapter-4]
    <2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket read failed by [JCA-work-instance:FTP Adapter-4] DATA=[TIMEDOUT] in [93 msecs]
    <2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Sending event: 1 with: oracle.tip.adapter.ftp.FTPConnection@1e2d982
    <2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPManagedConnection::destroy called, closing physical socket
    <2009-06-01 20:44:52,931> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Clearing Event Listeners
    <2009-06-01 20:44:53,088> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> afterDelivery() is invoked
    <2009-06-01 20:44:53,088> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Committing JTA transaction com.evermind.server.ApplicationServerTransactionManager@1961a07
    I have already changed the timeout of transactions in the following files:
    SOA_HOME\j2ee\oc4j_soa\config\transaction-manager.xml
    greater thanorion-ejb-jar.xml
    SOA_HOME\j2ee\oc4j_soa\application-deployments\orabpel\ejb_ob_engine\orion-ejb-jar.xml
    less than transaction-manager.xml
    SOA_HOME\bpel\domains\domain_name\config\domain.xml
    less than orion-ejb-jar.xml
    but the error continues. I need your help pls be grateful
    Greetings

    JDT
    In making the execution of an interface that executes the method SynchRead and review the log. I realized that the same brand message timeout single interface that works well.
    <2009-06-02 13:37:50,177> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> ResourceAdapterMetaData Connection Created
    <2009-06-02 13:37:50,177> <INFO> <default.collaxa.cube.ws> <AdapterFramework::Outbound> file:/F:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_BPEL_REGISTRO_COB_1.0_e24ce5bd36c213c5eba6a75bc9f44618.tmp/FTPArchivosICOMS.wsdl [ SynchRead_ptt::SynchRead(Empty,Pagos) ] - Using JCA Connection Pool - max size = <unbounded>
    <2009-06-02 13:37:50,193> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Managed Connection Created
    <2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Adding Event Listener
    <2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Connection
    <2009-06-02 13:37:50,193> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection Created
    <2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connection manager allocated connection :oracle.tip.adapter.ftp.FTPConnection@1f8aab0
    <2009-06-02 13:37:50,193> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating FTPInteraction
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating an FTPSender
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Sender created
    <2009-06-02 13:37:50,224> <INFO> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPInteraction Created
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP outbound adapter interaction invoked : oracle.tip.adapter.ftp.outbound.FTPReadInteractionSpec@13a6c6f
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FileInteraction::PROPS ====>{}
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Considering header for filename, output filename from header: PGLINEAS1-090508133556.txt
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Considering header for directoryName, directoryName from header: Cashier
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Agent Determined
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPSource::Local Temp Directory is F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Host: myHost
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Post: 21
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Username: myuser
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Keep Connections: true
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP outbound adapter read file interaction invoked.
    <2009-06-02 13:37:50,224> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Outbound File Adapter received request to read file with parameters: { Directory=Cashier, FileName=PGLINEAS1-090508133556.txt, DeleteFile=false}, headers=[_directory=[Cashier], _filename=[PGLINEAS1-090508133556.txt], _props=[{}]]
    <2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Creating Temp File mDGwM+l2LhBE8Qq9VFaD1Q== Local Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound Remote Dir: Cashier
    <2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Calling getContentsAsStream() on FTPAgent: myHost: type = FTP, host = myHost:21, username = myuser
    directory = null, mode = STREAM, fileType = ASCII, maxRetries = 0 Localfile: PGLINEAS1-090508133556.txt Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound\mDGwM+l2LhBE8Qq9VFaD1Q== Remote Dir: Cashier
    <2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host name is 'myHost'.
    <2009-06-02 13:37:50,240> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Reading reply from myHost
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: USER myuser
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: USER, reply:
    331 Password required for myuser.
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: PASS
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASS, reply:
    230 User myuser logged in.
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTPAgent::absoluteFilePath called with[Cashier], file=[PGLINEAS1-090508133556.txt]
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: PASV
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: PASV, reply:
    227 Entering Passive Mode (192,168,0,150,4,46).
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Passive: ip = 192.192.0.192, port = 1070
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Connecting to myHost:1070
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: TYPE I
    <2009-06-02 13:37:50,255> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: TYPE, reply:
    200 Type set to I.
    <2009-06-02 13:37:50,271> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Host myHost FTP command: RETR Cashier\PGLINEAS1-090508133556.txt
    <2009-06-02 13:37:50,271> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> FTP Command: RETR, reply:
    125 Data connection already open; Transfer starting.
    <2009-06-02 13:37:50,287> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket being read by [AJPRequestHandler-HTTPThreadGroup-64]
    <2009-06-02 13:37:50,380> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Control socket read failed by [AJPRequestHandler-HTTPThreadGroup-64] DATA=[TIMEDOUT] in [93 msecs]
    <2009-06-02 13:37:50,380> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Returning local file: mDGwM+l2LhBE8Qq9VFaD1Q== Path: F:\product\10.1.3.1\OracleAS_1\j2ee\home\fileftp\temp_ftp\localhost_default_BPEL_REGISTRO_COB~1.0_\outbound\mDGwM+l2LhBE8Qq9VFaD1Q==
    <2009-06-02 13:37:50,427> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Created translator : oracle.tip.pc.services.translation.xlators.nxsd.NXSDTranslatorImpl@112ff56
    <2009-06-02 13:37:50,459> <DEBUG> <default.collaxa.cube.activation> <FTP Adapter::Inbound> Completed translation for : Cashier\PGLINEAS1-090508133556.txt
    Thank you...
    Edited by: user10655677 on Jun 2, 2009 9:57 AM

  • Performance issue TIME OUT Error

    Hello Friends,
    I am fetching data from BSAD table and getting TIME OUT error.
    Program was developed in ECC5.0. In 4.6 there is a function module called ARCH_ANA_PROGRESS_INDICATOR to solve this type of error but it is not there in my ECC5.0. 
    Is there any alternate function module to solve my problem in ECC5.0 or what is the alternate fuinction module for ARCH_ANA_PROGRESS_INDICATOR  in ECC5.0.
    Please guide me how to solve my error.

    Hi Kumar,
    u can use pacage size keyword in select statement.
    select * package size 10000
      from bsad
      into table i_bsad
    where -
    Regards
    Kiran

  • "ARP time-out" command on Catalyst Switches

    Hopefully this would help to all of you that have packet loss or TCP retransmissions, due to the fact that the ARP timeout is an absolute timer and not an activity timer like the MAC Address Table Aging Time.
    This is an expected behavior in this type of switches (3750X). When we generate an ARP entry in software, that entry gets programmed into hardware and is not touched again until it is time for a refresh.  The refresh happens 1 minute prior to expiration
    Therefore, when trying to apply the "ARP timeout" command, be sure to use a timer higher than 1 minute, in order to have, as told before, the 1-minute timer to refresh the ARP table.
    Sadly, this is not a bug behavior or something like that, basically, that is how the protocol works.
    Anyway, Thanks all for the attention given.

    Hi,
    I am currently using 12.2(58)SE2 on the 3560.
    Cisco IOS Software, C3560 Software (C3560-IPSERVICESK9-M), Version 12.2(58)SE2, RELEASE SOFTWARE (fc1)
    I downgraded my IOS to check if it's still supported for the 3560 on 12.2(55)SE1 and it's not.
    XXX uptime is 1 minute
    System returned to ROM by power-on
    System restarted at 14:38:50 GMT Tue Jul 29 2014
    System image file is "flash:/c3560-ipservicesk9-mz.122-55.SE1.bin"
    XXX(config)#ip ssh ?
      authentication-retries  Specify number of authentication retries
      dscp                    IP DSCP value for SSH traffic
      logging                 Configure logging for SSH
      precedence              IP Precedence value for SSH traffic
      source-interface        Specify interface for source address in SSH
                              connections
      time-out                Specify SSH time-out interval
      version                 Specify protocol version supported
    XXX(config)#ip ssh
    I then upgraded to 12.2(55)SE9 and it's still not supported.
    XXX uptime is 1 minute
    System returned to ROM by power-on
    System restarted at 14:47:49 GMT Tue Jul 29 2014
    System image file is "flash:/c3560-ipservicesk9-mz.122-55.SE9.bin"
    XXX(config)#ip ssh ?
      authentication-retries  Specify number of authentication retries
      dscp                    IP DSCP value for SSH traffic
      logging                 Configure logging for SSH
      precedence              IP Precedence value for SSH traffic
      source-interface        Specify interface for source address in SSH
                              connections
      time-out                Specify SSH time-out interval
      version                 Specify protocol version supported
    XXX(config)#ip ssh
    I would recommend that you upgrade but I don't see any point unfortunately.
    Thanks,
    Nehmaan

  • Time Out selecting Table

    Hi friends, 
    Now I'm with another problem.
    I have a Specific table with 150.000.000 register approximately. I'm using the select bellow, with the command PACKAGE SIZE, but anyway a time out occurs. The Basis don't have permission to change the time of time out.  You can Help-me.
    EXAMPLE BELLOW:
      SELECT rvers                                         
             drcrk
             docnr
             docln
             racct
             rcntr
             hsl
             sgtxt
             budat
             FROM zglt1sbra
                 APPENDING TABLE gt_zglt1sbra
                 PACKAGE SIZE 150000
                 WHERE rrcty  = v_rrcty
                WHERE rrcty  EQ gw_rrcty
                        AND   rvers  IN r_rvers
                        AND   ryear  IN br_gjahr
                       AND   docnr  IN br_belnr
                      AND   rbukrs EQ br_bukrs-low
                      AND   activ  NE c_rkiv
                      AND   activ  NE c_rkiu
                     AND    budat  IN br_budat
                    AND zzzxblnr IN br_xblnr.
       ENDSELECT.

    Hi,
    a bit old fashioned but it may work:
    statics:    s_cursor type cursor.
    DO.
    If sy-index = 1. "first loop.
          open cursor with hold s_cursor for
             SELECT ..."continue your statement without package size
    endif.
            fetch next cursor s_cursor
                       into corresponding fields
                       of table " your table
                       package size "your size.
            if sy-subrc <> 0.
              close cursor s_cursor.
              EXIT
            endif.
      COMMIT WORK. "resets runtime for max runtime
    ENDDO.
    Be sure not to append all entries but to process them block by block - else memory would be a problem...
    Kind regards,
    HP.

  • Time out error 1.6 million internal table fields are computed using FMs

    Hi , All ...
    The Report running fine in server with less 300 record but ...production server which has 1.6 million record it  gives error as time-out error and takes hell amount of time.
    Please suggest ugently ..
    I have tried few things
    Internal table having 1.6 lacs ... fields to compute .. i have token in a batch
    loop at i_cinfo into s_cinfo from 1 to  100000.
    and so on ...also applied all the performace related .. like indexs, work areas , deleting adjacent duplicates , for all entries ..wherever applicable.
    Please Suggest .
    Report is as below
    REPORT  ZUSOTCBD_CREDIT_REPORT .
    TABLES : KNA1,    " General Data Customer Master
             KNB1,    " Customer Master (Company Code)
             KNC1,    " Customer master (transaction figures)
             KNKK,    " Customer master credit management: Control area data
             T009,    " Fiscal Year Variants P
             T009Y,   " Shortened fiscal years in Asset Accounting P
             T001,    " Co. Codes
             T001CM,  " Permitted Credit Control Areas per Company Code
             RF42B,   " Structure to hold credit data.
             RF035,   " Structure to hold credit managment fields
             RF02L,   " Structure to hold credit data.
             TRAS,    " Interval for Days in Arrears P
             T000CM.  " Data for DSO calculation.
    Types
    TYPES:
      BEGIN OF type_final,
        string(50) TYPE c,                            " String Value for Title
      END OF type_final.
    data:wa_final     TYPE type_final.                " Work Area to hold Title Data
    DATA:    RASID    TYPE RF035-RASID value 'R03N'. " For Days in interval
    DATA:    MONAT(2) TYPE N.
    DATA:    GJAHR    TYPE  KNC1-GJAHR.
    DATA:    LD_PERIODS(32) TYPE N
                           VALUE '01020304050607080910111213141516'.
    DATA     sytabix type sy-tabix.
    DATA     LAND      TYPE KNA1-LAND1 VALUE 'US'.   " Country Key
    DATA:   LD_PERIOD    TYPE BSID-MONAT,            " Fiscal Year Variant
            LD_GJAHR   TYPE KNC1-GJAHR,
            LD_COUNTER TYPE SY-TABIX.
    Internal Tables
    Internal table to hold Title Data                                   *
    DATA:
      i_final    TYPE STANDARD TABLE OF type_final.
    **Internal Table Permitted Credit Control Areas per Company Code
    DATA:    BEGIN OF TCMTAB OCCURS 10.
            INCLUDE STRUCTURE T001CM.
    DATA:    END   OF TCMTAB.
    *Internal table to store Customer no.
    DATA :  BEGIN OF ICUST OCCURS 0,
               KUNNR             TYPE KNA1-KUNNR,    " Customer No.
            END   OF ICUST.
    DATA:    BEGIN OF BUKTAB OCCURS 20,
               KKBER             LIKE T001-KKBER,    " Credit Control Area
               BUKRS             LIKE T001-BUKRS,    " Co. Code
               WAERS             LIKE T001-WAERS,    " Currency
               PERIV             LIKE T001-PERIV,    " Fiscal Year Variant
               BUTXT             LIKE T001-BUTXT,
             END   OF BUKTAB.
    Internal Table to store Fiscal year Data .
    DATA:    BEGIN OF GJATAB OCCURS 5,
               PERIV             LIKE T001-PERIV,    " Fiscal Year Variant
               GJAHR             LIKE KNC1-GJAHR,    " Fiscal Year
               MONAT             LIKE T009-ANZBP,    "
               ANZBP             LIKE T009-ANZBP,    " Number of posting periods
             END   OF GJATAB.
    *Main Output internal table to be used to store credit history Information
    DATA : BEGIN OF I_CINFO occurs 0,
                 KUNNR TYPE   KNB1-KUNNR,     " Customer
                 KNKLI TYPE   KNKK-KNKLI,     " Customer's account number with credit limit reference
                 KKBER TYPE   KNKK-KKBER,     " Credit Control Area
                 CTLPC TYPE   KNKK-CTLPC,     " Risk Category
                 KLIMK TYPE   KNKK-KLIMK,     " Credit Limit
                 SBGRP TYPE   KNKK-SBGRP,     " Credit representative group for credit management
                 ERDAT TYPE   KNKK-ERDAT,     " Created On
                 DTREV TYPE   KNKK-DTREV,     " Last Internal Review
                 REVDB TYPE   KNKK-REVDB,     " Last External Review
                 SALDO TYPE   RF42B-SALDO,    " Balance
                 DSOIN TYPE   RF02L-DSOIN,    " DSO
                 H06SA TYPE   RF035-H06SA,    " Highest Balance at the end of 6 Months
                 H06JA TYPE   RF035-H06JA,    " Year highest Balance 6 Months
                 H06MO TYPE   RF035-H06MO,    " Month OF hihest Balance 6 Months
                 H12SA TYPE   RF035-H12SA,    " Highest Balance at the end of 12 Months
                 H12JA TYPE   RF035-H12JA,    " Year highest Balance 12 Months
                 H12MO TYPE   RF035-H12MO,    " Month OF hihest Balance 12 Months
                 UMP2U TYPE   RF42B-UMP2U,    " Sales from the current Year
                 UMP1U TYPE   RF42B-UMP1U,    " Sales from the Previous Year
                 SFAEL TYPE   RF035-SFAEL,    " Total Past Due Open Item
                 SFAE1 TYPE   RF035-SFAE1,    " Aging buckets 0-15
                 SFAE2 TYPE   RF035-SFAE2,    " Aging buckets 16-30
                 SFAE3 TYPE   RF035-SFAE3,    " Aging buckets 31-60
                 SFAE4 TYPE   RF035-SFAE4,    " Aging buckets 60-90
                 SFAE5 TYPE   RF035-SFAE5,    " Aging buckets Over 90
          END Of I_CINFO.
    DATA : BEGIN OF S_CINFO ,
                 KUNNR TYPE   KNB1-KUNNR,     " Customer
                 KNKLI TYPE   KNKK-KNKLI,     " Customer's account number with credit limit reference
                 KKBER TYPE   KNKK-KKBER,     " Credit Control Area
                 CTLPC TYPE   KNKK-CTLPC,     " Risk Category
                 KLIMK TYPE   KNKK-KLIMK,     " Credit Limit
                 SBGRP TYPE   KNKK-SBGRP,     " Credit representative group for credit management
                 ERDAT TYPE   KNKK-ERDAT,     " Created On
                 DTREV TYPE   KNKK-DTREV,     " Last Internal Review
                 REVDB TYPE   KNKK-REVDB,     " Last External Review
                 SALDO TYPE   RF42B-SALDO,    " Balance
                 DSOIN TYPE   RF02L-DSOIN,    " DSO
                 H06SA TYPE   RF035-H06SA,    " Highest Balance at the end of 6 Months
                 H06JA TYPE   RF035-H06JA,    " Year highest Balance 6 Months
                 H06MO TYPE   RF035-H06MO,    " Month OF hihest Balance 6 Months
                 H12SA TYPE   RF035-H12SA,    " Highest Balance at the end of 12 Months
                 H12JA TYPE   RF035-H12JA,    " Year highest Balance 12 Months
                 H12MO TYPE   RF035-H12MO,    " Month OF hihest Balance 12 Months
                 UMP2U TYPE   RF42B-UMP2U,    " Sales from the current Year
                 UMP1U TYPE   RF42B-UMP1U,    " Sales from the Previous Year
                 SFAEL TYPE   RF035-SFAEL,    " Total Past Due Open Item
                 SFAE1 TYPE   RF035-SFAE1,    " Aging buckets 0-15
                 SFAE2 TYPE   RF035-SFAE2,    " Aging buckets 16-30
                 SFAE3 TYPE   RF035-SFAE3,    " Aging buckets 31-60
                 SFAE4 TYPE   RF035-SFAE4,    " Aging buckets 60-90
                 SFAE5 TYPE   RF035-SFAE5,    " Aging buckets Over 90
          END Of s_cinfo.
    *Internal table to hold month-wise balance.
    DATA:    BEGIN OF SALTAB OCCURS 12,
               LNUMM(2)     TYPE N,             " Month
               SALDO        LIKE RF42B-SALDO,   " Balance
             END   OF SALTAB.
    *Internal table used for computing the Balance fields
    DATA:    BEGIN OF SALDO,
               UML01             LIKE KNC1-UM01S,
               UML02             LIKE KNC1-UM01S,
               UML03             LIKE KNC1-UM01S,
               UML04             LIKE KNC1-UM01S,
               UML05             LIKE KNC1-UM01S,
               UML06             LIKE KNC1-UM01S,
               UML07             LIKE KNC1-UM01S,
               UML08             LIKE KNC1-UM01S,
               UML09             LIKE KNC1-UM01S,
               UML10             LIKE KNC1-UM01S,
               UML11             LIKE KNC1-UM01S,
               UML12             LIKE KNC1-UM01S,
             END   OF SALDO.
    Structure to hold Bal fields ------ -------
    DATA:    BEGIN OF SKNKK,
               KUNNR             LIKE KNA1-KUNNR,  " Customer Number 1: Debitor
               KONTO             LIKE KNKK-KUNNR,
               SFAE1             LIKE RF035-SFAE1, " Aging buckets 0-15
               SFAE2             LIKE RF035-SFAE2, " Aging buckets 16-30
               SFAE3             LIKE RF035-SFAE3, " Aging buckets 30-60
               SFAE4             LIKE RF035-SFAE4, " Aging buckets 60-90
               SFAE5             LIKE RF035-SFAE5, " Aging buckets Over 90
               SFAEL             LIKE RF035-SFAEL, " Total Due of Items
               UML01             LIKE KNC1-UM01S,
               UML02             LIKE KNC1-UM01S,
               UML03             LIKE KNC1-UM01S,
               UML04             LIKE KNC1-UM01S,
               UML05             LIKE KNC1-UM01S,
               UML06             LIKE KNC1-UM01S,
               UML07             LIKE KNC1-UM01S,
               UML08             LIKE KNC1-UM01S,
               UML09             LIKE KNC1-UM01S,
               UML10             LIKE KNC1-UM01S,
               UML11             LIKE KNC1-UM01S,
               UML12             LIKE KNC1-UM01S,
               UMP1U             LIKE RF42B-UMP1U, " Sales from the Previous Year
               UMP2U             LIKE RF42B-UMP2U, " Sales from the current Year
               SALDO             LIKE RF42B-SALDO, " Balance
             END   OF SKNKK.
    DATA :  BEGIN OF ICUST1 OCCURS 0,
               KUNNR             TYPE KNA1-KUNNR,    "For Customer Filter.
            END   OF ICUST1.
    **Internal table to hold fiscal varriants
    DATA: BEGIN OF LT_PERIODS OCCURS 12,
             PERIOD LIKE BSID-MONAT,
             GJAHR  LIKE KNC1-GJAHR,
           END OF LT_PERIODS.
    **Constants
    constants :  BUKRS1 TYPE KNB1-BUKRS VALUE '1000',
                 BUKRS2 TYPE KNB1-BUKRS VALUE '1031',
                 Recs   Type i value '200',
                 B_count type i value '2'.
          INITIALIZATION
    INITIALIZATION.
      IF RASID IS INITIAL.
        SELECT * FROM TRAS.
          EXIT.
        ENDSELECT.
        IF SY-SUBRC = 0.
          RASID = TRAS-RASID.
        ENDIF.
      ENDIF.
    SELECTION-SCREEN
      parameters : p_path type rlgrap-filename default 'C:\Documents and Settings\C890971\Desktop\Credit_history.XLS'.
    Start of selection processing
    START-OF-SELECTION.
    **Get Customers for Co. Code 1000 & 1031.
      PERFORM GET_CUST.
    Get  / Compute Credit Information data for Company Codes 1000 & 1031.
      PERFORM GET_CREDIT_DATA.
    End of selection processing
    *END-OF-SELECTION.
    Listing Credit History Data
      PERFORM DOWNLOAD_CREDIT_DATA.
    S U B R O U T I N E S
    *&      Form  GET_CUST
          text
    -->  p1        text
    <--  p2        text
    FORM GET_CUST .
    Get US only Customers.
      Refresh icust.
      Select kunnr from kna1 appending table icust
                                   where Land1 = land.
    **Delete duplicate records
      Delete Adjacent duplicates from icust comparing kunnr.
      if icust[] is not initial.
       Limit the selection some more to Co. Code 1000 & 1031
      As join will cost overhead as compared.
      Select kunnr from knb1 into table icust1
                                  for all entries in icust
                                  where kunnr = icust-kunnr
                                  and   bukrs = bukrs1
                                  OR    bukrs = bukrs2.
    **Delete duplicate records
      Delete Adjacent duplicates from icust1 comparing kunnr.
       endif.
    **Free memory.
      Free icust.
    Credit Control Area
      select * from T001CM into table TCMTAB
                           where bukrs = bukrs1 OR
                                 bukrs = bukrs2.
    ENDFORM.                    " GET_CUST
    *&      Form  GET_CREDIT_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM GET_CREDIT_DATA .
      DATA : L_TEXT(60) TYPE C ,
             Ltext1(50) type C value 'Computing Credit-History Data For',
             Ltext2(10) type C value 'Customers',
             L_PCT type i value '10',
             L_recs type i,
             l_batch_recs type i,
             l_s_rec type i value 1,
             l_recs1(7) type N.
    ***Fetch data from KNKK table
      PERFORM GET_KNKK_DATA  .
    ***Computing Crredit Fields
    **Number of Customers For whom Deatils needed.
      Describe table I_CINFO lines l_recs.
      l_recs1 = l_recs.
      Concatenate Ltext1 l_recs1 Ltext2 into l_text separated by ' '.
      PERFORM GET_PGRESS_INDICATOR USING l_text l_pct.
    ***If records are more than 200000, should be processed  batch-wise
      If l_recs > recs.
        l_batch_recs = abs( l_recs / b_count ).
        Do b_count times.
          loop at i_cinfo INTO S_CINFO from l_S_REC to l_batch_recs.
    **Remember the row
            sytabix = sy-tabix.
    **Compute DSO
            PERFORM GET_DSO_FIELD .
    Compute rest credit history data.
            PERFORM COMPUTE_SFIELDS.
          endloop.
          l_S_REC = l_S_REC + l_batch_recs.
          l_batch_recs = l_batch_recs + l_batch_recs.
          IF l_batch_recs ge l_recs.
            l_batch_recs = l_recs.
          eNDIF.
    Commit up to here to release the DB locks.
          Commit work.
        enddo.
      else.
        loop at i_cinfo INTO S_CINFO.
    **Remember the row
          sytabix = sy-tabix.
    **Compute DSO
          PERFORM GET_DSO_FIELD .
    Compute rest credit history data.
          PERFORM COMPUTE_SFIELDS.
        endloop.
      Endif.
    ENDFORM.                    " GET_CREDIT_DATA
    *&      Form  GET_KNKK_DATA
          text
         -->P_ICUST_KUNNR  text
    FORM GET_KNKK_DATA .
      if icust1[] is not initial.
      SELECT   KUNNR KNKLI KKBER  CTLPC KLIMK
               SBGRP ERDAT DTREV REVDB
               from KNKK into corresponding fields of table I_Cinfo
               for all entries in icust1
               where kunnr = icust1-kunnr.
      Delete Adjacent duplicates from i_cinfo comparing kunnr.
      endif.
    **Free Memory for internal table icust1.
      Free icust1.
    ENDFORM.                    " GET_KNKK_DATA
    **&      Form  GET_DSO_FIELD
          text
    -->  p1        text
    <--  p2        text
    FORM GET_DSO_FIELD .
    ***Determine DSO Parameter
      PERFORM DSO_PARAMETER.
    ***Compute DSO
      CALL FUNCTION 'CUSTOMER_DSO_CALCULATION'
        EXPORTING
          I_KKBER       = s_cinfo-kkber
          I_KUNNR       = s_cinfo-kunnr
          I_ANZBUPER    = T000CM-DSOPP
          I_XCHILDS     = T000CM-DSOCH
          I_ACTBALANCE  = T000CM-DSOAB
        IMPORTING
          E_DSOIN       = RF02L-DSOIN
        EXCEPTIONS
          ERROR_MESSAGE = 1.
    ENDFORM.                    " GET_DSO_FIELD
    *&      Form  DSO_PARAMETER
          text
    -->  p1        text
    <--  p2        text
    FORM DSO_PARAMETER.
      IF T000CM-DSOPP IS INITIAL.
        SELECT SINGLE * FROM T000CM.
        IF SY-SUBRC     EQ 0.
          IF T000CM-DSOPP IS INITIAL.
            T000CM-DSOPP = '003'.
          ENDIF.
        ELSE.
          T000CM-DSOPP = '003'.
          T000CM-DSOCH = ' '.
          T000CM-DSOAB = 'X'.
        ENDIF.
      ENDIF.
    ENDFORM.                    " DSO_PARAMETER
    -->  p1        text
    <--  p2        text
    FORM PERIODE_ERMITTELN_EXC USING
                P03_BUDAT    LIKE SYST-DATUM
                P03_GJAHR    LIKE KNC1-GJAHR
                P03_MONAT    LIKE MONAT.
      CALL FUNCTION 'FI_PERIOD_DETERMINE'
           EXPORTING
                I_BUDAT = P03_BUDAT
                I_PERIV = T001-PERIV
              I_BUKRS = T001-BUKRS
                I_GJAHR = P03_GJAHR
                I_MONAT = P03_MONAT
           IMPORTING
                E_GJAHR = P03_GJAHR
                E_MONAT = P03_MONAT
           EXCEPTIONS
                ERROR_MESSAGE = 1.
    ENDFORM.                    "PERIODE_ERMITTELN_EXC
    *&      Form  COMPUTE_SFIELDS
          text
    -->  p1        text
    <--  p2        text
    FORM COMPUTE_SFIELDS .
    **Compute Balance
      PERFORM GET_SFIELDS .
      S_CINFO-DSOIN = RF02L-DSOIN.
      S_CINFO-SALDO = RF035-SALDO.
      S_CINFO-H06SA = RF035-H06SA.
      S_CINFO-H06JA = RF035-H06JA.
      S_CINFO-H06MO = RF035-H06MO.
      S_CINFO-H12SA = RF035-H12SA.
      S_CINFO-H12JA = RF035-H12JA.
      S_CINFO-H12MO = RF035-H12MO.
      S_CINFO-UMP2U = RF42B-UMP2U.
      S_CINFO-UMP1U = RF42B-UMP1U.
      S_CINFO-SFAEL = RF035-SFAEL.
      S_CINFO-SFAE1 = RF035-SFAE1.
      S_CINFO-SFAE2 = RF035-SFAE2.
      S_CINFO-SFAE3 = RF035-SFAE3.
      S_CINFO-SFAE4 = RF035-SFAE4.
      S_CINFO-SFAE5 = RF035-SFAE5.
    modify..
      MODIFY I_CINFO FROM S_CINFO INDEX sytabix.
      CLEAR: S_CINFO,RF035,RF02L, RF42B.
    ENDFORM.                    " COMPUTE_SFIELDS
          text
         -->P_C_INFO_KUNNR  text
    FORM GET_CUST_BAL_INFO.
      LOOP AT TCMTAB.
        CALL FUNCTION 'FI_COMPANY_CODE_DATA'
          EXPORTING
            I_BUKRS       = TCMTAB-BUKRS
          IMPORTING
            E_T001        = T001
          EXCEPTIONS
            ERROR_MESSAGE = 1.
        IF SY-SUBRC = 0.
          MOVE-CORRESPONDING T001 TO BUKTAB.
          BUKTAB-KKBER = TCMTAB-KKBER.
          COLLECT BUKTAB.
        ENDIF.
      ENDLOOP.
      LOOP AT BUKTAB WHERE PERIV NE SPACE.
        GJATAB-PERIV = BUKTAB-PERIV.
        COLLECT GJATAB.
      ENDLOOP.
      CLEAR: MONAT.
      LOOP AT GJATAB.
        T001-PERIV = GJATAB-PERIV.
        CLEAR: GJAHR, MONAT.
        PERFORM PERIODE_ERMITTELN_EXC USING SY-DATLO GJAHR MONAT.
        CHECK SY-SUBRC = 0.
        GJATAB-GJAHR = GJAHR.
        GJATAB-MONAT = MONAT.
        SELECT SINGLE * FROM T009 WHERE PERIV = GJATAB-PERIV.
        IF SY-SUBRC = 0.
          GJATAB-ANZBP = T009-ANZBP.
        ENDIF.
        MODIFY GJATAB.
      ENDLOOP.
      LOOP AT BUKTAB.
        CHECK NOT ( BUKTAB-PERIV IS INITIAL ).
        READ TABLE GJATAB WITH KEY BUKTAB-PERIV.
        CHECK SY-SUBRC = 0
          AND NOT ( GJATAB-GJAHR IS INITIAL ).
        CALL FUNCTION 'CUSTOMER_BALANCE'
          EXPORTING
            KUNNR      = S_cinfo-kunnr
            BUKRS      = BUKTAB-BUKRS
            GJAHR      = GJATAB-GJAHR
            MONAT      = GJATAB-MONAT
            PERIV      = GJATAB-PERIV
            ANZBP      = GJATAB-ANZBP
            XH6MON     = 'X'
            XH12MON    = 'X'
          IMPORTING
            UMP2U      = RF42B-UMP2U
            VMP2U      = RF42B-UMP1U
            SALDO      = RF035-SALDO
            UML01      = SALDO-UML01
            UML02      = SALDO-UML02
            UML03      = SALDO-UML03
            UML04      = SALDO-UML04
            UML05      = SALDO-UML05
            UML06      = SALDO-UML06
            UML07      = SALDO-UML07
            UML08      = SALDO-UML08
            UML09      = SALDO-UML09
            UML10      = SALDO-UML10
            UML11      = SALDO-UML11
            UML12      = SALDO-UML12
          EXCEPTIONS
            NO_BALANCE = 4.
        IF SY-SUBRC = 0.
          SKNKK-UMP1U = SKNKK-UMP1U + RF42B-UMP1U.
          SKNKK-UMP2U = SKNKK-UMP2U + RF42B-UMP2U.
          SKNKK-SALDO = SKNKK-SALDO + RF035-SALDO.
          SKNKK-UML01 = SKNKK-UML01 + SALDO-UML01.
          SKNKK-UML02 = SKNKK-UML02 + SALDO-UML02.
          SKNKK-UML03 = SKNKK-UML03 + SALDO-UML03.
          SKNKK-UML04 = SKNKK-UML04 + SALDO-UML04.
          SKNKK-UML05 = SKNKK-UML05 + SALDO-UML05.
          SKNKK-UML06 = SKNKK-UML06 + SALDO-UML06.
          SKNKK-UML07 = SKNKK-UML07 + SALDO-UML07.
          SKNKK-UML08 = SKNKK-UML08 + SALDO-UML08.
          SKNKK-UML09 = SKNKK-UML09 + SALDO-UML09.
          SKNKK-UML10 = SKNKK-UML10 + SALDO-UML10.
          SKNKK-UML11 = SKNKK-UML11 + SALDO-UML11.
          SKNKK-UML12 = SKNKK-UML12 + SALDO-UML12.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    "
    *&      Form  GET_SFIELDS
          text
    -->  p1        text
    <--  p2        text
    FORM GET_SFIELDS .
      sknkk-kunnr = S_CINFO-KUNNR.
    **Clear target to store computed values
      CLEAR: RF035.
    **Compute Balance fields
      PERFORM GET_CUST_BAL_INFO.
      REFRESH: SALTAB.
      SALTAB-LNUMM = '01'. SALTAB-SALDO = SKNKK-UML01. APPEND SALTAB.
      SALTAB-LNUMM = '02'. SALTAB-SALDO = SKNKK-UML02. APPEND SALTAB.
      SALTAB-LNUMM = '03'. SALTAB-SALDO = SKNKK-UML03. APPEND SALTAB.
      SALTAB-LNUMM = '04'. SALTAB-SALDO = SKNKK-UML04. APPEND SALTAB.
      SALTAB-LNUMM = '05'. SALTAB-SALDO = SKNKK-UML05. APPEND SALTAB.
      SALTAB-LNUMM = '06'. SALTAB-SALDO = SKNKK-UML06. APPEND SALTAB.
      SALTAB-LNUMM = '07'. SALTAB-SALDO = SKNKK-UML07. APPEND SALTAB.
      SALTAB-LNUMM = '08'. SALTAB-SALDO = SKNKK-UML08. APPEND SALTAB.
      SALTAB-LNUMM = '09'. SALTAB-SALDO = SKNKK-UML09. APPEND SALTAB.
      SALTAB-LNUMM = '10'. SALTAB-SALDO = SKNKK-UML10. APPEND SALTAB.
      SALTAB-LNUMM = '11'. SALTAB-SALDO = SKNKK-UML11. APPEND SALTAB.
      SALTAB-LNUMM = '12'. SALTAB-SALDO = SKNKK-UML12. APPEND SALTAB.
      READ TABLE SALTAB INDEX 1.
      RF035-H06SA = SALTAB-SALDO.
      RF035-H06MO = SALTAB-LNUMM.
      RF035-H12SA = SALTAB-SALDO.
      RF035-H12MO = SALTAB-LNUMM.
    ------ SALTAB ---------------------------------------------
      LOOP AT SALTAB.
        IF  SALTAB-SALDO > RF035-H06SA
        AND SY-TABIX     < 7.
          RF035-H06SA = SALTAB-SALDO.
          RF035-H06MO = SALTAB-LNUMM.
        ENDIF.
        IF  SALTAB-SALDO > RF035-H12SA
        AND SY-TABIX     < 13.
          RF035-H12SA = SALTAB-SALDO.
          RF035-H12MO = SALTAB-LNUMM.
        ENDIF.
      ENDLOOP.
    ------ Period--------------------
      REFRESH LT_PERIODS.
      CLEAR LD_COUNTER.
      READ TABLE BUKTAB INDEX 1.
      IF SY-SUBRC = 0.
        READ TABLE GJATAB WITH KEY BUKTAB-PERIV.
        DO GJATAB-MONAT TIMES
           VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
                                                     RANGE LD_PERIODS.
          LT_PERIODS-GJAHR  = GJATAB-GJAHR.
          LT_PERIODS-PERIOD = LD_PERIOD.
          LD_COUNTER = LD_COUNTER + 1.
          APPEND LT_PERIODS.
        ENDDO.
        IF LD_COUNTER LT 12.
          LD_GJAHR = GJATAB-GJAHR - 1.
          CLEAR T009Y.
          SELECT SINGLE * FROM T009Y WHERE PERIV = GJATAB-PERIV
                                       AND GJAHR = LD_GJAHR.
          DO GJATAB-ANZBP TIMES
             VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
                                                       RANGE LD_PERIODS.
            IF T009Y-ANZBP > 0.
              CHECK SY-INDEX <= T009Y-ANZBP.
            ENDIF.
            LD_COUNTER = LD_COUNTER + 1.
            LT_PERIODS-GJAHR  = LD_GJAHR.
            LT_PERIODS-PERIOD = LD_PERIOD.
            APPEND LT_PERIODS.
          ENDDO.
        ENDIF.
        IF LD_COUNTER LT 12.
          LD_GJAHR = LD_GJAHR - 1.
          DO GJATAB-ANZBP TIMES
             VARYING LD_PERIOD FROM LD_PERIODS(2) NEXT LD_PERIODS+2(2)
                                                       RANGE LD_PERIODS.
            LD_COUNTER = LD_COUNTER + 1.
            LT_PERIODS-GJAHR  = LD_GJAHR.
            LT_PERIODS-PERIOD = LD_PERIOD.
            APPEND LT_PERIODS.
          ENDDO.
        ENDIF.
        SORT LT_PERIODS BY GJAHR ASCENDING PERIOD ASCENDING.
        LD_COUNTER = LD_COUNTER - 12.
        DO LD_COUNTER TIMES.
          DELETE LT_PERIODS INDEX 1.
        ENDDO.
        SORT LT_PERIODS BY GJAHR DESCENDING PERIOD DESCENDING.
        READ TABLE LT_PERIODS INDEX RF035-H06MO.
        RF035-H06MO = LT_PERIODS-PERIOD.
        RF035-H06JA = LT_PERIODS-GJAHR.
        READ TABLE LT_PERIODS INDEX RF035-H12MO.
        RF035-H12MO = LT_PERIODS-PERIOD.
        RF035-H12JA = LT_PERIODS-GJAHR.
      ENDIF.
    **Compute Due Dates fields
      PERFORM GET_AGING_BUCKETS .
      RF035-SFAE1 = SKNKK-SFAE1.
      RF035-SFAE2 = SKNKK-SFAE2.
      RF035-SFAE3 = SKNKK-SFAE3.
      RF035-SFAE4 = SKNKK-SFAE4 .
      RF035-SFAE5 = SKNKK-SFAE5.
    ENDLOOP.
    ENDFORM.                    " GET_BALANCE_SFIELDS
    *&      Form  GET_AGING_BUCKETS
          text
    -->  p1        text
    <--  p2        text
    FORM GET_AGING_BUCKETS .
      DATA: BEGIN OF LT_BUKRS OCCURS 0,
              BUKRS LIKE T001-BUKRS,
            END OF LT_BUKRS.
      DATA: BEGIN OF LT_BUKTAB OCCURS 0,
              BUKRS LIKE T001-BUKRS,
              WAERS LIKE T001-WAERS,
              KKBER LIKE T014-KKBER,
            END OF LT_BUKTAB.
      DATA: LD_LINES LIKE SY-TABIX.
    *...performance optimization: for more than one company codes check....*
    *...if balances exist and avoid selection of open items, if they don't.*
    *...exist..............................................................*
      REFRESH LT_BUKRS.
      REFRESH LT_BUKTAB.
      DESCRIBE TABLE BUKTAB LINES LD_LINES.
      IF LD_LINES GT 1.
        SELECT DISTINCT BUKRS APPENDING CORRESPONDING FIELDS
                                        OF TABLE LT_BUKRS
                              FROM KNC1 FOR ALL ENTRIES IN BUKTAB
                        WHERE BUKRS = BUKTAB-BUKRS AND
                              KUNNR = Sknkk-KUNNR.
        SELECT DISTINCT BUKRS APPENDING CORRESPONDING FIELDS
                                        OF TABLE LT_BUKRS
                              FROM KNC3 FOR ALL ENTRIES IN BUKTAB
                        WHERE BUKRS = BUKTAB-BUKRS AND
                              KUNNR = Sknkk-KUNNR.
        SORT LT_BUKRS.
        DELETE ADJACENT DUPLICATES FROM LT_BUKRS.
        LOOP AT LT_BUKRS.
          LOOP AT BUKTAB WHERE BUKRS = LT_BUKRS-BUKRS.
            MOVE-CORRESPONDING BUKTAB TO LT_BUKTAB.
            APPEND LT_BUKTAB.
          ENDLOOP.
        ENDLOOP.
      ELSE.
        READ TABLE BUKTAB INDEX 1.
        MOVE-CORRESPONDING BUKTAB TO LT_BUKTAB.
        APPEND LT_BUKTAB.
      ENDIF.
    *...process company codes for customer given by interface..........*
      LOOP AT LT_BUKTAB WHERE KKBER = s_cinfo-KKBER.
        CALL FUNCTION  'CUSTOMER_DUE_DATE_ANALYSIS'
             EXPORTING  BUKRS   = LT_BUKTAB-BUKRS
                       KKBER   = ' '
                        KKBER   = s_cinfo-KKBER
                        KUNNR   = Sknkk-KUNNR
                        RASID   = RASID
             IMPORTING  SFAE1   = RF035-SFAE1
                        SFAE2   = RF035-SFAE2
                        SFAE3   = RF035-SFAE3
                        SFAE4   = RF035-SFAE4
                        SFAE5   = RF035-SFAE5
                        SFAEL   = RF035-SFAEL
             EXCEPTIONS NO_OPEN_ITEMS = 4.
        IF SY-SUBRC = 0.
    *--  RF035 -
          SKNKK-SFAE1 = SKNKK-SFAE1 + RF035-SFAE1.
          SKNKK-SFAE2 = SKNKK-SFAE2 + RF035-SFAE2.
          SKNKK-SFAE3 = SKNKK-SFAE3 + RF035-SFAE3.
          SKNKK-SFAE4 = SKNKK-SFAE4 + RF035-SFAE4.
          SKNKK-SFAE5 = SKNKK-SFAE5 + RF035-SFAE5.
          SKNKK-SFAE5 = SKNKK-SFAE5 + RF035-SFAE5.
          SKNKK-SFAEL = SKNKK-SFAEL + RF035-SFAEL.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " GET_AGING_BUCKETS
    *&      Form  header
    This Subroutine gets data for displaying title                     *
    There are no interface parameters to be passed to this subroutine. *
    FORM header .
      wa_final-string = text-000.  APPEND wa_final TO i_final.
      wa_final-string = text-001.  APPEND wa_final TO i_final.
      wa_final-string = text-002.  APPEND wa_final TO i_final.
      wa_final-string = text-003.  APPEND wa_final TO i_final.
      wa_final-string = text-004.  APPEND wa_final TO i_final.
      wa_final-string = text-005.  APPEND wa_final TO i_final.
      wa_final-string = text-006.  APPEND wa_final TO i_final.
      wa_final-string = text-007.  APPEND wa_final TO i_final.
      wa_final-string = text-008.  APPEND wa_final TO i_final.
      wa_final-string = text-009.  APPEND wa_final TO i_final.
      wa_final-string = text-010.  APPEND wa_final TO i_final.
      wa_final-string = text-011.  APPEND wa_final TO i_final.
      wa_final-string = text-012.  APPEND wa_final TO i_final.
      wa_final-string = text-013.  APPEND wa_final TO i_final.
      wa_final-string = text-014.  APPEND wa_final TO i_final.
      wa_final-string = text-015.  APPEND wa_final TO i_final.
      wa_final-string = text-016.  APPEND wa_final TO i_final.
      wa_final-string = text-017.  APPEND wa_final TO i_final.
      wa_final-string = text-018.  APPEND wa_final TO i_final.
      wa_final-string = text-019.  APPEND wa_final TO i_final.
      wa_final-string = text-020.  APPEND wa_final TO i_final.
      wa_final-string = text-021.  APPEND wa_final TO i_final.
      wa_final-string = text-022.  APPEND wa_final TO i_final.
      wa_final-string = text-023.  APPEND wa_final TO i_final.
      wa_final-string = text-024.  APPEND wa_final TO i_final.
    ENDFORM.                               " header
    *&      Form  DOWNLOADCREDITDATA
          text
         -->P_P_PATH  text
    FORM DOWNLOADCREDITDATA  USING P_PATH.
      DATA:
          lw_file2 TYPE string .           " File Path
      lw_file2 = p_PATH.
      CALL FUNCTION 'GUI_DOWNLOAD'
         EXPORTING
      BIN_FILESIZE                    = BIN_FILESIZE
           filename                        = lw_file2
           filetype                        = 'DBF'
      APPEND                          = ' '
       write_field_separator           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = 'X'
      WRITE_LF                        = 'X'
       COL_SELECT                      = 'X'
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = 'X'
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = '0'
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
    IMPORTING
      FILELENGTH                      = FILELENGTH
         TABLES
           data_tab                        = I_CINFO
           fieldnames                      = i_final
         EXCEPTIONS
           file_write_error                = 1
           no_batch                        = 2
           gui_refuse_filetransfer         = 3
           invalid_type                    = 4
           no_authority                    = 5
           unknown_error                   = 6
           header_not_allowed              = 7
           separator_not_allowed           = 8
           filesize_not_allowed            = 9
           header_too_long                 = 10
           dp_error_create                 = 11
           dp_error_send                   = 12
           dp_error_write                  = 13
           unknown_dp_error                = 14
           access_denied                   = 15
           dp_out_of_memory                = 16
           disk_full                       = 17
           dp_timeout                      = 18
           file_not_found                  = 19
           dataprovider_exception          = 20
           control_flush_error             = 21
      IF sy-subrc <> 0.
    Messege
      ENDIF.                               " IF sy-subrc EQ 0
    ENDFORM.                    " DOWNLOADCREDITDATA
    *&      Form  DOWNLOAD_CREDIT_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM DOWNLOAD_CREDIT_DATA .
      PERFORM HEADER.
      PERFORM DOWNLOADCREDITDATA USING P_PATH.
    ENDFORM.                    " DOWNLOAD_CREDIT_DATA
    *&      Form  GET_PGRESS_INDICATOR
          text
         -->P_L_TEXT  text
         -->P_L_PCT  text
    FORM GET_PGRESS_INDICATOR  USING    L_TEXT
                                        L_PCT.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
        EXPORTING
          PERCENTAGE = l_pct
          TEXT       = l_TEXT.
    ENDFORM.                    " GET_PGRESS_INDICATOR

    If you are just Downloading to a Flat file then why dont you have logic in place for the program to dump the data read into  the file to that point depending on any criteria like accounts or customer then clear the internal table and run it in the back ground.
    try to use cursor to read the records from the table which will make it a bit more efficient than plain select stement.

  • How to deal with deadlock on wwv_flow_data table when http server times out

    There are some threads about a deadlock on the wwv_flow_data table. None of them contain a real explanation for this behaviour. In my case I will try to explain what I think is happening. Maybe it helps somebody who is hitting the same matter.
    In my case with APEX 3.2.1 I am navigating from one page to another. Doing this APEX will lock the table wwv_flow_data. As soon as the other page is shown the lock will be released. But now this other page contains a bad performing query (standaard report region). After 5 minutes the http server (modplsql) will time out and present the message "No response from the application server" on the screen. In the meanwhile the query is still running on the database server and the lock stays on the wwv_flow_data table.
    Normal user behaviour will be that the user will use the back button to return to the previous page and tries it again to navigate to the other page or
    the user will try to refresh the page with the bad performing query.
    And voila now you will have a deadlock on the wwv_flow_data table since a second session is trying to do the same thing while the first hasn't finished yet.
    How to deal with it?
    First of all. Have a good look at the bad performing query. Maybe you can improve it that it will succeed before the http server will timeout.
    In my case the 11gr1 optimizer couldn't handle a subquery factoring clause in the best way. After changing it back to a classical inline query the problem was solved.
    Secondly you could increase the timeout parameter of the http server. Although this not the best way.
    Maybe it would better if APEX in a next version would release the lock on the table wwv_flow_date earlier or do a rollback just before the moment that the http server is timing out.
    regards,
    Mathieu Meeuwissen

    Hello Shmoove,
    I saw your reply here and you probably understand the problems the HTTP 100 response may cause.
    I am trying to send image that was taken by getSnapshot. The problem is that the server respond with this HTTP 100 message.
    I suspect that the reason that my server doesn't recognize the file that I'm sending from J2me is that the "server to client" response to the 100 message comes after the second message of (see what the TCPIP viewer shows down here):
    POST /up01/up02.aspx HTTP/1.1
    Content-Type: multipart/form-data; boundary=xxxxyyyyzzz
    Connection: Keep-Alive
    Content-length: 6294
    User-Agent: UNTRUSTED/1.0
    Host: szekely.dnsalias.com:80
    Transfer-Encoding: chunked
    400: Client to Server (126 bytes)
    78
    --xxxxyyyyzzz
    Content-Disposition: form-data; name="pic"; filename="david.jpg"
    Content-Type: application/octet-stream
    400: Connected to Server
    400: Server to Client (112 bytes)
    HTTP/1.1 100 Continue
    Server: Microsoft-IIS/5.1
    Date: Wed, 23 Mar 2005 00:47:02 GMT
    X-Powered-By: ASP.NET
    Any help will be appreciated,
    David

  • Program times out while looping at internal table with huge records - Needs fine tuning suggestions

    Hi,
    I am trying to execute a report. It times out while looping at vbap internal table. This internal table has 140000  records and does the validation within this loop and geenrates data for the output. Due to this huge volume, the program times out when executed foreground.
    There are no nested loops, so I cannot apply 'Parallel Cursor' here.
    Is there any way I can fine tune the program so that it doesn't timeout? Is it possible to apply 'Parallel Processing' . If yes, how?
    Thanks,
    Pavan

    Hi Pavan ,
                  ->sort your internal table by all primary key for vbap.
                  ->Read a Record from the table (use your condition here)
                  ->if record satisfys your where condition ,get that record index .
                  ->loop the table from the index (without condition) .
                  its like parallel cursor only but for single loop .;-)
                  ->use field symbols ,wherever possible .
               if still dump is coming ,contact your basis team .
    regards,
    Krishna.

  • FTP adapter time out connection

    Hello,
    I'm trying to send a file with a receiver ftp comunication channel and I obtain the following log in the runtime workbench monitor:
    Time Stamp Status Description
    2008-05-08 18:41:51 Success Message successfully received by messaging system. Profile: XI URL: http://gestsapxid:50000/MessagingSystem/receive/AFW/XI Credential (User): XIISUSER
    2008-05-08 18:41:51 Success Using connection AFW. Trying to put the message into the receive queue.
    2008-05-08 18:41:51 Success Message successfully put into the queue.
    2008-05-08 18:41:51 Success The message was successfully retrieved from the receive queue.
    2008-05-08 18:41:51 Success The message status set to DLNG.
    2008-05-08 18:41:51 Success Delivering to channel: FILE_OCHOA_RECEIVER_FTP
    2008-05-08 18:41:51 Success File adapter receiver: processing started; QoS required: ExactlyOnce
    2008-05-08 18:41:51 Success File adapter receiver channel FILE_OCHOA_RECEIVER_FTP: start processing: party " ", service "ESMAR_OCHOA"
    2008-05-08 18:41:51 Success Connect to FTP server "NNN.NNN.NNN.NNN", directory "/ochoaesmar"
    2008-05-08 18:41:51 Success Write to FTP server "NNN.NNN.NNN.NNN", directory "/ochoaesmar",   file "ochoa20080508_0000000006166839"
    2008-05-08 18:41:51 Success Transfer: "TXT" mode, size 412 bytes, character encoding UTF-8
    2008-05-08 18:42:12 Error Attempt to process file failed with Connection timed out: connect
    2008-05-08 18:42:12 Error Delivery of the message to the application using connection AFW failed, due to: Connection timed out: connect.
    2008-05-08 18:42:12 Error Exception caught by adapter framework: Connection timed out: connect
    2008-05-08 18:42:12 Success The asynchronous message was successfully scheduled to be delivered at Thu May 08 18:47:12 CEST 2008.
    2008-05-08 18:42:12 Success The message status set to WAIT.
    I have tested to put a file (with the same FTP parameters) from the promt of the xi server operating system and all works fine. can someone help me to find why the time out connection happens?.
    Thank you very much
    Alberto.

    I have tested in the xi server: run->cmd->ping nnn.nnn.nnn.nnn and I don't reach the ftp server but if I test in the xi server: run->cmd->ftp nnn.nnn.nnn.nnn and introduce the user and password then I log in without problem and I can put the file in the remote directory.
    If you see in the log above:
    2008-05-08 18:41:51 Success Connect to FTP server "NNN.NNN.NNN.NNN", directory "/ochoaesmar"
    2008-05-08 18:41:51 Success Write to FTP server "NNN.NNN.NNN.NNN", directory "/ochoaesmar", file "ochoa20080508_0000000006166839"
    2008-05-08 18:41:51 Success Transfer: "TXT" mode, size 412 bytes, character encoding UTF-8
    2008-05-08 18:42:12 Error Attempt to process file failed with Connection timed out: connect
    the first 3 steps are ok. If the ftp was down or if credentials was wrong other error will be generated.
    Thank you very much.
    Alberto

  • SOAP ADAPTER TIME OUT ISSUE

    We are getting the data from sql server into PI through Soap adapter.
    Till day before yesterday everything is running fine .But now it has started giving us the below error.
    there were no changes done in the interface.
    I am not able to see any error in the runtime workbench ,communication channel monitoring, message monitoring.
    This below error is giving in sql server.
    Can any PI expert explain or provide me a solution to solve this issue.
    Msg 6522, Level 16, State 1, Procedure sp_PI_WS_Backflush_Production_V2, Line 0
    A .NET Framework error occurred during execution of user-defined routine or aggregate "sp_PI_WS_Backflush_Production_V2":
    System.Net.WebException: The operation has timed out
    System.Net.WebException:
       at System.Net.HttpWebRequest.GetRequestStream()
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at PI_WS_Backflush_Production_V2.Backflush_OB_Sync_SIService.Backflush_OB_Sync_SI(BackflushRequest_DT BackflushRequest_MT)
       at PI_WS_Backflush_Production_V2.StoredProcedures.Backflush_Production_V2(String PalletNumber, String StockKeepingUnit, String ProductionPlant, String BatchNumber, DateTime ProductionDate, String Quantity, String UnitOfMeasure, String Destination, String& uState, String SAPUser, String SAPPassword)

    Time out issue could be due to the long running process in your SQL server. please check the SQL server for its performance and also check the number of http worker threads on the SQL server side where the SOAP adapter makes the call and get the request back.

  • Time out error while fetching records from table BKPF

    Hi,
    I am fetching records from table BKPF using BUKRS & AWKEY in where clause. Query is as follows:
        SELECT BELNR  XBLNR  AWKEY
        FROM   BKPF
        INTO TABLE L_I_BKPF_TEMP
        PACKAGE SIZE 500
        WHERE BUKRS LIKE L_C_EG
        AND   AWKEY IN L_R_AWKEY .
          APPEND LINES OF L_I_BKPF_TEMP TO I_BKPF .
        ENDSELECT .
    Program is giving time out error. There are 25628 records in range L_R_AWKEY , i m fetching 500 records at a time using  PACKAGE SIZE. But the execution of prog stops on this query.
    Please suggest something to overcome this problem.

    Hi
    Rui is right,
    if you need to get the data by  operation parameters u have to use the fields AWTYP and AWKEY.
    In this selection u can omit the company code.
    SELECT BELNR XBLNR AWKEY FROM BKPF
           INTO TABLE L_I_BKPF_TEMP
                 PACKAGE SIZE 500
                      WHERE   AWTYP = <......> "<------------
                             AND AWKEY IN L_R_AWKEY .
           APPEND LINES OF L_I_BKPF_TEMP TO I_BKPF .
    ENDSELECT .
    Max

  • Time out parameter to avoid Table locking

    Hi,
    I am looking at any configurable parameter if any for setting the time out parameter to avoid Table locking.Now what's happening is : If i run select ...for update from one session,oracle is applying a lock till i do a commit.And if i run the same query from another session,it takes unspecified time without returning any error.Using the query with NOWAIT options does not serve my purpose.
    Any help in this regard is appreciated
    Thanks
    Sam

    Are you looking for a way to time out the original query, or are you looking for a way for the second query to wait for some time and then abort if it is unable to lock the row(s)?
    Justin
    Distributed Database Consulting, Inc.
    www.ddbcinc.com

  • Time out while reading single record from CRMD_ORDERADM_H table on OBJECTID

    Hi,
    This is the problem i am facing in CRMD_ORDERADM_H.
    if i search for a single record in CRMD_ORDERADM_H Table using SE11 on OBJECT_ID field, it is giving me Time out error.
    CRMD_ORDERADM_H db size would be > 1 Billion records.
    It is having a Secondary Standard index on OBJECT_ID.
    If i search for single record with OBJECT_ID  and PROCESS_TYPE i am able to get the result within seconds.
    But if i take some range in OBJECT_ID and single value in PROCESS_TYPE then i am getting Time out erro.
    we have index (custom) on OBJECT_ID and PROCESS_TYPE combination.
    What would be the cause?
    Thanks in Advance,
    -Kishore

    Hello,
    there is a special table for reading records from orders: CRMD_ORDER_INDEX.
    Regards, R

  • Time Out Dump while extracting data from table CKIS

    Dear Friends,
    I am getting TIme Out dump for the below code, while extracting data from table CKIS.
    Table CKIS doesn't have any Indexes. Please guide me to resolve this.
    Regards,
    Viji.
    form get_keko_ckis.
      SELECT kalnr kalka kadky tvers bwvar matnr werks kokrs
             FROM keko
             INTO TABLE i_keko1
             FOR ALL ENTRIES IN i_final_modify
                 WHERE matnr = i_final_modify-main_f
                   AND werks = p_werks
                   AND kokrs = p_kokrs
                   AND kadat = p_kadat
                   AND bidat = p_bidat
                   AND bwdat = p_bwdat.
      IF sy-subrc = 0.
        SORT i_keko1 BY kalnr kalka kadky tvers bwvar.
        SELECT kalnr kalka kadky tvers bwvar posnr typps kstar
               matnr menge gpreis
               FROM ckis
               INTO TABLE i_ckis_temp
               FOR ALL ENTRIES IN i_keko1
               WHERE kalnr = i_keko1-kalnr
                 AND kalka = i_keko1-kalka
                 AND kadky = i_keko1-kadky
                 AND tvers = i_keko1-tvers
                 AND bwvar = i_keko1-bwvar.
            IF sy-subrc = 0.
              SORT i_ckis_temp BY kalnr kalka kadky tvers bwvar.
              LOOP AT i_ckis_temp INTO wa_ckis_temp.
                wa_ckis-kalnr  = wa_ckis_temp-kalnr.
                wa_ckis-kadky  = wa_ckis_temp-kadky.
                wa_ckis-posnr  = wa_ckis_temp-posnr.
                wa_ckis-typps  = wa_ckis_temp-typps.
                wa_ckis-kstar  = wa_ckis_temp-kstar.
                wa_ckis-matnr1 = wa_ckis_temp-matnr1.
                wa_ckis-menge  = wa_ckis_temp-menge.
                wa_ckis-gpreis = wa_ckis_temp-gpreis.
              CLEAR wa_keko1.
              READ TABLE i_keko1 INTO wa_keko1
                                 WITH KEY kalnr = wa_ckis_temp-kalnr
                                          kalka = wa_ckis_temp-kalka
                                          kadky = wa_ckis_temp-kadky
                                          tvers = wa_ckis_temp-tvers
                                          bwvar = wa_ckis_temp-bwvar
                                          BINARY SEARCH.
                 IF sy-subrc = 0.
                    wa_ckis-matnr = wa_keko1-matnr.
                    wa_ckis-werks = wa_keko1-werks.
                 ENDIF.
                 APPEND wa_ckis TO i_ckis.
                 CLEAR: wa_ckis_temp, wa_ckis.
              ENDLOOP.
            ENDIF.
        REFRESH: i_keko1, i_ckis_temp.
      ENDIF.
    endform.                    " get_keko_ckis

    Hi Try minimising the conditions in where clause
         SELECT fields..... FROM CKIS
         WHERE KALNR = KEKO-KALNR AND
                      KADKY = KEKO-KADKY AND
                      TVERS = KEKO-TVERS AND
                      TYPPS = 'M'.
        after this, deleting unwanted records from internal table as per pending conditions...
    Regds,
    Anil

Maybe you are looking for

  • Transfer customer fields from EBP to R/3

    Hey, we have a SRM-system with a R/3 backend and added some customer fields to the accounting or purchase orders. The question now is how to transfer the cuf-data from SRM to R/3. There are the function-modules like B470_PO_CREATE of package BBP_BD w

  • Image sent with photo app does not show on mail sent box. How do I find it?

    My daughter sent a photo from the photo album on her itouch. I search it in her mail sent box, but I cannot find it. Any idea how to find it? Thanks

  • Automatic Row Processing (DML) Update problem

    Hi All, I am using Oracle 10.2.0.3 on Windows Server 2003 with "Application Express 3.1.0.00.32". I have two schemas in the database, A and B B has all the tables which holds the production data A has all the synonymns for all of B's objects and plus

  • Color Management: Results differ between Lightroom and ColorSync

    Hi. I'm on a Mac and using LightRoom 3 with a Canon PIXMA MG5250 printer. I have read elsewhere on the web that choosing a profile from within Lightroom's Print interface is essentially the same as selecting "Color Sync" under "Color Matching" in the

  • XML Publisher and namespace

    I´m using XML Publisher 5.5 with Template Builder. I have created an RTF document that works perfect with XML Publisher. I now want work more complicated with my template using XSL. I have through Template Builder created an XSL-FO style sheet. I ope