![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| trent |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.1.2010 Репутация: нет Всего: нет |
Привет, всем !
я токо начал делать на Перле один репорт и не могу понять почему мои <writes format> в репорте идут в каком-то непонятном порядке, не так как программа их пишет. наверное есть какой-то buffer или еще чего я не понимаю, + я делаю мульти filehandles к одному и тому же файлу. Помогите советом кто-может, как сделать мой скрипт чтобы он писал в spool.txt все по порядку. Я вижу что если делать OPEN/CLOSE на каждый write то все нормально, но енто уже будет слишком. Мой файл довольно большой, 300+К рекордов. Может кто может посоветовать как сделать все еффективно, я смотрел методы reports, etc., но пока ето не не надо, мои репорт довольно простой, все готово, токо разобратьса с етой проблемой. Спасибо Владимир ето мой скрипт для теста только: ====================== #!/usr/bin/perl use strict; use warnings; my $cc="1"; unlink ('spool.dat'); open (OUT_LOG, '>>spool.dat'); open (OUT_HEADER, '>>spool.dat'); open (OUT_DETL, '>>spool.dat'); open (OUT_FOOT, '>>spool.dat'); open (OUT_BR, '>>spool.dat'); #============================================================================================= format OUT_HEADER= @<<<==== f0rmat HEADER HEADER HEADER Page : @<<< $cc, $cc . format OUT_DETL= @<<<======== f0ramt detail line ======================= $cc . format OUT_FOOT= @<<<======== f0rmat ===========FOOTER $cc . format OUT_BR= @<<<========= fOrmat BREAK $cc . #=============================================================================================== write OUT_HEADER; $cc++; write OUT_DETL; $cc++; write OUT_DETL; $cc++; write OUT_DETL; $cc++; write OUT_BR; $cc++; print OUT_LOG "$cc ................print after 1st break \n"; $cc++; write OUT_DETL; $cc++; write OUT_DETL; $cc++; write OUT_DETL; $cc++; write OUT_BR; $cc++; print OUT_LOG "$cc ...............print after 2nd break \n"; $cc++; write OUT_FOOT; $cc++; print "basta \n"; Это сообщение отредактировал(а) trent - 26.1.2010, 05:55 |
|||
|
||||
| sir_nuf_nuf |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 920 Регистрация: 6.1.2008 Репутация: 14 Всего: 31 |
А зачем вам форматы в perl ?
Дело в том, что это ооочень старый функционал, можно сказать наследственный И сейчас никто им не пользуется (Ну кто будет смотреть отчеты в виде простых текстовых файлов ?) А т.к. никто ими не пользуется - то с советами тоже будет проблема. Так что а) если изучаете их для самообразования - можете смело забить и перейти к следующей теме б) если хотите строить отчеты.. - сформулируйте изначальную задачу |
|||
|
||||
| trent |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.1.2010 Репутация: нет Всего: нет |
Спасибо за инфу, но мне все равно надо сделать простой .тхт фаил для печати и просмотра.
тут вариантов нету. Задача чисто практическая, все сформулировано, тест скрипт к услугам. Основной скрипт почти готов, токо надо совет как бороться с етими бафферами, чтоб все было по порядку. Влад Это сообщение отредактировал(а) trent - 27.1.2010, 12:56 |
|||
|
||||
| DurRandir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 335 Регистрация: 27.9.2009 Репутация: 14 Всего: 17 |
Форматы действительно никто не использует
|
|||
|
||||
| trent |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.1.2010 Репутация: нет Всего: нет |
Спасибо за инфо cpan://HTML::CTPP2, к сожелению ето пока не для меня, равно как методы reporter, etc.
Да далеко все ушли, будем ждать динозавров. Один спец посоветовал сделать один filehandle с var и писать разные форматы через него, попробую сделать. Влад Это сообщение отредактировал(а) trent - 27.1.2010, 13:04 |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |