Форум » [x]Harbour » ANN: Вышел релиз FastReport for [x]Harbour (продолжение) » Ответить

ANN: Вышел релиз FastReport for [x]Harbour (продолжение)

Sergey Spirin: Здравствуйте. Рад сообщить, что вышел релиз FastReport for [x]Harbour. Как всегда, информацию можно посмотреть: http://www.paritetsoft.ru/frh.htm Возможным русскоязычных покупателей лучше контактировать со мной напрямую по email. Цена для оплаты в рублях банковским переводом по выставленному счету- 9999 рублей. -- Спирин Сергей. Компания "Паритет Софт". FRH sales: http://www.paritetsoft.ru/frh.htm FRAX sales: http://www.hotsoft.ru/ALASKA/frax_eng.htm

Ответов - 268, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 All

PSP: Сергей, подскажи: есть ли в FR понятие тайм-аут? Т.е., есть ли возможность открытый на просмотр отчет закрыть автоматически по истечении тай-аута, если пользователь не проявляет активности?

Sergey Spirin: PSP пишет: Сергей, подскажи: есть ли в FR понятие тайм-аут? Т.е., есть ли возможность открытый на просмотр отчет закрыть автоматически по истечении тай-аута, если пользователь не проявляет активности? Забавная постановка задачи Интересно даже, где такое может быть нужно? Может, достаточно использовать немодальный предпросмотр? Штатного такого тайм-аута, конечно, нет. Но придумать можно. Надо просто использовать НЕНУЛЕВОЙ отчет. То есть, сначала :AddReport() А потом, по своему таймеру: :RemoveReport() Если непонятно - спрашивай!

Andrey: Sergey Spirin пишет: Так будет нормально или еще что-то добавить? Я думаю - в самый раз будет !


Sergey Spirin: Andrey пишет: Я думаю - в самый раз будет ! Ну тогда качай свою копию. Может быть, где-то во вторник, демку тоже перекомпилю. Не забудь про второй параметр в :Init() version 4.11 ----------- + New parameter of :Init() method is added - lSystemIsOEM. This parameter is for OEM-based systems for correct showing [x]Harbour error-messages at disigner and preview. For example: FrPrn := frReportManager():new(,.t.) Call stack information is added to error-messages. + Supports for some Extended Field Types of ADT tables is added. List of supported datatypes: -TIMESTAMP -MODTIME -IMAGE -BINARY -AUTOINC -ROWVERSION -DOUBLE -MONEY

PSP: Привет! Sergey Spirin пишет: Интересно даже, где такое может быть нужно? При отсутствии активности пользователя в течение определенного времени программа сама завершает работу. Если открыто окно отчета, то, естественно, не завершает. :) Может, достаточно использовать немодальный предпросмотр? Не подходит. Нужно останавливать программу, пока отчет открыт. И еще: если попытаться создать второй раз отчет, который уже открыт, валится по ошибке. Видимо, проблема с разделенным доступом. Не разбирался. К тому же, данные для отчетов беруться из временных динамически создаваемых таблиц. Эти таблицы удаляются после завершения функции, где формировался отчет. Наверное, возможны траблы и в этом отношении. Вобщем, немодальный режим не подходит. Надо просто использовать НЕНУЛЕВОЙ отчет. То есть, сначала :AddReport() А потом, по своему таймеру: :RemoveReport() Если непонятно - спрашивай! Я понял, о чем ты говоришь. :) Дело в том, что программа "не знает", работает ли пользователь с окном отчета или нет. Она может его закрыть раньше времени, когда отчет еще нужен. Штатного такого тайм-аута, конечно, нет. Но придумать можно. Вот это было бы отлично! Верю в положительное решение вопроса! :)

Sergey Spirin: PSP пишет:  цитата: Интересно даже, где такое может быть нужно? При отсутствии активности пользователя в течение определенного времени программа сама завершает работу. Если открыто окно отчета, то, естественно, не завершает. :) Это то понятно, непонятно зачем? Зачем это нужно то может быть? Я было подумал, что бухгалтера у вас имеет склонность засыпать перед мониторами А сальдо, например, не посчитано, типа самое время посчитать А тут нет, сразу "на выход"... Ты и комп сразу выключаешь? Энергию экономишь? PSP пишет:  цитата: Надо просто использовать НЕНУЛЕВОЙ отчет. То есть, сначала :AddReport() А потом, по своему таймеру: :RemoveReport() Если непонятно - спрашивай! Я понял, о чем ты говоришь. :) Дело в том, что программа "не знает", работает ли пользователь с окном отчета или нет. Она может его закрыть раньше времени, когда отчет еще нужен. C++ немного знаешь? Поставь Hook на текущий поток по мыше и клавиатуре. Смотри функции SetWindowsHookEx, UnhookWindowsHookEx, CallNextHookEx. Про последнюю не забудь, так как Фаст для некоторых целей хуки использует. Это было бы для твоего приложения универсальным решением, мне же в FRH лишние хуки для такой экзотики тащить не хочется. Если С++ совсем не знаешь, то может быть местные Си-шники смогут помочь...

Andrey: Sergey Spirin пишет: Ну тогда качай свою копию. Спасибо.

PSP: Sergey Spirin пишет: Это то понятно, непонятно зачем? Зачем это нужно то может быть? Я было подумал, что бухгалтера у вас имеет склонность засыпать перед мониторами А сальдо, например, не посчитано, типа самое время посчитать А тут нет, сразу "на выход"... Ты и комп сразу выключаешь? Энергию экономишь? Это несколько вопросов или один? C++ немного знаешь? Поставь Hook на текущий поток по мыше и клавиатуре. Смотри функции SetWindowsHookEx, UnhookWindowsHookEx, CallNextHookEx. Про последнюю не забудь, так как Фаст для некоторых целей хуки использует. Это было бы для твоего приложения универсальным решением, мне же в FRH лишние хуки для такой экзотики тащить не хочется. Если С++ совсем не знаешь, то может быть местные Си-шники смогут помочь... Спасибо. Попробую разобраться.

Sergey Spirin: PSP пишет: Это несколько вопросов или один? Да расскажи, любопытно же, для чего это нужно

PSP: Sergey Spirin пишет: Да расскажи, любопытно же, для чего это нужно Ничего особенного. Режим работы - файловый. Считаю, что не нужно держать зря открытые файлы базы данных. Приложение консольное. Никаких отдельных окон и процессов нет. Диалоги открываются один за одним. Закрытие происходит не моментально, а постепенно, в порядке обратном открытию диалогов. На каждый шаг отводится время тайм-аута. Поэтому, для пользователя это не становится неожиданностью, тем более, что в большинстве случаев в этот момент никого перед компьютером нет. Вот, вкратце. Спасибо за проявленный интерес.

Andrey: По доке есть: SendMail(<cServer>, <nPort>, <cUserField>, <cPasswordField>,; <cFromField>, <cToField>, <cSubjectField>, <cCompanyField>,; <cTextField>, <cFileNames>) Посылает письмо по электронной почте. Параметры: <cTextField> и <cFileNames> - строки с разделителями CHR (13) + CHR (10). Возвращает: если все успешно – пустую строку, иначе текст с ошибкой. Пример: cTextField := "Hello" + Chr(13) + Chr(10) + "How are you?" cFileNames := "C:\MyAttach1.bin"+ Chr(13) + Chr(10) + "C:\MyAttach2.txt" S := FrPrn:SendMail("someserver.com", 25, "MyUserName", "MyPassword", "from@xxx.ru", "to@xxx.es", "MySubject", "MyCompany", cTextField, cFileNames) IF S <> "" MsgBox(S) ELSE MsgBox("Mail is sent") ENDIF Что то у меня не получается для хХарбора. И как еще сделать БЕГУНОК отсылки письма ?

Sergey Spirin: Andrey пишет: Что то у меня не получается для хХарбора. Что не получается то? Ошибка? Что вызывается? Andrey пишет: И как еще сделать БЕГУНОК отсылки письма ? Средствами Фаста никак. Своими (харбурными) средствами выводи.

Andrey: Собираю свой тестовый пример. Не собирается, выдает ошибку: Building object module for 'obj\FASTREPH.c' using C compiler 'BCC32' as defined in 'Z:\xHARBOUR\BIN\harbour.cfg'... Exec: BCC32 -c -D__EXPORT__ -IZ:\xHARBOUR\include -d -LZ:\xHARBOUR\lib -oobj\FASTREPH.obj obj\FASTREPH.c Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland obj\FASTREPH.c: Error E2141 FASTREPH.PRG 177: Declaration syntax error *** 1 errors in Compile *** Компилятор xHarbour Compiler build 1.2.1 (SimpLex) (Rev. 6406) FastRepH.prg из поставки ДЕМО !!!

Andrey: Sergey Spirin пишет: Что не получается то? Ошибка? Что вызывается? Собрал тест на хХарборе 1.0 Исходник здесь: http://zalil.ru/31343016 Вываливается по ошибке:

Sergey Spirin: Andrey пишет: Error E2141 FASTREPH.PRG 177: Declaration syntax error Andrey пишет: Собрал тест на хХарборе 1.0 Исходник здесь: http://zalil.ru/31343016 Вываливается по ошибке: Для начала Андрей, надо бы хоть взглянуть тебе на самое первое сообщение в этой ветке и увидеть, что первый релиз FRH был 11.03.08.... Теперь посмотреть даты FRH, который ВДРУГ ты решил использовать, и увидеть - январь 2008.... Ну что сказать тут.... Я понятия не имею, что там могло ТОГДА не работать в тестовой(!) сборке, которую я когда-то рассылал и которая ни для какой работы не предназначалась, ТЕМ БОЛЕЕ УЖ СЕЙЧАС... На текущей версии проверил, все работает нормально. Загляни в ящик.

Andrey: Sergey Spirin пишет: На текущей версии проверил, все работает нормально. Загляни в ящик. Спасибо, скомпилировалось и заработало. Если в параметре <server> пишу "mail.ru" - пишет, что все ОК - "Mail is sent !" Хотя ошибка (записываю в файл): Network is unreachable.(10051) Если в параметре <server> пишу "smtp.mail.ru" - пишет, что все ОК - "Mail is sent !" Хотя тоже ошибка: Timeout expired (60) 501 sender address must match authenticated user

Sergey Spirin: Andrey пишет: Но почта не отправляется. Если в параметре <server> пишу "mail.ru" - пишет, что все ОК - "Mail is sent !" Хотя ошибка (записываю в файл): Network is unreachable.(10051) Если в параметре <server> пишу "smtp.mail.ru" - пишет, что все ОК - "Mail is sent !" Хотя тоже ошибка: Timeout expired (60) 501 sender address must match authenticated user Так что доку нужно править !!! Ты скажи, мои 2 письма "от тебя" получил? Если нет, то увы, FRH не поддерживает сервера, требующих с SSL/HTTPS соединения, например gmail и и.д. Возможно mail.ru требует того же.... Если получил, то смотри ошибку у себя.

Andrey: Правильный синтаксис (при котором происходит отправка) подобрал опытным путем: S := FrPrn:SendMail("smtp.mail.ru", 25, "mytest94@mail.ru", "mytest99", "mytest94@mail.ru", "Кому@mail.ru",.... И то через раз происходит, но это наверно беда MAIL.RU ! Попробуйте, у кого как получиться отправлять ? Так что доку нужно править !!! Вместо "MyUserName" написать "MyUserName@xxx.ru" ! Исходник здесь: http://zalil.ru/31345964

Sergey Spirin: Sergey Spirin пишет: Ты скажи, мои 2 письма "от тебя" получил? Andrey пишет: Правильный синтаксис (при котором п Ты будешь отвечать на вопросы? С mail.ru разбирайся сам В конце концов это виртуальный SMTP. На стандартном SMTP FRH работает нормально, SSL как я сказал не поддерживает....

Andrey: Sergey Spirin пишет: Ты будешь отвечать на вопросы? Буду. Писем от вас не получал !!! Свои все получил ! Через раз работает mail.ru ! Буду пробовать через gmail.com ! Как прикрутить БЕГУНОК или таймер ? Сколько времени ждет отправки - 60 сек ? У меня через раз проходит и на ошибку не попадает !!! Попробуйте сами - увидите ! И в почтовом ящике mytest94@mail.ru нет писем в отправленных ! Можно ли как то статистику получить, или они там не отображаются ?



полная версия страницы