Имя: Пароль:
1C
1C 7.7
v7: UpDownUplFail;5;Ошибка загрузки данных;;
,
0 Cthulhu
 
03.05.14
17:30
Собственно такое вот.
Патч ромикса не при делах, дат-файл из зип-выгрузки совпадает с romix.dat, загрузка вылетает абсолютно одинаково с патчем и без него.
А именно.
вылет происходит на одном и том же элементе справочника "Контрагенты".
последние изменения в dbf-файлах: SCXXX, 1SBLOB, 1SCONST
в dat-файле ничего навскидку(!) криминального не нашел.

Логика подсказывает, что все-таки в dat-файле с последним импортированным (или со следующим за ним) контрагентом - проблема.

ПРОШУ ПОМОЩИ.

Что именно может быть перекосячено в дат-файле, как этот косяк нацти и как попробовать исправить?..
1 Torquader
 
03.05.14
17:32
А, может быть, объём уже и за 2 Гб перевалил ?
2 Cthulhu
 
03.05.14
17:33
(1): 1св7.дат = 1,6Гб
3 Cthulhu
 
03.05.14
17:36
(2)+: самые большие файл базы данных:
1SENTRY.DBF = 388М
1SACCSEL.CDX = 373М
RA6869.DBF = 315М
1SJOURN.CDX = 304М
RA1173.DBF = 293М
1SJOURN.DBF = 258М
и т.д.
4 Torquader
 
03.05.14
17:36
(2) Он же zip-ованый, насколько я помню.
5 Cthulhu
 
03.05.14
17:36
(4): єто уже распакованній.
6 Torquader
 
03.05.14
17:37
(5) Тогда странно, что там может быть такого ?
А если вручную разобрать ?
7 Cthulhu
 
03.05.14
17:39
(6): что именно и как разобрать?
в дат-файле нахожу кусок с данными того контрагента, который последний загрузился и после которого вылетает. ничего криминального не вижу. или что именно мне там смотреть?
8 Torquader
 
03.05.14
18:00
(7) Во-первых, именно его, во-вторых, что идёт дальше и нет ли повторения записей (когда две разных записи с одним ID).
9 Cthulhu
 
03.05.14
18:13
(8): нет, сразу следующий контрагент без дублирования ИД.
старт-блок загруженного начинается с {"5201| (и используется до конца блока)
старт-блок следующего начинается с {"5202| (и используется до конца блока)
10 Torquader
 
03.05.14
18:26
(9) Тогда проверять длины строк, символы (кодировка может быть другая) и прочие вещи.
Если есть возможность - обрезать файл и грузить частями.
P.S. commit-то выполняется при каждой записи или сразу блоком - я как-то не вникал - возможно, что запись даже не следующая, а через несколько.
11 Cthulhu
 
03.05.14
18:39
(10): "обрезать и грузить частями" - это как?..
(а ТиС должно найти нечитаемое в базе?.. выгрузки-загрузки с такой симптоматикой (один-в-один) и в "тренировочной" бэкап-базе делаются...
12 Cthulhu
 
03.05.14
18:40
(11)+: в "только тестирование". у меня технологически висят пустые ссылки - ни очищать, ни создавать объекты низзя.
13 Torquader
 
03.05.14
18:47
А бы попробовал, сначала, вырезать этого и следующего контрагента из файла и посмотреть, что произойдёт.
14 Cthulhu
 
03.05.14
19:28
(13): подскажи, плз, фришный редактор, который бы с таким размером текстовика управится...
15 Cthulhu
 
03.05.14
19:29
ЗЫ: от безысходности нарисовал ert-шку, которая ч/з stream-объект символы из dat-файл в сводную табличку выгонит... хз рпавда получится ли...
16 Torquader
 
03.05.14
22:01
(15) Я именно так и делал, так как нормальные редакторы это не умеют. Ну, конечно, можно hiew попробовать, но там только замена.
17 Torquader
 
03.05.14
22:03
(15) Через Scripting.TextStream я редактор диска для восстановления данных писал с посекторным редактированием - вот это было "чудо" - тормозное, но работало.
18 Cthulhu
 
03.05.14
23:16
(16): не взлетело. точнее - не дождаться, начальство копітом над ухом бїет - рвется аналитики крутить, а Scripting.TextStream в 1с-ину по-символьно собирать с раскодировкой (и блоками пробовал, и посимвольно, и по-мегабайтно) - ну страаашно медленно. не дождался забил.
убил на тестирование полдня - нашел пустой ИД все-таки (и подчиненных без владельцев, и потомков без родителей - но то в других справочниках и не прерывает загрузку - грузит как есть, а вот на пустом ИД вылетает в "неисправимую ошибку" и алё;
скачал нео-хекс-едитор (триального хватило). выпилил из дат-файла весь блок по элементу с пустым ИД-ом (ссылок не должно было быть, так что поленился ему в дат-файле выписывать "свободный" ИД). упаковал обратно мд+уср+дат винзипом с минимальным сжатием. вроде загружается.
ежели загрузится - спляшу джигу, а с потомками б/родителей и подчиненными б/владельцев потом буду разбираться, в процессе..
спасибо, бро.
19 Torquader
 
03.05.14
23:22
(18) Я бы пустой ID заменил на какой-то другой, например, максимально большой.
20 Cthulhu
 
03.05.14
23:46
(19): я бы тоже, но там по всему блоку шариться можно ошибиться, да и "глючный" контр почти наверняка нигде не использовался (иначе бы дало ошибки при тестировании на нулевой эе ид), и к тому же он в справочнике был помечен на удаление, и буквально следующими ид-ом и код-ом (уникальность = весь справочник) шел "нормальный" с тем же наименованием.
сисадмину надо мозги полоскать - наверняка при записи элемента сервак сбойнул.
21 Torquader
 
03.05.14
23:51
(20) Записи с нулевым ID система просто не видит.
Вполне возможно, что-то порушилось при транзакции или запись разных секторов в момент закрытия программы.
В общем - не важно как - но появился.
А в базе, где он есть - можно посмотреть ?
22 Cthulhu
 
04.05.14
00:31
(21): таки видит. оба элемента (глюкавый б/ИД-а и следующий такой же но с ИД-ом) - в самом справочнике прекрасно видны, а пометка на удаление одного из них говорит о том, что и обрабатываются нормально.
не видны они только если этот элемент попробовать "получить" из справочника - не возвращает "ТекущийЭлемент()". видно там в форме списка справочника в кишочках все.
23 Torquader
 
04.05.14
00:59
(22) В общем, с чьей-то подачи в базу плюнули - а нам копаться и разбираться - ну - в общем - как всегда.
24 ЧеловекДуши
 
04.05.14
11:27
(0) Уже предлагали запустить ТиИ? :)
Убрать из БД текстовые поля неопределенной длинны.

или

нажать на буковку "Я"
http://yandex.ru/yandsearch?rpt=rad&text=1C%20UpDownUplFail;5;%CE%F8%E8%E1%EA%E0%20%E7%E0%E3%F0%F3%E7%EA%E8%20%E4%E0%ED%ED%FB%F5;;&lr=54
25 Cthulhu
 
08.05.14
19:43
(24): Уже предлагали читать прежде чем писать? :)
1) мимо абсолютно (да и совет сам по себе немного, кхм...)
2) что по ссылке после "или" - мимо абсолютно, гугель был перекопан и без того.
в итоге - всё равно спасибо.