Formatting numeric values

Hi all ! We have a client requirement to format all number in reports using a space as a thousand separator and enclose negative numbers in parenthesis.
The only method I found that works with a space as a thousand separator is :
<?xdoxslt:format_number(12345, 1, ' ', '.', $_XDOLOCALE)?>
However in the above syntax there is no way to specify the formatting of negative numbers. What I need is something similar to the below:
<?if: ./M1 < 0?>
<?concat('(',<?xdoxslt:format_number(./M1, 1, ' ', '.', $_XDOLOCALE)?>,')')?>
<?end if?>
<?if: ./M1 > 0?>
<?xdoxslt:format_number(./M1, 1, ' ', '.', $_XDOLOCALE)?>
<?end if?>
In other words I need to be able to specify both the thousands separator and the brackets for -ve numbers in the same format statement.
Thanks !

Can you achive it on the database view side instead? Add a new column with to_char or a special function you can write. If this is related to the payments formatting, I think you can edit "IBY_FD_EXTRACT_EXT_PUB" package to extend it.
I hope this helps.
Sinan

Similar Messages

  • How can I add a comma in between every three digits in a numeric value?

    Hello,
    I would like to have the following number format displayed on my 2D Axis system plot y-axis in my report, (100,000 or nnn,nnn). I have looked through the "Formating Numeric Values in Text" help section but I can't seem to figure out how to do this. Any suggestions would be approciated.
    Thanks

    Hi wils01,
    Try this:
    StrVar = 1000000
    StrVar = FormatNumber(StrVar, 0, FALSE, FALSE, TRUE)
    MsgBox StrVar
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • How do I copy/paste full numerical-only account strings into the Projects WebADI template when the account segment fields in the template require use of the dropdown because they're formatted as alpha-numeric values?

    How do I copy/paste full numerical-only account strings into the Projects WebADI template when the account segment fields in the template require use of the dropdown because they're formatted as alpha-numeric values? I'm using the Integrator named "Projects - Transaction Import" and a custom Layout created based on the seeded Layout named "Transaction Import - Accounted". Do I need to somehow change my Layout to make the Document accept numerical values instead of requiring alpha-numeric values? I need to be able to populate the Document with a large amount of transactions and cannot feasibly go through every transaction to add the alpha-valued name of the account segment to every segment that requires it. The segments in particular causing the problem are "Expnd Type" and "Organization Name" which are both alpha-numeric and as such contain the segment number and name; I need to be able to only have to enter the Natural Account Number (6-digit number only) and the Organization Number (5-digit number only).

    How do I copy/paste full numerical-only account strings into the Projects WebADI template when the account segment fields in the template require use of the dropdown because they're formatted as alpha-numeric values? I'm using the Integrator named "Projects - Transaction Import" and a custom Layout created based on the seeded Layout named "Transaction Import - Accounted". Do I need to somehow change my Layout to make the Document accept numerical values instead of requiring alpha-numeric values? I need to be able to populate the Document with a large amount of transactions and cannot feasibly go through every transaction to add the alpha-valued name of the account segment to every segment that requires it. The segments in particular causing the problem are "Expnd Type" and "Organization Name" which are both alpha-numeric and as such contain the segment number and name; I need to be able to only have to enter the Natural Account Number (6-digit number only) and the Organization Number (5-digit number only).

  • How to get the day as numeric value without formatting the date?

    Hello,
    to reduce the costs of a sql-statement I need to get the day of a date-value as number (to compare it to a numeric value) without any formatting. Every formatting results in a full table scan of the table with the date field. Is there any function to solve this problem?
    Oracle version is 11g.
    Thanks Carsten

    CarstenDD wrote:
    select T1.SYSID from T2,T1
    where T2.SysT1 = T1.SYSID
    and T2.Date1 < '01.03.2011' --German date format
    and to_number(to_char(T2.Date2,'DD')) = 1
    and T2.Inactive = 0
    The explain plan shows a full table scan on T2. With EXTRACT(DAY FROM T2.Date2) there is no difference.It probably would and should in any case.
    Look at your predicates, which of them would reduce the resultset to a fair size compared to the total number of records in the table?.
    - You may have a huge number of records when you say date less than
    - Of these perhaps one seventh have day = 1
    - My guess is that most have Inactive = 0
    Besides, you should not rely on implictit char to date conversion, always use TO_DATE
    How many records are in the table? - How many will that query return?
    Regards
    Peter

  • How to pass a numeric value without its format to a subsequence?

    I have a sequence with a numeric parameter that is interpreted as a 16-bit bit mask. The numeric format of the parameter of that sequence is therefore "%#.16b".
    I also have a Sequence Call step in a second sequence (in the same file) that calls this first sequence. That second sequence passes literal values for that bit mask in the Sequence Call. My specific problem at this point is that, while debugging, I don't see the parameters in the numeric format I explicitly specified for them, but rather in one of three possible formats:
    - Literal values seem to come with a "system"-wide (maybe sequence-file-specific?) default format, which is decimal instead of binary.
    - Variable values (e.g. from the Locals) have their specific (and also explicitly defined) numeric format, which can be anything instead of binary.
    - If I don't pass a value but use the parameter default, this default is shown in the parameter's actual numeric format, binary. This is the only case that works as intended.
    How do I get the parameters to *always* keep the numeric format I specified for that sequence?
    The attached file tries to reproduce the problem and the intended result using only Sequence Calls and Message Popups. My version is TestStand 3.1f1.

    I just want to debug my subsequence and see its parameter represented as "0b0000000000011010" when I supply a literal value of 26.
    Ok, I try to be more explicit and show my problem using your suggestion: (The resulting sequence file is attached.)
    - Create a new sequence file.
    - Insert a new sequence "Sequence".
    - In "Sequence", create a parameter "Parameter" of type "Number".
    - Change the numeric format of "Parameter" to Binary with a minimum of 16 digits and *without radix*, ie. "%.16b". (In the other sequence file I used "%#.16b".)
    -> Intention: I want to see the supplied parameter value in this numeric format when debugging or converting to a string using Str().
    - Still in "Sequence", create a local "Local" of type "Number".
    - Change the numeric format of "Local" to the same as above, "%.16b".
    -> Intention: I want to demonstrate your way here, which actually works (I can use it as the "reference string" of the yet-to-be-defined message box), but does in an indirect way what I want to do directly using only sequence parameters.
    - Insert a "Statement" step in "Sequence".
    - Of "Statement", "Edit Expression" and use "Locals.Local = Parameters.Parameter" as the expression.
    - Insert a "Message Popup" step in "Sequence".
    - Of "Message Popup", do "Edit Message Settings", and use the following expression as the Message Expression:
    "I have this: " + Str(Parameters.Parameter) + "\n" +
    "I want this: " + Str(Locals.Local)
    - Insert a "SequenceCall" step in MainSequence.
    - Point "SequenceCall" to sequence "Sequence" of the current file and supply exactly the literal value 26 for the parameter.
    - In "MainSequence", create a local "Local" of type "Number".
    - Change the numeric format of this "Local" to something very dangerous, eg. "%9.16o".
    - Assign the exact numeric value 4616 to this "Local" variable.
    -> Intention: I want to demonstrate that there are cases where a propagation of numeric formats to subsequences can actually be more than a mere nuisance.
    - In "MainSequence", insert a second Sequence Call step, "SequenceCall_2".
    - Let "SequenceCall_2" call the same sequence "Sequence", but supply Locals.Local for the parameter.
    - Now run the sequence file in "Single Pass" mode.
    - In the first popup, you see that I get the (binary!) representation 0000000000011010 only for the local variable, but I also want it for the parameter value.
    - In the second popup, you see that I get the (octal!) representation 0000000000011010 for the parameter value, which would be correct (for what I want) if I had supplied the decimal literal 26 again. You see that the binary representation is something entirely different here!
    I hope you now get the point. Thanks for answering!
    Attachments:
    numeric-format-02c.seq ‏35 KB

  • Type conversion from numeric value to time format

    hi guys,
    i hvae column called (Time in seconds).i need to convert the numeric value of one column into time format HH:MM:SS. for example 3012 =00:50:12.
    how can i proceed the same in the front end.
    Thanks & Regards,
    Nandu

    Hi..
    here is the code.. (assuming 10000 in the following code is your seconds, replace that with your value...)
    cast(TRUNCATE(10000/3600,0) as varchar(2)) || ' : ' || cast(TRUNCATE(60*((10000/3600)-(TRUNCATE(10000/3600,0))),0) as varchar(2)) || ' : ' ||cast(60*((60*((10000/3600)-(TRUNCATE(10000/3600,0))))-(TRUNCATE(60*((10000/3600)-(TRUNCATE(10000/3600,0))),0))) as varchar(2)) You can also use floor instead of truncate...
    Above will give only h:m:s format if hh (or) mm (or) ss are between 0 and 9. So, you may need to add case when condition before each concatenation: if hh is between 0 and 9 then need to concatenate with 0 else the same code...
    Thanks...

  • How can change numeric value to date format? example value 1070131(CYYMMDD)

    in the datatable can i change numeric value to date format . in database date value is like 1070131 (CYYMMDD). I want to see 31/01/07(DD/MM/YY) or 31 Jan 07 . Is it possible?
    Thanks,

    Did you solve your problem?

  • Send numeric value in relative time format to text file

    Hi, I'm trying to send a numeric value to a text file (.txt). However, this value must be in Relative Time format, which is displayed correctly in my front panel but not in my text file. The text file displays  it as an integer-.
    I know that this can be achieved by sending a string instead of a numeric value, but the thing is, I'm sending other numeric values along with this one, which means ALL the data must be numeric in order for Labview to send it, since it does not seem to accept a polimorphic array of data.
    Any suggestions?

    Here the resaved Write to Spreadsheet File.vi for writing String arrays.
    - Partha
    LabVIEW - Wires that catch bugs!
    Attachments:
    Write To Spreadsheet File_String.vi ‏58 KB

  • Format numeric field as user enters value

    I have a numeric field that I want to be formatted as 999-999999-999 so that when users enter 12-digit part numbers, the field automatically formats the value that they have entered. Is there a way to format their value as it is entered so that when they type the fourth number, a hyphen is placed between the third and fourth digit?
    Additionally, is there a way to allow a numeric field to have a default value with letters? I want to have a default value of "xxx-xxxxxx-xxx" but I don't want to allow the user to enter anything but numbers in the field. I tried using a text field, but I can't get it to reject letters and only accept numbers.

    Hi,
    You can define a display format pattern of "num{999-999999-999}" that will add the hyphens in once they leave the field, or maybe having three fields with the comb option set and hyphens between them would suit more?
    You can use the null display pattern to display any sort of text in a numeric, date, or whatever field.  Have a look at this sample, Adobe LiveCycle Designer Cookbooks by BR001: Adding Ghost Text to LiveCycle Designer form
    Regards
    Bruce

  • BEx report hangs- selecting Alpha numeric values

    I am working on the existing customer report
    customer is the selection parameter for my report.
    Issue is Customer has numerical and alpha numerical values.
    If i give parameter rangs of value is numerical
    01 - 500 query works fine
    01-50cust1
    50 cust1 - 195 cust2
    query hangs.
    Is their any way we can improve the query performance .
    for searching alphanumerica values.
    I have a workbook is built based on the query.
    morethan 6 queries attached in the sheet 1....sheet2
    each sheet has it is own query with values.
    when I refresh and execute the workbook with the customer alphanumerica values it hangs.
    Query is built based on the multiprovider.
    Please help me onthis

    Hello,
    Try exporting in the 'fully formated grids and text'. It shouldl give you the 'member alias' used in the report.
    Looks like if you export in the 'querry ready grids and text' it will show the 'member name' as in database although the report may have used the 'member alias'.
    Regards

  • Creating a sound from an array of numeric values and playing it on speakers

    How do I create take a sound I have stored as an array (or could be an arraylist if needed) of numeric values (at the moment as doubles) whiten my program and output it to speakers? I am using blueJ.
    for example (0, 0.1, 0.4, 0.8, 0.9, 1, 0.8, 0.6, 0.3, 0.1, etc...) would be a very high frequency sin wave.
    Edited by: alan2here on Feb 6, 2008 11:28 AM

    I stumbled upon this thread with a question somewhat related:
    I've recorded a wave file from microphone. But what I would like is an array of numbers in the same way alan said. I'm also working on my own project involving signal processing (i'm trying to do speech recognition).
    I can't really find a nice way of getting that array of numbers. I've tried to find out how wave file stores it's data, and directly read from the File object, but i figured there should be an easier way...
    I used this code to read the sound:
    *     SimpleAudioRecorder.java
    *     This file is part of jsresources.org
    * Copyright (c) 1999 - 2003 by Matthias Pfisterer
    * All rights reserved.
    * Redistribution and use in source and binary forms, with or without
    * modification, are permitted provided that the following conditions
    * are met:
    * - Redistributions of source code must retain the above copyright notice,
    *   this list of conditions and the following disclaimer.
    * - Redistributions in binary form must reproduce the above copyright
    *   notice, this list of conditions and the following disclaimer in the
    *   documentation and/or other materials provided with the distribution.
    |<---            this code is formatted to fit into 80 columns             --->|
    import java.io.IOException;
    import java.io.File;
    import javax.sound.sampled.DataLine;
    import javax.sound.sampled.TargetDataLine;
    import javax.sound.sampled.AudioFormat;
    import javax.sound.sampled.AudioSystem;
    import javax.sound.sampled.AudioInputStream;
    import javax.sound.sampled.LineUnavailableException;
    import javax.sound.sampled.AudioFileFormat;
    public class SimpleAudioRecorder
    extends Thread
         private TargetDataLine          m_line;
         private AudioFileFormat.Type     m_targetType;
         private AudioInputStream     m_audioInputStream;
         private File               m_outputFile;
         public SimpleAudioRecorder(TargetDataLine line,
                             AudioFileFormat.Type targetType,
                             File file)
              m_line = line;
              m_audioInputStream = new AudioInputStream(line);
              m_targetType = targetType;
              m_outputFile = file;
         /** Starts the recording.
             To accomplish this, (i) the line is started and (ii) the
             thread is started.
         public void start()
              /* Starting the TargetDataLine. It tells the line that
                 we now want to read data from it. If this method
                 isn't called, we won't
                 be able to read data from the line at all.
              m_line.start();
              /* Starting the thread. This call results in the
                 method 'run()' (see below) being called. There, the
                 data is actually read from the line.
              super.start();
         /** Stops the recording.
             Note that stopping the thread explicitely is not necessary. Once
             no more data can be read from the TargetDataLine, no more data
             be read from our AudioInputStream. And if there is no more
             data from the AudioInputStream, the method 'AudioSystem.write()'
             (called in 'run()' returns. Returning from 'AudioSystem.write()'
             is followed by returning from 'run()', and thus, the thread
             is terminated automatically.
             It's not a good idea to call this method just 'stop()'
             because stop() is a (deprecated) method of the class 'Thread'.
             And we don't want to override this method.
         public void stopRecording()
              m_line.stop();
              m_line.close();
         /** Main working method.
             You may be surprised that here, just 'AudioSystem.write()' is
             called. But internally, it works like this: AudioSystem.write()
             contains a loop that is trying to read from the passed
             AudioInputStream. Since we have a special AudioInputStream
             that gets its data from a TargetDataLine, reading from the
             AudioInputStream leads to reading from the TargetDataLine. The
             data read this way is then written to the passed File. Before
             writing of audio data starts, a header is written according
             to the desired audio file type. Reading continues untill no
             more data can be read from the AudioInputStream. In our case,
             this happens if no more data can be read from the TargetDataLine.
             This, in turn, happens if the TargetDataLine is stopped or closed
             (which implies stopping). (Also see the comment above.) Then,
             the file is closed and 'AudioSystem.write()' returns.
         public void run()
                   try
                        AudioSystem.write(
                             m_audioInputStream,
                             m_targetType,
                             m_outputFile);
                   catch (IOException e)
                        e.printStackTrace();
         public static void main(String[] args)
              if (args.length != 1 || args[0].equals("-h"))
                   printUsageAndExit();
              /* We have made shure that there is only one command line
                 argument. This is taken as the filename of the soundfile
                 to store to.
              String     strFilename = args[0];
              File     outputFile = new File(strFilename);
              /* For simplicity, the audio data format used for recording
                 is hardcoded here. We use PCM 44.1 kHz, 16 bit signed,
                 stereo.
              AudioFormat     audioFormat = new AudioFormat(
                   AudioFormat.Encoding.PCM_SIGNED,
                   44100.0F, 16, 2, 4, 44100.0F, false);
              /* Now, we are trying to get a TargetDataLine. The
                 TargetDataLine is used later to read audio data from it.
                 If requesting the line was successful, we are opening
                 it (important!).
              DataLine.Info     info = new DataLine.Info(TargetDataLine.class, audioFormat);
              TargetDataLine     targetDataLine = null;
              try
                   targetDataLine = (TargetDataLine) AudioSystem.getLine(info);
                   targetDataLine.open(audioFormat);
              catch (LineUnavailableException e)
                   out("unable to get a recording line");
                   e.printStackTrace();
                   System.exit(1);
              /* Again for simplicity, we've hardcoded the audio file
                 type, too.
              AudioFileFormat.Type     targetType = AudioFileFormat.Type.WAVE;
              /* Now, we are creating an SimpleAudioRecorder object. It
                 contains the logic of starting and stopping the
                 recording, reading audio data from the TargetDataLine
                 and writing the data to a file.
              SimpleAudioRecorder     recorder = new SimpleAudioRecorder(
                   targetDataLine,
                   targetType,
                   outputFile);
              /* We are waiting for the user to press ENTER to
                 start the recording. (You might find it
                 inconvenient if recording starts immediately.)
              out("Press ENTER to start the recording.");
              try
                   System.in.read();
              catch (IOException e)
                   e.printStackTrace();
              /* Here, the recording is actually started.
              recorder.start();
              out("Recording...");
              /* And now, we are waiting again for the user to press ENTER,
                 this time to signal that the recording should be stopped.
              out("Press ENTER to stop the recording.");
              try
                   System.in.read();
              catch (IOException e)
                   e.printStackTrace();
              /* Here, the recording is actually stopped.
              recorder.stopRecording();
              out("Recording stopped.");
         private static void printUsageAndExit()
              out("SimpleAudioRecorder: usage:");
              out("\tjava SimpleAudioRecorder -h");
              out("\tjava SimpleAudioRecorder <audiofile>");
              System.exit(0);
         private static void out(String strMessage)
              System.out.println(strMessage);
    }Daniel

  • Error message - BSEG-WRBTR enter a numeric value

    Hi,
    I am having a problem with loading data using a abap program that calls RFBIBL00 program and the fb01 Transaction. The process is that the user enters the data in a excel sheet, saves as a tab deliminted txt file. The abap program reads the txt file, does some processing and submits the RFBIBL00 program with the FB01 code. When I check in SM35, it shows on the "incorrect " tab. When you display the log for the process, It is displaying "Formatting error in the field BSEG-WRBTR; see next message" and "Enter a numeric value".  I am not sure where to start looking to try to correct this problem. I am tracing the abap program that submits the RFBIBL00 process and I am not finding where this is occuring. I am new to the ABAP world and I am having a hard time figuring this out. Can someone please let me know if I am proceeding in the right direction or if there is another way of solving this. I am not sure what program is generating the above error messages. If there is more information that is needed, please let me know and I will try to get it for you.
    thanks in advance for the help on this

    Hi,
    There may be two possiblities for this issue.
    1. Incorrect data passed to the field BSEG-WRBTR
    2. Check the Decemial Notation(Menu Path->System->status->Own profile and Defaults Tab). If it is diffrent with the entered amount format, then it will trigger error.
    YOu can run the Bach in the fouground by  choosing fouground radio button option in the Pop up.
    Thanks,
    Ramakrishna

  • How do I assign a numerical value to text cells in cartesian products?

    Hi, this is more of a two part question.
    Question 1
    I need to be able to assign numerical values (Table Value £ of set up) to text cells (Set Up).
    1. The table "Combinations" then uses the formula
    IF($A3≤Information::$B$8, MOD(INT((ROW(cell)−3)÷PRODUCT(C$1:$G$1)), B$1), "")
    to take info from the "Information" table and create all possible permutations of "Set Up"
    2."List" is the printed list of "Combinations"
    3."Output of list" concatenates the data from "List".
    Question 2
    4. How do I print out the total numerical value of the concatenated string of "Output of List" into Output (£) of List"?

    >
    When posting code or code snippets. HTML/XML or input/output, please use the code tags. The code tags help retain the indentation and formatting of the sample. To use the code tags, select the sample and click the CODE button.
    Here is how the first code snippet would have appeared in code tags.
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    float num1, num2, num3, result;
    num1 = Float.valueOf(jRadioButton1.getMnemonic());
    num2 = Float.valueOf(jRadioButton2.getMnemonic());
    num3 = Float.valueOf(jRadioButton3.getMnemonic());
    result = num1+num2+num3;
    jTextField1.setText(String.valueOf(result));And while I'm on the subject of retaining the indentation of the original sample, please use one of the two common conventions for indenting code blocks. E.G.
    Convention 1:
    class TheClass {
        TheClass() {
    }Convention 2:
    class TheClass
        TheClass()
    }

  • Question regarding creation of xml-elements with numerical values

    When i create xml-documents from xml stored in the database (xmltype table based on an xml-schema), i find that numerical values which were stored as 0.395 (with the "." as the decimal separator) are retrieved as .395.
    Is it possible to apply a format mask so that the numerical value is retrieved as 0.395?
    thanks, Bart
    N.b. Note that i select a complete xml-fragment. So my problem seems related to the storage or retreival of 'schredded' XML. I do not use SQL/XML-functions with relational data, in which case i know how to apply a format mask.

    I don't use XSLT, i just query the XML-documents stored in an XMLType column with a simple SQL-statement.
    I have posted a simple example over here Re: Is it possible to influence the creation of empty elements?

  • Validation on numerical values in webdynpro

    Hi Friends,
    I am facing one probelem with  validation on numerical values. In my application there is a scenario.. Input fields are  Mibile number  and  email id.
    when i enter the invalid phone  number like : 09988wertyy    it should throw the error like  enter  only numerical values.
    In the same way  i should  validate the email id with format .. like  ratnakar.alwala@ accenture.com. if it is in valid then it should throw the error.
    could  any body  please give me the approach.
    Thanks and Regards
    Ratnakar reddy alwala

    Hi Ratnakar,
    For number validation, what I did was :
    1. Bind a context variable (Say Number) of type String to the input Field
    2. At the time of submission, do the following
    String num=wdContext.xurrentContextElement().getNumber();
    if(num!=null)
      try
            double num=new Double(amnt.trim()).doubleValue();
      catch(NumberFormatException exc)//IF AMOUNT ENTERED IS NOT VALID
       wdComponentAPI.getMessageManager().reportException("Invalid Number",true);
    Regards
    Fahad Hamsa

Maybe you are looking for