![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||||||||
|
||||||||||
![]() Имеется база в firebird, требуется из нее выгрузить некоторые данные в .dbf-файлы, включая поля memo. Для этого использую компонент tDbf. В частности, поля типа memo заполняю через потоки следующим образом:
Код:
В процедуре procedure Код:
Код:
( Src.Size - Src.Size) + RecordSize, то будет уже: -1994891087. Хотя если слагаемые поменять местами, то снова будет 0. Думал как-то избавиться от целочисленного деления, например сократив обе части на div RecordSize, но так ИМХО несколько нарушится логика программы. Также пытался сделать вместо div RecordSize: div ((Src.Size - Src.Size) + RecordSize), но все равно возникала та же ошибка. Код: Код:
Самое странное, что было время, когда программа нормально отрабатывала, но что-то пошло не так и перестала... SVN не юзаю, так что откатиться не могу. Также странно, что по запросу "Division by zero tdbf" гугл молчит, значит ошибка не распространенная. Может я неправильно потоки использую для переноса blob firebird в memo .dbf? Хотя пробую наполнять memo из файла таким образом: Код:
TDbf использовался не от Брусникина Игоря Викторовича (http://www.delphisources.ru/pages/so...comp_tdbf.html), а вот этот: http://tdbf.sourceforge.net/ Первый вроде как с memo работать не умеет. MAD: пользуемся тегами, или последуют санкции. Последний раз редактировалось M.A.D.M.A.N., 24.10.2013 в 09:11. |
#2
|
||||
|
||||
![]() Явно переменные равны нулю, делай доп проверку.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
||||
|
||||
![]() Мне нравится эта часть кода:
Код:
![]() Ключ находится в этом месте: Цитата:
Последний раз редактировалось Uniq!, 24.10.2013 в 09:45. |
#4
|
|||
|
|||
![]() В чем было дело так и не разобрался, но вспомнил, что это началось после того как скопировал проект в новую директорию, чтобы откатиться ежели чего. Запустил проект из старой директории - все нормально отрабатывает и блобы записываются. И RecordSize равен нормальному числу. Причем не ясно, что было не так, так как все библиотеки и прочие БД ФБ имели относительные пути, сами компоненты переставлялись итд...
|
#5
|
||||
|
||||
![]() Ну блин, чего тут не понятного то, у тебя после div переменные имеют значения 0, надо ставить точки остановка на эти места и проверять, почему там 0.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |