Rad777
Joined: 07 Feb 2002 Posts: 276 Location: Шакиров Радик Ленарович Occupation: предприниматель Interests: Казань
|
Posted: 19 Feb 2003 01:39 Post subject: «Грабли» старые, да зубки новые… |
|
|
…или «Чудо-чудное глядел!».
Здесь уже обсуждались варианты размещения таблиц в корневой каталог Б4 (для использования несколькими предприятиями общих справочников). Также были и предупреждения об «осторожном» использовании этого.
В общем старо как мир, сказали бы завсегдатаи форума.
Но я вот тут ощутил эту «осторожность» в очень интересном варианте.
Нееет, я не преследовал целью использование общих справочников. Я просто настраивал обмен данными с системой «клиент-банк» (далее СКБ). Все действие происходило в 9.08.001 с паками. Теперь более подробно…
Из банка подсуетили СКБ, документация по импорту из Б4 в DBF-формате отсутствовала, но такая возможность в общем реализована. Настроено по умолчанию на импорт из rsdoc.dbf . При указании на C:\BEST4\DBASE\BANK\ rsdoc.dbf, система импортирует без разбору все платежки из таблицы. Исходя из этого я решил, что все-таки это должен быть файл импорта, а не таблица платежек в Б4.
И тут я допустил оплошность – поместил в корневик Б4 (c:\best4\) демонстрационную таблицу rsdoc, что шла в комплекте с СКБ.
В модуле «Расчетные счета» ввел новый вариант экспорта с описанием полей и соответствующей привязкой. В настройке банковских счетов разрешил связь с СКБ в формате DBF и привязал к c:\best4\rsdoc.dbf – указал полный путь, без сокращений.
При попытке войти в платежные поручения система вдруг предупредила об изменении структуры таблиц и произвела «реструктуризацию с последующей реиндексацией». Я сначала не совсем понял, что произошло-то? Захожу в журнал платежек, помечаю, делаю экспорт в СКБ, создание таблицы экспорта подтверждается. Все вроде бы ничего, да только половина информации о платежке поступает в СКБ в виде мусора и в Б4, при попытке войти в любое платежное поручение, стала выдавать ошибку 1004 и ругань на EVAL. По привычке пошел в настройку Б4 и произвел восстановление индексов. Индексация прошла нормально, но ошибка не исчезла.
Каково же было мое удивление, когда я посмотрел на C:\BEST4\DBASE\BANK\rsdoc.dbf из FOXа!!! Вот тут-то я понял, какую «реструктуризацию» Б4 мне произвел!
Я, к своему несчастью, допустил еще пару ошибок при описании достаточно большой структуры таблицы экспорта : 1 – пропустил подчеркивание в наименовании одного поля таблицы и 2 – завел одно поле два раза. Но это дало дополнительный эффект произошедшему - структура рабочей таблицы платежек один в один «соответствовала» моему описанию файла экспорта! Вдвойне вызвало удивление, что таблица содержала и те самые поля двойники. И при всем при этом безобразии восстановление индексов Б4 из Настройки проходило как по маслу!
А если бы мне пришло в голову назвать файл экспорта main.dbf ?!
Небольшой экскурс - не советую играть переключателем DOS/Win кодировки в шапке при заведении полей таблицы экспорта и переделывать существующие таблицы экспорта под себя, т.к. Б4 неадекватно воспринимает в какой же кодировке экспортировать данные.
Теперь уже к счастью, я вспомнил о двухдневной резервной копии. Настоятельно всем советую... J
Вот собственно и старые «грабли» в новом ракурсе. Связь с системами «клиент-банк» была весьма продолжительной и практически интимной. |
|