Converting char to numeric value

I have table with social security no. but application does not
have any validation for data so i get all different kinds of
data like...
123-24-0988
123458900
n/a
N
f234-90-8877
12 345 6789
Now i want to remove all '-' and alpha char from value and just
want to remain only nuemric characters so i can use it as where
parameter.
Is their any function that i can use for this or any other logic
that i can use for this?
Thanks

As demonstrated in a previous discussion regarding checking for
numeric values, translate does not produce the proper results
when you translate it to a null value. However, you can achieve
the desired results, by translating to spaces, then replacing
the spaces:
UPDATE table_name
SET ssn = REPLACE (TRANSLATE (LOWER
(ssn), 'abcdefghijklmnopqrstuvwxyz- ', ' '), ' ', '');

Similar Messages

  • Converting char to decimal value format as defined in SU3(User profile)

    Hi Techies,
    Is there any FM to convert CHAR value into Decimal fomat as defined in SU3.
    If we use, WRITE statement for printing the value in decimal format , it shows the value in decimal format correctly
    in SU3 transaction , there are three different decimal format notations which can be user specific
    I would appreciate your valuable inputs ....
    Thanks
    Santhosh

    This is my code in a generic method to transform a table into a csvrow
    when 'P'.
            tmpstr = <p_field>.
            len = strlen( tmpstr ) - 1.
            tmpstr = tmpstr+0(len).
            if <p_field> < 0.
              sign = '-'.
            else.
              sign = ' '.
            endif.
            case decimalformat.
              when 'X' or 'E'.
                split tmpstr at '.' into int frac.
                ptmp = int.
                write ptmp to cp.
                shift cp left deleting leading space.
                replace all occurrences of '.' in cp with ','.
                concatenate
                  s
                  sign
                  cp
                  frac
                  delimiter
                into s in character mode.
              when 'Y' or 'D'.
                split tmpstr at '.' into int frac.
                ptmp = int.
                write ptmp to cp.
                shift cp left deleting leading space.
                replace all occurrences of ',' in cp with '.'.
                concatenate
                  s
                  sign
                  cp
                  frac
                  delimiter
                into s in character mode.
              when ' '.
                concatenate s sign tmpstr delimiter into s in character mode.
              when others.
                concatenate s '????????' delimiter into s in character mode.
            endcase.
    where pfield is a fieldsymbol type P. (honestly ist from type any, but determined by RTTI). I needed this cause i want to format the value from "outside" without taking the user settings in consideration as write...to.. is doing.
    What i'm doing is to use the write... to... clause modifying the result (change decimal point, thousand separator and sign) according to the demanded decimal notation.
    Edited by: Rainer Hübenthal on Oct 7, 2009 4:47 PM

  • Needing to convert a local "numeric" value to a string type using the expression browser.

    I am trying to convert a "numeric" local value to a string through the expression browser in order to supply a string arguement.  I am currently looking through the expression browser options, but I can not find any type of Number "ToString()" function.
    Solved!
    Go to Solution.

    Hi,
    Str() function
    ie
    locals.tostring = Str(locals.dec_value)
    Regards
    Ray Farmer

  • How to covert exponent figure in char to numerical value

    Hi all,
    I am getting value 3.0000000000000000E+01 in one of char field in the output of my report , But I want it to be display as '30' . Please help , and tell how to convert the value
    Thanks and regards,
    V.Kumar

    Hello,
    - You will find below the code that will answer to your question :
    REPORT ztest.
    DATA : wv_count TYPE sy-dbcnt.
    DATA : wv_fltp  TYPE imrg-readg.
    DATA : wv_char  TYPE char22 VALUE '3.000000000000E+01'.
    MOVE   wv_char  TO wv_fltp.
    WRITE  wv_fltp  TO wv_char EXPONENT 0 DECIMALS 0.
    WRITE / wv_char.
    Cordialement,
    Chaouki.

  • Converting char to number value specfically like '6.35'

    I am facing a very peculiar problem, if i try to convert a FLOATING NO. in form of CHARACTER to NUMBER value , then to_number function gives VALUE-ERROR
    eG. TO_NUMBER('6.35') is resulting in an error. But TO_NUMBER('6') works fine. My forms are working absolutely ok on 2-tier but not on 3-tier.Please Help.

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Bogdan Dincescu ([email protected]):
    Must have something to do with your NLS settings on your application server, something for the decimal separator. I guess to_number('6,35') would work OK.
    I'm not sure exactly what settings you should have on the application server.<HR></BLOCKQUOTE>
    Thank you for your reply, I guess it can be the problem becoz forms with such code are working fine on Win2000 but are giving a problem on NT , can u give me a clue why it is happening ???
    null

  • How do u convert a numeric value to char

    hi,
    how do u convert a numeric value NUMBER(22) to a character value.... like a to_char() function?
    i've tried the CAST function it won't work.

    Hi,
    Use of CAST function will convert NUMBER to CHAR but it takes a lot of time if there are large number of recrods.
    Syntax:
    CAST(col_name AS char)
    I have tried this, it worked fine for less records.
    Are you getting any error while using cast function or while querying..
    As far as I know it won't give error in these cases (if correct syntax used) but it will take very much time (depending on the number of records) while querying.
    -Vency

  • Function module to convert character value of month into numeric value?

    Hi Experts,
                     I need to convert a character value of a month in three alphabets to its numeric value.
    e.g. 'jun' should be converted into '06' and 'jan' into '01' using a function module.Can anybody please provide me a similar function module?
    TIA
    Abhishek

    try this code:
    DATA: text(20) TYPE c,
    date TYPE sy-datum.
    text = '06. Jul 06'.
    TRANSLATE text TO UPPER CASE.
    TRANSLATE text USING '. '.
    CONDENSE text NO-GAPS.
    CALL FUNCTION 'CONVERSION_EXIT_SDATE_INPUT'
    EXPORTING
    input = text
    IMPORTING
    output = date.
    WRITE date USING EDIT MASK '__.__.____'.
    Regards,
    Dara.

  • Function modules for converting Char value to hexadecimal value

    Hi All,
    Function modules for converting Char value to hexadecimal value.
    Thanks in advance

    Hi,
    use this function module:
    <b>RSS_UNIQUE_CONVERT_TO_HEX</b>
    regards
    Debjani
    Rewards point for helpful answer

  • Convert numeric value to display as text based on record in another table? ASP/VB

    I have an orders table:
    orderID (PK)
    pickupname
    pickupaddress
    pickupregion (numeric)
    pickuppostcode
    deliveryname
    deliveryaddress
    deliveryregion (numeric)
    deliverypostcode
    I also have a regions table:
    regionID
    regionname
    On my ASP page, I would like to display the pickup and
    delivery addresses as
    follows, but also need this to be within a repeat region as I
    am displaying
    a number of orders on the page (I have wrapped what I want in
    the repeat
    region in dashes, below):
    ---------Repeat Region Start-----------
    Pickup Address:
    Name
    Address
    Region (pickupregion)
    Postcode
    Delivery Address:
    Name
    Address
    Region (deliveryregion)
    Postcode
    --------Repeat Region End------------
    As it displays at the moment, I get this (using sample data):
    ---------Repeat Region Start-----------
    Pickup Address:
    Joe Bloggs
    High Street
    12
    HT12 5TY
    Delivery Address:
    Jane Bloggs
    The Mall
    33
    DT6 5TG
    --------Repeat Region End------------
    Is there any way to convert these numeric values to the
    actual region name
    but to keep it within one recordset so that I can use the
    repeat region? I
    tried creating a recordset for regions (SELECT regionID,
    regionname FROM
    tblRegions WHERE regionID = pickupregion OR regionID =
    deliveryregion), but,
    because I'm not repeating this region, it just displays the
    same regional
    name for every order, albeit the first record returned does
    contain the
    correct values! :o)
    I was thinking about some kind of inner join, but it's having
    two numeric
    region fields in the orders table that is causing me
    headaches! PS. I need
    to keep the two addresses within one orders table - I had
    thought of that!
    Got me a bit stumped, I have to say. Any help would be
    greatly appreciated.
    Thanks.
    Regards
    Nath.

    I've tried this one already.
    I tried to leave it blank, & nbsp ; , text,... but the problem is that our lov is build by a function and it always returns a query, so the LOV is never null.
    I figured something out: made a process after header that has some cursors to get the values from the database and changed the item to a simple display as text-field. There were only 4 that were wrong, so it wasn't to much work.

  • Numeric Values Converted to Scientific Notation

    My BPEL process converts numeric values to scientific notation (eg. 12345678 is converted to 1.2345678E7). This then causes problems when I try to perform any mathematical operations on these values during an XSL transformation (output - NaN)
    Is there any way I can stop this data conversion?
    This occurs with BPEL 10.1.2.0.2. I'm loading the data from an Oracle 9.2 database using the DbAdapter.
    I've written an XSL routine to convert these values back to the correct decimal notation, but would prefer to stop this happening rather than workaround the problem.

    On further investigation, this occurs for values loaded from Oracle FLOAT database type.
    The XSD generated for the DbAdapter uses type xs:double for this field, but I've also tried changing this to xs:decimal & xs:float and still get the same problem.

  • Excel converts numeric values to date

    Hi,
    I have a JSP page which is sending data to excel.
    response.setContentType("application/vnd.ms-excel");
    response.addHeader("Content-Disposition", "attachment;filename=\"a.xls\"");
    I am using codes above. But excel converts numeric values to date. for example I send "18.5" but excel convert it to "18.May". But when I add " " before the value there is no problem. But I dont want to use this
    how can I fix it. Thanks in advance.

    hi,
    the problem is not with your jsp encoding but with excel settings
    enter the mathe-statistics block in your excel program change setting from date to numbers
    that is all

  • How 2 convert numeric value to character value?

    Hi friends,
    I want to convert numeric value to the character value.
    Is there any FM available?
    Points rewared soon.
    Regards
    Ronn

    REPORT ZSPELL.
    TABLES SPELL.
    DATA : T_SPELL LIKE SPELL OCCURS 0 WITH HEADER LINE.
    DATA : PAMOUNT LIKE SPELL-NUMBER  VALUE '1234510'.
    SY-TITLE = 'SPELLING NUMBER'.
    PERFORM SPELL_AMOUNT USING PAMOUNT 'USD'.
    WRITE: 'NUMBERS', T_SPELL-WORD, 'DECIMALS ', T_SPELL-DECWORD.
    FORM SPELL_AMOUNT USING PWRBTR PWAERS.
      CALL FUNCTION 'SPELL_AMOUNT'
           EXPORTING
                AMOUNT    = PAMOUNT
                CURRENCY  = PWAERS
                FILLER    = SPACE
                LANGUAGE  = 'E'
           IMPORTING
                IN_WORDS  = T_SPELL
           EXCEPTIONS
                NOT_FOUND = 1
                TOO_LARGE = 2
                OTHERS    = 3.
    ENDFORM.                               " SPELL_AMOUNT

  • Extracting numeric value of a char

    Hi All,
    I need to get the numeric value of the chars. Here is the code I am using:
    TextField userNumber = new TextField("User Number:", "", 10, TextField.NUMERIC);
    String forNumber = userNumber.getString();
    char number2 = forNumber.charAt(1);
    char number3 = forNumber.charAt(2);
    char number10 = forNumber.charAt(9);
    long counter = number10 * (number2 + number3);
    The result I am getting is the product of the ASCII values instead of the numeric values.
    I've been searching for the solution for a couple of days now but nothing had worked. Thanks for any help.

    volcanohere wrote:
    I have no intention of learning every bit of code there is in Java.BTW, I doubt there is one person on this planet the knows every bit of code, including the SUN staff who created the language. I looked up those methods in the API. That is what it is there for. If you are incapable of doing the smallest bit of research then you won't succeed for very long. And that doesn't just apply to programming.

  • Plsql query converts numeric value or currency(rupees) to English words

    Hi,
    I Need a plsql procedure/function query that converts numeric value or currency(rupees) to English words.
    Please help .that is very very important and urgent for me.
    Thanks in advance.
    Regards,
    Karthik T

    that is very very important and urgent for me. Then help yourself by looking on all over internet :
    http://www.google.nl/search?hl=nl&q=oracle+numeric+word&meta=
    Or by using the search feature against the forum :
    http://forums.oracle.com/forums/search.jspa?threadID=&q=%2Bnumber+%2Bword&objID=f75&dateRange=all&userID=&numResults=15
    That would be faster.
    Nicolas.

  • How do you convert numeric values into english words?

    I am interested in creating a field in adobe acrobat that references a total dollar amount field. I want the java script to convert the numeric number into a written word, such as $59.59 as Fifty Nine and 59/100. I have no experience writing java script code and would really like some help on how this can get done. Its also important to embed in the programming that if their is no numeric value to reference, then nothing get referenced. This means an empty text box. Thanks for any help.

    Im using the below script...... I'm a complete novice at this and helping a friend out with it.
    Any info is appreciated.
    aTens = [ "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"];
    aOnes = [ "Zero", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine",
      "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen",
      "Nineteen" ];
    function ConvertToHundreds(num)
       var cNum, nNum;
       var cWords = "";
       num %= 1000;
       if (num > 99) {
          /* Hundreds. */
          cNum = String(num);
          nNum = Number(cNum.charAt(0));
          cWords += aOnes[nNum] + " Hundred";
          num %= 100;
          if (num > 0)
             cWords += " and "
       if (num > 19) {
          /* Tens. */
          cNum = String(num);
          nNum = Number(cNum.charAt(0));
          cWords += aTens[nNum - 2];
          num %= 10;
          if (num > 0)
             cWords += "-";
       if (num > 0) {
          /* Ones and teens. */
          nNum = Math.floor(num);
          cWords += aOnes[nNum];
       return cWords;
    function ConvertToWords(num)
       var aUnits = [ "Thousand", "Million", "Billion", "Trillion", "Quadrillion" ];
       var cWords = (num >= 1 && num < 2) ? "Dollar and " : "Dollars and ";
       var nLeft = Math.floor(num);
       for (var i = 0; nLeft > 0; i++) {
           if (nLeft % 1000 > 0) {
              if (i != 0)
                 cWords = ConvertToHundreds(nLeft) + " " + aUnits[i - 1] + " " + cWords;
              else
                 cWords = ConvertToHundreds(nLeft) + " " + cWords;
           nLeft = Math.floor(nLeft / 1000);
       num = Math.round(num * 100) % 100;
       if (num > 0)
          cWords += ConvertToHundreds(num) + " Cents";
       else
          cWords += "Zero Cents";
       return cWords;
    You can use the following script for the custom calculation for the words field when the number field is named "Number":
    event.value = "";
    var f = this.getField("Number");
    if(f.valueAsString != "") {
    event.value = ConvertToWords(f.value);

Maybe you are looking for