Display Contract Times Out
Hi,
We are currently upgrading to SRM 5.0, SP6.
When I log in as a purchaser, and click on display contract under sourcing it takes some time to load and times out thereafter.
I am able to access the GUI frontend using transaction BBP_CTR_MAIN, it also takes some time to run but does eventually display the contracts screen.
Any help would be appreciated,
Many Thanks,
Doreen
Hi
<b>Please go through the follwoing SAP OSS Notes, which will definitely help -></b>
Note 1067227 - Timeout by executing standard include LBBP_PDLTXF04
Note 1046683 - SRM 5.0 SP stack 09(06/2007) SAPKIBKT09 release/info note
Note 980330 - BBP_CTR_MAIN: Performance during first call of transaction
Note 1017684 - Performance problem when accessing contract hierarchy
Note 819793 - SRM40-SUS: Fixed performance in forecast dely sched list
Note 830054 - Enable original contracts to be output repeatedly
Note 773276 - Correction report for BBPD_PD_INDEX
Do let me know.
Regards
- Atul
Similar Messages
-
Hi
Thanks in advance for your help
I am trying to upload a csv file (about 5000 rows and 30 columns ) into a database table by using the Upload tool. I can see the data in APEX with the mapping but when when I hit "load data", it takes like 2 minutes and displays a time out error message? How can I fix that?
ThanksHi Fiston,
What oracle DB version are you using?
Which browser are you using? -
Dump time out message in the portal
Hi experts ,
In my portal , the web dynpro component "FPM_OIF_COMPONENT" is being used.
when user logs in and then sit idle for 30 min. then after he press "save" button,
he gets the dump message like
"the URL http://...WebDynpro /sap/hap_main_document was not called due to an error
User session (HTTP/SMTP /..) closed after time out."
"the termination type was "ERROR_MESAGE_STATE"
but the Service "WebDynpro /sap/hap_main_document" remains active.
Timeout is set for 60 mins but it gets timeout after 30 mins.
I have to show a normal alert message instead of the dump mesage. how can i achieve that..
please help.Hi Tobias ,
yes , !! time out for web dynpro is also set to 60 min .
But as per the requirment , i have to show a page / pop up msg displaying "portal time out " instead of that dump mesage.
in the meanwhile i have come across the t-code SICF , on executing it for services. then in the path
"sap -> bc -> webdynpro -> namspace SAP - > HAP_MAIN_DUCUMENT " i have found the setting to redirecting the user to a URL page when error occurs.for every type of error there is a option of "redirect to a URL".
I have not tested it.But i think it might work.i am still working on it.
your valuable feedback is welcome..
thanks
Nishchay -
Hi All,
I have set up 2 Windows Server 2012 domain controllers (DCA & DCB). DCA points at DCB as the primary DNS, and itself as the alternate DNS. DCB points at DCA as the primary DNS, and itself as the alternate DNS.
When both DCs are running and if I do an nslookup on DCA: The result is as follows:
Default Server: dcb.testdomain.com
Address: 30.30.30.2
nslookup on DCB:
Default Server: dca.testdomain.com
Address: 30.30.30.1
Client PC (Windows 7 Pro):
1st DNS : 30.30.30.31
Alternate DNS: 30.30.30.32
nslookup on the client PC
Default Server: dca.testdomain.com
Address: 30.30.30.1
Up to here everything is fine. Now if I turn off DCA, and do an nslookup, the result is as follows:
DCB nslookup:
DNS request timed out.
time out was 2 seconds.
Default Server Unknown
Address: 30.30.30.31
Client PC nslookup:
DNS request timed out.
time out was 2 seconds.
Default Server Unknown
Address: 30.30.30.31
I waited for more than 15 minutes an tried again, it didn't help.
I have been reading a few similar posts on this matter, but couldn't find the answer.
I would expected it to display the DCB when I do an nslookup.
Question 1: Shouldn't that display DCB rather than displaying a time out message when I do nslookup?
Question 2: The fact that it displays a time out message, does it mean that more configuration needs to be done? If so please kindly advice what needs to be done.
I did an ipconfig /displaydns command. I realized that the order of DNS have changed on both DCB and the Client PC:
Now, they both display DCB on the top of the list, whereas they were displaying DCA on the top of the list prior to the shut down.
Question 3: Does it mean that the Client PC now knows that the 1st DNS is down and so it's using the 2nd DNS?
If so, why does the nslookup display the time out message?
Question 4: Is it possible to configure either of DNS Server or the DNS client, so it displays the 2nd DNS when the first DNS is not accessible and when I do nslookup?
Thank you for.Hi Ton_2013,
Based on my understanding, the issue we are experiencing is that: when the primary DNS server is down, the result of the tool Nslookup is to diaplay the time out message at first. Right?
Based on my knowledge, timed out message is means that the server did not respond to a request after a certain amount of time and a certain number of retries. Because the primary DNS server is down, it can't respond to this request and time is out. When
the primary DNS server can't respond, the secondary DNS server works to ensure effective work. And the order is changed as you said.
As to the reason why the result is still the same even when the order has changed, we can try to use Network Monitor to capture network traffic and view and analyze it to find the cause. And the cause may be the cache. For your information, please refer
to the following link to download the tool Network Monitor:
http://www.microsoft.com/en-hk/download/details.aspx?id=4865
Regards,
Lany Zhang -
Displaying "Your Session is going to time out , Extend or Close" dialog ?
Hi!
we have a requirement to display a warning message to users just (1 minute) before the session is going to time out, and ask the user if he wants to extend the session or close the session( in which case we close the browser window). We have come up with a probable solution but would like to know what other people are doing/will do in similar scenarios.
Here is what we came up with:
1. On every page load we set/update a cookie which is meant to track the session time out. And we have a javascript timer that counts down user's inactivity. If any PPR occurs on the page, then we plan to add a hook to the PPR javascript calls so that we can update the time out cookie not only on page load/refreash but also on every PPR call made to the server.
We have a worry that we are doing everything on the client side solely depending on javascript.Is our approach in the right direction? Is there any better way to achieve the same? Are there any pitfalls/security issues involved in our design?
2. I have read in some articles/forum threads that we can poll the server on a regualr interval to find out the time remaining for the session to expire and once we get time to last minute we can display a javascript popup to the user. But I have a doubt that wouldn't polling itself refresh the user activity on the server and reset the session timeout to normal on every poll? In that case wouldn't we always get the same time-remaining info for every poll? Have I mis-understood some thing here? can some one explain how to implement the session time out based on polling to the server?
3. Any new ideas are welcome!
Thanks and Regards,
SambaHi,
well, if you use the af:poll command then the session will never expire because from a server point of view the user frequently sends a request. So if you prefer this option then you will have to expire the session programmatically calling invalidate() on the session
javaScript is the only option I can imagine that works without polling.
Frank -
Apple TV display times out after a period of time.
Hi TonyWash,
Welcome to the Support Communities!
Is the Apple TV timing out while you are Home Sharing, using Airplay with a device, or working directly from the Apple TV menu? Without knowing the specifics, I'll provide some basic troubleshooting for your Apple TV:
One of the first troubleshooting steps is on Page 26 of the Apple TV User Guide:
manuals.info.apple.com/MANUALS/1000/MA1607/en_US/apple_tv_3rd_gen_setup.pdf
Try resetting your equipment by disconnecting Apple TV, your TV, your wireless networking equipment or base station, and your router
from the power outlet. Wait 30 seconds, and then reconnect everything.
Additional troubleshooting steps can be found here:
Apple TV (2nd and 3rd generation): Troubleshooting Wi-Fi networks and connections
http://support.apple.com/kb/TS4546
I hope this information helps ....
- Judy -
I have found that I can't access the contents of the encrypted disk in time machine backups. The Finder window displays a grayed-out icon representing the disk. Can this be remedied?
Time Machine error: Apple Support Communities
OSStatus 5 when trying to use Lion...: Apple Support Communities -
What if you are on contract & move out of the area or even out of the country for a time?
I'm just wondering. My win mob 6.5 phone is not working very well. It freezes, the alarms have 5 alarms when only 1 was set & sometimes they seem to not even go off. Previously they would go off even when turned off--didn't seem to make a difference. Sometimes it is really slow to open an email, etc. & this one was a replacement for the Touch Pro 2 which wasn't working right.
So at any rate, I need to get a new one before long & want another smart phone--a reliable one this time. I would like to get the iPhone 4S I think.
I'm eligible for an upgrade, although when I used the upgrade fundtion & looked at the iPhone 4S, it just showed the 2 yr price--it didn't show my New Every 2 discount.
In addition, I'm not sure what my long term plans are. I'm not planning on moving anywhere real soon, but it is possible that I might be moving out of the area before 2 years are up or maybe not. Or I might even go overseas for awhile.
So what happens if you are on a 2 year contract & move out of the area either permanently or out of the country for months or more? btw, before these smart phone fiascos, I kept my last previous basic LG flip phone for about 5 years because it just worked.So what if its a different Verizon region? You just move & keep your contract if there is service?
& if you suspend without bllling, is there a time limit on that?
Of course they should give you credit for months when you could get a new phone but keep the old one. Before this period just ending (which because they messed up & called a replacement an upgrade & put me on a new 2 yr contract when all along I said no, when I got that taken off & then corrected the upgrade date (originally it was supposed to be 12/2011 & they had changed it to 12/2012) rather than reset it back to the original they reset it to when I got the replacement phone or actually a few months later so I think the contract end date was in July. But now I wlll be up to when my original upgrade date should have been. Well actually I guess they allow you to upgrade maybe 22 mo or so into a contract or they used to.
My previous phone before this 2 yr period I kept the phone for 5 years. The phone before that which was also a flip phone, the hinge broke at least a couple of mo before I was eligible for upgrade so I had it taped together.
I didn't look at other phones & I don't know what their 2 yr contract price would be. -
Hello, :)
Where is the option to display the video's duration time?
Haven't found it yet...
I am using Captivate 2 and would like the user to see how
long the video goes.
Thanks much!
StefanHi Guys! Yes, I'm sure you can do it in Flash ...
You can display a
clock displaying
timeof day. There is all kinds of information about this at
Edmund Mullen's site, located at:
http://ed.mullen.home.comcast.net/fclock.html
If you want a SWF you can insert into a Captivate movie that
displays elapsed time, I have a diferent suggestion. First,
understand that elapsed time (ET) can be a tricky bugger, becuase
it is probably not "straight-ahead" elapsed time. If your Captivate
movies have any interactivity, you may or may not want those
"pauses" counted in elapsed time metering. You need something
special, and as Rick said, that animal don't live here ...
Contact Paul Dehurst (fellow community expert) and ask if
Paul will build you something like this. He may be too busy, or
just not interested in extra work right now, but if he does it for
you, he'll do a good job. Expect to pay him a negotiated fee - it
will be reasonable. Paul can be reached right here, or at his
web-site at:
http://www.raisingaimee.co.uk/
Click the link to: "
Contact Paul:"
Second idea, if Paul can't be convinced to help you out ...
call RentaCoder. You can reach them at:
http://www.rentacoder.com/RentACoder/default.asp
Seriously, these folks might be the most underappreciated
people on the net. In just a few minutes at their site, you can
find a programmer in almost any software language - often close to
your physical location. No, I haven't personally used them, but a
company I contracted with recently had a need for a special Flash
tool, and contacted a Flash coder through "rentacoder" - and were
very pleased. Good luck! -
Session Time out and session_timeout.jsp
We have Sun Java Identity Server 2005 Q1 installed as part of our Sun Java System Portal Server 2005 Q1 install.
When the authentication session times out, it redirects the user back to the login page. I remember that in 6.2 it used to show up the session_timeout.jsp page? Is there any way to make it work that way in Q1 2005 ?To be more specific, find your top level desktop display profile (marked as Default Channel Name) container name. Then go to Portal desktop type (default, or sampleportal, or...) with above container directory. (ex: /etc/opt/SUNSWps/desktop/default/JSPTabContainer) Modify header.jsp and/or menubar.jsp (something ...?action=logout with goto=http:///.....) HTH, Jerry
-
Time-out checking log bucket location.
Hi,
Earlier this month, I successfully ran the OSB Cloud Module for Amazon S3 installer. It created a "new registration for this S3 user" with a new "Registration ID". It also generated an "S3 Logging Bucket" with a name based off of my Amazon nickname which at the time of running the Cloud module installer was "javanetworking".
$ *./osbws_install.sh*
Oracle Secure Backup Database Web-Service Install Tool, build 2011-02-04.0001
AWS credentials are valid.
Creating new registration for this S3 user.
Created new log bucket.
Registration ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
S3 Logging Bucket: oracle-log-javanetw-1
Validating log bucket location ...
Validating license file ...
Create credential oracle.security.client.connect_string1
OSB web-services wallet created in directory /u01/app/oracle/product/11.2.0/dbhome_1/dbs/osbws_wallet.
OSB web-services initialization file /u01/app/oracle/product/11.2.0/dbhome_1/dbs/osbwstestdb1.ora created.
Downloading OSB Web Services Software Library from file osbws_linux64.zip.
Downloaded 20744341 bytes in 10 seconds. Transfer rate was 2074434 bytes/second.
Download complete.
Extracted file /u01/app/oracle/product/11.2.0/dbhome_1/lib/libosbws12.so
Since then, I have changed my Amazon nickname (https://www.amazon.com/gp/nickname/index.html"). I was hoping to re-run the Cloud module installer and have it generate a new "S3 Logging Bucket". I removed the two S3 buckets that were created in the initial Cloud module install (the data and log buckets).
However, when I attempt to re-run the Cloud module installer, it complains that it cannot find the original "S3 Logging Bucket":
$ *./osbws_install.sh*
Oracle Secure Backup Database Web-Service Install Tool, build 2011-02-04.0001
AWS credentials are valid.
S3 user already registered.
Registration ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
S3 Logging Bucket: *oracle-log-javanetw-1*
Validating log bucket location ...
Time-out checking log bucket location.
Please try again later.
I even tried using the *-newLogBucket* option to osbws_install.jar so it would force the creation of new log bucket; however, it doesn't appear to do anything. It still complains about not finding the original S3 Logging Bucket.
I thought the best option would be to "un-register" the Amazon S3 user the installer generated. There is no documented option in osbws_install.jar to perform a full "un-install" or "un-register". The Registration ID the installer creates appears to be hard-coded metadata somewhere in Amazon S3.
+AWS credentials are valid.+
+S3 user already registered.+
+Registration ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx+
I know that the registration information is not stored with your OTN profile because I tried putting in a fake OTN username/password when calling osbws_install.jar. It doesn't use the OTN username/password because it first uses your AWSID/AWSKey to see if there is information that the S3 user is already registered. Once it determines that the S3 account is already registered, it doesn't need to log in to OTN and displays:
*S3 user already registered.*
I did try this and it worked for modifying the backup bucket (OSB_WS_BUCKET) but didn't appear to work for the S3 Logging Blucket (_OSB_WS_LOG_BUCKET).
1.) Manually re-create the missing S3 Logging Bucket (oracle-log-javanetw-1).
2.) Run the Cloud module installer so it creates the wallet, configFile, and downloads the library.
3.) Determine list of valid parameters that can be set in the configFile:
$ *strings $ORACLE_HOME/lib/libosbws12.so | grep '^OSB_' | sort*
OSB_WS_BUCKET <----------
OSB_WS_CHUNK_SIZE
OSB_WS_HOST
OSB_WS_LICENSE_ID
OSB_WS_LICENSE_MAX_SESSIONS
OSB_WS_LOCATION
OSB_WS_PFILE
OSB_WS_PROXY
OSB_WS_WALLET
$ *strings $ORACLE_HOME/lib/libosbws12.so | grep '^_OSB_' | sort*
_OSB_WS_100_CONTINUE
_OSB_WS_ACCESSLOG
_OSB_WS_ACCESSLOG_CLEANER
_OSB_WS_ACCESSLOG_RETENTION_TIME
_OSB_WS_ALLOCBUF_DISABLE
_OSB_WS_BASIC_AUTH
_OSB_WS_BUFFER_READ
_OSB_WS_BUFFER_WRITE
_OSB_WS_CHECKER_RETENTION_TIME
_OSB_WS_CLEANER
_OSB_WS_CLEANER_RETENTION_TIME
_OSB_WS_DEFERRED_DELETE
_OSB_WS_EVENT
_OSB_WS_IP_REFRESH_TIMEOUT
_OSB_WS_LOAD_BALANCE
_OSB_WS_LOG_BUCKET <----------
_OSB_WS_PURGE_LIMIT
_OSB_WS_RECV_BUF_SIZE
_OSB_WS_REDIRECT
_OSB_WS_RESPONSE_TIMEOUT
_OSB_WS_RETRY_WAIT_TIME
_OSB_WS_REUSE_CONNECTION
_OSB_WS_RUN_CLEANER
_OSB_WS_SDU_SIZE
_OSB_WS_SEND_BUF_SIZE
_OSB_WS_SESSION_RETENTION_TIME
_OSB_WS_TDU_SIZE
_OSB_WS_TRACE_LEVEL
_OSB_WS_UPLOAD_DELAY
_OSB_WS_USE_IPV6
_OSB_WS_VALIDATE_CHUNK
4.) Modify the configFile to include:
$ *cat $ORACLE_HOME/dbs/osbwstestdb1.ora*
OSB_WS_HOST=s3.amazonaws.com
OSB_WS_LICENSE_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
OSB_WS_WALLET='location=file:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/osbws_wallet CREDENTIAL_ALIAS=idevjhun_aws'
OSB_WS_BUCKET=idevelopment-oracle-backups
_OSB_WS_LOG_BUCKET=idevelopment-oracle-log
So,
1.) Is the *-newLogBucket* option broke or an unimplemented method?
2.) Is there a way to "un-register" or modify the S3 registration information so that the Cloud module installer will register a new S3 user? (i.e. starting from scratch)
It would seem to me that a user might want to completely uninstall and un-register at some time in the future.
3.) Where is the "Registered S3 User" metadata stored?
4.) Can you specify the S3 Logging Bucket (and data bucket) during the install?
There is a similar post which the user ran into the same issue when removing the S3 Logging Bucket.
https://forums.oracle.com/forums/thread.jspa?messageID=4581188
Best regards,
jeffHi again,
my problem seems to be caused by us having deleted the bucket at an earlier stage. When we ran the installer script again, the installer was confused by this, and was not able to re-create a bucket.
Rune -
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_INDICATORIf 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. -
It started with the second page not being able to be displayed
example it would go to yahoo and I would sign in but the next page would just spin and time out
Now it won't even go to the first page.
Firefox will not let me go into the options to change cache.
I am trying explorer and it works.
HelpThis is a page within the Yahoo site? When you have a problem with one particular site, a good "first thing to try" is clearing your Firefox cache and deleting your saved cookies for the site.
(1) Bypass Firefox's Cache
Use Ctrl+Shift+r to reload the page fresh from the server.
Alternately, you also can clear Firefox's cache completely using:
orange Firefox button (or Tools menu) > Options > Advanced
On the Network mini-tab > Cached Web Content : "Clear Now"
If you have a large hard drive, this might take a few minutes.
(2) Remove the site's cookies (save any pending work first). While viewing a page on the site:
* right-click and choose View Page Info > Security > "View Cookies"
* Alt+t (open the classic Tools menu) > Page Info > Security > "View Cookies"
In that dialog, you can individually remove your yahoo.com cookies.
Then try reloading the page. Does that help? -
Time out error on deploying to SAP-J2EE engine.
I got a problem while deploying to SAP-J2EE engine using ant. It takes a lot of time and then throws a time out error.
The problem is with the web.xml file pointing to a DTD in the internet, I have pasted some part of the web.xml below,
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<display-name>MyPay</display-name>
<description>MyPay</description>
Once I write down the DTD description in the web.xml itself, it works fine.
I have pasted the error trace below,
j2eedeploy:
[echo] Deploying to Local environment...
[echo] C:\Java\Projects/MyPay/dist/MyPay.ear
BUILD FAILED
C:\Java\Projects\MyPay\build.xml:445: java.lang.RuntimeException: ERROR: ID90507: Error occured during getting EARDescriptor : Failed to load resource from the context classloader of the current thread! Loading from classloader was caused by: java.net.ConnectException: Connection timed out: connect
Exception is :
java.io.IOException: Failed to load resource from the context classloader of the current thread! Loading from classloader was caused by: java.net.ConnectException: Connection timed out: connect
at com.sap.engine.lib.xml.parser.URLLoaderBase.resolveEntity(URLLoaderBase.java:148)
at com.sap.engine.lib.xml.parser.XMLParser.scanDTD(XMLParser.java:1271)
at com.sap.engine.lib.xml.parser.XMLParser.scanProlog(XMLParser.java:2795)
at com.sap.engine.lib.xml.parser.XMLParser.scanDocument(XMLParser.java:2830)
at com.sap.engine.lib.xml.parser.XMLParser.parse0(XMLParser.java:229)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parseAndCatchException(AbstractXMLParser.java:145)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:160)
at com.sap.engine.lib.xml.parser.AbstractXMLParser.parse(AbstractXMLParser.java:261)
at com.sap.engine.lib.xml.parser.Parser.parseWithoutSchemaValidationProcessing(Parser.java:280)
at com.sap.engine.lib.xml.parser.Parser.parse(Parser.java:342)
at com.sap.engine.lib.xml.parser.DOMParser.parse(DOMParser.java:101)
at com.sap.engine.lib.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:127)
at com.inqmy.lib.xml.StandardDOMParser.parse(StandardDOMParser.java:127)
at com.inqmy.lib.xml.StandardDOMParser.parse(StandardDOMParser.java:120)
at com.inqmy.services.servlets_jsp.descriptor.jar.WebWar.getWebDescriptor(WebWar.java:98)
at com.inqmy.deploy.tool.deployer.ExtendedEarReader.loadDescriptorFromFile(ExtendedEarReader.java:175)
at com.inqmy.deploy.tool.deployer.ExtendedEarReader.getFullEarDescriptor(ExtendedEarReader.java:104)
at com.inqmy.deploy.manager.DeployManagerImpl.setEar(DeployManagerImpl.java:355)
at com.inqmy.deploy.manager.DeployManagerImpl.setEar(DeployManagerImpl.java:325)
at com.pg.sap.deploy620.SAPDeploy620Manager.process(SAPDeploy620Manager.java:84)
at com.pg.ant.tasks.j2ee620.J2ee620EngineDeployTask.execute(J2ee620EngineDeployTask.java:40)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)Thanks for your reply Kalyan,
The problem seems to be with my system, because I had run the same ant script in another system and it deployed successfully.
The problem does not seem to be with the dtd, whereas it seems that the SAP-J2EE engine is not able to open the link to the dtd giving a time out error.
Is it possible to switch off the validation process of the SAP-J2EE engine of an xml with the dtd? -
Webdynpro application time out in portal
Hi all,
I am trying to perform a batch of process in my webdynpro application.
I selected 100 records in my view which are displayed in a table ,for updateding..
Upon selction of these 100 recoreds and on click of submit it is giving portal
time out after a few seconds..
where the problem can be??Is it in front view(webdynpro code means giving the selected records as input to the function module) or at the backend(mesns at BAPI's)
Can anyone please tell me where problem might be ??
Regards
Padma NHi all,
I am trying to perform a batch of process in my webdynpro application.
I selected 100 records in my view which are displayed in a table ,for updateding..
Upon selction of these 100 recoreds and on click of submit it is giving portal
time out after a few seconds..
where the problem can be??Is it in front view(webdynpro code means giving the selected records as input to the function module) or at the backend(mesns at BAPI's)
Can anyone please tell me where problem might be ??
Regards
Padma N
Maybe you are looking for
-
I have 2 iphones registered under same account, but both phones had different contacts in them, somehow icloud duplicated, exchanged them, and I turned off the icloud on one of them, while doing that it asked me if I want to keep them on my phone or
-
Hi, In the Third party scenario,the purchase requistion will be created after creating the sales order.we have batch job which converts the PR to PO which runs for every 15 mins. The problem is"the PR is created yesterday but the PO is created on tod
-
How do I get my HP 7525 scanned photos to show up in my Windows Photo Gallery?
When I scan photos on my HP 7525, they show up in Documents on my Dell PC. I want them in my Windows Photo Gallery. How can I make make this happen? My PC is connected to the printer with a USB cable. Thanks for any help you can offer.
-
XML Literal select with multiple nodes
Hi there can anybody tell the correct syntax for the following XML Literal: Dim x = <Test> <%= From item In items Select <top><%= item.X %></top> <left><%= item.Y %></left>
-
Hi All, I installed DB 11g R1 on windows XP, When I tried to test the installion, the page shows the following: Status Status Pending Status Pending Since Unavailable And I started the folowing services: 1. Oracle Connector Automatic Updates Servic