for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Л и с о в о д ы   в с е х   с т р а н,  о б ъ е д и н я й т е с ь !!!  

Список Форумов  :: Обсуждаем книгу
   :: Помощь сайту :: 

Re: Очепятки в подлиннике VFP9
TAS

Сообщений: 803
Откуда: Москва
Дата: 21.03.07 10:24:40ОтветитьЦитировать
стр. 416, метод ADD в примере 2 запятые между 'Цветок1' 'Цветок3'

Цветок2 пропущен?
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
dfr

Сообщений: 198
Откуда: Барнаул
Дата: 02.04.07 07:53:19ОтветитьЦитировать
Очепятки на CD.
..
Glava04\Forms\3\A1.prg (лишняя последняя запятая)
DEFINE CLASS Условия AS Form
ADD OBJECT ogrid1 AS grid WITH RecordSource="MyCust",ColumnCount=1,;
titlebar=0,
..
Glava04\Forms\5\Form2.scx (конкретно указан путь к таблице)
USE c:\таня\пример.dbf IN 0 EXCLUSIVE
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
TAS

Сообщений: 803
Откуда: Москва
Дата: 02.04.07 08:14:15ОтветитьЦитировать
dfr
Очепятки на CD.
..
Glava04\Forms\3\A1.prg (лишняя последняя запятая)
DEFINE CLASS Условия AS Form
ADD OBJECT ogrid1 AS grid WITH RecordSource="MyCust",ColumnCount=1,;
titlebar=0,
..
Glava04\Forms\5\Form2.scx (конкретно указан путь к таблице)
USE c:\таня\пример.dbf IN 0 EXCLUSIVE

Было уже! См. мой первый пост в этой ветке!
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
dato

Сообщений: 463
Откуда: Тбилиси
Дата: 02.04.07 10:27:53ОтветитьЦитировать
Стр. 1187, пункт 19:
Цитата:
Демонстрация создания структуры (для
передачи в функцию Windows ASPI),
содержащей массив
На CD тоже самое.

------------------
Если зайца долго бить, он научится стрелять из автомата!
(Ученик академика Амосова)
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
dfr

Сообщений: 198
Откуда: Барнаул
Дата: 03.04.07 04:08:00ОтветитьЦитировать
2 TAS
Извиняюсь, пропустил
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
dfr

Сообщений: 198
Откуда: Барнаул
Дата: 05.04.07 04:46:38ОтветитьЦитировать
стр.29, табл.1.11 "Типы данных полей в таблицах"
Тип данных "Character". "... 16777184 символов"
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
DmitriyG

Сообщений: 34
Дата: 06.04.07 16:55:05ОтветитьЦитировать
Приведу свою порцию оЧеПяток, которые заметил (пока). Не из "буквоедства", а в надежде, что это поможет улучшить следующее издание книги.

Стр. 176. Таблица 6.14 «Справочник» – добавить «видеокарт».
Таблица 6.15 – вместо «Справочник процессоров» должно быть «Справочник CDROM».
Таблица 6.16 – вместо «Справочник процессоров» должно быть «Справочник FDD».

Стр. 209, строка 10-я снизу: «…имя таблицы может быть указано путём доступа к ней» – очевидно, пропущено «с» – «…указано с путём доступа к ней».

Стр. 216 – под заголовком «Функции работы с блокированными записями» две функции: OldVal() и TableUpdate() – оказались «прилепленными» к предыдущим строкам списка, а должны быть отдельными пунктами.

Стр. 217 – пропущена начальная скобка в описании функции IndexSeek, т.е. между её именем и первым параметром eExpression.

Стр. 218 – две первых строки являются повторением двух последних строк предыдущей страницы. (Наверное, лучше убрать их с предыдущей страницы, а заголовок раздела перенести сюда, на стр. 218).

Стр. 218, 3-я и 4-я строки после заголовка «Добавление записей в таблицу»: «…вы всегда сможете открыть таблицу в командном окне и дать команду Append» – наверное, должно быть так: «…вы всегда сможете открыть таблицу и в командном окне дать команду Append».

Стр. 219, в последнем абзаце предлагаю заменить три последовательно упомянутых в нём выражения на более понятные:
«количество элементов строки массива» – на «количество столбцов массива»,
«лишние элементы отбрасываются», – на «лишние столбцы отбрасываются»,
«количество элементов массива» – тоже на «количество столбцов массива».

Стр. 220, 2-я – 3-я строки сверху: «…созданное View добавляется в DataEnvironment формы» – после слова «View» не нужна запятая.
Ниже, в трёх строчках кода – не понятно, для чего нужна переменная myVar. Вообще весь этот абзац какой-то «скомканный», непонятный. Как создать представление? Как добавить его в DataEnvironment формы? В каком методе формы «дать команду TableUpdate()» (это, к тому же, не команда, а функция)?

Стр. 220, подзаголовок «Добавление данных в поля типа Blob, Memo и General» набран более крупным шрифтом, чем окружающие подзаголовки, хотя по смыслу он «равнозначен» им. К стати, про поле типа Blob в этом разделе не упомянуто, хотя в заголовке оно и значится первым.

Стр. 220, 2-ое предложение после этого заголовка: «Пустое поле типа Memo обозначено как “memo”» – наверное, стоит добавить: «в окне Browse или Edit».

Стр. 220, ниже в том же абзаце, вместо «<Ctrl>+<W?» надо «<Ctrl>+<W>», т.е. вместо последней угловой скобки напечатался знак вопроса.

Стр. 223, пример 1 – «GO TOP» не нужно, т.к. SCAN и так начнёт просматривать записи с начала таблицы.

Стр. 226, вверху страницы 2-ой пункт списка: «...константу – она будет выводиться в каждой строке результата», – а в качестве примера дана не константа, а функция PI().

Стр. 232, последнее предложение: «…порядок оставленных в операторе фраз фиксирован» – наверное, надо наоборот: «не фиксирован».

Стр. 233, внизу страницы, под заголовком «Примеры» – в обоих примерах нет «;» при переносе частей команд на другую строку. В первом примере вместо круглых скобок поставлены квадратные.
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
dfr

Сообщений: 198
Откуда: Барнаул
Дата: 07.04.07 04:52:16ОтветитьЦитировать
стр.270, "Пример 1"
не определена переменная lcSQL перед использованием ее в функции SQLExec.
И в "Примере 2" перепутаны строчки и опции в конце примера.



Исправлено: dfr, 07.04.07 04:56
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
h.i.a.

Сообщений: 3981
Откуда: Мурманск
Дата: 10.04.07 13:29:19ОтветитьЦитировать
Страница 23. Таблица 1.10. Среди операторов «не равно» не указан #

Страница 33. Рис 1.2. Не корректный пример «сложного» индексного выражения. FoxPro не поддерживает значение индексного ключа переменной длины (Об этом факте тоже желательно упомянуть в книге). Предлагаю исправленный вариант: padr(alltrim(ctip)+alltrim(cname),80)

Страница 38. Не отформатированы 2 примера с with…endwith

Страница 187-188 Раздел «Индексация по сложным выражениям…» практически дословно повторяет такой же раздел на странице 32-33

Страница 238. Таблица 7.11. Двойное описание события DBC_BeforeModifyProc

Страница 239. Таблица 7.11. Двойное описание события DBC_BeforeOpenTable

Страница 244. Самое первое предложение: Впервые технология Rushmore представлена компанией Microsoft в FoxPro 2.0. Историческая неточность. FoxPro 2.0 еще был продуктом Fox Software. Microsoft к изобретению Rushmore не имеет никакого отношения.

P.S. По мере нахождения ошибок буду дополнять список.
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
h.i.a.

Сообщений: 3981
Откуда: Мурманск
Дата: 11.04.07 10:36:17ОтветитьЦитировать
Стр. 23. Таблица 1.10. Среди операторов «не равно» не указан #

Стр. 33. Рис 1.2. Не корректный пример «сложного» индексного выражения. FoxPro не поддерживает значение индексного ключа переменной длины (Об этом факте тоже желательно упомянуть в книге). Предлагаю исправленный вариант: padr(alltrim(ctip)+alltrim(cname),80)

Стр. 38. Не отформатированы 2 примера с with…endwith

Стр. 187-188 Раздел «Индексация по сложным выражениям…» практически дословно повторяет такой же раздел на странице 32-33

Стр. 225 Описание команды Select SQL «Результат выполнения запроса – новая таблица…». Неверное утверждение. Результатом может быть также курсор или массив. Более того, при отборе в таблицу или курсор, в ряде случаев на выходе мы можем получить исходную таблицу с наложенным фильтром (на эти грабли наступают даже ветераны форума, не говоря о новичках). 100% гарантией получения на выходе новой таблицы, является опция NOFILTER (во избежание плясок с бубном, эту опцию нужно по умолчанию добавлять в каждый запрос). Также, отсутствует описание еще одной полезной опции READWRITE.

Стр. 238. Таблица 7.11. Двойное описание события DBC_BeforeModifyProc

Стр. 239. Таблица 7.11. Двойное описание события DBC_BeforeOpenTable

Стр. 244. Самое первое предложение: Впервые технология Rushmore представлена компанией Microsoft в FoxPro 2.0. Историческая неточность. FoxPro 2.0 еще был продуктом Fox Software. Microsoft к изобретению Rushmore не имеет никакого отношения.

Стр. 408. Опечатка в примере предотвращения запуска формы в событии init:
Return =.f. исправить на return .f.

P.S. По мере нахождения ошибок буду дополнять список.
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
DmitriyG

Сообщений: 34
Дата: 13.04.07 18:59:46ОтветитьЦитировать
Ещё порция.

Стр. 234, 1-я строка (заголовок): «Команда UPDATE_SQL» – должно быть, наверное, «Команда UPDATE – SQL». Для этой команды не разъяснены опции «[FROM [FORCE] Table_List_Item [[,…] | [JOIN Table_List_Item]]]», хотя в шаблоне команды они приведены.

Стр. 235, 2-я строка первого маркированного списка: «END TRANSACTION – закрывает блок транзакций, сохраняя все изменения текущего блока» – нужно поставить запятую после слова «транзакций», т.к. далее следует деепричастный оборот.

Стр. 239, 3-я снизу строка таблицы: лишняя буква «y» в имени события «DBC_OpenData». В следующей строке – описание для события «DBC_CloseData» - наверное, должно быть «Происходит перед закрытием базы данных», а не «Закрывает открытую базу данных».

Стр. 239, пример в конце страницы, переходящий на стр. 240: не указан параметр в обработчике DBC_AfterCloseTable. Далее, сначала вызывается функция RECNO(“users”), а в следующей строке проверяется USED(“users”) – как-то нелогично. Нет пояснений, поэтому не понятно, что демонстрирует этот пример: как не дать закрыть таблицу users или что-то ещё?

Стр. 242, пример под цифрой 2: нет «;» при переносе части команды на след. строку.

Стр. 242, описание функции REFRESH(): «восстанавливает данные представления…» – не совсем понятно, что значит «восстанавливает». Может, лучше сказать «обновляет», «заново считывает»?

Стр. 244, 7-я строка снизу: «Выражение поиска не совпадает с индексным» - в начале этой строки, очевидно, должен быть маркер очередного (3-го) пункта списка "наиболее частых ошибок".

Стр. 244, 2 последних предложения – предлагаю исключить, т.к. без дополнительных пояснений это утверждение совершенно непонятно. Либо как-то пояснить его.

Стр. 246, 4-ый пункт маркированного списка: наверное, должно быть «возвращать обработанные данные серверу», а не «клиенту».

Стр. 270, «Пример 2»: нет закрывающей круглой скобки «)» после списка полей во 2-ой строке примера. В конце 3-ей строки примера нет «;» при переносе части команды на след. строку. В предпоследней строке примера имя DSN выбрано неудачно: совпадающим с именем переменной lcCom, - это может запутать читателя. В последней строке примера, в функции SqlExec() 2-ой параметр, очевидно должен быть «m.lcCom», а не какое-то «a».

Стр. 271, последняя строчка – не нужна (очевидно, вставилась сюда по ошибке).

Стр. 288, перед пояснением «и получим заголовок соединения:» – лишняя команда «lnConnHandle=…», т.к. она же следует за этим пояснением, как, очевидно, и задумано. В самом же пояснении лучше заменить слово «заголовок» на слово «дескриптор».

Стр. 350, 4-я строка снизу – нет замыкающей квадратной скобки «]».
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
JS
[MVP]

Сообщений: 11839
Откуда: Эстония
Дата: 18.04.07 17:57:38ОтветитьЦитировать
Начну с того места, до которого дочитал, потом с начала книги.
Может страничку сделать для удобства, чтобы ребятам проще было искать по нашим записям.
стр. 916 Вторая строка после Проигрыватель видеофайлов.
заменить vfpplaier1 на упоминаемое имя класса vfpplayer1


------------------
Knowledge is better than ignorance!
Website: juri.foxhelp.eu




Исправлено: JS, 18.04.07 17:57
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
Александр Жевелев

Сообщений: 2609
Откуда: Новосибирск
Дата: 19.04.07 07:56:45ОтветитьЦитировать
стр. 1018, Листинг 28.26
DEFINE CLASS alarm AS form
видимо надо
DEFINE CLASS alarmwindow AS form
т.к. в следующем листинге 28.27(стр.1020)
описывается класс на основе alarmwindow
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
Коляныч

Сообщений: 76
Дата: 10.05.07 10:22:15ОтветитьЦитировать
\glava12\shortcut_menu\rightclick.prg
или стр.437 книги
Смущает конструкция:
DO WHILE !EOF()
......
IF !EOF()
SKIP
ELSE
EXIT
EndIf

EndDo
Не "очепятка", правда
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
piva
[Болтун]

Сообщений: 18492
Откуда: Курган
Дата: 10.05.07 10:43:04ОтветитьЦитировать
Вполне допустимая в практике, другое дело что лучше так не делать, и дваигть указатель что бы сработал DO While, но очень даже в жизни допустимая конструкция


------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
Коляныч

Сообщений: 76
Дата: 10.05.07 11:49:50ОтветитьЦитировать
piva
... но очень даже в жизни допустимая конструкция
"FoxBase+ в подлиннике"... Эх, молодость моя!
По делу:
\Glava08\perenos.prg представлена в ДОС-кодировке.
\Glava05\Toolbar\toolbar_in_form.prg - ссылки на несуществующие .bmp
Похоже все они в другом месте -\Glava25\Demo1\bmp

Но книга правда - чудесная. Спасибо авторам!
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
SoccerStudio

Сообщений: 5046
Откуда: Подмосковье
Дата: 26.08.07 13:13:10ОтветитьЦитировать
Добавлю до кучи. Хотя, может быть, это уже и известно.
Метод LoadFromStream()класса GdipImages написан с ошибкой. Природа ошибки банальна и понятна. Проявляется, стоит только лишь обратиться к этому методу.
Также в методе CopyFromClipboard() этого же класса зачем-то затесался вызов функции MESSAGEBOX().



Исправлено: SoccerStudio, 26.08.07 13:33
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
katrin

Сообщений: 81
Откуда: Йошкар-Ола
Дата: 06.09.07 13:41:49ОтветитьЦитировать
Только сегодня купили на работу книгу. Можно внести свое пожелание новичку? На стр.17 при описании параметров процедур и функций - немного "масло масляное".
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
katrin

Сообщений: 81
Откуда: Йошкар-Ола
Дата: 11.09.07 09:03:34ОтветитьЦитировать
Поясните, уважаемые гуру, может я не так поняла?
Стр. 104, абз. 2 сверху:
«Если ваше приложение использует в качестве главного окна форму верхнего уровня, и вы запускаете модальную форму, свойство WindowType которой равно нулю (т.е. форма может выполняться только в главном окне VFP), то, если главное окно VFP невидимо, это повлечет зависание приложения.”
Мои комментарии:
1. д.б. написано “ShowWindow которой равно нулю”, потому что для модальной формы как раз WindowType = 1
2. само это утверждение требует детализации или переформулировки:
а) если модальная форма со свойством ShowWindow = 0 запускается после или из метода формы верхнего уровня (ShowWindow = 2), это не вызывает зависания приложения даже при невидимом окне VFP, т.к. возможно закрыть родительскую форму.
б) зависание получается, если сразу запускается модальная форма со свойством ShowWindow = 0 при невидимом окне VFP, но тогда это уже не форма верхнего уровня по определению.
Ratings: 0 negative/0 positive

Re: Очепятки в подлиннике VFP9
DmitriyG

Сообщений: 34
Дата: 20.09.07 15:24:27ОтветитьЦитировать
Во время отпуска дочитал книгу, и вот, выкладываю свою последнюю порцию опечаток, которые заметил. Надеюсь, это поможет исправить их в следующем издании книги.

Стр. 354, 8-я строка снизу – «…данные типа Blob отображаются как Blob, если значения отсутствуют…» – во 2-ом случае надо написать blob с маленькой буквы.

Стр. 398, 4-я строка под рис. 11.24 – вместо «Remote» надо «Remove».

Стр. 406, под заголовком «Добавление объектов в класс-контейнер»:
- в строке, где приведён синтаксис команды - убрать квадратные скобки вокруг всей команды;
- удалить следующие 2 строки, т.е. подзаголовок «Параметры:» (который здесь неуместен) и под ним повторный, но урезанный синтаксис команды;
- в следующей строке – вместо «…который наследуется от класса ObjectName» надо «…который наследуется от класса ClassName2»;
- в комментарии к слову WITH вместо «…которые вы добавляете в определение класса» поставить в единственном числе: «…который вы добавляете в определение класса».

Стр. 408, 10-я строка снизу: после слов «Если вы хотите использовать переданные в метод параметры» - добавить слова «в других методах класса».

Стр. 408, 7-я строка снизу: убрать знак равенства между «RETURN» и «.F.».

Стр. 416, 15-я строка сверху: вместо «aAfter» надо «eAfter».

Стр. 432, 17-я строка снизу: поставить запятую после слова «меню», а не после слова «после», т.е. сдвинуть запятую на 1 слово влево.

Стр. 440, 5-я и 6-я строка сверху: вместо «входящим в контейнер» надо «входящих в контейнер».

Стр. 440, 9-я строка сверху: вместо «<Имя объекта>.=[значение]» надо «<Имя объекта>.Свойство=значение»

Стр. 440, 5-я строка снизу: вместо «Формируется в дизайнере меню…» надо «Формируемое в дизайнере меню…».

Стр. 508, 6-я строка сверху: вместо «lcCRLF=CHR(13)+CHR(13)» надо «lcCRLF=CHR(13)+CHR(10)»

Стр. 508, Листинг 15.1:
2-я строка листинга – то же самое, вместо CHR(13) надо CHR(10);
7-я строка листинга – вместо «=ALINES(laStringArray[1], laFields, CHR(13))» надо «=ALINES(laFields, laStringArray[m.i], CHR(9))», т.е. поменять местами 1-ый и 2-ой параметры, вместо индекса «1» поставить переменный индекс и вместо символа перевода строки указать символ табуляции.

Стр. 509, 8-я строка сверху: вместо CHR(0) надо CHR(9).

Стр. 513, последний из 4-ёх примеров применения функции FSEEK() вверху страницы, с комментарием «&& nBytes=110»: либо 3-ий параметр функции сделать не «2», а «1», либо комментарий должен быть «&& указатель за концом файла», либо отметить, что длина этого файла 90 байт.

Стр. 520, 3-я строка сверху: неправильно согласован деепричастный оборот. Вместо «Зная структуру таблицы, вам не составит труда…» надо «Зная структуру таблицы, вы без труда сможете…»

Стр. 564, 4-я строка после подзаголовка «Создание COM+–приложения»: вместо «…использоваться программа…» надо «…используется программа…».

Стр. 613, 7-я строка сверху: пропущено слово «указателя» после слов «Для сохранения возвращаемого функцией GetArrayPtr».

Стр. 616, 6-я строка после подзаголовка «Уничтожение объекта Microsoft Excel»: вместо «…до объект будет существовать…» надо «…то объект будет существовать…».

Стр. 683, Листинг 19.16, 2-я строка: после hMem1 вместо точки надо запятую.

Стр. 689, 8-я и 6-я строки снизу: дважды вместо «параметр Edit» надо «параметр File».

Стр. 696, в абзаце в самой середине странице: вместо «…если код операции на удаление файлов» надо «…если код операции – не удаление файлов».

Стр. 719, 3-я строка после заголовка главы: вместо «программы» надо «программ».

Стр. 734, 4-я строка сверху: вместо «в двоичном представлении» надо «в 16-ричном представлении».

Стр. 929, 5-я строка сверху: вместо «SoundEffect» надо «SoundEffects».

Стр. 997, Листинг 28.2, 3-я строка листинга: вместо «SET PROCEDURE TO mybrow» надо «SET PROCEDURE TO My_dec».

Стр. 998, Листинг 28.3, 1-я строка листинга: вместо «PROCEDURE My_Dec» лучше написать «* File My_dec.prg».
13-я строка листинга: значение зачем-то присваивается какой-то переменной m.pass1, но эта переменная больше нигде не используется.

Стр. 1004, Пункт 9 «Как сделать ссылку»: вообще ничего не понятно. Где окажется ссылка? Для какого объекта приведены листинги методов MouseEnter и MouseLeave? Как реализуется переход по ссылке?

Стр. 1005, 10-я строка сверху: лишний значок очередного пункта списка (это не новый пункт списка, а продолжение предыдущего).

Стр. 1007, Листинг 28.13, 8-я строка листинга: «SET CLASSLIB TO animate» - не сказано, где взять файл Animate.vcx.

Несколько претензий есть и по существу книги, но это, наверное, для другой темы.
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут писать в этом форуме.

On-line: 47 and Guests: 47


© 2000-2018 Fox Club 
Яндекс.Метрика