ParseDouble pads result with zero
I am trying to work around an issue with generating a double value from a String, but the result for a value < 1.0 seems to be padded with a trailing zero. For example, ".009" or "0.009" are both parsed to a double of 0.0090. The result is not acceptable as it has an incorrect number of decimal places. All of this is resulting from methods to round a double value to the correct number of places, only to have parseDouble on that String add another digit. This only is a problem for values < 1.0. "1.009" for example will parse correctly to 1.009 This seems to be a bug in Double.parseDouble and/or Double.valueOf in 1.5.x and 1.6.x?
JayBurrill wrote:
I am trying to work around an issue with generating a double value from a String, but the result for a value < 1.0 seems to be padded with a trailing zero. For example, ".009" or "0.009" are both parsed to a double of 0.0090. The result is not acceptable as it has an incorrect number of decimal places. All of this is resulting from methods to round a double value to the correct number of places, only to have parseDouble on that String add another digit. This only is a problem for values < 1.0. "1.009" for example will parse correctly to 1.009 This seems to be a bug in Double.parseDouble and/or Double.valueOf in 1.5.x and 1.6.x?parseDouble returns a double. A double doesn;t have a "trailing zero", it has a binary format specified by IEEE 754 IIRC. You are having issues with how you output the double as a String I suspect.
Similar Messages
-
Replacing Negative results with Zero in a Query
Hi,
In my query i need to calculate the delay in payment.I have calculated the delay using CKF and Formula Variables.But few of the values are negative as the payment was made before the due date.
Is there an option were i can replace only the negative values with a Zero?
Do help me with the steps.
Thanks,
SavithaHi
Hide the calculated Keyfigure and create a new formula.
In the new formula create the condition
CKF > = 0 * CKF + 0
This means that if the calculated Keyfigure which has the values Gt or Equal to 0 will display the actual value in Calculated Keyfigure and if it is less than 0 then it will Display 0. So Negative values will be o.
Regards
M.A -
Pad a string with zeros ?
Hello ABAP Experts,
How to pad a string with zeros.. is there a direct method i can use.
eg:
string length is 8
string is custnumb
value is 588
but i would like to see 00000588
please suggest.You can simply move it to a TYPE n field also.
data: n(8) type n.
data: custnumb(8) type c value '588'.
n = custnumb.
custnumb = n.
Regards,
Rich Heilman -
[share]Share with you my experience of upgrading PC with zero budgets
I saw an article on Mobile01 and thought it’s quite interested, so here I translate it.
To share with everyone
http://www.mobile01.com/topicdetail.php?f=488&t=4250581
Share with you my experience of upgrading PC with zero budgets
It is believed that many people have the same experience like me, a 3-years-old PC which probably work but unbearably slow. No need to mention that when playing games, it lags all the time.
Now here I want to share an incredible easy way to upgrade your PC; what’s more, it’s free! No need any cost to make PC performance up!!
(you may say: ”What’s wrong with you?! I just wanna play a PC game, rather than mod PC. okay!?)
No worry please~ It’s the era of smart end users! For sure a higher C/P is a basic requirement. I am just talking about a better performance; it not must be along with extra costs. If you have this kind of concern, then “overclocking” may be the answer for you. In one word, overclocking (OC) is tuning you computer beyond the limit to an extreme performance. So that you have a surprising user experience just like bought a new PC without any cost.
Ok, it’s enough! I won’t boast of too much knowledge of overclocking because I don’t know much about it actually. (a truly overclocking….. means tuning voltage/ clock etc. OMG, who knows?! ahhahaha)
In fact I’m only talking about a button! Only one you need to do hold out your finger and press down the button, how easy it is. And then you can feel it get smoother when playing games.
This is what I’ve done. I make an experiment on Age of Empires II: The Conquerors, let's have a comparison of their differences.
First of all, let’s preview the configuration of my own PC:
Motherboard - MSI Z97 GAMING 5
Graphics card – MSI N750 Ti GAMING 2GD5/OC
CPU - i5-4690K
Power supply - CoolerMaster (1250W)
HHD - WD 3TB
Memory - WINTEC 1333/4GB DDR3
This is a close up of the model name. cause not every motherboard has this feature.
Let’s open CPU-Z on OS.
Then you can see this is Intel 4960K 3.5G, an original CPU without tuning.
Launching the game of Age of Empires II: The Conquerors HD version (single team of 500 people). BTW, it seems to reveal your age if you also know this game! Saying Age of Empires, which was the bomb of RTS games at that time.
Till here, does there anyone recall the days of the eight guys’ gang war?
Ops! I’ve told too much nonsense. Now I am showing you the differences of OC in the heavy loading condition of 8 teams with 500 people (stand-alone ver.).
Look at the bottom at left corner, you can see the Fraps number of 18. Merely 18 fraps when I tries 500 people per team. Yes, it’s true! A terrible number no wonder it lags over and over. Unbearable….. I can’t wait to try OC to see if it will be helpful.
So, let’s see how to use the easy OC feature- OC Genie.
To boost, press Del and get into BIOS. There is a button at the left upper side, click it and it will turn to red. F10 to saving and leave BIOS. and then re-boost the computer. That’s all.
(You can see a virtual button -OC GENIE. Just click it!)
(Click it and it will turn to red. F10 to saving and leave BIOS. and then re-boost the computer. This is the time to check CPU-Z now!)
(CPU clocks from 3.5G to 4G. which means you earn 15% performance for free!)
Let’s test with Age of Empires II: The Conquerors HD version (single team of 500 people), the same as the previous condition.
Impressive!! It becomes 27 fraps. Feel the smoother motions than before!!
Then, I’m going to check online game! Although Lineage II is not really popular now, I use it for the test because online game usually heavier loading and has higher requirement on PC spec.
The following two screenshots are the original one before OC (Default).
And check the below 2 pictures, those have better FPS improved after use OC Genie.
To summarize my test, here I listed the results to show how OC Genie did.
Through the chart you can find that on the condition of extremely heavy loading, the performance improved significantly. Thus, I think you can feel the differences when playing those games with complex computing such as Age of Empires or Starcraft II.
As for the normal MMRRPG games, OC Genie also contributes almost 15% of performance up. And it even optimized the pictures.
This is my test report of an easy way to make PC performance up and free of money. Share with you guys and wish it is hopeful for you
Thank you ~~~~!!Z97 GAMING 5 is a nice motherboard. 3 of my friends are all using this one, and me too! To those who are searching for a new gaming motherboard, I highly recommend this one!
-
TCode MIR7: Dump while deleting Parked Invoice with zero value
Hi,
We had parked an Invoice using TCode MIR7 with Zero Value with reference of a PO. Now as the value of invoice is zero, we want to delete it using MIR7.
In MIR7, when we go to Invoice Document-->Delete, it results in dump. Dump is as follows:
Error analysis
Short text of error message:
No document found
Long text of error message:
Technical information about the message:
Message class....... "FI"
Number.............. 124
Variable 1.......... " "
Variable 2.......... " "
Variable 3.......... " "
Variable 4.......... " "
How to correct the error
Probably the only way to eliminate the error is to correct the program.
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"MESSAGE_TYPE_X" " "
"SAPLFMPR" or "LFMPRU05"
"FM_CO_DOCUMENT_DELETE"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which actions and input led to the error.
Information on where terminated
Termination occurred in the ABAP program "SAPLFMPR" - in
"FM_CO_DOCUMENT_DELETE".
The main program was "SAPLMR1M ".
In the source code you have the termination point in line 34
of the (Include) program "LFMPRU05".
Any help.
Regards,
CMC Team.Hi,
Check following SAP notes:-
1173846 (MM) Termination when deleting prepaid logistics invoices
Reason and Prerequisites
This problem is caused by a program error.
1224772 (MM) Error message FI24 when deleting parked invoices
Reason and Prerequisites
This is due to a program error. The total amount of the parked invoice is '0'.
Regards,
Anand Raichura -
Show characteristic with zero figures in report
Dear All,
I have report as below:
Material Qty
A 0
B 10
C 5
D 0
E 2
I want to filter Material with zero quantity.
I've already try with condition Qty = 0, but the report will suppress zero value and
return not applicable data found.
How to make this happen?
Appreciate for any kind of help. Thanks.
Regards,
StephYes Alice, I already try, but does not work
By the way, the figure - Qty, already show "0" (not blank, because it's from calculation).
Yesterday, I try to add a new CKF in query, add with "1" if the Qty return zero value.
And then I set the condition to this new CKF to activate, if the result the same as "1".
But it does not work either and return no appliable data found,
because the report automatically suppres the zero when I show Qty to the report,
although there is new CKF that return "1".
Regards,
Steph.
Edited by: Steph on Nov 5, 2009 4:08 PM -
Deployed EJB.jar has some classes with zero bytes
Has anyone hit a situation where Windows Jdev 902 puts class files into the ....EJB.jar file with zero bytes? In my case, the eight zero length classes are: seven My...Row.class files and the MyApplicationModule.class file. They all are in the /mypackage/common/ package and are in the ...classes/mypackage/common/ file folder.
I can use PKZIP to delete the zero length classes and add them back into the .jar and everything works as expected.
There are no error messages generated during the deployment that creates the .jar file that has the problem.This was posted on another thread by jdev team...
We have been following this issue in support TAR 2274825.996. I sent some technical detail to the support rep on July 10, but it looks like that information never got added to the TAR. Well, FWIW, here it is:
The user may be running out of open files. The
stdio library which underlies Win32 programs (like the JVM) has a
limit on the number of files that can be open concurrently. The
limit is around 2000-2100 open files (I tested this on NT, 2000, and
XP), and the limit is on a per-process basis. If the user is running
into this limit because JDev has too many open files, then the utility
methods we use to open JAR files or other streams could be receiving
a java.io.FileNotFoundException exception with the message "Too many
open files". To verify this: go to the Windows Task Manager, go to
View | Select Columns... and be sure the "Handle Count" checkbox is
checked. Does the jdev.exe process have a disproportionately higher
number of handles than other processes? If the Handle Count is above
2000 (approx), JDev might be running out of open files. (I say "might" because
the Handle Count is for many different kinds of Win32 kernel objects,
not just for file handles.) If the Handle Count is the problem, then
it would explain the transient, nondeterministic behavior that the
user is reporting. Because the Handle limit is per-process, it would
explain why the user is able to use PKZIP or WinZip to repair the JAR
file. Try closing editors before deploying and see if that helps.
If the user confirms that the Handle Count is excessive, then we may
have a Handle leak of some kind in the product that will need to be
fixed.
Also try running JDev using "jdev -hotspot" on the command line instead
of just "jdev" and see if the behavior changes.
Hope that helps. We are monitoring the TAR, but no one has been able to reproduce the problem you are reporting, even with the files attached to the TAR, and yours is the only report so far that we've received about this specific problem.
I have added several more entities and views into app module. As I added each one, the list of zero byte jar classes would change, but always about 7-8 bad ones. Now that I am no longer adding new entities/views, the problem has become stable and repeatable. The same classes ALWAYS show up with zero bytes.
I monitored jdevw.exe while doing the deploy, and the number of handles never went above 675. I ran with jdevw.exe -hotspot and the results were exactly the same.
thanks,
Roger -
Starting a string of numbers with zero
This may be a really dumb question, and I apologize if it is, but how do I start a string of numbers in a cell with zero. Each time I try the zero is deleted automatically when I go to the next cell. Thanks for any tips.
If you set the format of the cell to "Text", this will let you enter a string like:
01234
No additional effort is required (like ="01234")
And, if your intent is that this is really a numeric quantity rather than a string composed of digits, Numbers will let you refer to this cell as if it were a number. For instance if this number in A1, then in B1 you enter =A1+1, the result will be the number quantity 124. -
RSA decryption Error: Data must start with zero
Because of some reasons, I tried to use RSA as a block cipher to encrypt/decrypt a large file. When I debug my program, there some errors are shown as below:
javax.crypto.BadPaddingException: Data must start with zero
at sun.security.rsa.RSAPadding.unpadV15(Unknown Source)
at sun.security.rsa.RSAPadding.unpad(Unknown Source)
at com.sun.crypto.provider.RSACipher.doFinal(RSACipher.java:356)
at com.sun.crypto.provider.RSACipher.engineDoFinal(RSACipher.java:394)
at javax.crypto.Cipher.doFinal(Cipher.java:2299)
at RSA.RRSSA.main(RRSSA.java:114)
From breakpoint, I think the problem is the decrypt operation, and Cipher.doFinal() can not be operated correctly.
I searched this problem from google, many people met the same problem with me, but most of them didn't got an answer.
The source code is :
Key generation:
package RSA;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.util.logging.Level;
import java.util.logging.Logger;
public class GenKey {
* @param args
* @author tang
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
KeyPairGenerator KPG = KeyPairGenerator.getInstance("RSA");
KPG.initialize(1024);
KeyPair KP=KPG.genKeyPair();
PublicKey pbKey=KP.getPublic();
PrivateKey prKey=KP.getPrivate();
//byte[] publickey = decryptBASE64(pbKey);
//save public key
FileOutputStream out=new FileOutputStream("RSAPublic.dat");
ObjectOutputStream fileOut=new ObjectOutputStream(out);
fileOut.writeObject(pbKey);
//save private key
FileOutputStream outPrivate=new FileOutputStream("RSAPrivate.dat");
ObjectOutputStream privateOut=new ObjectOutputStream(outPrivate);
privateOut.writeObject(prKey)
}Encrypte / Decrypt
package RSA;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.security.Key;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.crypto.Cipher;
//import sun.misc.BASE64Decoder;
//import sun.misc.BASE64Encoder;
public class RRSSA {
* @param args
public static void main(String[] argv) {
// TODO Auto-generated method stub
//File used to encrypt/decrypt
String dataFileName = argv[0];
//encrypt/decrypt: operation mode
String opMode = argv[1];
String keyFileName = null;
//Key file
if (opMode.equalsIgnoreCase("encrypt")) {
keyFileName = "RSAPublic.dat";
} else {
keyFileName = "RSAPrivate.dat";
try {
FileInputStream keyFIS = new FileInputStream(keyFileName);
ObjectInputStream OIS = new ObjectInputStream(keyFIS);
Key key = (Key) OIS.readObject();
Cipher cp = Cipher.getInstance("RSA/ECB/PKCS1Padding");//
if (opMode.equalsIgnoreCase("encrypt")) {
cp.init(Cipher.ENCRYPT_MODE, key);
} else if (opMode.equalsIgnoreCase("decrypt")) {
cp.init(Cipher.DECRYPT_MODE, key);
} else {
return;
FileInputStream dataFIS = new FileInputStream(dataFileName);
int size = dataFIS.available();
byte[] encryptByte = new byte[size];
dataFIS.read(encryptByte);
if (opMode.equalsIgnoreCase("encrypt")) {
FileOutputStream FOS = new FileOutputStream("cipher.txt");
//RSA Block size
//int blockSize = cp.getBlockSize();
int blockSize = 64 ;
int outputBlockSize = cp.getOutputSize(encryptByte.length);
/*if (blockSize == 0)
System.out.println("BLOCK SIZE ERROR!");
}else
int leavedSize = encryptByte.length % blockSize;
int blocksNum = leavedSize == 0 ? encryptByte.length / blockSize
: encryptByte.length / blockSize + 1;
byte[] cipherData = new byte[outputBlockSize*blocksNum];
//encrypt each block
for (int i = 0; i < blocksNum; i++) {
if ((encryptByte.length - i * blockSize) > blockSize) {
cp.doFinal(encryptByte, i * blockSize, blockSize, cipherData, i * outputBlockSize);
} else {
cp.doFinal(encryptByte, i * blockSize, encryptByte.length - i * blockSize, cipherData, i * outputBlockSize);
//byte[] cipherData = cp.doFinal(encryptByte);
//BASE64Encoder encoder = new BASE64Encoder();
//String encryptedData = encoder.encode(cipherData);
//cipherData = encryptedData.getBytes();
FOS.write(cipherData);
FOS.close();
} else {
FileOutputStream FOS = new FileOutputStream("plaintext.txt");
//int blockSize = cp.getBlockSize();
int blockSize = 64;
//int j = 0;
//BASE64Decoder decoder = new BASE64Decoder();
//String encryptedData = convert(encryptByte);
//encryptByte = decoder.decodeBuffer(encryptedData);
int outputBlockSize = cp.getOutputSize(encryptByte.length);
int leavedSize = encryptByte.length % blockSize;
int blocksNum = leavedSize == 0 ? encryptByte.length / blockSize
: encryptByte.length / blockSize + 1;
byte[] plaintextData = new byte[outputBlockSize*blocksNum];
for (int j = 0; j < blocksNum; j++) {
if ((encryptByte.length - j * blockSize) > blockSize) {
cp.doFinal(encryptByte, j * blockSize, blockSize, plaintextData, j * outputBlockSize);
} else {
cp.doFinal(encryptByte, j * blockSize, encryptByte.length - j * blockSize, plaintextData, j * outputBlockSize);
FOS.write(plaintextData);
//FOS.write(cp.doFinal(encryptByte));
FOS.close();
}Edited by: sabre150 on Aug 3, 2012 6:43 AM
Moderator action : added [ code] tags so as to make the code readable. Please do this yourself in the future.
Edited by: 949003 on 2012-8-3 上午5:311) Why are you not closing the streams when writing the keys to the file?
2) Each block of RSA encrypted data has size equal to the key modulus (in bytes). This means that for a key size of 1024 bits you need to read 128 bytes and not 64 bytes at a time when decrypting ( this is probably the cause of your 'Data must start with zero exception'). Since the input block size depends on the key modulus you cannot hard code this. Note - PKCS1 padding has at least 11 bytes of padding so on encrypting one can process a maximum of the key modulus in bytes less 11. Currently you have hard coded the encryption block at 64 bytes which is OK for your 1024 bits keys but will fail for keys of modulus less than about 936 bits.
3) int size = dataFIS.available(); is not a reliable way to get the size of an input stream. If you check the Javadoc for InputStream.available() you will see that it returns the number of bytes that can be read without blocking and not the stream size.
4) InputStream.read(byte[]) does not guarantee to read all the bytes and returns the number of bytes actually read. This means that your code to read the content of the file into an array may fail. Again check the Javadoc. To be safe you should used DataInputStream.readFully() to read a block of bytes.
5) Reading the whole of the cleartext or ciphertext file into memory does not scale and with very large files you will run out of memory. There is no need to do this since you can use a "read a block, write the transformed block" approach.
RSA is a very very very slow algorithm and it is not normal to encrypt the whole of a file using it. The standard approach is to perform the encryption of the file content using a symmetric algorithm such as AES using a random session key and use RSA to encrypt the session key. One then writes to the ciphertext file the RSA encrypted session key followed by the symmetric encrypted data. To make it more secure one should actually follow the extended procedure outlined in section 13.6 of Practical Cryptography by Ferguson and Schneier. -
Compression with zero elimination (reverse postings)
I executed a compression with zero elimination in a custom InfoCube in order to avoid entries that only contain zero values as key figures (for example reverse posting) are contained in the InfoCube after compressing.
However, not all the entries where all the key figures are blank have been deleted.
This cube contains the following standard key figures:
-0DEB_CRE_DC;
-0DEB_CRE_LC;
-0DSCT_DAYS1;
There are also two other custom key figures, created as copy of 0DEB_CRE_LC.
Have you any suggestion?So you're saying you have rows in your E fact table that were created as part of this particular compression run where all KFs = 0? That certainly doesn't sound right.
The zero elimination is a multi-step process -
first excluding rows from the F fact table where all KFs are 0, then excluding any summarized rows where all KF = 0, and then finally, deleting rows from E fact table that were updated resulting in all KFs = 0. Were any compressions run on this cube previously without zero elimination specified?
What DB?
There have been some problems with Oracle 9.2 merge function.
https://websmp201.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=613701&_NLANG=E
https://websmp201.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=639253&_NLANG=E -
Compression pb with zero elimination
Hi,
In a BW3.1 SP22, We compress infocube with flag with zero elimination activated.
But occurrences having key figures null and which were just compressed are not deleted.
Few properties of this cube are :
just cumulatives KF
huge volume (approx 120 millions occurrences / 22 millions new non-deleted occurrences with all KF null)
huge aggregates (biggest : 20 millions)
partitioning by month (12)
previously few requests were compressed without the flag « zero elimination » but obviously the occurrences described as non-deleted dont come from these old requests
In the same system, on others cubes with less datas, we tried to reproduce the case without success. In all scenarii we had tested, lines with KF nulls are correctly deleted.
We dont understand from where the problem could come.
If someone has an idea ...
Thanks by advance.So you're saying you have rows in your E fact table that were created as part of this particular compression run where all KFs = 0? That certainly doesn't sound right.
The zero elimination is a multi-step process -
first excluding rows from the F fact table where all KFs are 0, then excluding any summarized rows where all KF = 0, and then finally, deleting rows from E fact table that were updated resulting in all KFs = 0. Were any compressions run on this cube previously without zero elimination specified?
What DB?
There have been some problems with Oracle 9.2 merge function.
https://websmp201.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=613701&_NLANG=E
https://websmp201.sap-ag.de/~form/handler?_APP=01100107900000000342&_EVENT=REDIR&_NNUM=639253&_NLANG=E -
grandaughter has locked i pad 2 with passcode and then forgotten number how do you reset i pad to get it to work again
If You Are Locked Out Or Have Forgotten Your Passcode or Just Need to Restore Your Device
1. iTunes 10 for Mac- Update and restore software on iPod, iPhone, or iPad
2. iPhone, iPad, iPod touch: Wrong passcode results in red disabled screen
3. iOS- Understanding passcodes
If you have forgotten your Restrictions code, then follow the instructions
below but DO NOT restore any previous backup. If you do then you will
simply be restoring the old Restrictions code you have forgotten. This
same warning applies if you need to restore a clean system.
A Complete Guide to Restore or Recover Your iDevice (if You Forget Your Passcode)
If you need to restore your device or ff you cannot remember the passcode, then you will need to restore your device using the computer with which you last synced it. This allows you to reset your passcode and re-sync the data from the device (or restore from a backup). If you restore on a different computer that was never synced with the device, you will be able to unlock the device for use and remove the passcode, but your data will not be present. Refer to Updating and restoring iPhone, iPad and iPod touch software.
Try restoring the iOS device if backing up and erasing all content and settings doesn't resolve the issue. Using iTunes to restore iOS devices is part of standard isolation troubleshooting. Restoring your device will delete all data and content, including songs, videos, contacts, photos, and calendar information, and will restore all settings to their factory condition.
Before restoring your iOS device, Apple recommends that you either sync with iTunes to transfer any purchases you have made, or back up new data (data acquired after your last sync). If you have movie rentals on the device, see iTunes Store movie rental usage rights in the United States before restoring.
Follow these steps to restore your device:
1. Verify that you are using the latest version of iTunes before attempting to update.
2. Connect your device to your computer.
3. Select your iPhone, iPad, or iPod touch when it appears in iTunes under Devices.
4. Select the Summary tab.
5. Select the Restore option.
6. When prompted to back up your settings before restoring, select the Back Up
option (see in the image below). If you have just backed up the device, it is not
necessary to create another.
7. Select the Restore option when iTunes prompts you (as long as you've backed up,
you should not have to worry about restoring your iOS device).
8. When the restore process has completed, the device restarts and displays the Apple
logo while starting up:
After a restore, the iOS device displays the "Connect to iTunes" screen. For updating
to iOS 5 or later, follow the steps in the iOS Setup Assistant. For earlier versions of
iOS, keep your device connected until the "Connect to iTunes" screen goes away or
you see "iPhone is activated."
9. The final step is to restore your device from a previous backup. If you do not have a
backup to restore, then restore as New.
If you are restoring to fix a forgotten Restrictions Code or as a New device, then skip Step 9 and restore as New. -
Cube compression WITH zero elimination option
We have tested turning on the switch to perform "zero elimination" when a cube is compressed. We have tested this with an older cube with lots of data in E table already, and also a new cube with the first compression. In both cases, at the oracle level we still found records where all of the key figures = zero. To us, this option did not seem to work. What are we missing? We are on Oracle 9.2.0.7.0 and BW 3.5 SP 17
Thanks, PeggyHaven't looked at ZERO Elimination in detail in the latest releases to see if there have been changes, but here's my understanding based on the last time I dug into it -
When you run compression with zero elimination, the process first excluded any individual F fact table rows with all KFs = 0, then if any of the summarized F fact table rows had all KF = 0, that row was excluded ( you could have two facts with amounts that net to 0 in the same request or different requests where all other Dims IDs are equal) and not written to the E fact table. Then if an E fact table row was updated as a result of a new F fact table row being being merged in, the process checked to see if the updated row had all KF values = 0, and if so, deleted that updated row from the E fact table.
I don't beleive the compression process has ever gone thru and read all existing E fact table rows and deleted ones where all KFs = 0.
Hope that made sense. We use Oracle, and it is possible that SAP has done some things differently on different DBs. Its also possible, that the fiddling SAP had done over that last few years trying to use Oracle's MERGE functionality at different SP levels comes into play.
Suggestions -
I'm assuming that teh E fact table holds a significant percentage of rows have all KFs = 0. If it doesn't, it's not worth pursuing.
Contact SAP, perhaps they have a standalone pgm that deletes E fact table rows where all KFs = 0. It could be a nice tool to have.
If they don't have one, consider writing your own pgm that deletes the rows in question. You'll need to keep downstream impacts in mind, e.g. aggregates (would need to be refilled - probably not a big deal), and InfoProviders that receive data from this cube.
Another option would be to clone the cube, datamart the data to the new cube. Once in the new cube, compress with zero elimination - this should get rid of all your 0 KF rows. Then delete the contents of the original cube and datamart the cloned cube data back to the original cube.
You might be able to accomplish this same process by datamarting the orig cube's data to itself which might save some hoop jumping. Then you would have to run a selective deletion to get rid of the orig data, or perhaps if the datamarted data went thru the PSA, you could just delete all the orig data from the cube, then load datamarted data from the PSA. Once the new request is loaded, compress with zero elimination.
Now if you happen to have built all your reporting on the this cube to be from a MultiProvider on teh cube rather than directly form the this cube, you could just create anew cube, export the data to it, then swap the old and new cubes in the MultiProvider. This is one of the benefits of always using a MultiProvider on top of a cube for reporting (an SAP and consultant recommended practice) - you can literally swap underlying cubes with no impact to the user base. -
Text search returns results with some keywords, but not others
This pertains to a tours website for Turkey. I've sucessfully
set up a search form, and results page which returns results when
multiple keywords are entered. Everything is working well, except
when certain keywords are used. For example, the table column being
searched for is called long_itinerary, so if anyone is interested
in a certain site or city, it's bound to be in the long itinerary
somewhere.
Here's the problem, by example: When someone searches with
the keywords Antalya, Konya, Ankara, or Adana, for example, results
are returned from the database, and those keywords are in each
returned tour's long itinerary.
But certain keywords return nothing, even when they're in
practically all of the tours, in the long_itinerary column. For
example, Istanbul, Ephesus, and Izmir, Kusadasi and Pergamum return
no results, even though they're there. I've gone through all of the
most likely keywords, and these are the offenders. If, for example,
I search with "Istanbul Ankara," I get results with tours including
Ankara (and Istanbul, but only because the word "Ankara" is in the
itinerary).
First I made sure the Charset values were the same on the
search form page and the results page. Still had the problem. Next,
I went into the database itself, and copied the word "Istanbul"
directly from the long_itinerary column of the database, and pasted
it into the search function's text field, and searched again. Same
problem--no results returned.
I can't see any difference between the keywords which work
correctly, and those which don't, what baffles me is that even when
I copy a keyword directly from the database and paste it in the
search text field, it returns no results!
Well, I'm baffled! Any ideas what might cause this?Hmm -- one of my customers is a turkish building company
(Kusadasi BTW), and when *they* add some contents to the DB,
they´ll be entering turkish chars. It´s in particular the
turkish "I" which is pretty different, and this is when a search
for keywords containing a western "I" will fail.
Could that be the problem in your case ? -
Items with zero stock quantity show negative stock value in Stock reports
When running Stock reports for controlling the stock value towards the GL accounts, some items appear with zero stock quantity, but the report still shows a stock value (negative value in my case)
How can this happen, and how can I correct this situation ?
System parameters are : negative stock is not allowed, Items with zero cost price not allowed. On item level average cost price method is used.
P.K.JohnsenHi Johnsen,
I believe you have checked the" Manage Inventory by warehouse". I have noticed this issue in SAP B1 2005B but this is rectified in 2007B. The system behaves in this way as the system maintains item cost for the item for all warehouses and even if the stock is not present in the warehouse, the system would still show you a value for the same. Hope this helps. please search the forum. You'll find related threads.
Thanks,
Joseph
Maybe you are looking for
-
Session variable getting reset when leaving dashboard
I have created a session variable with the 'Enable any user to set the value' option. I'm using the session variable as the default for a dashboard prompt. I'm able to set the variable with that dasboard prompt, and I can confirm that it is indeed
-
How do I get Ethernet Link Speed stuck at 10 Mbit/s to 100?
I've 100 Mps Internet service. My iMac limits ethernet to 10 mps, although the specs say it should be capable of at least 100 mps. A PC connected to the same Time Capsule gets 100 mps. My network utility claims the link speed is only 10. If I try
-
Unable to bring up ASM on 2nd node of a 2-node Cluster
Having a very wierd problem on a 2-node cluster. I can only bring up on ASM instance at a time. If i bring up the second, it hangs. This is what the second (hung) instance puts in the alert log: Starting ORACLE instance (normal) LICENSE_MAX_SESSION =
-
How do i attached a file in an outgoing email
In my email i browse to the file I want to attach, but i don't see a way of moving that file to my email as an attached file
-
Would someone have any idea why my laptop sound suddenly sounds all garbled and how to troubleshoot and try to resolve the issue?