Имя: Пароль:
 
1C
1С v8
Загружаю товары из дбф в ут 10,3 , но наименованию загружаются как ироглюфы
0 lite700700
 
18.10.16
16:10
Загружаю товары из дбф в ут 10,3 , но наименованию загружаются как ироглюфы

    База = Новый XBase;
    База.Кодировка = КодировкаXBase.ANSI;
    //База.
    База.ОткрытьФайл(Путь) ;
    //
    База.ПолучитьЗначениеПоля("TOVAR");

пробывал анси и оем без разницы , что подскажите ?
дбф редактор ппишет что кодировка вин
1 Boleev
 
18.10.16
16:12
Пересохрани dbf из винредактора
2 lite700700
 
18.10.16
16:16
может перкодировать его ?
3 lite700700
 
18.10.16
16:16
в дбф редакторе
4 SSSSS_AAAAA
 
18.10.16
16:28
(0) Дай-ка этот дбф на посмотреть.
5 Лефмихалыч
 
модератор
18.10.16
16:31
(0) давай договоримся, что ты больше не будешь экономить буквы в названии темы?
6 lite700700
 
18.10.16
17:28
с перекодировкой в дбф идет дос-вин
7 lite700700
 
18.10.16
17:30
8 lite700700
 
18.10.16
17:32
михалыч понял.
9 lite700700
 
18.10.16
17:34
просто не удобно в дбф  редакторе все время перкодировать !
10 Лефмихалыч
 
18.10.16
17:35
(9) может в источнике, из которого этот дбф выкакивается, что-то подкрутить, чтобы так не было?
11 Кирпич
 
18.10.16
17:35
(7) там 1251 кодировка
12 lite700700
 
18.10.16
17:39
у меня прямой связи нет с ,создателем дбф, мне сказали обработку написать и сё
13 lite700700
 
18.10.16
17:39
14 Кирпич
 
18.10.16
17:44
База.ОткрытьФайл("c:\temp\Акп609.DBF") ;
    База.Кодировка = КодировкаXBase.ANSI;
    З = База.ПолучитьЗначениеПоля("TOVAR");
    Сообщить(З);

у меня работает
найди одно отличие
15 Garykom
 
18.10.16
17:44
(13) Хехе ювелирочка лично пользуюсь предобработкой DBFNavigator, кнопочка DOS отжать (в файле неверно указана OEM CP866 кодировка когда по факту ANSI CP1251) и Файл>Сохранить как...
16 Garykom
 
18.10.16
17:44
(14) ОткрытьФайл меняет кодировку на "из файла" и нужно переустановить ее уже для открытого
17 Лефмихалыч
 
18.10.16
17:45
(12) тогда либо перекодирывай дальше, либо читай их чем-то другим вместо объекта XBase()
18 Кирпич
 
18.10.16
17:46
(17) так работает всё
19 lite700700
 
18.10.16
17:46
сначала открыть ,потом установить кодировку ?
20 Кирпич
 
18.10.16
17:46
нужно База.Кодировка = КодировкаXBase.ANSI; писать после
ОткрытьФайл
21 lite700700
 
18.10.16
17:48
Спасибо попробую !
22 Garykom
 
18.10.16
17:49
(19) Угу и раздели свой код (заранее для будущих других форматов) на 3 части:
1. Подготовка данных для загрузки (чтение правильно и перекодировка если нуна)
2. Загрузка в ТЗ
3. Обработка ТЗ для создания доков или других объектов в базе
23 Garykom
 
18.10.16
17:50
(22)+ В смысле когда будут другие форматы с другими наборами полей то проще придумать стандартный (для предметки в данном для ювелирки) свой формат ТЗ и всегда сначала приводить к нему.
А уже потом загружать всегда из стандартного.
24 lite700700
 
18.10.16
17:52
ОК РЕШЕНО !!! ВСЕМ СПАСИБО !!!
25 Garykom
 
18.10.16
17:52
(23)+ У меня стандарт для загрузки такой:
№ п/п    Товар    Артикул    Проба    Размер    Кол-во    Вес    Цена    Сумма    Вставка
26 Garykom
 
18.10.16
17:53
(25)+ Да "Товар" это по факту "Вид изделия", а полное наименование формируется номенклатуры формируется из этих составных.
27 Garykom
 
18.10.16
17:55
(25)+ "Цена" это "цена без НДС" а "Сумма" это "сумма с НДС" и зная "Кол-во" легко находим сколько НДС
28 lite700700
 
18.10.16
17:55
ну да там подтаскиваем вес размер и вставки в название
Независимо от того, куда вы едете — это в гору и против ветра!