Ошибка при открытии файла dbf t1 error 7016

1

2

3

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Начну с того что с 1с столкнулся так сказать впервые. стоит какая то 1с. 7.7 (камин)
Попросили помочь решить проблему, естественно резервных копий БД нет.
при запуске 1с выдает ошибку на 1SENTRY.DBF.
почитав форумы и т.п. попробовал сделал вот что:
Удалил все файлы CDX запустил конфигуратор, и сделал Тестирование и исправление
по окончанию выдало вот что:

Таблица — 1SENTRY. Не сошлось наименование поля номер 19 — ODTSC0
Проверка физической целостности таблиц ИБ. Неисправимая ошибка.
Таблица — 1SENTRY. Не сошлось наименование поля номер 19 — ODTSC0
Проверка физической целостности таблиц ИБ. Неисправимая ошибка.

ссылка на файл 1SENTRY — yadi.sk/i/XoA8cr52n4JN2Q
Почитав форумы понял что как-то ковыряют проблемный файл что-то убирают и т.п. и все становится хорошо, если кому не сложно помогите или расскажите что делать. Заранее огромное спасибо!

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
Кроме файла 1SENTRY надо положить хотя бы файлы 1cv7.md и 1cv7.dd

Valentin46

Дата регистрации: 10.02.2011
Сообщений: 1041

Тимур, прежде чем «ковырять» проблемный файл, следует установить какой-нибудь редактор dbf-файлов, например, ReDbf.

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Valentin46, Устанавливал. Не открывает, ошибку выдает

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero, yadi.sk/d/PgZSYmHrYI6bdg

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Valentin46 пишет:

Цитата

                                             Ответ на
                   пост №1

                    Тимур , прежде чем «ковырять» проблемный файл следует установить какой-нибудь редактор dbf-файлов, например, ReDbf.

Выдает ошибку: Ошибка при открытии файла — T1: Error 7016: corrupt table. make sure you are not attempting to open a DBF with an ADT table type or vice versa

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
в архиве нет файла 1SENTRY.dbf

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero пишет:

Цитата

Ответ на
пост №5

Тимур , в архиве нет файла 1SENTRY.dbf

сорри в топе темы не то кинул
вот — yadi.sk/d/zCGQhQnKwULh7A

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
Получил. Сейчас под руками нет необходимых инструментов. Вечером сообщу результат.

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero пишет:

Цитата

                                             Ответ на
                   пост №8

                    Тимур , Получил. Сейчас под руками нет необходимых инструментов. Вечером сообщу результат.

буду с нетерпением ждать

Читают тему:

Ошибка открытия ДБФ

Я

  

andiko

25.12.06 — 17:38

При попытке открыть ДБФ-файл вываливается с ошибкой: «Перед выполнением операции нужно закрыть базу!». Файлы не открыты

ДБФ = СоздатьОбъект(«XBASE»);

ПутьФ = «D:obmen»;

ФС.УстТекКаталог(ПутьФ);

Файл = ФС.НайтиПервыйФайл(«*.*»);

Файл = ФС.НайтиСледующийФайл();

Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге

 Файл = ФС.НайтиСледующийФайл();

 ИмяФайла = ПутьФ+Файл;

 ДБФ.ОткрытьФайл(ИмяФайла);

 Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда

  Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл

   Сообщить(«Не удалось открыть файл!»);

  КонецЕсли;

  

ТелепатБот

1 — 25.12.06 — 17:38

  

andiko

2 — 25.12.06 — 17:39

(1) типа умный…

  

MAG

3 — 25.12.06 — 17:40

Путь = «D:1СBasesNOM.dbf»;
   Если ФС.СуществуетФайл(Путь) = 0 Тогда
       Сообщить(«Файл базы не найден!»,»!»);
       Возврат;
   КонецЕсли;    
   БД = СоздатьОбъект(«XBase»);
   Попытка
       БД.ОткрытьФайл(Путь);
   Исключение              
       БД.ЗакрытьФайл();
       БД.ОткрытьФайл(Путь);
   КонецПопытки;
   Если БД.Открыта() = 0 Тогда
       Сообщить(«Ошибка открытия базы !»,»!»);
       Возврат;
   КонецЕсли;

  

andiko

4 — 25.12.06 — 17:43

(3) прикольно…
а из-за чего ругаться может?

  

andiko

5 — 25.12.06 — 17:54

всеравно не работает

   ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:БазыРеализацииАвиапроobmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               Попытка
           ДБФ.ОткрытьФайл(ИмяФайла);
       Исключение
           ДБФ.ЗакрытьФайл();
           ДБФ.ОткрытьФайл(ИмяФайла);
       КонецПопытки;

               Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

  

Каанкереде

6 — 25.12.06 — 17:55

(4) ты этот D:1СBasesNOM.dbf случаем никаким dbfViewer’ ом не открыл параллельно?

  

andiko

7 — 25.12.06 — 17:58

(6) так в том-то и дело: перезагружался, удалял — ничего не помогает :(

  

Каанкереде

8 — 25.12.06 — 18:03

(7) а пробовал этот файл еще чем нибудь открыть? тем же dbfViewer или dbfNavigator

  

andiko

9 — 25.12.06 — 18:04

(8) нормально открывается

  

Прохожий

10 — 25.12.06 — 18:13

(9) Есть программа, unlocker, вроде…

  

andiko

11 — 25.12.06 — 18:14

(10) файл ничем/никем не заблокирован: нормально удаляется

  

Прохожий

12 — 25.12.06 — 18:14

А зачем ты его удаляешь? Не удаляй…

  

Прохожий

13 — 25.12.06 — 18:15

У тебя именно этот файл не открывается или вообще ни один?

  

andiko

14 — 25.12.06 — 18:20

(13) у меня их в папке два, не один не открывается. перезагружался — не помогло. из внешней обработки, такой же в ноль код работает, из глобальника — нет

  

Tymoha

15 — 25.12.06 — 18:25

(14)атрибуты файла проверь

  

andiko

16 — 25.12.06 — 18:52

(15) пучком все с атрибутами…

  

andiko

17 — 25.12.06 — 19:24

неужели ни у кого такого небыло ?

  

DrShad

18 — 25.12.06 — 19:28

имена файлов давай?

  

andiko

19 — 25.12.06 — 19:32

(18) не понял?

  

DrShad

20 — 25.12.06 — 19:35

у меня так было когда файлы имели кирилические символы или были больше 8 символов в названии

  

andiko

21 — 25.12.06 — 19:36

(20) у меня файлы называются 1.dbf, 2.dbf, 3.dbf и т.д.
причем обработкой открываются, а из глобальника нет

  

DrShad

22 — 25.12.06 — 19:38

какой обработкой?

  

andiko

23 — 25.12.06 — 19:39

(22)точной копией процедуры из глобальника. написал чтобы удобнее было отладить

  

DrShad

24 — 25.12.06 — 19:42

та что в (0)

  

DrShad

25 — 25.12.06 — 19:42

а ты ее из глобальника убрал?

  

DrShad

26 — 25.12.06 — 19:44

+(25) т.е. они у тебя не пытаются дважды открыться? ты их после пользования закрываешь?

  

andiko

27 — 25.12.06 — 19:46

(26) написал во внешней обработке, отладил. все гуд
впихнул в глобальник — выдает ошибку. удалил файлы — пофиг. перегрузился — пофиг, атрибуты файлов — гуд

  

DrShad

28 — 25.12.06 — 19:48

а отладчиком что показывает?

  

andiko

29 — 25.12.06 — 19:50

(28) а отладчик куда пихать?

  

mun2

30 — 25.12.06 — 19:50

У тебя переменные в глобальнике не пересекаются?

  

DrShad

31 — 25.12.06 — 19:55

а что ты вообще в них пишешь?

  

andiko

32 — 26.12.06 — 10:37

(30) переменные не пересекаются
(31) в файле содержится структура справочника другой базы

  

A_M-ko

33 — 26.12.06 — 11:37

Был у меня такой прикол. Для открытия файла запустил цикл, так вот файл открылся с четвертой попытки. Платформа 1С рулит.

  

andiko

34 — 26.12.06 — 11:40

(33) а лечить как?

  

A_M-ko

35 — 26.12.06 — 11:42

Платформу лечить нужно. Не ожидает она момента открытия, спешит куда-то.

  

andiko

36 — 26.12.06 — 11:43

(35) а конкретные предложения? ведь из внешней обработки все работает

  

A_M-ko

37 — 26.12.06 — 11:43

Ха. А уменя как раз во внешней обработке не работало.

  

andiko

38 — 26.12.06 — 11:44

(37) а в глобальном все пучком?

  

A_M-ko

39 — 26.12.06 — 11:45

Не заморачивайся. Поставь цикл и все срастется. Секунда туда секунда сюда. Все остальное работает дольше.

  

andiko

40 — 26.12.06 — 11:47

цикл с 1 по 100 000 хватит?

  

A_M-ko

41 — 26.12.06 — 11:49

Да я же говорю с четвертой попытки. Цикл

ДБ.ОткрытьФайл(ИмяФайла);

Пока ДБ.Открыта()=0 Цикл

   ДБ.ОткрытьФайл(ИмяФайла);

КонецЦикла;

  

andiko

42 — 26.12.06 — 11:51

(41) т.е. этот кусок в цикл на 4-5 раз?

  

Один С

43 — 26.12.06 — 11:56

(40) Поставь перед словом «Попытка»  строчку Сообщить(Файл);

  

A_M-ko

44 — 26.12.06 — 11:57

Да нет, это все. Просто я там счетчик при отладке вставлял и его потом смотрел при выходе из цикла.

  

andiko

45 — 26.12.06 — 12:00

(43) поставил. сообщает имя файла который там есть
(44) понял, спасибо. буду пробывать (бредятина какая-то)

  

andiko

46 — 26.12.06 — 12:15

прокрутилось чуть больше 10 раз, толку 0

  

andiko

47 — 26.12.06 — 12:42

уже минут 40 крутится и не читает

  

A_M-ko

48 — 26.12.06 — 12:44

Ну извини. Я описал как было у меня.

  

A_M-ko

49 — 26.12.06 — 12:48

У меня правда проблема была в том, что файл создавался в обработке. Перед открытием стоял цикл задержки по условию наличия файла в каталоге. Так вот слету файл не открывался, а с четвертой попытки все получалось. Может у тебя он действительно чем-то он блокируется?

  

andiko

50 — 26.12.06 — 12:49

(49)  я так понимаю, что если файл блокируется, то с ним ничего нельзя сделать: не удалить, не переместить, но! у меня и удаляется и перемещается

  

A_M-ko

51 — 26.12.06 — 12:52

А нет ли ограничения на количество открытых файлов xBase? Я не знаю, просто предположение?

  

andiko

52 — 26.12.06 — 12:58

(51) это как?

  

A_M-ko

53 — 26.12.06 — 13:00

И еще. Когда я в глобальном модуле при начале работы запустил небольшую обработку справочника на 23000 элементов, то работа системы продолжилась, а справочник продолжал обрабатываться, и меню осталось недоступным. Как у тебя вызывается эта процедура?

  

A_M-ko

54 — 26.12.06 — 13:03

(52) Сколько одновременно можно создать объектов xBase?

  

andiko

55 — 26.12.06 — 13:12

(53) вызывается по таймеру
(54) как узнать?

  

Один С

56 — 26.12.06 — 13:18

Че то я не понял. Зачем ты файлы открываешь, закрываешь?

А строчка «Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда»

вообще непонятно для чего.

  

andiko

57 — 26.12.06 — 13:21

(56) цикл по файлам в каталоге

  

Иде я

58 — 26.12.06 — 13:30

Нука отпость сюда путь к каталогу…
и код обработки

  

andiko

59 — 26.12.06 — 13:33

ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:obmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               ДБФ.ОткрытьФайл(ИмяФайла);

       Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

и так далее

  

A_M-ko

60 — 26.12.06 — 13:34

Може все дело в вызове по таймеру? Может что-то с синхронизацией событий открытия-закрытия? Эх отладчик тупой.

  

  

Иде я

61 — 26.12.06 — 13:35

«*.*» Че эт за лажа ?
Ты все подряд пытаешься открывать ? может отфильтруешь по «*.dbf» ?

  

Иде я

62 — 26.12.06 — 13:37

И блин, нафига ты вначале пытаешься открыть файл, а потом только проверяешь существование его ?

  

Иде я

63 — 26.12.06 — 13:37

Файл = ФС.НайтиСледующийФайл();
сообщить(Файл);
       ИмяФайла = ПутьФ+Файл;
Сообщить(ИмяФайла);

  

andiko

64 — 26.12.06 — 14:10

(61) у меня там только дбф
(62) исправил — пофиг

  

andiko

65 — 26.12.06 — 15:14

спецы иссякли…

  

Один С

66 — 26.12.06 — 15:26

Выложи процедуру целиком.

  

vpetrov

67 — 26.12.06 — 15:32

Возможно, что у тебя неправильно отрабатывает путь… Попробуй полностью прописать путь, с учетом сетевого адреса, либо попробуй перекинуть этот каталог на диск С, и соответственно в коде поменять путь с Д на С.

  

andiko

68 — 26.12.06 — 15:33

ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:БазыРеализацииАвиапроobmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               ДБФ.ОткрытьФайл(ИмяФайла);

               Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

                       Состояние(«Загружаем данные…»);

                       тз = СоздатьОбъект(«ТаблицаЗначений»);
           тз1 = СоздатьОбъект(«ТаблицаЗначений»);
           ДБФ.Первая(); //позиционируемся на первой записи
           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл
               тз.НоваяСтрока();
               тз1.НоваяСтрока();
               // шапка документа
               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество
               ДБФ.Следующая();
           КонецЦикла;
           ДБФ.ЗакрытьФайл();
           ФС.УдалитьФайл(ИмяФайла);
       КонецЕсли; // проверка на наличе файла    
   КонецЦикла; // конец цикла по файлам в папке

  

andiko

69 — 26.12.06 — 15:33

(67) с путем все ок

  

Казанская Сирота

70 — 26.12.06 — 15:37

Попробуй из пути убрать Кириллицу. C:DBFfilesobmen

  

Казанская Сирота

71 — 26.12.06 — 15:39

Кста у тя поиск пропускает первые два файла.

Файл = ФС.НайтиПервыйФайл(«*.*»);  //ты уже на файл спозиционировался

Файл = ФС.НайтиСледующийФайл(); // гоп на второй

Пока ПустоеЗначение(Файл) = 0 Цикл

Файл = ФС.НайтиСледующийФайл(); // гоп на третий ;)

ИмяФайла = ПутьФ+Файл;

  

Казанская Сирота

72 — 26.12.06 — 15:41

Делай

Файл = ФС.НайтиСледующийФайл(); // гоп на третий ;)

Если ПустоеЗначение(Файл)=1 Тогда

 Прервать;

КонецЕсли;

КонецЦикла;

  

Казанская Сирота

73 — 26.12.06 — 15:41

// гоп на третий ;)  не отсюда

  

Shaman100M

74 — 26.12.06 — 15:42

(21) Не начинай файл с цифры. Сделай хотя бы F1.dbf F2.dbf …

  

Shaman100M

75 — 26.12.06 — 15:47

В фоксе такие файлы не открываются

  

Один С

76 — 26.12.06 — 16:20

ДБФ = СоздатьОбъект(«XBASE»);

   ПутьФ = «D:БазыРеализацииАвиапроobmen»;

   ФС.УстТекКаталог(ПутьФ);

   Файл = ФС.НайтиПервыйФайл(«*.dbf»);

   Пока ПустоеЗначение(Файл) = 0 Цикл

       ИмяФайла = ПутьФ+Файл;    

       ДБФ.ОткрытьФайл(ИмяФайла);    

       Состояние(«Загружаем данные…»);    

           тз = СоздатьОбъект(«ТаблицаЗначений»);

           тз1 = СоздатьОбъект(«ТаблицаЗначений»);

           ДБФ.Первая(); //позиционируемся на первой записи

           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл

               тз.НоваяСтрока();

               тз1.НоваяСтрока();

               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество

               ДБФ.Следующая();

           КонецЦикла;

           ДБФ.ЗакрытьФайл();

           ФС.УдалитьФайл(ИмяФайла);

           Файл = ФС.НайтиСледующийФайл();

   КонецЦикла;

  

andiko

77 — 26.12.06 — 16:29

(76) в таком варианте работает, только загружает один файл, а остальные удаляет

  

A_M-ko

78 — 26.12.06 — 16:33

А может dbf-файлы не одного типа (FoxPro, dBase), например файлы типа Fox2x открываются а выше версий нет.

  

Shaman100M

79 — 26.12.06 — 16:34

(77) Не нарушай выборку удалением, сделай так:

Спс1=СоздатьОбъект(«СписокЗначений»);

Файл=ФС.НайтиПервыйФайл(«*.*»);

Пока пустоеЗначение(Файл)=0 Цикл

   Спс1.ДобавитьЗначение(Файл);

   Файл=ФС.НайтиСледующийФайл();

КонцЦИкла;

а потом обрабатывай список.

  

andiko

80 — 26.12.06 — 16:39

(78) файлы созданы в 1С
(79) а не черезчур запутанно и сложно?

  

Один С

81 — 26.12.06 — 16:41

Вот тебе окончательный вариант. Он работает.

   ДБФ = СоздатьОбъект(«XBASE»);

   ПутьФ = «D:БазыРеализацииАвиапроobmen»;

   ФС.УстТекКаталог(ПутьФ);

   Файл = ФС.НайтиПервыйФайл(«*.dbf»);

   Пока ПустоеЗначение(Файл) = 0 Цикл

       ИмяФайла = ПутьФ+Файл;    

       ДБФ.ОткрытьФайл(ИмяФайла);    

       Состояние(«Загружаем данные…»);    

           тз = СоздатьОбъект(«ТаблицаЗначений»);

           тз1 = СоздатьОбъект(«ТаблицаЗначений»);

           ДБФ.Первая(); //позиционируемся на первой записи

           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл

               тз.НоваяСтрока();

               тз1.НоваяСтрока();

               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество

               ДБФ.Следующая();

           КонецЦикла;

           ДБФ.ЗакрытьФайл();

           Файл = ФС.НайтиСледующийФайл();

           ФС.УдалитьФайл(ИмяФайла);          

   КонецЦикла;

  

andiko

82 — 26.12.06 — 16:59

(81) блин… не работает

  

Один С

83 — 26.12.06 — 17:06

(82) Где не работает?

  

Иде я

84 — 26.12.06 — 17:06

Первые два файла будут «.» и «..»

  

andiko

85 — 26.12.06 — 17:08

(84) угу

  

andiko

86 — 26.12.06 — 17:12

(83) загружает один из двух файлов и все

  

A_M-ko

87 — 27.12.06 — 11:01

А может не удалять в цикле файлы, а удалить потом после загрузки?

1

2

3

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Начну с того что с 1с столкнулся так сказать впервые. стоит какая то 1с. 7.7 (камин)
Попросили помочь решить проблему, естественно резервных копий БД нет.
при запуске 1с выдает ошибку на 1SENTRY.DBF.
почитав форумы и т.п. попробовал сделал вот что:
Удалил все файлы CDX запустил конфигуратор, и сделал Тестирование и исправление
по окончанию выдало вот что:

Таблица — 1SENTRY. Не сошлось наименование поля номер 19 — ODTSC0
Проверка физической целостности таблиц ИБ. Неисправимая ошибка.
Таблица — 1SENTRY. Не сошлось наименование поля номер 19 — ODTSC0
Проверка физической целостности таблиц ИБ. Неисправимая ошибка.

ссылка на файл 1SENTRY — yadi.sk/i/XoA8cr52n4JN2Q
Почитав форумы понял что как-то ковыряют проблемный файл что-то убирают и т.п. и все становится хорошо, если кому не сложно помогите или расскажите что делать. Заранее огромное спасибо!

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
Кроме файла 1SENTRY надо положить хотя бы файлы 1cv7.md и 1cv7.dd

Valentin46

Дата регистрации: 10.02.2011
Сообщений: 1041

Тимур, прежде чем «ковырять» проблемный файл, следует установить какой-нибудь редактор dbf-файлов, например, ReDbf.

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Valentin46, Устанавливал. Не открывает, ошибку выдает

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero, yadi.sk/d/PgZSYmHrYI6bdg

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

Valentin46 пишет:

Цитата

                                             Ответ на
                   пост №1

                    Тимур , прежде чем «ковырять» проблемный файл следует установить какой-нибудь редактор dbf-файлов, например, ReDbf.

Выдает ошибку: Ошибка при открытии файла — T1: Error 7016: corrupt table. make sure you are not attempting to open a DBF with an ADT table type or vice versa

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
в архиве нет файла 1SENTRY.dbf

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero пишет:

Цитата

Ответ на
пост №5

Тимур , в архиве нет файла 1SENTRY.dbf

сорри в топе темы не то кинул
вот — yadi.sk/d/zCGQhQnKwULh7A

espero

Дата регистрации: 01.03.2004
Сообщений: 8

Тимур,
Получил. Сейчас под руками нет необходимых инструментов. Вечером сообщу результат.

Тимур

Дата регистрации: 24.06.2019
Сообщений: 18

espero пишет:

Цитата

                                             Ответ на
                   пост №8

                    Тимур , Получил. Сейчас под руками нет необходимых инструментов. Вечером сообщу результат.

буду с нетерпением ждать

Общая статистика

Загрузок всего 206 717
Загрузок за сегодня 2
Кол-во комментариев 38
Подписавшихся на новости о программе 2 (подписаться)

Оцените программу!
4.42 из 5, всего оценок — 74

  • Рейтинг программы — 4.42 из 5
  • 1
  • 2
  • 3
  • 4
  • 5

Распределение оценок программы

Елена про Редактор DBF 1.75.1 [02-11-2020]

Я вообще не могу разобраться, как это программа работает………………..
| 6 | Ответить

Антон про Редактор DBF 1.75.1 [01-02-2019]

Отличная программа. WinDbfView зависал надолго и вообще зависал в работе с файлами около 2 ГБ. Это программа справилась в считанные минуты.
2 | 4 | Ответить

14 про Редактор DBF 1.75.1 [19-08-2018]

лохотронщики рекламные
2 | 2 | Ответить

Владимир про Редактор DBF 1.75.1 [01-02-2018]

Программа шлак, попытка открыть dbf в win кодировке, «вырубает» софтинку. Странное понимание у автора понятия «редактор DBF». Снес.
2 | 4 | Ответить

Александр про Редактор DBF 1.75.1 [14-12-2017]

Подскажите по работе в редакторе. Я заполнил строку и как перейти на другую
7 | 24 | Ответить

Ирина про Редактор DBF 1.75.1 [20-07-2017]

Программа супер! Спасибо,очень помогли.
3 | 2 | Ответить

Анна Цокур про Редактор DBF 1.75.1 [05-07-2017]

Программа отличная, рекомендую всем. Красное поле, значит запись удпленне, надо выбрать пункт меню — сжать
2 | 3 | Ответить

Coi про Редактор DBF 1.75.1 [28-03-2017]

работает, смог добавить 2 новых столбца, большего мне и надо было
отлично, даже под wine
2 | 6 | Ответить

Олег про Редактор DBF 1.75.1 [14-06-2016]

Не понимает квадратные скобки в именах полей таблицы
Моментально вылетает при открытии файла с большим массивом данных (280 строк по 50 полей)
Дальше не тестил, удалил
2 | 3 | Ответить

Сергей про Редактор DBF 1.75.1 [13-12-2015]

Тупее проги еще не видел, не создает как надо, и даже ошибки не выдает просто возращает к исходнику и всё!!
3 | 5 | Ответить

Ярослав про Редактор DBF 1.75.1 [07-10-2015]

Как удалить лишнюю строку в таблице? помогите(
9 | 5 | Ответить

hippelalex в ответ Ярослав про Редактор DBF 1.75.1 [02-12-2015]

Помечаете строку и нажимаете «Delete» на клавиатуре. Строка помечается красным, как удаленная. После упаковки таблицы все удаленные строки исчезнут.
3 | 4 | Ответить

hippelalex в ответ Ярослав про Редактор DBF 1.75.1 [02-12-2015]

Удобная, быстрая и простая программка. Спасибо!
Только не понял, как фильтровать по пустому значению? :(((
2 | 2 | Ответить

Александр про Редактор DBF 1.75.1 [09-06-2014]

Людддиии помогите…. Что за красный фон во всей таблице???? как убрать

З15-127-447
4 | 13 | Ответить

Aleksandr про Редактор DBF 1.75.1 [27-11-2013]

Привет всем!!! кто сталкивался с такой проблемой и как её исправить? очень срочно надо чтоб всё работало(((
Выдаёт ошибку : «Ошибка при открытии файла — Т1:Error 7144: The collftion repository could not be found. MACHINE, CodePage=1251» если можно то напишите на электронку если не трудно :uho06@inbox.ru
21 | 34 | Ответить

Kotavr про Редактор DBF 1.75.1 [23-10-2013]

На xp открыл файл dbf, который не смог открыть с помощью DBF View-ера и кстати он на русском языке
2 | 3 | Ответить

Ti про Редактор DBF 1.75.1 [10-10-2013]

Абсолютно порадовал п.7 лицензионного соглашения)))) С удовольствием согласилась)))
2 | 2 | Ответить

NV t про Редактор DBF 1.75.1 [22-05-2013]

По-моему , отличная программка, лично мне помогла вытянуть dbf-отчеты, Excel 2007 не смогла.
2 | 2 | Ответить

sss про Редактор DBF 1.75.1 [15-03-2013]

нифига не понятно много кнопок не активны
2 | 2 | Ответить

fashyk про Редактор DBF 1.75.1 [20-11-2012]

програма работает-но ничево не понятно, а нужна витягнуть прайс с бдф
2 | 2 | Ответить

blazkovicz про Редактор DBF 1.75.1 [18-09-2012]

С проблемой распознавания кодировки открываемого dbf можно справиться следующим образом:
1. открываем dbf excel’ем, сохраняем в xls
2. открываем dbf редактором, очищаем таблицу (останется инфа о колонках)
3. в редакторе импортируем данные в пустую таблицу из xls файла
2 | 8 | Ответить

hiz про Редактор DBF 1.75.1 [28-03-2012]

плохо работает с кодировками
3 | 2 | Ответить

Ошибка открытия ДБФ

Я

andiko

25.12.06 — 17:38

При попытке открыть ДБФ-файл вываливается с ошибкой: «Перед выполнением операции нужно закрыть базу!». Файлы не открыты

ДБФ = СоздатьОбъект(«XBASE»);

ПутьФ = «D:obmen»;

ФС.УстТекКаталог(ПутьФ);

Файл = ФС.НайтиПервыйФайл(«*.*»);

Файл = ФС.НайтиСледующийФайл();

Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге

 Файл = ФС.НайтиСледующийФайл();

 ИмяФайла = ПутьФ+Файл;

 ДБФ.ОткрытьФайл(ИмяФайла);

 Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда

  Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл

   Сообщить(«Не удалось открыть файл!»);

  КонецЕсли;

ТелепатБот

1 — 25.12.06 — 17:38

andiko

2 — 25.12.06 — 17:39

(1) типа умный…

MAG

3 — 25.12.06 — 17:40

Путь = «D:1СBasesNOM.dbf»;
   Если ФС.СуществуетФайл(Путь) = 0 Тогда
       Сообщить(«Файл базы не найден!»,»!»);
       Возврат;
   КонецЕсли;    
   БД = СоздатьОбъект(«XBase»);
   Попытка
       БД.ОткрытьФайл(Путь);
   Исключение              
       БД.ЗакрытьФайл();
       БД.ОткрытьФайл(Путь);
   КонецПопытки;
   Если БД.Открыта() = 0 Тогда
       Сообщить(«Ошибка открытия базы !»,»!»);
       Возврат;
   КонецЕсли;

andiko

4 — 25.12.06 — 17:43

(3) прикольно…
а из-за чего ругаться может?

andiko

5 — 25.12.06 — 17:54

всеравно не работает

   ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:БазыРеализацииАвиапроobmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               Попытка
           ДБФ.ОткрытьФайл(ИмяФайла);
       Исключение
           ДБФ.ЗакрытьФайл();
           ДБФ.ОткрытьФайл(ИмяФайла);
       КонецПопытки;

               Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

Каанкереде

6 — 25.12.06 — 17:55

(4) ты этот D:1СBasesNOM.dbf случаем никаким dbfViewer’ ом не открыл параллельно?

andiko

7 — 25.12.06 — 17:58

(6) так в том-то и дело: перезагружался, удалял — ничего не помогает

Каанкереде

8 — 25.12.06 — 18:03

(7) а пробовал этот файл еще чем нибудь открыть? тем же dbfViewer или dbfNavigator

andiko

9 — 25.12.06 — 18:04

(8) нормально открывается

Прохожий

10 — 25.12.06 — 18:13

(9) Есть программа, unlocker, вроде…

andiko

11 — 25.12.06 — 18:14

(10) файл ничем/никем не заблокирован: нормально удаляется

Прохожий

12 — 25.12.06 — 18:14

А зачем ты его удаляешь? Не удаляй…

Прохожий

13 — 25.12.06 — 18:15

У тебя именно этот файл не открывается или вообще ни один?

andiko

14 — 25.12.06 — 18:20

(13) у меня их в папке два, не один не открывается. перезагружался — не помогло. из внешней обработки, такой же в ноль код работает, из глобальника — нет

Tymoha

15 — 25.12.06 — 18:25

(14)атрибуты файла проверь

andiko

16 — 25.12.06 — 18:52

(15) пучком все с атрибутами…

andiko

17 — 25.12.06 — 19:24

неужели ни у кого такого небыло ?

DrShad

18 — 25.12.06 — 19:28

имена файлов давай?

andiko

19 — 25.12.06 — 19:32

(18) не понял?

DrShad

20 — 25.12.06 — 19:35

у меня так было когда файлы имели кирилические символы или были больше 8 символов в названии

andiko

21 — 25.12.06 — 19:36

(20) у меня файлы называются 1.dbf, 2.dbf, 3.dbf и т.д.
причем обработкой открываются, а из глобальника нет

DrShad

22 — 25.12.06 — 19:38

какой обработкой?

andiko

23 — 25.12.06 — 19:39

(22)точной копией процедуры из глобальника. написал чтобы удобнее было отладить

DrShad

24 — 25.12.06 — 19:42

та что в (0)

DrShad

25 — 25.12.06 — 19:42

а ты ее из глобальника убрал?

DrShad

26 — 25.12.06 — 19:44

+(25) т.е. они у тебя не пытаются дважды открыться? ты их после пользования закрываешь?

andiko

27 — 25.12.06 — 19:46

(26) написал во внешней обработке, отладил. все гуд
впихнул в глобальник — выдает ошибку. удалил файлы — пофиг. перегрузился — пофиг, атрибуты файлов — гуд

DrShad

28 — 25.12.06 — 19:48

а отладчиком что показывает?

andiko

29 — 25.12.06 — 19:50

(28) а отладчик куда пихать?

mun2

30 — 25.12.06 — 19:50

У тебя переменные в глобальнике не пересекаются?

DrShad

31 — 25.12.06 — 19:55

а что ты вообще в них пишешь?

andiko

32 — 26.12.06 — 10:37

(30) переменные не пересекаются
(31) в файле содержится структура справочника другой базы

A_M-ko

33 — 26.12.06 — 11:37

Был у меня такой прикол. Для открытия файла запустил цикл, так вот файл открылся с четвертой попытки. Платформа 1С рулит.

andiko

34 — 26.12.06 — 11:40

(33) а лечить как?

A_M-ko

35 — 26.12.06 — 11:42

Платформу лечить нужно. Не ожидает она момента открытия, спешит куда-то.

andiko

36 — 26.12.06 — 11:43

(35) а конкретные предложения? ведь из внешней обработки все работает

A_M-ko

37 — 26.12.06 — 11:43

Ха. А уменя как раз во внешней обработке не работало.

andiko

38 — 26.12.06 — 11:44

(37) а в глобальном все пучком?

A_M-ko

39 — 26.12.06 — 11:45

Не заморачивайся. Поставь цикл и все срастется. Секунда туда секунда сюда. Все остальное работает дольше.

andiko

40 — 26.12.06 — 11:47

цикл с 1 по 100 000 хватит?

A_M-ko

41 — 26.12.06 — 11:49

Да я же говорю с четвертой попытки. Цикл

ДБ.ОткрытьФайл(ИмяФайла);

Пока ДБ.Открыта()=0 Цикл

   ДБ.ОткрытьФайл(ИмяФайла);

КонецЦикла;

andiko

42 — 26.12.06 — 11:51

(41) т.е. этот кусок в цикл на 4-5 раз?

Один С

43 — 26.12.06 — 11:56

(40) Поставь перед словом «Попытка»  строчку Сообщить(Файл);

A_M-ko

44 — 26.12.06 — 11:57

Да нет, это все. Просто я там счетчик при отладке вставлял и его потом смотрел при выходе из цикла.

andiko

45 — 26.12.06 — 12:00

(43) поставил. сообщает имя файла который там есть
(44) понял, спасибо. буду пробывать (бредятина какая-то)

andiko

46 — 26.12.06 — 12:15

прокрутилось чуть больше 10 раз, толку 0

andiko

47 — 26.12.06 — 12:42

уже минут 40 крутится и не читает

A_M-ko

48 — 26.12.06 — 12:44

Ну извини. Я описал как было у меня.

A_M-ko

49 — 26.12.06 — 12:48

У меня правда проблема была в том, что файл создавался в обработке. Перед открытием стоял цикл задержки по условию наличия файла в каталоге. Так вот слету файл не открывался, а с четвертой попытки все получалось. Может у тебя он действительно чем-то он блокируется?

andiko

50 — 26.12.06 — 12:49

(49)  я так понимаю, что если файл блокируется, то с ним ничего нельзя сделать: не удалить, не переместить, но! у меня и удаляется и перемещается

A_M-ko

51 — 26.12.06 — 12:52

А нет ли ограничения на количество открытых файлов xBase? Я не знаю, просто предположение?

andiko

52 — 26.12.06 — 12:58

(51) это как?

A_M-ko

53 — 26.12.06 — 13:00

И еще. Когда я в глобальном модуле при начале работы запустил небольшую обработку справочника на 23000 элементов, то работа системы продолжилась, а справочник продолжал обрабатываться, и меню осталось недоступным. Как у тебя вызывается эта процедура?

A_M-ko

54 — 26.12.06 — 13:03

(52) Сколько одновременно можно создать объектов xBase?

andiko

55 — 26.12.06 — 13:12

(53) вызывается по таймеру
(54) как узнать?

Один С

56 — 26.12.06 — 13:18

Че то я не понял. Зачем ты файлы открываешь, закрываешь?

А строчка «Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда»

вообще непонятно для чего.

andiko

57 — 26.12.06 — 13:21

(56) цикл по файлам в каталоге

Иде я

58 — 26.12.06 — 13:30

Нука отпость сюда путь к каталогу…
и код обработки

andiko

59 — 26.12.06 — 13:33

ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:obmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               ДБФ.ОткрытьФайл(ИмяФайла);

       Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

и так далее

A_M-ko

60 — 26.12.06 — 13:34

Може все дело в вызове по таймеру? Может что-то с синхронизацией событий открытия-закрытия? Эх отладчик тупой.

  

Иде я

61 — 26.12.06 — 13:35

«*.*» Че эт за лажа ?
Ты все подряд пытаешься открывать ? может отфильтруешь по «*.dbf» ?

Иде я

62 — 26.12.06 — 13:37

И блин, нафига ты вначале пытаешься открыть файл, а потом только проверяешь существование его ?

Иде я

63 — 26.12.06 — 13:37

Файл = ФС.НайтиСледующийФайл();
сообщить(Файл);
       ИмяФайла = ПутьФ+Файл;
Сообщить(ИмяФайла);

andiko

64 — 26.12.06 — 14:10

(61) у меня там только дбф
(62) исправил — пофиг

andiko

65 — 26.12.06 — 15:14

спецы иссякли…

Один С

66 — 26.12.06 — 15:26

Выложи процедуру целиком.

vpetrov

67 — 26.12.06 — 15:32

Возможно, что у тебя неправильно отрабатывает путь… Попробуй полностью прописать путь, с учетом сетевого адреса, либо попробуй перекинуть этот каталог на диск С, и соответственно в коде поменять путь с Д на С.

andiko

68 — 26.12.06 — 15:33

ДБФ = СоздатьОбъект(«XBASE»);
   ПутьФ = «D:БазыРеализацииАвиапроobmen»;
   ФС.УстТекКаталог(ПутьФ);
   Файл = ФС.НайтиПервыйФайл(«*.*»);
   Файл = ФС.НайтиСледующийФайл();
   Пока ПустоеЗначение(Файл) = 0 Цикл // цикл по файлам в каталоге
       Файл = ФС.НайтиСледующийФайл();
       ИмяФайла = ПутьФ+Файл;

               ДБФ.ОткрытьФайл(ИмяФайла);

               Если ФС.СуществуетФайл(ИмяФайла) = 1 Тогда
           Если ДБФ.Открыта()=0 Тогда //проверяем, удалось ли открыть файл
               Сообщить(«Не удалось открыть файл!»);
           КонецЕсли;

                       Состояние(«Загружаем данные…»);

                       тз = СоздатьОбъект(«ТаблицаЗначений»);
           тз1 = СоздатьОбъект(«ТаблицаЗначений»);
           ДБФ.Первая(); //позиционируемся на первой записи
           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл
               тз.НоваяСтрока();
               тз1.НоваяСтрока();
               // шапка документа
               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество
               ДБФ.Следующая();
           КонецЦикла;
           ДБФ.ЗакрытьФайл();
           ФС.УдалитьФайл(ИмяФайла);
       КонецЕсли; // проверка на наличе файла    
   КонецЦикла; // конец цикла по файлам в папке

andiko

69 — 26.12.06 — 15:33

(67) с путем все ок

Казанская Сирота

70 — 26.12.06 — 15:37

Попробуй из пути убрать Кириллицу. C:DBFfilesobmen

Казанская Сирота

71 — 26.12.06 — 15:39

Кста у тя поиск пропускает первые два файла.

Файл = ФС.НайтиПервыйФайл(«*.*»);  //ты уже на файл спозиционировался

Файл = ФС.НайтиСледующийФайл(); // гоп на второй

Пока ПустоеЗначение(Файл) = 0 Цикл

Файл = ФС.НайтиСледующийФайл(); // гоп на третий

ИмяФайла = ПутьФ+Файл;

Казанская Сирота

72 — 26.12.06 — 15:41

Делай

Файл = ФС.НайтиСледующийФайл(); // гоп на третий

Если ПустоеЗначение(Файл)=1 Тогда

 Прервать;

КонецЕсли;

КонецЦикла;

Казанская Сирота

73 — 26.12.06 — 15:41

// гоп на третий  не отсюда

Shaman100M

74 — 26.12.06 — 15:42

(21) Не начинай файл с цифры. Сделай хотя бы F1.dbf F2.dbf …

Shaman100M

75 — 26.12.06 — 15:47

В фоксе такие файлы не открываются

Один С

76 — 26.12.06 — 16:20

ДБФ = СоздатьОбъект(«XBASE»);

   ПутьФ = «D:БазыРеализацииАвиапроobmen»;

   ФС.УстТекКаталог(ПутьФ);

   Файл = ФС.НайтиПервыйФайл(«*.dbf»);

   Пока ПустоеЗначение(Файл) = 0 Цикл

       ИмяФайла = ПутьФ+Файл;    

       ДБФ.ОткрытьФайл(ИмяФайла);    

       Состояние(«Загружаем данные…»);    

           тз = СоздатьОбъект(«ТаблицаЗначений»);

           тз1 = СоздатьОбъект(«ТаблицаЗначений»);

           ДБФ.Первая(); //позиционируемся на первой записи

           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл

               тз.НоваяСтрока();

               тз1.НоваяСтрока();

               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество

               ДБФ.Следующая();

           КонецЦикла;

           ДБФ.ЗакрытьФайл();

           ФС.УдалитьФайл(ИмяФайла);

           Файл = ФС.НайтиСледующийФайл();

   КонецЦикла;

andiko

77 — 26.12.06 — 16:29

(76) в таком варианте работает, только загружает один файл, а остальные удаляет

A_M-ko

78 — 26.12.06 — 16:33

А может dbf-файлы не одного типа (FoxPro, dBase), например файлы типа Fox2x открываются а выше версий нет.

Shaman100M

79 — 26.12.06 — 16:34

(77) Не нарушай выборку удалением, сделай так:

Спс1=СоздатьОбъект(«СписокЗначений»);

Файл=ФС.НайтиПервыйФайл(«*.*»);

Пока пустоеЗначение(Файл)=0 Цикл

   Спс1.ДобавитьЗначение(Файл);

   Файл=ФС.НайтиСледующийФайл();

КонцЦИкла;

а потом обрабатывай список.

andiko

80 — 26.12.06 — 16:39

(78) файлы созданы в 1С
(79) а не черезчур запутанно и сложно?

Один С

81 — 26.12.06 — 16:41

Вот тебе окончательный вариант. Он работает.

   ДБФ = СоздатьОбъект(«XBASE»);

   ПутьФ = «D:БазыРеализацииАвиапроobmen»;

   ФС.УстТекКаталог(ПутьФ);

   Файл = ФС.НайтиПервыйФайл(«*.dbf»);

   Пока ПустоеЗначение(Файл) = 0 Цикл

       ИмяФайла = ПутьФ+Файл;    

       ДБФ.ОткрытьФайл(ИмяФайла);    

       Состояние(«Загружаем данные…»);    

           тз = СоздатьОбъект(«ТаблицаЗначений»);

           тз1 = СоздатьОбъект(«ТаблицаЗначений»);

           ДБФ.Первая(); //позиционируемся на первой записи

           Пока ДБФ.ВКонце()=0 Цикл //пока не дошли до конца, крутим цикл

               тз.НоваяСтрока();

               тз1.НоваяСтрока();

               тз.NOMERDOC = ДБФ.NOMERDOC;   // номер документа

               тз.KOLVO    = ДБФ.KOLVO;       // количество

               ДБФ.Следующая();

           КонецЦикла;

           ДБФ.ЗакрытьФайл();

           Файл = ФС.НайтиСледующийФайл();

           ФС.УдалитьФайл(ИмяФайла);          

   КонецЦикла;

andiko

82 — 26.12.06 — 16:59

(81) блин… не работает

Один С

83 — 26.12.06 — 17:06

(82) Где не работает?

Иде я

84 — 26.12.06 — 17:06

Первые два файла будут «.» и «..»

andiko

85 — 26.12.06 — 17:08

(84) угу

andiko

86 — 26.12.06 — 17:12

(83) загружает один из двух файлов и все

  

A_M-ko

87 — 27.12.06 — 11:01

А может не удалять в цикле файлы, а удалить потом после загрузки?

Понравилась статья? Поделить с друзьями:
  • Ошибка при открытии файла coreldraw
  • Ошибка при открытии файла bitrix
  • Ошибка при открытии файла 3ds max
  • Ошибка при открытии текстового файла
  • Ошибка при открытии текстового документа