Текущее время: Вт, июл 08 2025, 18:54

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 12:36 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
Господа, столкнулся с такой проблемой - есть необходимость загрузить из экселя длинный текст (порядка 1000 символов).
TEXT_CONVERT_XLS_TO_SAP режет до 265 символов.
ALSM_EXCEL_TO_INTERNAL_TABLE урезает до 50 символов.
Может у кого есть подобный опыт? Поделитесь :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 13:00 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, апр 18 2012, 14:20
Сообщения: 252
Откуда: РБ, г. Гомель
Пол: Мужской
были уже такие темы, 2 точно помню
решения 100% рабочего рабочего для этих ФМ не нашли вроде
сам делал через OLE и cl_gui_frontend_services=>clipboard_import


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 13:08 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
sergeyprotasoff написал(а):
Господа, столкнулся с такой проблемой - есть необходимость загрузить из экселя длинный текст (порядка 1000 символов).
TEXT_CONVERT_XLS_TO_SAP режет до 265 символов.
ALSM_EXCEL_TO_INTERNAL_TABLE урезает до 50 символов.
Может у кого есть подобный опыт? Поделитесь :)

Мы скопировали ALSM_EXCEL_TO_INTERNAL_TABLE в Z-область и указали в таблице с ячейками размер 256 символов.
Если нужно больше - воспользуйтесь советом MantiCore1977

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 13:09 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
Удав написал(а):
sergeyprotasoff написал(а):
Господа, столкнулся с такой проблемой - есть необходимость загрузить из экселя длинный текст (порядка 1000 символов).
TEXT_CONVERT_XLS_TO_SAP режет до 265 символов.
ALSM_EXCEL_TO_INTERNAL_TABLE урезает до 50 символов.
Может у кого есть подобный опыт? Поделитесь :)

Мы скопировали ALSM_EXCEL_TO_INTERNAL_TABLE в Z-область и указали в таблице с ячейками размер 256 символов.
Если нужно больше - воспользуйтесь советом MantiCore1977

а поподробнее можно?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 13:12 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
Это вопрос к MantiCore1977


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 13:37 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, апр 18 2012, 14:20
Сообщения: 252
Откуда: РБ, г. Гомель
Пол: Мужской
что-то типа такого
Code:
TYPES: tmpdata TYPE c LENGTH 1500.
DATA: lt_exc TYPE TABLE OF tmpdata.
DATA: application  TYPE ole2_object,  " Application (EXCEL)
        workbooks    TYPE ole2_object,  " Workbooks
        workbook     TYPE ole2_object,  " Workbook
        worksheet   TYPE ole2_object,
        range TYPE ole2_object.
  IF application-header = space OR application-handle = -1.
    CREATE OBJECT application 'EXCEL.APPLICATION'.
  ENDIF.
  CALL METHOD OF
      application
      'Workbooks' = workbooks.
  SET PROPERTY OF application  'Visible' = 1.
  SET PROPERTY OF application 'DisplayAlerts' = 0.
  CALL METHOD OF
      workbooks
      'Open'    = workbook
    EXPORTING
      #1        = 'D:\z_inv_oks2.xls'. ' открываем файл с данными
  CALL METHOD OF
      application
      'Range'     = range
    EXPORTING
      #1          = 'oks_row'. 'именованная область с данными, можно заменить на Selection или UsedRange
  CALL METHOD OF
      range
      'Copy'. ' в clipboard
CALL METHOD cl_gui_frontend_services=>clipboard_import
   IMPORTING
     data                 = lt_exc
*     length               =
   EXCEPTIONS
     cntl_error           = 1
     error_no_gui         = 2
     not_supported_by_gui = 3
     others               = 4
         .
IF sy-subrc <> 0.
*  MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

и потрошите потом табличку lt_exc.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 14:01 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
MantiCore1977 написал:
что-то типа такого
Code:
TYPES: tmpdata TYPE c LENGTH 1500.
DATA: lt_exc TYPE TABLE OF tmpdata.
DATA: application  TYPE ole2_object,  " Application (EXCEL)
        workbooks    TYPE ole2_object,  " Workbooks
        workbook     TYPE ole2_object,  " Workbook
        worksheet   TYPE ole2_object,
        range TYPE ole2_object.
  IF application-header = space OR application-handle = -1.
    CREATE OBJECT application 'EXCEL.APPLICATION'.
  ENDIF.
  CALL METHOD OF
      application
      'Workbooks' = workbooks.
  SET PROPERTY OF application  'Visible' = 1.
  SET PROPERTY OF application 'DisplayAlerts' = 0.
  CALL METHOD OF
      workbooks
      'Open'    = workbook
    EXPORTING
      #1        = 'D:\z_inv_oks2.xls'. ' открываем файл с данными
  CALL METHOD OF
      application
      'Range'     = range
    EXPORTING
      #1          = 'oks_row'. 'именованная область с данными, можно заменить на Selection или UsedRange
  CALL METHOD OF
      range
      'Copy'. ' в clipboard
CALL METHOD cl_gui_frontend_services=>clipboard_import
   IMPORTING
     data                 = lt_exc
*     length               =
   EXCEPTIONS
     cntl_error           = 1
     error_no_gui         = 2
     not_supported_by_gui = 3
     others               = 4
         .
IF sy-subrc <> 0.
*  MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

и потрошите потом табличку lt_exc.


The type "OLE2_OBJECT" is unknown, but there is a type with the similar name "OBJECT"....
не видит тип данных OLE2_OBJECT.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 14:10 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, апр 18 2012, 14:20
Сообщения: 252
Откуда: РБ, г. Гомель
Пол: Мужской
Code:
INCLUDE ole2incl

забыл


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 14:46 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
MantiCore1977 написал:
Code:
INCLUDE ole2incl

забыл

а нет случайно примера как парсить lt_exc?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 15:12 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, апр 18 2012, 14:20
Сообщения: 252
Откуда: РБ, г. Гомель
Пол: Мужской
Code:
  DATA: str1 TYPE string, str2 TYPE string, str3 TYPE string. ' сколько нужно для парсинга или структуру описать специальную
  LOOP AT lt_exc INTO lv_exc.
    SPLIT lv_exc at cl_abap_char_utilities=>horizontal_tab INTO str1 str2 str3.
  ENDLOOP.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 15:48 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
MantiCore1977 написал:
Code:
  DATA: str1 TYPE string, str2 TYPE string, str3 TYPE string. ' сколько нужно для парсинга или структуру описать специальную
  LOOP AT lt_exc INTO lv_exc.
    SPLIT lv_exc at cl_abap_char_utilities=>horizontal_tab INTO str1 str2 str3.
  ENDLOOP.


Какого типа lt_exc?
Объявляю как:
TYPES: tmpdata TYPE c LENGTH 1500.
DATA: lt_exc TYPE TABLE OF tmpdata.
DATA: lv_exc TYPE TABLE OF tmpdata.
The field "LV_EXC" is unknown, but there is a field with the similar


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 15:57 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, апр 18 2012, 14:20
Сообщения: 252
Откуда: РБ, г. Гомель
Пол: Мужской
ну вы блин даете (с)

Code:
DATA: lv_exc TYPE tmpdata.

или лучше
Code:
DATA: lv_exc LIKE LINE OF lt_exc.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 16:10 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
MantiCore1977 написал:
ну вы блин даете (с)

Code:
DATA: lv_exc TYPE tmpdata.

или лучше
Code:
DATA: lv_exc LIKE LINE OF lt_exc.

нашел косяк с типом. только 1000 символов не грузится!!!! 256 символов.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 16:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
sergeyprotasoff написал(а):
нашел косяк с типом. только 1000 символов не грузится!Я ИДИЁТ, УБЕЙТЕ МИНЯ КТО-НИБУДЬ! 256 символов.

Так на входе же Excel.
Разбить в нем ячейку на несколько - элементарное действие ;)

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка длинного текста из Excel файла
СообщениеДобавлено: Ср, сен 19 2012, 16:19 
Ассистент
Ассистент

Зарегистрирован:
Вт, сен 18 2012, 12:07
Сообщения: 26
Удав написал(а):
sergeyprotasoff написал(а):
нашел косяк с типом. только 1000 символов не грузится!Я ИДИЁТ, УБЕЙТЕ МИНЯ КТО-НИБУДЬ! 256 символов.

Так на входе же Excel.
Разбить в нем ячейку на несколько - элементарное действие ;)


была такая задумка - макросом дербанить длинное поле на 4 поля по 250 символов, а потом грузить и конкатенацией склеивать, только по идее это можно и через ФМ TEXT_CONVERT_XLS_TO_SAP сделать. А цель загрузить 1000 символов без разбивки. Получается, что грузить 1000 без разбивки вообще не вариант?


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.

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


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

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


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

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