Existance of decimal point in String using UDF

hi,
How would i know the existance of decimal point in String using UDF in SAP XI message mapping?
Regards,
Sanghamitra

public String calculate(String var1, Container container) throws StreamTransformationException
Boolean b=var1.contains(".");
if(b)
return "true";
else
return "false";
Also using standard function IndexOf you can achive this.

Similar Messages

  • Strip decimal point from string

    Is there an easy solution to strip a decimal without the whole charAt stringbuffer thing.
    I try this
    String test = "1.234";
    String stripped = test.replace('.','/');
    and i get "1/234" as result. But I dont want "/". I want blank.
    This doesnt compile
    String stripped = test.replace('.','');

    If you want blank (1 234) then
    String stripped = test.replace('.',' ');
    will work. If you want to just remove the decimal point (1234) then
    test = "1.234";
    String[] prts = test.split("\\.");
    System.out.println(">>>" + prts.length + "<<<<");
    if (prts.length > 1) { test = prts[0] + prts[1]; }
    else { test = prts[0]; }
    System.out.println(">>>" + test + "<<<<");

  • Sql loader & decimal point

    Hello,
    I need to import data with field containing floating point number. When I do this load on linux it goes ok. But when I try to load the same data from my windows there is problem with decimal point character. (My oracle server is 9i on linux).
    I trid to use after logon trigger to issue statement alter session set nls_numeric_characters (enclosed in execute immediate statement) but it don't helped me.
    Thanks for advice
    sasa

    ok.
    I have following values in file to import:
    45.5
    50.3
    60.2
    38.7
    ("." is decimal point)
    If I use sqlldr on linux it is imported correctly. If I try to to import data from windows machine I get error message ORA-01722: Invalid number. So somewhere on my windows machine is set another decimal separator and i would like to change it to ".". But i don't know where I can change it.
    Is it more understandable?

  • How to use os x yosemite calculator - need decimal points

    I updated to OS X Yosemite version 10.10.2 for my Mac.  I cannot figure out how to use the calculator!  All I want is to add dollars and cents.  How do I get a decimal point?  I've searched the web and don't see this addressed.

    I double checked.  No decimal point anywhere!  I tried typing in a number with a period….nothing.
    Along the top row it has ASCII, Unicode, Show Binary buttons and 8, 10, 16.  I tried them all. 
    I have AND , OR, NOR, XOR, <<,>>, X<<Y, X>>Y, bite flip, word flip in the first two columns. Letters and numbers in the next three columns, and AC, C, RoL, RoR, 2's, and 1's buttons along with math operation symbols in the last 2 columns.
    I can't believe I can't just add up numbers with decimals when doing simple math!
    Any other ideas?
    Thanks.

  • Using Lookout to write a decimal point to an RTU in the field.

    Is thier a way to send an lookout exp.(ex.1.56) to a known writable register on an RTU out in the field. I am using the modbus object. I plan to send this expression that I have created to a series of regs. in the field and pull the info to a readable screen to display the converted readings from lookout. I want to use lookout to handle the complexed math and send it to the registers. EX. The RTU sends raw data (40003)to lookout. I convert it in an expression and I want to send it to reg(40501) out in the field. Question # 2. I also need to see if I can use a portable laptop in the field that mirrors the main host and is updated when the host updates. This is for the same application above. This is a mobile RTU
    if you will. But as you move around in a 70 mile area repeaters change.

    Hi,
    It's not clear to me what exactly you mean by "you can't send two values to a register."
    I am guessing you're trying to write a 32-bit floating point number. If this is the case, then here's how you would do it:
    To write a 32-bit floating point value (decimal point), you will have to use the F registers. E.g., F40001. Lookout will then split the value into two 16-bit registers accoring to the IEEE floating point notation and write them in two consecutive registers.
    Similarly, when you want Lookout to interpret two (consecutive) 16-bit registers in your PLC as a single 32-bit floating point number, you will use the F registers.
    For a detailed description of all this please see the following two articles:
    Detailed Descripti
    ons of Lookout Accessing Floating Point Numbers/Registers in a Modbus PLC:
    http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/2de82ef20b2cc991862567f600432e33?OpenDocument
    The Working Principle behind Reading Adjacent (32 Bit) D or F Registers of Modbus
    http://digital.ni.com/public.nsf/websearch/4ef459f549fcc7028625660a000a7629?OpenDocument
    I hope this is what you're looking for.
    Regards,
    Khalid

  • GL - Increase decimal points in existing SOB

    Hi,
    We have a legacy system which interface to Oracle GL.
    In that system, the currency values are stored up to four decimal points (ex: 1009.7536).
    But in existing Oracle GL SOB is defined for two decimal points (ex: 1009.75)
    Can we change the number of decimal points interfaced or change in SOB.
    Or is there any way of capturing the remaining figures to Oracle GL.
    Appreciate your response.
    Madhura.

    Refer to note 143286.1 on Metalink

  • Using Decimal Points with Quantity in 11i

    We are in apps 11.0.3 and going to migrate into 11i.
    While making Returns to Vendor we cannot use decimal points in the place of quantity and we have to complete the transaction same as transaction completed in the PO receipt.
    For ex: If I have case as following what is the solution in 11i?
    PO Receipt for Item AAA quantity 100 Metric Ton
    And due to some cases I have to return it 49.5m Metric Ton
    In apps 11.0.3 I can make Returns with integer quantity only, but how I can manage this case in 11i?
    null

    In IP 5.0 Patchset I you can receive and return with decimal quantities.
    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Altaf Hussain K. ([email protected]):
    We are in apps 11.0.3 and going to migrate into 11i.
    While making Returns to Vendor we cannot use decimal points in the place of quantity and we have to complete the transaction same as transaction completed in the PO receipt.
    For ex: If I have case as following what is the solution in 11i?
    PO Receipt for Item AAA quantity 100 Metric Ton
    And due to some cases I have to return it 49.5m Metric Ton
    In apps 11.0.3 I can make Returns with integer quantity only, but how I can manage this case in 11i?<HR></BLOCKQUOTE>
    null

  • Setting number of decimal points using double

    Is it possible to set the number of decimal points
    e.g.
    double a = 2 * Math.random() - 1;
    If I print this it would show something like 0.2342345434332.
    What I want to do is show 0.234.
    Is this possible?

    here you go, you can run this small program to test the results for yourself...
    import java.text.DecimalFormat;
    public class floatTest{
         public static void main( String args[]){
    DecimalFormat threeDig =  new DecimalFormat("0.000");
          double a = 2 * Math.random() - 1;
          //If I print this it would show something like 0.2342345434332.
          System.out.println("double a >" + a);
    System.out.println("formatted>0.000 >" + threeDig.format(a)     );
         }//end of float
    }//end of floatTEstok?

  • How do I create new photoshop doc using 3 decimal points without it defaulting to 2 decimal points?

    I am creating a new document in Photoshop at the following dimensions. 3.889"w x 6"h. After document is created I go check the canvas size or the Image size and it shows my document as 3.89"w x 6"h. How do I get Photoshop to allow 3 decimal points?

    I think that the way measure units work in photoshop, i try to draw a rectangle marquee and only two decimal point appear.
    I tried in indesign CS6 and 3 decimal work fine.

  • Error in mappingwith dynamic configuration using udf

    Hi All,
    Good Morning,
    i am working with ABAP proxy to file scenarion but here according my client requirement i am using udf for file dynamic configuration.
    In mapping, i mapped the field from "Filename" to message type tag(receiver file header)  "/ns0:MTxxxxxxDataFile". between there two fields i am using the following udf for dynamic configuration. but i got error after testing with test data in mapping that is also mentioned below.
    plz help me to solve the error. i will be wait for ur immediate response this sis very urgent.
    very thankfull to immediate response.
    UDF:
    i am not puting any packages here.
    public String putFileNameInHeader1(String a,Container container){
    //write your code here
    DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File", "FileName");
    conf.put(key, a);
    return "";
    ERROR:
    12:21:30 Start of test
    Compilation of MMSAPLegacySalesDataToCOGNOS successful Runtime exception during processing target field mapping /ns0:MTCOGNOSLegacySalesDataFile. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MMSAPLegacySalesDataToCOGNOS_ method putFileNameInHeader1$[cd00000038, com.sap.aii.mappingtool.tf3.rt.Context@f300f30] com.sap.aii.mappingtool.tf3.MessageMappingException: Runtime exception during processing target field mapping /ns0:MTCOGNOSLegacySalesDataFile. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MMSAPLegacySalesDataToCOGNOS_ method putFileNameInHeader1$[cd00000038, com.sap.aii.mappingtool.tf3.rt.Context@f300f30] at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:350) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:313) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:136) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(AccessController.java:215) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.utilxi.misc.api.BaseRuntimeException: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MMSAPLegacySalesDataToCOGNOS_ method putFileNameInHeader1$[cd00000038, com.sap.aii.mappingtool.tf3.rt.Context@f300f30] at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.calculateCurrentValue(FunctionWrapper.java:83) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.cacheValue(FunctionWrapper.java:59) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.gotoNextContext(FunctionWrapper.java:37) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:252) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:313) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:136) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(AccessController.java:215) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.calculateCurrentValue(FunctionWrapper.java:75) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.cacheValue(FunctionWrapper.java:59) at com.sap.aii.mappingtool.tf3.rt.FunctionWrapper.gotoNextContext(FunctionWrapper.java:37) at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:252) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:401) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrep.server.mapping.ServerMapService.transformInternal(ServerMapService.java:431) at com.sap.aii.ibrep.server.mapping.ServerMapService.execute(ServerMapService.java:169) at com.sap.aii.ibrep.sbeans.mapping.MapServiceBean.execute(MapServiceBean.java:52) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0.execute(MapServiceRemoteObjectImpl0_0.java:301) at com.sap.aii.ibrep.sbeans.mapping.MapServiceRemoteObjectImpl0_0p4_Skel.dispatch(MapServiceRemoteObjectImpl0_0p4_Skel.java:146) at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:313) at com.sap.engine.services.rmi_p4.DispatchImpl._run(DispatchImpl.java:199) at com.sap.engine.services.rmi_p4.server.P4SessionProcessor.request(P4SessionProcessor.java:136) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(AccessController.java:215) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Caused by: java.lang.NullPointerException at com.sap.xi.tf._MMSAPLegacySalesDataToCOGNOS_.putFileNameInHeader1$(_MMSAPLegacySalesDataToCOGNOS_.java:853) ... 26 more RuntimeException in Message-Mapping transformation: Runtime exception during processing target field mapping /ns0:MTCOGNOSLegacySalesDataFile. The message is: Exception:[java.lang.NullPointerException] in class com.sap.xi.tf._MMSAPLegacySalesDataToCOGNOS_ method putFileNameInHeader1$[cd00000038, com.sap.aii.mappingtool.tf3.rt.Context@f300f30]
    12:21:35 End of test

    Hi Sai,
    First of all, this UDF is pretty well knaown so there is no error in this UDF or your configuration for this UDF. I can suggest you something that at the time of configuration in IR, give a context object for that particular field of that file and then use the contect object name everywhere to refer that field. and also check the message type config for correction for my sake.
    There is also a possibility that of the input data. i guess you are sending the input file from Cognos and you making the file and putting some where in XI directory and want these to process something and generate with some new desired filename. Check the input because i guess its finding NOTHINg as an Input. check once again.
    Hope this will help you.
    Regards
    Aashish Sinha
    PS : Reward points if helpful.

  • Applying 9.1.2 to existing admin install point

    I am trying to patch my existing admin install point of Adobe Reader 9.1.1 to 9.1.2 but get this error:
    The upgrade patch cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade patch may update a different version of the program.  Verify that the program to be upgraded exists on yoru computer and that you have the correct upgrade patch.
    I get the same error on my PC when I double click the msp file
    This is the msi log from when I tried to patch the existing admin install of 9.1.1:
    MSI (c) (00:58) [16:18:02:876]: Final Patch Application Order:
    MSI (c) (00:58) [16:18:02:876]: Other Patches:
    MSI (c) (00:58) [16:18:02:876]: Unknown\Absent: {AC76BA86-7AD7-0000-2550-7A8C40000912} - C:\CustomInstalls\AdobeReader\patches\adobe912.msp
    The upgrade patch cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade patch may update a different version of the program. Verify that the program to be upgraded exists on your computer an
    d that you have the correct upgrade patch.
    C:\CustomInstalls\AdobeReader\acroread.msi
    MSI (c) (00:58) [16:18:02:876]: Product: Adobe Reader 9.1.1 - Update '{AC76BA86-7AD7-0000-2550-7A8C40000912}' could not be installed. Error code 1642. Additional information is available in the log file c:\adobe.log.
    MSI (c) (00:58) [16:18:02:923]: Product: Adobe Reader 9.1.1 -- Installation failed.
    Any help is greatly appreciated.

    I don't even know why I continue to use adobe products. Adobe software development is a joke. So are their UIs.
    First, this forum crashed my FireFox 3.0.10 browser, twice. The second time, I figured out it was Adobe's fault. Why doesn't Adobe learn to script AJAX properly so it doesn't crash browsers? So here I am in IE8 typing a reply.
    All of you guys were beating around the bush in regards to the "solution" to this problem. I have found a way to apply the patch and use an MST generated by the Adobe Customization Wizard. Granted, it would be much better if Adobe would just generate their patches correctly to begin with.
    As you all have found out, you cannot create an MST using the ACW (Adobe Customization Wizard) and then use the following command
    msiexec /i AcroRead.msi /p AdbeRdrUpd912_all_incr.msp /t
    This will cause the aforementioned problem. Below is the proper sequence of events:
    Make a backup copy of the 9.1.0 AcroRead.msi (just in case).
    Run the following command: msiexec /a AcroRead.msi /p AdbeRdrUpd912_all_incr.msp This command will create an Administrative Install Point (AIP) in the directory you choose. I will place it in a directory called Patched The AcroRead.msi file will be rewritten and will be version 9.1.2 (check the Property table with ORCA and look at the value ProductVersion). In addition, the files that were in Data1.cab will be expanded and patched and are in the Patched folder I specified above. At this point, we no longer need the Data1.cab file. If you know how, you could compress all the files back into a cab and insert them back into the media table, but that is overly complicated and I forget how to do it successfully. In any event, the major benefit would be some space savings. If you had a lot of apps like this, it would be beneficial; but for one, not so much so.
    Open AcroRead.msi with ACW. Make any changes you want for your installation. However, the following changes must be made or browser integration will be broken (per an earlier post in this thread):
    Go to the Registry item in the left-hand menu.
    Under the Destination Computer section, navigate to the following key: HKEY_CLASSES_ROOT\acrobat\DefaultIcon.
    Modify the (Default) value to the following: [READER]AcroRd32.exe. NOTE: This only applies if you are installing Adobe Reader. If you are installing Acrobat, this may not apply, but I am not sure. YMMV.
    This step was updated 10 July 2009 11:30:00 EST (GMT-05:00). If your are performing application virtualization, you will want to make te following changes to the MSI (via ORCA or ACW). I'm making these changes from ACW. The installer will fail during application sequencing during the installation of the Adobe Updater Manager (AUM). For virtualized applications, this component is unnecessary and should not be installed. Other sites lead you through a lengthy, risky process to eliminate the installation of the AUM. This step will eliminate the installation of AUM with two simple changes to the MSI.
    In ACW, select the Direct Editor node from the left hand side.
    Select the Feature table.
    On the right side, locate the features named AUM and Updater. Note that the Level field for both features are 1. Change the Level field for both fields to be 200. Actually, any number greater than 100 will do, but 200 is a nice round number. Since the installer defaults to INSTALLLEVEL=100 (see the Property table), any feature with a Level value of 100 or less will be installed. Since we have now given these features an install level of 200, these features will not be installed. Generally, this tactic can be used on any component you wish not to have installed (for Adobe Reader and some other applcations with simple installers), such as AIR and Acrobat.com. Those are the only two changes that need to be made to not have AUM installed.
    To make sure your users don't encounter an error while running Adobe Reader, make sure, in ACW, to uncheck the box Disable all updates under the Online and Acrobat.com Features section.
    Save the package (in ACW, File->Save Package). This modifies the setup.ini file so that it will use the changes you just made (saved by default in AcroRead.mst).
    I left my original instructions below, but marked as deleted. Please see step 5 below these deleted instructions. This is a new step. If you are performing application virtualization, you want to make the following changes to the MSI (via ORCA or ACW). I'm making these changes via ACW. The installer will fail during application squencing due to not being able to create to two certain registry keys. This is the easiest way that I can think of to get this to work.
    Start your sequencing machine (in my case, a VM).
    Install Adobe Reader 9.1.x (do not sequence, simply install).
    Once installation completes, open the Registry Editor (assuming Windows Vista; if using WinXP or below, try RegEdt32.exe).
    Browse to HKEY_CLASSES_ROOT\Installer\Win32Assemblies\Global
    Double click the following entry (make sure you get the right one, there are two similar entries!): Microsoft.VC80.CRT,publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762", processorArchitecture="x86".
    Copy the value of the entry (on Vista, the value is already highlighted,simply right-click and choose Copy. Otherwise, right-click and choose Select All and then right-click again and choose Copy.).
    Paste this value into Notepad. Save the file, making sure to select the Unicode encoding type from the Encoding drop-down list. Save it with the name Microsoft.VC80.CRT.txt
    Back in the registry editor, double-click the following entry: policy.8.0.Microsoft.VC80.CRT,publicKeyToken="1fc8b3b9a1e18e3b",type="win32-policy",versio n="8.0.50727.762",processorArchitecture="x86".
    Copy the value of the entry (on Vista, the value is already highlighted,simply right-click and choose Copy. Otherwise, right-click and choose Select All and then right-click again and choose Copy.).
    Paste this value into Notepad. Save the file, making sure to select the Unicode encoding type from the Encoding drop-down list. Save it with the name policy.8.0.Microsoft.VC80.CRT.txt
    Close the registry editor.
    Reset your VM so it is clean for the sequencing (i.e. revert to a snapshot).
    Back in the ACW, at the Registry portion, navigate to HKEY_CLASSES_ROOT.
    Right-click HKEY_CLASSES_ROOT and selet New->Key. Name the new key Installer.
    Right-click the Installer key and select New->Key again. Name the key Win32Assemblies.
    Create a new key in Win32Assemblies called Global.
    Select the Global key you just created.
    On the right-side of the editor, right-click and choose New->Multi-String Value. Name the new value: Microsoft.VC80.CRT,publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762", processorArchitecture="x86".
    Right-click the new value and select Modify
    Open the text file Microsoft.VC80.CRT.txt you created aboe.
    Press CTRL+A or Edit->Select All (in Notepad) and then press CTRL+C (or Edit->Copy).
    Back in ACW, paste the value from the clipboard and click OK.
    Now right-click the editor and choose New->Multi-String Value again. Name it policy.8.0.Microsoft.VC80.CRT,publicKeyToken="1fc8b3b9a1e18e3b",type="win32-policy",versio n="8.0.50727.762",processorArchitecture="x86".
    Open the policy.8.0.Microsoft.VC80.CRT.txt file created above.
    Copy the file contents as the value of the new entry in the ACW.
    Save the package. You should now be ready to install Adobe Reader via Setup.exe for sequencing.
    Updated 10 July 2009 12:00:00 EST (GMT-05:00). We have one more step to perform just to clean things up bit. I'm going to create another AIP using the patched MSI and our newly created MST. However, this does not work quite as one would expect.
    Run the following command: msiexec /a AcroRead.msi /t <Your_transform.mst>. I created this AIP in a folder called PatchedTransformed.
    The above step created another AIP in the PatchedTransformed folder. What's different about this AIP compared to the one made at the beginning of this procedure is that the MSI file was copied to the PatchedTransformed folder as well. However, the MSI is not merged with the changes from the MST as I expected. There are two things you can do:
    Modify the setup.ini file and add the following line to the [Product] section: CmdLine=TRANSFORMS="<Your_Transform.mst>", or
    Use ORCA. Open your patched MSI in ORCA. Choose Transform->Apply Transform... and select the transform generated by the ACW. Then choose File->Save Transformed As... and give the transformed MSI a new name, e.g. Custom-AdobeReader-9.1.2.msi.
    That's it. You now have a fully patched and modified Adobe Reader installer ready for installation or application virtualization.
    At this point, you should have an MSI and MST. If you want, you can use ORCA to merge the MST into the MSI. If you're using Setup.exe, you're going to have to change th Setup.ini file.
    To test that everything works, you can copy the files to a test directory and perform the following command: msiexec /a <AdobeReader.msi> [/t <Your_transform.mst>] Replace with the name of your MSI file and optionally, pass in your transform (definitely do this if you made a separate MST!). If all goes well, the installation should go well, too. During sequencing, you will still get an MSI installer error (actually, 2), number 1406, about not being able to write to two registry keys. These were the registry keys we added in the steps above. This does not happen on normal installatons.
    Please also note that I don't know whether the roaming user profile problem menioned in http://kb2.adobe.com/cps/404/kb404597.html is fixed in version 9.1.2. It was not fixed as of 9.1.0.163. This is all posted AS-IS. YMMV.
    UPDATE:
    In case you don't know, I will share a bit of enlightenment I had with my procedure above. This specifically relates to application virtualization and sequencing Adobe Reader for MS App-V.
    In step 4, I had you install Adobe Reader on a clean machine and obtain some registry information because otherwise, the installation may not be successful for virtualization. These steps are unneccessary. Here's why: you cannot "patch/upgrade" vitualized applications within the application itself. To patch/upgrade a virtual application, you have to use (in the case of MS App-V) the Application Virtualization Sequencing MMC to load the virtualized app, then run the upgrade/patch so that MS App-V can detect the changes and properly update the package. So what does this mean? Two things. First, whenever I use the ACW, under the Online and Acrobat.com Features section I always uncheck <b>Disable all updates</b>. However, checking this does not necessarily mean Adobe Reader does not install the Adobe Update Manager (AUM); in fact, it does install AUM, which is the feature that contains the component that attempts to write those registry entries and therefore, which is causing the error.
    Therefore, the solution (and what should be step 4) is to disable the installation of AUM. Now some have posted at various sites how to disable the installation of AUM by deleting a whole bunch of stuff in the MSI. This is not necessary. The steps are outlined in the new step 4 above. This should resolve sequencing issues.
    UPDATE 10 July 2009 12:00:00 EST (GMT-05:00) - Pertains to virtualizing Adobe Reader only.
    This doesn't work for virtualizing the application. When importing the application into MS App-V Server Management Console, the application version is still 9.1.0.163 even though the splash screen says 9.1.2. I think that my assessment is correct because of two reasons: 1) I still got the MS VC++ Runtime error when using a normal user with a roaming profile which Adobe said the latest 9.1.1 release fixed (and hence 9.1.2) (the AppData folder included) and for which Adobe's solution is a joke; 2) When I installed my "patched" Reader (as a normal install) with AUM and proceeded to go to Help->Check for Updates, the 9.1.2 update appeared in the list of updates (again, even though the splash screen said it was version 9.1.2). Adobe has got to get their patchng correct!!!
    For application virtualization, I'm going to recommend that you sequence the 9.1.0 version through to completion. Then, save the sequence and close it. Then re-open the sequence project for upgrade and applythe 9.1.2 patch. Whether you can use an ACW transform on the 9.1.0 installation and then patch, that's debatable. I sure hope so. If not, perhaps there's a way I can fudge it, namely, create an MST via ACW. Then, manually create an MST with the pertinent settings via ORCA and see if that works, instead.
    Having said all that, I seriously doubt this works at all even for GPSI deployment. Sorry all. Will post again when I finally get this application to sequence. Hopefully, the same principles will apply to GPSI deployment.
    Message was edited by: TTEConline on 10 July 2009 12:00:00 EST (GMT-05:00)

  • How can I get the float variable in 2 decimal point?

    after running the following simply manipulation program,
    14.85 should be returned, but in stead, 14.849999.
    how can i change the precision? i want the returned number in 2 decimal point.
    public class TestC {
    public static void main(String[] args) throws Exception {
                   float var = 0.00f;
                   var = (float)4.95 * 3;
                   System.out.println(var);

    There is absolutely no way that you can change the precision. It is fixed.
    If you want to display two decimals places (which is not the same as changing the precision) then you can use the following.
      float var = 0.00f;
      var = (float)4.95 * 3;
      java.text.DecimalFormat f = new java.text.DecimalFormat("0.00");
      System.out.println("var=" + f.format(var));

  • Comma instead of decimal point

    Is there a global way to doubles and floats to use a comma instead of a decimal point (like we do in Europe) when output as a string? (as opposed to having to reformat each number individually every time I want to display it)

    Kramis wrote:
    Thanks. Writing code internally is no problem with a dot. Will the locale of my computer determine the string output style automatically?I'm not sure what exactly to change on your PC to make that happen, but yes, I believe you can do this. This varies on every OS, of course, but you should look into your OS's country- and/or location settings.
    Kramis wrote:
    ... but then I assume I have to use it every time I output to a string with each individual number.That is correct.
    Kramis wrote:
    ... I was hoping for a more global method.You could place the formatter(s) in a separate class and invoke them from there: no need to create new formatter(s) every time you want to display a number. But you will have to do yourFormatter.format(aDouble) every time though.

  • How to get values after decimal point

    Hi,
    source value is 12345.678 i wana the target side in 12345  in field and 678 in one field.
    the source value its not fixed  before decimal point value pass to one field and after decimal point value pass to other field
    please help to me how to do this one.

    Hi Swathip,
    You dont need to create 2 UDFs. You just need to create 1 simple UDF which takes one string array as input as usual and it has 2 Resultlist outputs. You need to map this 2 outputs from the UDF to the respective 2 target side fields where the values are to be mapped, one containing the portion before the decimal, and one after the decimal.
    I HAVE TESTED THE UDF AND IT WORKS ABSOLUTELY FINE.
    THE CODE FOR THE UDF IS AS FOLLOWS:
    public void sepDec(String[] num,ResultList wholeNum,ResultList afterDec,Container c)
      String part1=null;  // Stores the part before the decimal point
      String part2=null;  //Stores the part after the decimal point
                            if(num[0]!=null && num[0]!=""){
                   int index = num[0].indexOf(".");
                   part1 = num[0].substring(0,index);
                   part2=num[0].substring(index+1, num[0].length());
                         wholeNum.addValue(part1);
                   afterDec.addValue(part2);
    THIS UDF IS A CLASSIC EXAMPLE WHERE AN UDF HAS 2 OUTPUTS, WHICH IS VERY RARELY SEEN BUT VERY MUCH CORRECT
    PLEASE LET ME KNOW IF THIS CODE WAS HELPFUL TO YOU
    CHEERS,
    BISWAJIT
    Edited by: 007biswa on Feb 8, 2011 5:02 PM

  • Query about decimal point field in mapping

    hi,
    In interface one field is supposed , Both dollars and cents will be formatted with an implied decimal point before the last  two digits in the data. 
    for exm : input is -620.27. then output should be -000062027. Maximum length of the field is 10.
    if input is 44.44.then output should be 0000004444.
    In this way.
    Name of the field is Pay_Amount.
    how do i get this mapping?
    Regards,
    Sanghamitra

    Use the replace string function to replace decimal point with null. Then pass the value to a udf.
    Write a udf (value cached) and pass the input a= value from Pay_Amount and b - required length of field (10)
    public String AddLeading(String a,String b,Container container){
    String temp = new String(String.valueOf(Integer.parseInt(a)));
    int temp1 = Integer.parseInt(b);
    for(int i = 0; (temp1 - a.length()) > i ; i++)
    temp = "0" + temp;
    return(temp);

Maybe you are looking for

  • Blackberry Storm2 - brand new took at Hazlet,NJ Verizon Store - not working since 2nd day!

    I bought this nice BB Storm2 GSM Phone from one of the direct Verizon's own stores in Hazlet, NJ (Route 35), because I was in need of making calls from abroad to US and other places on business and personal calls.  The unit was working fine on the 1s

  • Cannot buy paid apps, but I can get free ones. iTunes cannot complete action error.

    When trying to buy paid apps, I get an error. The error states " iTunes can not complete action" every time. I have $50 in my account and no restrictions. This error does not come up when installing free apps. Any help?

  • Gadmin owner of all files

    Hi I have just discovered that read and write access to all our files and folders was changed to "gadmin" and pretty much everyone has read only access to the files. The files and folders are on a Mac, and the other users are on other Macs on the loc

  • Mathematical calculations using BigDecimal

    Hi all, I am doing some mathematical calculations using float variables. They are not working properly because of rounding issues....So, before I change the whole program to do the same calculations using BigDecimal, just wanted to check out whether

  • How is SAP BW AND SAP FI-CO COMBINATION.

    Hai I am MBA Graduate. I did BW Course. Now i would like to do SAP FI-CO Course. Is it good decision. I need your Help. Please go through this query. Thanks in advance........ Purushothama Reddy.K