Working on Localization - Decimal and Comma 'Decimal' Seperators

Note: SQL Server 2008 (Do not have the PARSE and TRY_PARSE functions available from 2012.)
Hello, I am currently working on a project to offer a localization of an existing product to other languages. This means I, unfortunately, have no say in how things were done in the past and I now have to work with what I have got.The product is a website that
will need to accept numbers in the proper culture format. In the US we would write, '123456.78', however for the Spanish or French localization they may want to type '123456,78'. 
Now is where the fun starts. These values will be passed to a stored procedure in their culture specific format, which will also be the regional format of the server (both will not be supported at the same time.) The issue is that T-SQL will only cast (implicitly
or explicitly) a number in the decimal format, and it does not care what regional settings are used on the server.
This leaves me with two options
1) I write a stored procedure for the 'decimal' culture that makes no modifications to the input and a duplicate stored procedure that will be used when it is a culture that uses the comma format, in which a replace would be done to change the format into the
decimal format. I would then need to rewrite the website to call the appropriate stored procedure based on language.
2) Preferably, I could write a single stored procedure that does this dynamically based on the server's regional settings. If decimal, do nothing, if comma, perform replace. Ugly, but it would work. This leads me to..
Is there any way to access the database server's regional setting through T-SQL to determine the number format? I suppose I could put this value in a config table then select it, however I was hoping to keep the solution dynamic.
Any other thoughts that might help me with this?
Thanks!

I guess I'm confused as to why the client applications cannot do the conversion and pass the values as decimals to your stored procedures.  Some things SQL does very well, some things programming languages do well.
Give me a day (with pay) and I think I could figure this out in TSQL.  Give me an hour with my limited .Net ability and I could figure out how to do this.
Russel Loski, MCT, MCSE Data Platform/Business Intelligence. Twitter: @sqlmovers; blog: www.sqlmovers.com

Similar Messages

  • FLOWS_020200 decimal and comma setting, wrong definition for Croatian lang

    Hi!
    In what table (view) is definition that define for certain language that decimal point and comma.
    Problem is that for Croatian language these two items are flipped. When we change language to German, these two chars are OK.
    So we'd like to change value in some system table where is definition for Croatian language.
    P.S.
    For future versions please put that decimal point =',' and comma ='.' (opposite to current setting)
    THX

    Scott,
    we have successfully solved NLS problem in a way that I have described before.
    Now remaining problem is when we change language (hr-en) with code like:
      IF #OWNER#.tool.get_lang='hr' THEN
        :FSP_LANGUAGE_PREFERENCE := 'en';
        :G_PLEASE_WAIT := 'Searching...please wait!';
      ELSE
        :FSP_LANGUAGE_PREFERENCE := 'hr';
        :G_PLEASE_WAIT := 'Pretražujem...molim pričekajte!';
      END IF;
      htmldb_application.g_unrecoverable_error := true;
      htp.init;
    owa_util.redirect_url('f?p='||:APP_ID||':'||:APP_PAGE_ID||':'||:APP_SESSION);then we get an error because it seems that redirect_url is noto working with alter session (which execute Before page header and Before computations and validations for the same page).
    ORA-06502: PL/SQL: numeric or value error: character to number conversion errorlanguage change process is fired before "alter session" proceses...
    For us it is unacceptable to show wrong number format signs on WEB page.
    Is there any way to solve this problem?
    So please is there any table where we can replace that ...
    Just want to say that when we define "de" (German) as primary language (without our NLS_SETTING processes), that decimal and group format are OK as well as date format (DD.MM.YYYY).
    So please, these settings are placed somewher in Apex table...which one?
    THX!
    Message was edited by:
    Funky

  • Decimal and non-decimal in Smartforms

    Hi all,
    I have a weird request on the form change. The change is to print the LFIMG value to 3 decimal point .000
    For example, if the value is 2,000.010, then print 2,000.010
    but if the value is 2,000.000 then print 2,000
    Could someone guide me how handle this request?
    Thanks in advance for the help.

    Hi Wong,
    I notice that this LFIMG is a quantity field. I had face that issue before, so this is my idea.
    1/ Try to discuss with you Functional consultant to take the standard of SAP firstly. it always isn't a good way to do that.
    2/ If your F tells you must do that:
    - Check the decimal setting of user in SU01
    - Write value base on this setting.
    You can refer below code:
    *&      Form  fg_decimal_notation
    *  Get decimal notation of current user
    *      -->P_USER     Current user
    *      -->P_DECIMAL  decimal notation
    FORM fg_decimal_notation USING p_user TYPE sy-uname
                                  CHANGING  p_decimal.
      DATA:
            lv_dec_notation TYPE usr01-dcpfm.
      SELECT SINGLE dcpfm
        INTO lv_dec_notation
        FROM usr01
        WHERE bname = sy-uname.
      IF sy-subrc = 0.
        CASE lv_dec_notation.
          WHEN 'X'.
            p_decimal = '.'.
          WHEN OTHERS.
            p_decimal = ','.
        ENDCASE.
      ELSE.
    *   If no record found we set the dec is ','
        p_decimal = ','.
      ENDIF.
    ENDFORM.                    "fg_decimal_notation
    *&      Form  f_convert_number
    *  Convert number to text with or without decimal
    *      -->PI_VALUE   Value
    *      -->PI_DECIMAL decimal
    *      -->PO_TEXT    Result
    FORM f_convert_quantity_to_text USING pi_value
                                          pi_decimal
                                          pi_unit
                          CHANGING po_text TYPE text30.
      DATA:
            lv_text TYPE text30,
            lv_string TYPE string.
    *-- write to external value
      TRY.
          WRITE pi_value TO lv_text UNIT pi_unit.
        CATCH cx_root.
      ENDTRY.
      CONDENSE lv_text.
    * Put sign to front
      CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'
        CHANGING
          value = lv_text.
    * Move to string
      MOVE lv_text TO lv_string.
    *-- shift delete 0 in trail and decimal number
      FIND pi_decimal IN lv_text.
      IF sy-subrc = 0.
        SHIFT lv_string RIGHT DELETING TRAILING '0'.
        SHIFT lv_string RIGHT DELETING TRAILING pi_decimal.
      ENDIF.
    *-- move result to data
      MOVE lv_string TO po_text.
    ENDFORM.                    "f_convert_number
    Hope that help,
    Regards

  • How to print space as thousand seperator and comma as decimal seperator

    Hi All,
    I have requirement where I need to print the amounts with space as thousand seperator and comma as decimal seperator.
    I have a field wrshb which is of type mhnd-wrshb. currently I am printing this. In the adobe layout I have declared this coloumn as Decimal field.
    Now in the output it is printing as comma as thousand seperator and dot as decimal seperator.
    For example ,currently the value is printing as 32,811.41
    but I want the amount as 32 811,41
    I have declared the variable as char16,  using write statement in the interface I moved the value from currency field to char field.
    Then in debugging i checked the value comes as 32,811.41 and it goes to dump with teh reason-cannot interpret as a number.
    Can anyone help me in fixing this?
    Thanks and Regards,
    Karthik Ganti.

    Hi Adam,
    As per initial requirement, I have set the format such that the amount is printing in below format as required.
    Locale---Italian.
    Space as thousand seperator and comma as decimal seperator.
    for example 1 234,45
    As some of the Currencies will not have decimals, now users would like to print amount without decimals. For example in my case amount  printing in KRW ( Korean currency ) is also similar to the above format which is wrong.
    for example Now amount is printing as 55 000,00. But actually it should be 550 000. Similarly for JPY currency also, as it doesnot haves decimals ( checked in TCURX table ).
    I have written some logic in the interface. below is the logic.
    WRITE:
        wa_mhnd1-wrshb to wa_item-wrshb CURRENCY WA_ITEM-WAERS.
    *READ TABLE lt_tcurx INTO lwa_tcurx WITH KEY currkey = wa_item-waers BINARY SEARCH.
      IF sy-subrc  = 0.
      IF lwa_tcurx-currdec = '0'.
      REPLACE ',' WITH SPACE INTO WA_ITEM-WRSHB.
      REPLACE ',' WITH SPACE INTO WA_ITEM-WRSHB.
      else.
       REPLACE ',' WITH SPACE INTO WA_ITEM-WRSHB.
        REPLACE ALL OCCURRENCES OF '.' in  wa_item-wrshb WITH ','.
    endif.
    ENDIF.
    a. when the write statement gets executed amount will be in ,. ( 1,234.45 )format. Then my logic gets executed correctly. In this company code is CH10 ( EUR ) and KR10.
    b. But sometimes after the write statement gets executed amount will be in ., format ( 1.234.45 ). In this case my logic works, but gives the wrong value. In this case company code is VN10 ( EUR )
    In both the cases currency is EUR.
    Will the decimal format change accordingly based on the company code code currency.Can you please tell me why write statement behaved differently.
    Do I need to change any locale in the adobe form, or any other logic to be written in interface. ?  I am trying it out from long time, but not able to fix it.
    Can  you please help me how to achieve this ?
    Thanks and Regards,
    Karthik Ganti.

  • Different decimal and thousand separators in contract items

    Hello!
    I have problem with printing contract in SmartForm. Contract consists of  many items and values are printed with different decimal and thousand separators. For example value in first item is printed as "40.000,00" and in second item as "40,000.00". All items are in same currency and belongs to same vendor.
    The same happens if I format the output by using the <b>write</b> command into character field.
    Why it happens and how can I solve it?
    Thanks in advance!
    Kind regards.
    Vlasta

    Hi
    Thank you for your help. I tried with SET COUNTRY 'xx' and get after that all items in same format (problem was that first item is different that others, very strange), but problem was still that now I have different format if I write number directly from internal table or from variable after used WRITE command (I have point as decimal separator for example for quantity and comma as decimal separator for example for price in one item line for invoice).
    Then I used SET COUNTRY SPACE which reset to user settings, and this solve problem - now I have all numbers written in same way, with one sign (for example comma) as decimal separator.
    It works now, but I still dont understand why that happens.
    I tried to give you reward points, but I don't see where can I do that (I'm new here).
    Yesterday I saw that place, but today I click everywhere on your answer and can't see where are that, I remember tree kind of points???

  • Use of comma decimal format in % Breakdowns

    Hello,
    We have global users who would like to enter their decimal values for % Formulation and/or Ranges on the %Breakdowns in the comma decimal format (i.e. 9,99).  This does not seem possible regardless of free text language.  I just wanted to confirm that this was the case.
    Thanks,
    Drew

    Dear Kai,
    Thank you for your reply.
    I read the note and found that if I change my browser language to EN,
    everything works fine.
    However, if I change back my browser language to Chinese,
    the decimal seperator becomes comma.
    In the note 1064448, it said it's related to country settings.
    And the note gave a XML code to set the language to EN.
    But...if I put this code to my WAD XHTML,
    does that mean my chart's related settings, like axis label,
    would also change to English format?
    (Because when I change my browser language to EN, the chart's axis label and some other description also change to EN.)
    Is there any way that I can set the log on language Chinese should use decimal seperator "." instead of ","?

  • 15 int digits and 3 decimal digits number problem in CR for VS 2005

    Post Author: condeagustin
    CA Forum: Crystal Reports
    HiIm using the Crystal Reports that comes with VS 2005 and I'm having a problem showing a number with 15 int digits and 3 decimal digits. In my tests, for example I have a formula that only has this line of code:  356125478123456.251I want the report to show  356,125,478,123,456.251 but it shows  356,125,478,123,456.000Why does CR puts 000 when it has to be a 251!!! WHY?!!!! I have tried to put the number as a string and I have tried a lot of functions like Round, Truncate, ToText, CDbl, etc and it's always the same result. In the format object of that formula the decimals are 1.000 and the rounding is 0.001. And the following is the weirdest part:If, instead of 356125478123456.251 I put 56125478123456.251, CR shows 56,125,478,123,456.300If then I put  6125478123456.251 CR shows 6,125,478,123,456.250And then if I put 125478123456.251 CR SUCCESFULLY shows 125,478,123,456.251 That is the way I want it but with 15 int digits. It looks like CR only works with a maximum of 12 int digits, more than that, the decimals don't work. How can I fix this? Please help me!Kind regards,Agustín Conde 

    Post Author: Ken Wong
    CA Forum: Crystal Reports
    Hi Agustin,
    Crystal Reports uses signed doubles as its datatype for numbers.  A signed double on a 32 bit machine is represented by 8 bytes.  1 sign bit, 11 exponent bit, and 52 bit for the mantissa. This roughly corresponds to 15 digits of total precision in decimal; ie. it does not matter where your dot is. You have 15 digits before and after the decimal point combined.
    This behavior is pretty standard.  You should see similar behavior in applications such as excel.
    Hope this helps,
    Ken

  • Problem with transaction CUNI and configuring decimal places

    Note: I'm actually an ABAP programmer and do not know almost anything about SAP configuration.
    Note2: Sorry if this was posted in the wrong section. I am trying to avoid an ABAP solution so I did not post this in the ABAP section.
    Note3: Sorry for cross posting. I'm trying to make this visible to as much experts as possible.
    \[Problem\]
    I'm tasked to increase the number of decimal places that a certain standard program in MM accepts.
    \[ABAP solution I'm trying to avoid\]
    The consultants' initial recommendation was to make Z copies of the standard table and the standard programs that references that table. This would be rather dangerous as there is the risk of missing certain parts of the code If I was to replace all occurences of the old standard table with my custom Z table.
    \[Standard solution I'm trying to do\]
    Now I've read several threads here that makes use of transaction CUNI to adjust decimal places of certain units of measure (see Re: Unit Of Measure problem and change decimal places in PO quantity). However, when I tried it, It does not work the way I expect it to.
    In SE11, I created a custom table that has a quantity field (length: 13, decimals: 3) and a unit field (length 3)
    In CUNI, I created a new ISO code TST (for test). Then I created a new Unit of measure ZTT (ZTesT) which makes use of my ISO code TST. I set the decimal places to 6.
    When I insert data into my custom table, instead of 6, the number of decimal places remain at 3.
    Please help in adjusting decimal places without touching the table.

    Hello Dzed,
    I've read several posts that suggest transaction CUNI to adjust decimal places in standard unit of measures. What I tried is a simplified simulation of what is needed.
    In a more realistic sense, consider table VBRP and column FKIMG. What If I want to store items in VBRP and allow 6 decimal places for FKIMG but I am not allowed to modify the table? Is making a Z copy of VBRP the only solution? Or is there a more standard way of doing this?
    My worry is that If I copy a table, I also need to copy the programs that use it and modify them accordingly. Our Basis do not want the standard tables touched.
    Kyle

  • BCD to decimal and viceversa

    Hi,
    Am working on conversion of decimal to BCD (Binary coded decimal) and viceversa. I require BCD for calling Cobol from Java using JNI.
    Can anybody help me out in giving a pointer or an algorithm for doing the same.
    I Googled on the web for any info on BCD conversion, but all in vain. Even Java Forums here in Sun also donot have any info on the same.
    Please help me out.
    TIA,
    Prashanth Babu.

    You'll have to adjust this to do put the output where you want. Surely not the only (and maybe not elegant):
       /** Write specified string into stream as two Binary-Coded Decimal (BCD)
        *     digits.
       private static void writeTwoBCDDigits(DataOutputStream stream,
                                             String           twoDigits)
              throws IOException
          // Convert two digits to Binary-Coded Decimal (BCD).
          // The "write(int)" function writes a numeric value in binary to the
          //    stream.
          // If the twoDigits string is parsed as a hexadecimal integer, then
          //    writing the equivalent decimal integer using "write(int)" will
          //    generate the correct BCD numbers.
          // For example, if twoDigits is "54", parsing this as the hexadecimal
          //    integer 54 results in twoBCDDigits as the decimal integer 84.
          //    Then, "write(84)" will write the correct bits to the stream:
          //    "0101 0100" (space not included).
          //    "0101" = BCD '5' and "0100" = BCD '4'.
          int twoBCDDigits = Integer.parseInt(twoDigits, 16);
          // Write out the numeric value of twoBCDDigits in one byte.
          stream.write(twoBCDDigits);
       }

  • Convert hex to Decimal and keep leading zeros..

    Hi,
    I hope you can help?
    How to convert hex to Decimal and keep leading zeros
    I read 002C, hex, and I want to convert it to 0044 decimal.
    sscanf (MyNum, "%4x", &DecNum); will only give me 44.
    It have been working up till I started to get leading zeros.
    We will always have a 4 digit hex input in a range
    We must have the leading 00 in this case.
    How is this best done?
    Thanks for the help
    Simon
    Solved!
    Go to Solution.

    Hi,
    I don't really understand your problem. Is this stuff what you need ?
    int main (int argc, char *argv[])
    const char MyNum[] = "002C";
    int DecNum;
    sscanf (MyNum, "%4x", &DecNum);
    printf ("%04d", DecNum);
    getchar ();
    return 0;
    "0044" appears on standard output when printf function executes...

  • How to tackle " . " or " , "Comma DECIMAL notations in text file uploading?

    Hi Experts,
    I hv to upload the text file via LSMW and creating the Purchse Orders.
    So, issue is with QUANTITY and VALUE fileds, bcoz, the text file may some times contain " . " as DECIAML or may some times " , "(comma-Europe) as DECIMALs.
    And some times this LSMW may run by US guys, where " ." is DECIMAL and some times Europe guys, where " , " is DECIMAL.
    So, request u that, let me know that, How to handle all situations? Is there any FM?
    thank u

    Hello Srinivas
    The easiest approach would be the organizational one:
    Assuming that all relevant values have at most two digitals then export all values without decimal sign and interpret the last two digit of any values as decimals values (this approach is used in many EDI messages).
    The second approach would be to include a "marker" about the decimal notation in the file.
    However, I would always recommend to use the simplest approach (= 1st approach).
    Regards
      Uwe

  • Checking and Converting binary, octal, decimal, and hex

    Hi,
    I have a classroom project which will need to validate that data entered in a text is of a certain type with a keyListener, and then convert that value to the other 3 types.
    I know character.isDigit will handle the decimal case, and that I can then use Integer.otString methods to convert to binary, octal, and hex, but what about the other cases?
    Thanks

    OK, this isn't working. If I've already established
    that the string entered into, for example, the
    integer-only textfield is a valid integer, I should be
    able to simply use integer.parseint(s, 2) to convert
    it into binary, right?Not exactly. You should be able to use Integer.parseInt(s, 2) to return the result of converting it from binary representation. You appear to think that this affects whatever "s" refers to, which is not the case. Note also, that method returns an int which is the decimal value in question.
    When you are thinking of int variables, be careful not to think of them as "decimal" or "binary". They are neither. They are just numbers. "Decimal" and "binary" are text representations of numbers, so those concepts can only be applied to strings.
    Integer.parseInt(s, 2);
    txtBin.setText(s);So here you want to assume that the input is a string that represents a number in decimal, and you want to find the string that represents the number in binary. Like this:// convert string in decimal representation to number
    int dec = Integer.parseInt(s);
    // convert int to binary representation as string:
    String binary = Integer.toBinaryString(dec);
    // write that to the text field
    txtBin.setText(binary);You could use a one-liner to do that, but you'll need the "dec" variable to set the other text boxes.
    Rembering why I hate OO...All of what I said there is true in just about all computer languages, OO or otherwise.
    PC&#178;

  • External table.How to load numbers (decimal and scientific notation format)

    Hi all, I need to load inside an external table records that contain 7 fields. The last field is called AMOUNT and it's represented in some records with the decimal format, in others records with the scientific notation format as, for example, below:
    CY001_STATU;2009;Jan;11220020GR;'03900;CYZ900;-9,99999999839929e-03
    CY001_STATU;2009;Jan;11200100;'60800;CYZ900;41380,77
    The External table's script is the following:
    CREATE TABLE HYP_DATA
    COUNTRY VARCHAR2(50 BYTE),
    YEAR VARCHAR2(20 BYTE),
    PERIOD VARCHAR2(20 BYTE),
    ACCOUNT VARCHAR2(50 BYTE),
    DEPT VARCHAR2(20 BYTE),
    ACTIVITY_LOC VARCHAR2(20 BYTE),
    AMOUNT VARCHAR2(50 BYTE)
    ORGANIZATION EXTERNAL
    ( TYPE ORACLE_LOADER
    DEFAULT DIRECTORY HYP_DATA_DIR
    ACCESS PARAMETERS
    ( RECORDS DELIMITED BY NEWLINE
    BADFILE 'HYP_BAD_DIR':'HYP_LOAD.bad'
    DISCARDFILE 'HYP_DISCARD_DIR':'HYP_LOAD.dsc'
    LOGFILE 'HYP_LOG_DIR':'HYP_LOAD.log'
    SKIP 0
    FIELDS TERMINATED BY ";"
    MISSING FIELD VALUES ARE NULL
    REJECT ROWS WITH ALL NULL FIELDS
    "COUNTRY" Char,
    "YEAR" Char,
    "PERIOD" Char,
    "ACCOUNT" Char,
    "DEPT" Char,
    "ACTIVITY_LOC" Char,
    "AMOUNT" Char
    LOCATION (HYP_DATA_DIR:'Total.txt')
    REJECT LIMIT UNLIMITED
    NOPARALLEL
    NOMONITORING;
    If, for the field AMOUNT I use the datatype VARCHAR (as above), the table is loaded but I have some records rejected, and all these records contain the last field AMOUNT with the scientific notation as:
    CY001_STATU;2009;Jan;11220020GR;'03900;CYZ900;-9,99999999839929e-03
    CY001_STATU;2009;Feb;11220020GR;'03900;CYZ900;-9,99999999839929e-03
    CY001_STATU;2009;Mar;11220020GR;'03900;CYZ900;-9,99999999839929e-03
    CY001_STATU;2009;Dec;11220020GR;'03900;CYZ900;-9,99999999839929e-03
    All the others records with a decimal AMOUNT are loaded correctly.
    So, my problem is that I NEED to load all the records (with the decimal and the scientific notation format) together (without records rejected), but I don't know which datatype I have to use for the AMOUNT field....
    Anybody has any idea ???
    Any help would be appreciated
    Thanks in advance
    Alex

    @OP,
    What version of Oracle are you using?
    Just cut'n'paste of you script and example woked FINE for me.
    however my quation is... An external table will LOAD all data or none at all. How are you validating/concluding that...
    I have some records rejected, and all these records contain the last field AMOUNT with the scientific notation
    select * from v$version where rownum <2;
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    select * from mydata;
    CY001_STATU     2009     Jan     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Feb     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Jan     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Jan     11200100     '60800     CYZ900     41380,77
    CY001_STATU     2009     Mar     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Dec     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Jan     11220020GR     '03900     CYZ900     -9,99999999839929e-03
    CY001_STATU     2009     Jan     11200100     '60800     CYZ900     41380,77MYDATA table script is...
    drop table mydata;
    CREATE TABLE mydata
    COUNTRY VARCHAR2(50 BYTE),
    YEAR VARCHAR2(20 BYTE),
    PERIOD VARCHAR2(20 BYTE),
    ACCOUNT VARCHAR2(50 BYTE),
    DEPT VARCHAR2(20 BYTE),
    ACTIVITY_LOC VARCHAR2(20 BYTE),
    AMOUNT VARCHAR2(50 BYTE)
    ORGANIZATION EXTERNAL
    ( TYPE ORACLE_LOADER
    DEFAULT DIRECTORY IN_DIR
    ACCESS PARAMETERS
    ( RECORDS DELIMITED BY NEWLINE
    BADFILE 'IN_DIR':'HYP_LOAD.bad'
    DISCARDFILE 'IN_DIR':'HYP_LOAD.dsc'
    LOGFILE 'IN_DIR':'HYP_LOAD.log'
    SKIP 0
    FIELDS TERMINATED BY ";"
    MISSING FIELD VALUES ARE NULL
    REJECT ROWS WITH ALL NULL FIELDS
    "COUNTRY" Char,
    "YEAR" Char,
    "PERIOD" Char,
    "ACCOUNT" Char,
    "DEPT" Char,
    "ACTIVITY_LOC" Char,
    "AMOUNT" Char
    LOCATION (IN_DIR:'total.txt')
    REJECT LIMIT UNLIMITED
    NOPARALLEL
    NOMONITORING;vr,
    Sudhakar B.

  • Lock and Commit work in INBOUND IDOC

    Hi Experts,
    Problem is about lock and commit work
    i need to receive idoc for Good receipt for purchase order.
    For one Purchase Order i can receive many good receipt Idoc at the same time and when first came in Lock the Purchase Order and further idoc came after give Errors becouse purchase Order is lock.
    Problem is not the serialization (the sequence is correct), but is the lock.
    Any idea on how to fix this issue? (maybe there is some std settings??)
    Cheers
    Boris

    Hello Guys
    the packetsize is already set to 1 but the problem still again..... and where i can find this setting   "in Customizing choose Engineering Change Management ® Define statuses for master record". ?
    Any way i try in function module in inbound to check the lock object with this sample code:
          DO 30 TIMES.
            CALL FUNCTION 'ENQUEUE_EMEKKOS'
             EXPORTING
               mode_ekko            = 'S'
               mandt                = sy-mandt
               ebeln                = goodsmvt_item-po_number
               _scope               = '2'
             EXCEPTIONS
               foreign_lock         = 1
               system_failure       = 2
               OTHERS               = 3.
            IF sy-subrc <> 0.
              WAIT UP TO 1 SECONDS.
            ELSE.
              EXIT.
            ENDIF.
          ENDDO.
    but also with this....problem syill again...
    thanks
    Boris

  • Smartforms - dealing with decimal and thousand separators

    Hi,
    trying to reuse one of the standard SAP Smartforms - LB_BIL_INVOICE in an ECC 6.0 Unicode system I faced a problem with decimal and thousand separators for currency/quantity fields. In fact, default settings in User profile are not taken in consideration when printing this form. I have changed all the possible settings in the user profife and (after logoff/logon) nothing changes in my output.
    Just to be sure I tried to output the invoice with the original SAP smartform LB_BIL_INVOICE and the things were the same - means output takes wrong settings for decimal/thousand separators.
    For clarity I created a simple form with a single currency field and everything behaves well as expected. So this points me to the direction fo find out what is wrong with the LB_BIL_INVOICE. I downloaded the form into XML and checked the code, further uploaded it into a new one - no success.
    My question is:
    Is there a way to manipulate or overwrite default settings for decimal/thousand separators within smartform, and if yes - how to do this?
    I almost finished my quite complex form and wouldn't like to rewrite it from scratch.
    FYI: I'm not a Smartform expert, by have created/overwiten more than 15 different forms accros different systems - 4.6 C/D, 4.7, ECC 6.0 non-Unicode/Unicode, and never faced such an issue.
    I faced significant smartform 'improvement' in the ECC 6.0 release - especialy for text elements. The new integrated MS word control gives me a lot of throubles. According to this - is there an up-to-date documentation (even link to SAP course is acceptable) according to Smartform development in ECC 6.0?
    Thanks in advance.
    Regards,
    Ivaylo Mutafchiev
    Senior SAP Abap Consultant

    Hi,
    I took a quick glance into the print program, and the print program do a set country setting to reciving country. This will give you the separators that are confugured for this country.
    But if you change the print program and clear parameter country, the smartform will use the users settings instead.
    Regards
    Åsa Thenstedt

Maybe you are looking for

  • Spry Photo Gallery not viewing

    am new to web design and followed this tutorial to make a Spry Photo Gallery: http://www.adobe.com/devnet/dreamweaver/articles/spry_photo_album.html I am using Dreamweaver CS3 and when I preview my files, everything is perfect and in place. When I up

  • How to count values by using cursor

    HI, I want to check column is empty or filled. and i should use cursor not indipendent SQL query. I written my programe like this. but count(cursor.columnname) not taken how can i do this. please help me. declare cursor c_rec is select *from ppc_inpu

  • What is itunes 4.3.5 why it always error

    the itunes 4.3.5 is always having updating error.how solve it.and it take 3hours to update.is the correct duration.

  • Connect fileserver to proxyserver... Please help..

    Hello, i recently installed an antivirus on a novell 6 fileserver and now i want to update the virus definitions, but i cant connect the fileserver to the internet, i have a novell bordermanager proxyserver with the address 172.22.0.1 but i cant conn

  • PSE12 does not recognize HP Photosmart C410 scanner

    PSE12 does not recognize HP Photosmart C410 scanner.