DDF большого размера.

Автор Сообщение
Игорь Голиков
Главный форумщик

Зарегистрирован: 21.09.2004
Сообщения: 284
Откуда: Свято-Петроград

Добавлено: 13.02.2005 23:47 Заголовок сообщения: DDF большого размера.
Со слов R&D, когда-то (в 1970-е) DDF листовались, потом листование убрали, но видимо сделали это «по-простому»: поставили длину листа, большую, чем нереально огромную (по тем временам) длину всего DDF файла. Листование предполагало пропуск строки-разделителя листов. Теперь в DDF достаточно большого размера «пропадают» некоторые строки, воспринимаемые как такой разделитель. Средство борьбы — «простое»: если строка не работает (пойди еще найди, какая именно!), то достаточно вставить перед ней строку с липовым оператором, вроде
BD<98:001>=<98:001>:
и ошибка исчезает. Но вот что странно: через несколько десятков строк исчезает новая строка, что не похоже на «огромную длину листа»…
Кто-нибудь с таким сталкивался? Или все пользуются только отлаженными DDF?

Я решил оттестировать пропадание строк. Для этого написал специальный расчетно-статистический отчет, который выводит номер пропавшей строки с точностью +/- 10 строк. Вот его заготовка:
———————————————————————
:START-PARM

:END-PARM
:START-RUNTIME
:END-RUNTIME
:START-HEAD 0 0
:END-HEAD
:START-PGHEAD
:END-PGHEAD
:START-HEAD1 0 0
:END-HEAD1
:START-HEAD2 0 0
:END-HEAD2
:START-BODY 0 0
/RUS:<99:001> Комментарий: RUS заменить на 3 пробела
:END-BODY
:START-FOOT2 0 0
:END-FOOT2
:START-FOOT1 0 0
:END-FOOT1
:START-PGFOOT
:END-PGFOOT
:START-FOOT 0 0
:END-FOOT
:START-TERMDEF
HD<99:100>=»
HD<98:100>=10
BD<99:001>=<99:100>:
BD<98:001>=38
BD<98:002>=<98:001>:
BD<98:001>=<98:001>+<98:100> ******
BD<98:002>=<98:002>+<98:100>
BD<98:003>=<98:001>-<98:002>
BD<98:003>?00,01,00
BD<99:001>=<98:001>:
BD<98:003>=<98:100>:
BD<98:003>?01,00,01
BD<99:001>=<98:001>:
BD<98:001>=<98:002>+<98:100>
BD<98:001>=<98:001>-<98:100>
:END-TERMDEF
———————————————————————

В реальный отчет эта заготовка превращается, если много раз скопировать в конец раздела TERMDEF последние 10 строк ‘njuj раздела, начинающихся с помеченной комментарием ****** включительно.

Но у меня пока ничего не вышло. Scala сопротивляется как может (а может она в этом смысле много Smile ): при длине файла, большим 2420 строк, отчет вылетает по ошибке PA0430/МВ86/ОМ/0 еще до сакраментального запроса о номере файла?!!

Все тестировалось на Scala 5.1 Hot Fix 15 Build #1869 (5.1.15.1869).

Может у меня «глаз замылился», и я где-то лопухнулся? Буду благодарен за любую помощь.

Последний раз редактировалось: Игорь Голиков (15.02.2005 13:13), всего редактировалось 1 раз

vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 15.02.2005 10:40 Заголовок сообщения: Re: DDF большого размера.

Игорь Голиков писал(а):
при длине файла, большим 2420 строк, отчет вылетает по ошибке PA0430/МВ86/ОМ/0 еще до сакраментального запроса о номере файла?!!

Все тестировалось на Scala 5.1 Hot Fix 15 Build #1869 (5.1.15.1869).


Протестировал отчет на платформе iScala2.2 SR1 HotFix 2257
В результате, при длине файла 2458 строк (242 раза скопировано как просили), выдает чистый лист. Эксперементируем дальше. Бокс Бокс

vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 15.02.2005 11:49 Заголовок сообщения: Re: DDF большого размера.

Цитата:
Эксперементируем дальше.


Довел количество строк в файле до 72000, работает нормально, только долго проверяет DDF файл, перед началом работы. Эй, Вы там...
Думаю на этом можно закончить. Использовать DDF файл такой длины, просто нереально.
система iScala 2.2 SR-1 HF-2257 Глазик