Текущее время: Ср, май 14 2025, 15:27

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Загрузка файла с дробными значениями
СообщениеДобавлено: Чт, мар 10 2005, 13:26 
Гость
Привет всем,
Пытаюсь загрузить файл во внутреннюю таблицу с дробными значениями с разделителем ",". А SAP независимо от настроек пользователя, который запускает программу требует разделитель "."
И падает в dump c conv_no_number. Подскажите, please, как сделать так, чтобы разделитель все-таки зависел от настроек пользователя...


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями
СообщениеДобавлено: Чт, мар 10 2005, 13:40 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
Yuri написал(а):
Привет всем,
Пытаюсь загрузить файл во внутреннюю таблицу с дробными значениями с разделителем ",". А SAP независимо от настроек пользователя, который запускает программу требует разделитель "."
И падает в dump c conv_no_number. Подскажите, please, как сделать так, чтобы разделитель все-таки зависел от настроек пользователя...

Ну так заменяй свою запятую на точку и всех делов... или из религиозных причин это сделать нельзя?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 10 2005, 13:42 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
где то как то так вроде бы...

DATA: str TYPE usr01-dcpfm,
str1(1) TYPE c VALUE '.',
str2(1) TYPE c VALUE ','.

SELECT SINGLE dcpfm INTO str FROM usr01 WHERE bname = sy-uname.
IF str <> 'X'.
REPLACE str1 WITH str2 INTO sum_wrbtr_form.
ENDIF.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями
СообщениеДобавлено: Чт, мар 10 2005, 13:43 
Специалист
Специалист

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
Yuri написал(а):
Привет всем,
Пытаюсь загрузить файл во внутреннюю таблицу с дробными значениями с разделителем ",". А SAP независимо от настроек пользователя, который запускает программу требует разделитель "."
И падает в dump c conv_no_number. Подскажите, please, как сделать так, чтобы разделитель все-таки зависел от настроек пользователя...


Было и у меня такое.
Вышел из ситуации таким образом:
Code:
  REPLACE ALL OCCURRENCES OF ',' IN string_1 WITH '.'.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями
СообщениеДобавлено: Пт, мар 11 2005, 11:52 
Гость
s_ss написал:
REPLACE ALL OCCURRENCES OF ',' IN string_1 WITH '.'.

В 46C нет ALL OCCURRENCES :(
Code:
*---------------------------------------------------------------------*
*       FORM SetSumma                                                 *
*---------------------------------------------------------------------*
FORM SetSumma CHANGING cText  TYPE C
                       nSumma LIKE BSEG-DMBTR
                       subrc  LIKE sy-subrc.

  data: nPos like sy-fdpos.

* '.' - разделитель тысяч
  do.
    search cText for '...'.
    if sy-subrc = 0.
      nPos = sy-fdpos + 1.
      cText+sy-fdpos = cText+nPos.
    else.
      exit.
    endif.
  enddo.

* ',' - разделитель целой и дробной части
  replace ',' with '.' into cText.

  CATCH SYSTEM-EXCEPTIONS CONVT_NO_NUMBER = 1.
    nSumma = cText.
  ENDCATCH.
  SUBRC = SY-SUBRC.
  IF SUBRC = 1.
    CLEAR nSumma.
  ENDIF.

ENDFORM.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями  Тема решена
СообщениеДобавлено: Пт, мар 11 2005, 13:13 
Специалист
Специалист

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
Stenj_90 написал(а):
s_ss написал:
REPLACE ALL OCCURRENCES OF ',' IN string_1 WITH '.'.

В 46C нет ALL OCCURRENCES :(


Я так понял, что в 46C нет ALL OCCURRENCES, а сам REPLACE есть.
Так это не проблема...
Я заменяю ',' на '.' в каждой переменной. А в числе, как известно, может быть только одна ','. :P


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями
СообщениеДобавлено: Пт, мар 11 2005, 13:30 
Гость
s_ss написал:
Stenj_90 написал(а):
s_ss написал:
REPLACE ALL OCCURRENCES OF ',' IN string_1 WITH '.'.

В 46C нет ALL OCCURRENCES :(


Я так понял, что в 46C нет ALL OCCURRENCES, а сам REPLACE есть.
Так это не проблема...
Я заменяю ',' на '.' в каждой переменной. А в числе, как известно, может быть только одна ','. :P


не факт, есть еще разделители разрядов :wink:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения: Re: Загрузка файла с дробными значениями
СообщениеДобавлено: Пт, мар 11 2005, 16:16 
Гость
s_ss написал:
Я так понял, что в 46C нет ALL OCCURRENCES, а сам REPLACE есть.
В 46C нет опции 'ALL OCCURRENCES' команды REPLACE.
Вот еще пример из жизни, используемый при суммировании чисел в своем SAPScript-формуляре:
Code:
FORM STRING_2_NUM USING    cString       LIKE ITCSY-VALUE
                  CHANGING P_EXVKW_POSWS LIKE WOSI_ISEG-EXVKW_POSWS.

  INCLUDE LWOSICST.

  DATA: P_STRING_100 TYPE  CHAR100,
        nSign        TYPE  N.

  P_STRING_100 = cString.
  REPLACE '-' WITH SPACE INTO P_STRING_100.
  IF SY-SUBRC = 0.
    nSign = -1.
  ELSE.
    nSign = +1.
  ENDIF.

  CALL FUNCTION 'WOSI_CONVERT_STRING_TO_NUM'
    EXPORTING
      P_ACTION              = c_convert_to_exvkw_posws
      P_STRING_100          = P_STRING_100
    IMPORTING
*     P_ERFMG               =
      P_EXVKW_POSWS         = P_EXVKW_POSWS
*     P_SWERT               =
*     P_VKUMG               =
    EXCEPTIONS
      ERROR_IN_SY_MSG       = 1
      OTHERS                = 2
            .
  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  P_EXVKW_POSWS = nSign * P_EXVKW_POSWS.

ENDFORM.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения: Загрузка файла с дробными значениями
СообщениеДобавлено: Ср, мар 23 2005, 10:07 
Начинающий
Начинающий

Зарегистрирован:
Пн, окт 25 2004, 09:38
Сообщения: 7
Откуда: Belarus
а вот это -
Code:
TRANSLATE number USING ',.'.

не спасёт отца русской демократии?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB