Текущее время: Пт, мар 29 2024, 12:20

Часовой пояс: 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
Сообщения: 3074
Откуда: Москва
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
Сообщения: 3074
Откуда: Москва
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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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