Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / ImportFile / 8 сообщений из 8, страница 1 из 1
03.02.2010, 14:20
    #36447142
ImportFile
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
При выполнении dw.importfile( dBASE3! , ls_DBFfile) во всех полях где слово заканчивается на маленькую русскую букву а везде эта буква а обрезается.
например в DBF написано "Иванова", импортится как "Иванов"
с другими буквами таких проблем не замечено

PB11.5.1 build 4608
...
Рейтинг: 0 / 0
03.02.2010, 14:20
    #36447143
ImportFile
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
что за глюк такой?
...
Рейтинг: 0 / 0
03.02.2010, 14:24
    #36447163
ImportFile
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
да. в DBF текст в досовской кодировке и после импорта конвертится с помощью OemToChar
OemToChar тут не причем, так как текст уже до конвертирования обрезан
...
Рейтинг: 0 / 0
11.06.2010, 15:45
    #36683201
GooSergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
Простите что поднимаю старую тему.
Посоветуйте, пожалуйста, как проще обойти эту проблему?
...
Рейтинг: 0 / 0
11.06.2010, 15:48
    #36683208
GooSergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
Проблема в том, что слово , которое заканчивается символом "а" в DOS кодировке, в Win кодировке отображается как пробел, и обрезается при выполнении ImportFile.
...
Рейтинг: 0 / 0
11.06.2010, 15:55
    #36683235
VanoR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
разбирать dbf вручную
чуть позже могу выложить объект, который это делает
...
Рейтинг: 0 / 0
11.06.2010, 16:44
    #36683368
GooSergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
Спасибо, буду признаетелен.
...
Рейтинг: 0 / 0
11.06.2010, 17:12
    #36683445
VanoR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ImportFile
пример вызова... возможно нужно "подкрутить"
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
nv_dbf lnv_dbf

lnv_dbf = create nv_dbf
long ll_ret
any la_value
String ls_field

ll_ret = lnv_dbf.of_fileopen(ls_DBFfile) 
if ll_ret< 0  then
	messagebox('Ошибка','Невозможно открыть файл для импорта (' + string(ll_ret) + ').',stopsign!)
	lnv_dbf.of_fileclose()
	destroy nv_dbf
	return
end if

for i= 1  to lnv_dbf.file_records_num
	ll_ret = lnv_dbf.of_loadrecord(i)
	
	if ll_ret< 0  then 
		messagebox('Ошибка','Невозможно прочитать строку №' + string(i) + ' (' + string(ll_ret) + ').',stopsign!)
		exit
	end if
	
	dw.insertrow( 0 )
	
	for j= 1  to lnv_dbf.of_columncount()
		if j > long(dw.Describe("DataWindow.Column.Count")) then exit
		la_value = lnv_dbf.of_getfieldvalue(j)
		ls_field = lower(lnv_dbf.of_getfieldname(j))
		
		if classname(la_value)="string" then
			ls_temp = string(la_value)
			OemToChar(ls_temp, ls_temp)
			dw.setitem(i,j,ls_temp)
		else
			dw.setitem(i,j,String(la_value))
		end if
		
	next
next

lnv_dbf.of_fileclose()
destroy nv_dbf
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / ImportFile / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]