Форум » [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

Andrey: Sergey Spirin пишет: Андрей, вы не пьяны были когда это писали? Конечно пьян. Я же без бутылки не сажусь программировать !!! А по людски, этот ваш вопрос просто скотский. Просишь о помощи, то что не видишь сам, а вы с издевкой отвечаете. Что у вас никто не может ошибиться в коде ? Большое спасибо, бог вам судья.

Sergey Spirin: Andrey пишет: А по людски, этот ваш вопрос просто скотский. Просишь о помощи, то что не видишь сам, а вы с издевкой отвечаете. Что у вас никто не может ошибиться в коде ? Большое спасибо, бог вам судья. Ну, дорогой, нашел на что обижаться Ошибки, непонятки, конечно, всякие бывают, НО писать такое!!! Это же как: "Я написал 2+2=5, в чем проблема? Сиди тут гадай кто виноват Фаст или я". И как к этому относится? Так что терпи, назвать человека пьяным на Руси никогда оскорблением не было. Я вот сейчас сижу и пиво пью, и тоже пьяный. И мне все-таки дьявольски интересно, как написав: ELSEIF ( FName == "SUMMAPROPIS" ) RES := Str( FParams[ 1 ], FParams[ 2 ] ) можно надеяться, что вызовется функция SUMMAPROPIS(), как, почему? И причем здесь Str()? Ну хоть как-то объяснить это можно?

Sergey Spirin: Кстати, забыл сказать, пересобрал копии с версией 4.11, основное нововведение: + добавлен новый фильтр экспорта BIFF8 XLS Это экспорт напрямую в файл Excel, минуя OLE/COM.


Andrey: Sergey Spirin пишет: Ну хоть как-то объяснить это можно? Ну ошибся я, да неправ, тупо поставил возврат функции "XBASESTR" и не мог понять, почему CallHbFunc(SUMMA_PROPIS()) - работает, а объявленная функция нет. Я же делал раньше правильно, а здесь усталость глаза замылила. Да и ошибка Фаста вылазила в кракозябах (у меня же OEM-кодировка), а я никак не мог понять что за ошибка... Sergey Spirin пишет: Так что терпи, назвать человека пьяным на Руси никогда оскорблением не было Называйте так в своей семье и родне, а я вам не родня и нормы приличия никто не отменял.

Sergey Spirin: Andrey пишет: Да и ошибка Фаста вылазила в кракозябах (у меня же OEM-кодировка), а я никак не мог понять что за ошибка... Это мне непонятно, харбор-ошибки они латиницей... Возьми , например, любую демку, в том числе консольные, в отчете "Some functions calls.." исправь в Memo1 вызова XBaseStr() второй параметр на True/False, получаем: --------------------------- Error --------------------------- BASE/1099 Argument error: STR --------------------------- ОК --------------------------- Какая OEM, если текст английский?

Andrey: Sergey Spirin пишет: Это мне непонятно, харбор-ошибки они латиницей... Возьми , например, любую демку Демку можете не брать ! Возьмите мой пример и исправьте - будет вам такая же кракозяба ! У меня постоянно ошибки в OEM-кодировке, так как используется GTWIN или GTWVT терминал и OEM-кодировка в программе !

Sergey Spirin: Andrey пишет: Демку можете не брать ! Возьмите мой пример и исправьте - будет вам такая же кракозяба ! У меня постоянно ошибки в OEM-кодировке, так как используется GTWIN или GTWVT терминал и OEM-кодировка в программе ! Андрей, еще раз. Фраза "Argument error:" состоит из латинских буков! И в WIN и OEM она "звучит" одинаково. Каким образом получается перевод (?) на русский стандартного oError:Description? Ответьте мне как харбурист.

Pasha: Текст сообщений, в том числе для ошибок, определяется установкой hb_LangSelect( "RU866" ) Поскольку программа консольная, то эта установка и должна быть Но FastReport по-видимому выдает сообщения сам, вызовами функций Message*(), которые предполагают кодировку ansi Если хотите, введе в frh какую-то настройку для такой конфигурации, чтобы перекодировать текст вызовами hb_oemtoansi() или аналогичной дельфийской функцией

Sergey Spirin: Pasha пишет: Если хотите, введе в frh какую-то настройку для такой конфигурации, чтобы перекодировать текст вызовами hb_oemtoansi() или аналогичной дельфийской функцией Ok. Это можно. Хоть, честно говоря, удивлен, зачем тексты ошибок то переводить? Пара вопросов, можно ли автоматом определить что кодировка OEM (не обязательно RU)? hb_oemtoansi() существует во всех версиях [x]Harbour? Паш, если не трудно, взгляни на метод METHOD FrNotifyError(oError) class frReportManager, что там можно еще добавить? Номер строки ошибки это реально?

Pasha: Тексты ошибок на национальных языках завел еще Нантакет в клиппере, и в харбор они попали по наследству. Автоматом определить oem/ansi нельзя, разве что из всех кодовых страниц харбора: include\hbcpage.hbx выбрать относящиеся к OEM, ANSI и прочим Функция hb_oemtoansi() появилась в харборе изначально, но она может быть не подлинкована к приложению, так что на нее лучше не расчитывать По поводу NotifyError. Все, что можно вытащить - можно глянуть в обработчике ошибок харбора: source\rtl\errorsys.prg src\rtl\errsys.prg Можно вытащить и номера строк: см. метод и функцию ProcLine() Кстати, может быть лучше в FrNotifyError() просто вызывать стандартный обработчик ошибок харбора ? Тогда и с перекодировкой вопроса не будет Но в консольной версии в этом случае будет выскакивать не гуевое окошко, а текстовое..

Sergey Spirin: Pasha пишет: Кстати, может быть лучше в FrNotifyError() просто вызывать стандартный обработчик ошибок харбора ? Тогда и с перекодировкой вопроса не будет Но в консольной версии в этом случае будет выскакивать не гуевое окошко, а текстовое.. Нет, так не получится. Дизайнер всегда, а предпросмотр в 90% случаев жестко модальны. Поэтому и графическое окно может "не пробиться", а уж консольное так и останется за дизайнером, в задизейбленном состоянии. Поэтому здесь правильно выводить харборную ошибку именно окном FRH. Ok. Думаю сделаю так. Добавлю еще один параметр в Init() типа SystemIsOEM умолчательно .f., там же в FrLoad() протолкну его к себе. Ну и при ошибке буду на него ориентироваться. По ProcLine() и ProcName() стэк выведу, вопрос только ProcLine() и ProcName() они то всегда прилинкованы гарантировано?

Pasha: Sergey Spirin пишет: вопрос только ProcLine() и ProcName() они то всегда прилинкованы гарантировано? Не гарантированно, но практически всегда Ссылка на них есть через тот же errorsys, getsys, browse Если кто-то все это намеренно обрубил, тогда их может не быть, но это очень постараться надо

Pasha: Но на это можно не заморачиваться, просто указать их в EXTERNAL в fastreph.ch

Sergey Spirin: Pasha пишет: Но на это можно не заморачиваться, просто указать их в EXTERNAL в fastreph.ch Ok. Спасибо.

Andrey: Ну как там успехи по поводу избавлений "крокозяб" в ошибках и номерах строк ошибки ?

Andrey: Sergey Spirin пишет: + добавлен новый фильтр экспорта BIFF8 XLS Это экспорт напрямую в файл Excel, минуя OLE/COM. В ДЕМО-версии этот вариант будет ? Может пора ДЕМКУ DLL обновить ?

PSP: Sergey Spirin пишет: + добавлен новый фильтр экспорта BIFF8 XLS Сергей, посморите, пожалуйста, на скриншоты. Это в FR: А это в Excel: Косяк с числами (цены, суммы) и пустые места - в отчете Memo для формирования рамки. PS: через OLE экспортируется корректно.

Sergey Spirin: Andrey пишет: Ну как там успехи по поводу избавлений "крокозяб" в ошибках и номерах строк ошибки ? Даже в столь короткой фразе умудрился падежи, лица и числа напутать Andrey пишет: В ДЕМО-версии этот вариант будет ? Может пора ДЕМКУ DLL обновить ? Так скачай свою копию, зачем тебе демка? PSP пишет: Сергей, посморите, пожалуйста, на скриншоты. Это в FR: А это в Excel: Косяк с числами (цены, суммы) и пустые места - в отчете Memo для формирования рамки. Посмотреть не могу, запрещает турецкое правительство Пишет: 5651 sayılı yasa uyarınca katalog suçlar kapsamında yapılan teknik inceleme ve hukuksal değerlendirme sonucunda; bu internet sitesi (photo.qip.ru) hakkında Telekomünikasyon İletişim Başkanlığı'nın 25/10/2010 tarih ve 421.02.00.2010-367945 nolu kararı gereğince İDARİ TEDBİR uygulanmaktadır. (After technical analysis and legal evaluation based on the catalog crimes of the Law no 5651, Administrative measure has been taken for this website (photo.qip.ru) according to decision no 421.02.00.2010-367945 dated 25/10/2010 of "Telekomünikasyon İletişim Başkanlığı") http://www.tib.gov.tr | http://www.guvenliweb.org.tr | http://www.ihbarweb.org.tr Но в любом случае, экспорт свежий, там сейчас активно идут правки, приеду из Турции, пересоберу копии со свежей версией.

Andrey: Sergey Spirin пишет: Так скачай свою копию, зачем тебе демка? Демка нужна, чтоб не отдавать свой исходник. Да и в демке нет других функций, добавленных уже после ее создания. Пишу примеры для демонстраций тех или иных функций.

Sergey Spirin: Привет, Андрей, вот так доходчивей будет? Так будет нормально или еще что-то добавить?



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