On-line: гостей 2. Всего: 2 [подробнее..]
АвторСообщение



Пост N: 1
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 07.02.12 11:34. Заголовок: Изучаю Clipper


Доброго всем времени суток!
Решил немного подучить Clipper. Это не для учёбы, не для работы. Так для себя. С удивлением обнаружил, что в сети нет нормальных учебников по Clipper. Есть Norton guides с описанием функций, но мне необходим имеено учебник с примерами и описанием происходящего. Для чайников. Что именно интересует:
1. Структура программы (если он есть, как в Паскале?)
2. Типы данных
3. Ввод-вывод
4. Операторы цикла, ветвления и т. д.
5. Желательны примеры работы с dbf-файлами. Открытие, выборка записей, изменение их, удаление, и т. д.
Что сделал самостоятельно:
Скачал Clipper 5.3. Установил его в DosBox. Создал программу hello.prg с содержимым:
? "Hello world"
Скомпилировал его и слинковал blinker'ом. В результате всё работает. Мне бы двинуться дальше, но не могу - инфы для изучения нет!

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 80 , стр: 1 2 3 4 All [только новые]





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 16.02.12 14:25. Заголовок: Еще очень хорошая кн..


Еще очень хорошая книга есть:

Сухов Н. "Практический курс программирования на CA-Clipper"

Спасибо: 0 
Цитата Ответить



Пост N: 17
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 16.02.12 14:27. Заголовок: clipper.exe возвраща..


clipper.exe возвращает 5,3

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2297
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.02.12 14:33. Заголовок: demetrius2003 Тогда..


demetrius2003
Тогда смотри предложение EVAL команды Index

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2298
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.02.12 16:13. Заголовок: Alw Spencer пишет: ..


Alw Spencer пишет:

 цитата:
Еще очень хорошая книга есть:

Сухов Н. "Практический курс программирования на CA-Clipper"


В электронном виде ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 160
Зарегистрирован: 11.10.11
ссылка на сообщение  Отправлено: 16.02.12 18:03. Заголовок: demetrius2003 пишет:..


demetrius2003 пишет:

 цитата:
Смысл в том, что построение индекса таблицы DT239 проходит моментально, а SC33 мягко говоря нет. Т. е. не понятно, идёл ли оно вообще, или всё повисло. Ждал более часа, менял виртуалку на qemu. Каким образом можно контролировать этот процесс?



При инлексировании вызывается функция sort, для работы которой нужно много памяти и место на диске под временный набор.
Попробуйте запустить индексацию автономно в простейшей программе, которая больше ничего не содержит.
Кроме того у вас индекс возможно состоит из различных выражений со строками, которые постоянно требуют выделения памяти для их копирования при вычислении выражений.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2301
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.02.12 18:11. Заголовок: Сыроежка пишет: Кро..


Сыроежка пишет:

 цитата:
Кроме того у вас индекс возможно состоит из различных выражений со строками


Нет там ни чего похожего.
demetrius2003 пишет:

 цитата:
INDEX ON ID TO SC33



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 426
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 16.02.12 18:16. Заголовок: У меня база весит 23..


У меня база весит 23 мегабайта и количество записей 420 тис. и индексируется она приблизительно минуту, может быть проблема в железе (винчестер), нужно попробовать на другом компе.

Сыроежка пишет:

 цитата:
Кроме того у вас индекс возможно состоит из различных выражений со строками, которые постоянно требуют выделения памяти для их копирования при вычислении выражений.


внимательно читаем
demetrius2003 пишет:

 цитата:
Ребята! Чисто технический вопрос. Есть код:


? "Start program"
USE DT239 NEW
? "Start dt239"
INDEX ON IDDOC TO DT239
USE SC33 NEW
? "Start sc33"
INDEX ON ID TO SC33


какие выражения?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 18
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 16.02.12 19:38. Заголовок: Код предельно прост...


Код предельно прост. Проблема с железом исключена - программа запускалась под DosBox, QEmu и на железном компе - результаты везде одинаковы. Жаль, что нет ошибок времени исполнения, ни чего похожего. Прога всё-ж виснет. SC33.NTX создаётся 1024 байта и всё - тишина! Кстати, файл SC33.DBF взят из 1С базы. Сама 1С при тестировании говорит, что файл нормален. Это вдвойне странно, ведь DT239.DBF оттуда же и переваривается нормально. Ладно, пока отставим это на потом. Изучу Index, Eval и т. д. Там видно будет.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2303
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.02.12 19:46. Заголовок: demetrius2003 пишет:..


demetrius2003 пишет:

 цитата:
SC33.DBF взят из 1С базы


А метни этот файлик в архиве на какой нить файлообменник , проверю у себя.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 16.02.12 22:06. Заголовок: Вот еще нашел http:/..

Спасибо: 0 
Цитата Ответить



Пост N: 19
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 17.02.12 06:11. Заголовок: файлы..


Dima - файлы
Иван - эти дистрибутивы и руководство встречаются очень часто, на каждом шагу. Я это видел множество раз. Кроме этого ничего нет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 739
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 17.02.12 08:58. Заголовок: demetrius2003, сейча..


demetrius2003, сейчас проверил индексацию SC33.DBF. Только не Клиппером, а Харбором. Индекс (NTX) создался за 0.06 сек.


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2305
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.02.12 10:52. Заголовок: demetrius2003 Clipp..


demetrius2003
Clipper 5.2e
use sc33 new
index on id to test

Dbfntx - NTX cоздан успешно
Sixcdx - IDX cоздан успешно


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2306
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.02.12 11:05. Заголовок: demetrius2003 Попро..


demetrius2003
Попробуй так
 
? "Start program"
USE DT239 NEW
? "Start dt239"
INDEX ON IDDOC TO DT239
USE SC33 NEW
? "Start sc33"
INDEX ON ID TO SC33
BROWSE()

Дойдет дело до browse или нет.
Кодировка в базе Ansi поэтому в browse будут крякозяблы.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 20
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 17.02.12 11:07. Заголовок: Подтверждаю! Harbour..


Подтверждаю! Harbour-2.1. Доли секунды - и два индексных файла (SC33.NTX - 414720 байт, DT239.NTX - 7168 байт) готовы. Полагаю, что проблема скорее всего в 1С, а точнее в их понимании DBF формата. Но кто бы знал! Знать бы ещё причину такого поведения!
До browse не дойдет, что-то подобное пробовал.

P.S.: Всё! Разобрался! Без изменения кода скомпилировал в Clipper 5.2. Прога отработала и выдала индексы. Правда размер SC33.NTX - 419840 байт.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 2259
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 17.02.12 11:40. Заголовок: Дополнительные глюки..


Дополнительные глюки может давать dosbox

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 24.02.12 17:48. Заголовок: Dima пишет: Alw Sp..



Dima пишет:

 цитата:
Alw Spencer пишет:

цитата:
Еще очень хорошая книга есть:

Сухов Н. "Практический курс программирования на CA-Clipper"


В электронном виде ?



Dima, увы, только в бажном виде, как и


 цитата:
2. "CA-Clipper 5.2 и билиотека CA-Clipper TOOLS 3.0" Канатников А.Н., Ткачев С.Б.

3. "Clipper. Руководство по программированию. 3 издание, версия 5.01" Рик Спенс. Это единственная оригинаьная книга, которая не является простой компиляцией документации.



Много раз перечитанные.

Спасибо: 0 
Цитата Ответить



Пост N: 21
Зарегистрирован: 07.02.12
ссылка на сообщение  Отправлено: 27.02.12 14:27. Заголовок: Очередной вопрос - а..


Очередной вопрос - а есть ли у Клиппера механизм подобный ссылкам или указателям? Как я, к примеру, могу организовать структуру связанного списка?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 170
Зарегистрирован: 11.10.11
ссылка на сообщение  Отправлено: 27.02.12 14:58. Заголовок: demetrius2003 пишет:..


demetrius2003 пишет:

 цитата:
Очередной вопрос - а есть ли у Клиппера механизм подобный ссылкам или указателям? Как я, к примеру, могу организовать структуру связанного списка?



Связный список - это, по сути, некоторый определенный интерфейс, который может быть реализован разными способами. Так как в Clipper массив обладает достаточной гибкостью, позволяя вставлять элементы в любую позицию, то вы с помощью массива можете обеспечить функциональность связного списка.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 2284
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 27.02.12 15:06. Заголовок: Есть передача параме..


Есть передача параметров функции по ссылке - перед переменной надо указать символ @:

myfunc(@par1)

Есть также тип блок кода. Это что-то вроде адреса функции, только это делается намного более гибко.

Для создания списка можно использовать массивы. Массив - это собственно не массив в традиционном понимании, а именно список: элементом массива может быть значение любого типа данных, в том числе массива. Таким образом, можно создавать структуры произвольной сложности.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 80 , стр: 1 2 3 4 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 32
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет