При читанні *. CSV файла всі записи переносяться в таблицю але деякі записи потрапляють не повністю .
Для недобрих записів значення полів з початку запису є а значення поля що в кінці запису немає .
В чому причина ? Що не так ?
Після виконання функції дані з файла попадають в таблию i_BUFTASKOM20. Далі читаємо кожну запис в
поле pole . Далі аналізую кожну запис pole. Так для деяких записів поля не переносяться там пусто замість значень. Що не так ?
types: BUFTASKOM2 TYPE BUFTASKOM0_20170614.
types:
begin of BUFTASKOM0_20170614, "ВЫПИСКА
L(3000)," OLG
end of BUFTASKOM0_20170614,
data: pole(3000) .
DATA : i_BUFTASKOM20 TYPE TABLE OF BUFTASKOM2 with header line,
......
refresh i_buftaskom20.
CALL FUNCTION 'WS_UPLOAD' EXPORTING FILENAME = WAY FILETYPE = 'DAT'
TABLES DATA_TAB = i_BUFTASKOM20
EXCEPTIONS "FILE_OPEN_ERROR = 1 FILE_READ_ERROR = 2.
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
OTHERS = 10.
*----------------------------
loop at i_buftaskom20 .
pole = i_buftaskom20-L .
......
endloop.
Ну возможно есть спецсимволы которые обрезают строку файла при чтении. Посмотрите обрезаемые строчки в каком-то редакторе который показывает все данные.
В поле i_buftaskom20-L попадає запис *.CSV файла . Поля розділені між собою символом ";" .
В деяких тестових полях *.CSV файла може бути також цей символ. Я заміняю символ ";" з таких полів на пробіл .
Проблема в тому що деякі записи попадають в поле i_buftaskom20-L не повністю . Через Ексель ніяких спецсимволів не видно .
Цитата: Olga від Жовтень 30, 2025, 08:58:54 ДППроблема в тому що деякі записи попадають в поле i_buftaskom20-L не повністю . Через Ексель ніяких спецсимволів не видно .
Так це треба дивитись не через ексель, а щось що може показати байтові дані.
Це мабуть через " ' " апостроф . Бо читає тільки до символа " ' " . Наприклад в полі є такий текст
інші платежі (у т.ч. за послуги зв'язку,домофони,тощо).
Перноситься тільки текст
інші платежі (у т.ч. за послуги зв
і далі нічого ніякі поля не видно !
Хоча цього символа не видно якщо переглядати *.CSV файл в Екселі .
Цитата: Olga від Жовтень 30, 2025, 11:12:10 ДПЦе мабуть через " ' " апостроф . Бо читає тільки до символа " ' " . Наприклад в полі є такий текст
Ну вот причину уже нашли. Теперь вопрос как ее обойти.