В данных для кодовой страницы ISO8859-1 (12008) найден неверный код символа - PullRequest
0 голосов
/ 29 мая 2019

Я создал одно новое оконное приложение на языке прогресса 4gl.Область применения этого приложения - загрузить таблицу Excel и проанализировать данные.Но я сталкиваюсь с некоторой проблемой при анализе данных. Позвольте мне поделиться своим запросом, что я пытался

DEFINE VARIABLE cPartData AS LONGCHAR.
DEFINE VARIABLE gc_FileName            AS CHARACTER  NO-UNDO.
DEFINE VARIABLE gl_OKpressed           AS LOGICAL    NO-UNDO INITIAL TRUE.

DO WITH FRAME {&FRAME-NAME}:
    SYSTEM-DIALOG GET-FILE gc_FileName
        TITLE      "Select Excel File ..."
        FILTERS    "Source Files (*.xlsx)"   "*.xlsx"
        MUST-EXIST
        USE-FILENAME
        UPDATE gl_OKpressed.
    IF gl_OKpressed = TRUE THEN
    DO:
        fiLoadOrderFile:SCREEN-VALUE = gc_FileName.
        COPY-LOB FROM FILE gc_FileName TO cPartData .
        RUN DisplayStatus("Raw Data Copy Completed").
    END.    
END.

END PROCEDURE.

Но проблема, которую я получаю, - «В данных для кодовой страницы ISO8859-1 обнаружен неверный код символа».

Я думал, что файл Excel зашифрован, но все данные видны.

Не могли бы вы помочь в этом случае?

1 Ответ

1 голос
/ 29 мая 2019

Нет способа, которым это будет работать. Файл .xlsx не разбирается напрямую в OpenEdge. Вам необходимо извлечь данные. Существуют различные способы сделать это, используя COM-объекты, или лучше .Net в Windows. Вы можете сохранить данные в формате .csv и проанализировать их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...