|
|
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Суть такова. Есть база данных, по кнопочке пользователь открывает список из своих записей, которые в дальнейшем может изменять, редактировать, добавлять, удалять. Проблема в том, что база имеет довольно большой размер. Фильт тормозит. Если делать запрос, то как потом измененные записи переносить в основную базу? Наверняка есть какое то простое решение. Прошу помочь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 15:53 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
обратите внимание на КАД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 15:59 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Я немного неправильно написала. Проблема не в том чтобы добавить или удалить запись. А в том чтобы из БД показать в гриде только нужные записи. В моем случае, по номеру организации программа обращается к другой базе ,открывается новая форма и в гриде выводяться платежи этой организации. А база с платежами довольна большая. Вот я думаю как сделать, чтобы программа не торможила при фильтровки этих платежей в форме. Платежи пользователь имеет право редактировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 16:29 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
КАД имеет свойство selectCMD там Вы можете написать нечто Код: plaintext 1. КАД притащит курсор, который можно будет трогать и при желании изменения в курсоре сохранить назад это пример ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 16:38 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
SvSvetlanaА база с платежами довольна большая. Вот я думаю как сделать, чтобы программа не торможила при фильтровки этих платежей в форме. Платежи пользователь имеет право редактировать. Для этого необходимо построить индексы (есть ф-ия sys(3054), которая скажет об уровне оптимизации) на те поля которые используются как критерий отбора. Во-вторых, есть несколько приемов динамически отфильтровать данные LV/RV/CAD, но принцип у них один, если выражение фильтра (отбора) оптимизируемо, то получишь скорость выполнения, а если нет, то ни какие ухищрения не помогут избавиться от тормозов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:00 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Попробовала прописать свойство в Вашем примере, фокс ругается на строку oForm.show(1) классами я раньше не писала, не могу понять логику. И еще как изменения в курсоре перетащить назад в таблицу? oCad = createobject('myCAD') with oCAD .selectCmd='select * where fld1=77' .tables='table1' if vartype(oCad)='O' oForm = createobject('myForm',oCad) oForm.show(1) else messagebox('Ошибка при инициализации КА') endif ENDWITH ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:05 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
текст ошибки напишите писать селект нужно правильно! select... from ... where ... откройте класс КАД и подправьте ему свойства tables UpdatebleFieldsList UpdateNameList почитайте про КАД скорость селекта Вас устраивает??? если написать его просто в ком.окне??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:12 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
авторклассами я раньше не писала попробуйте, будем учиться править нужно в библиотеке посмотрите там есть 2 библиотеки настраивать Вам нужно MyCAD в MyAPP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:15 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
авторкак изменения в курсоре перетащить назад в таблицу обратите внимание на метод-клик кнопочки сохранить в класс-форме Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:33 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
в свойствах tables - имя таблицы UpdatebleFieldsList и UpdateNameList поля этой таблицы. Вроде все правильно. Код подправила oCad = createobject('myCAD') with oCAD .selectCmd='select * from table1 where fld1=77' .tables='table1' if vartype(oCad)='O' oForm = createobject('myForm',oCad) oForm.show(1) else messagebox('Ошибка при инициализации КА') endif ENDWITH Ошибку выдает, сначала пишет - ошибка при выполнении метода cursorfill КА а потом ругается на строку oForm.show(1) - говорит, что это не объект "OFORM is not an object" И еще ... где можно почитать про CAD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 17:51 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
тип fld1 - character писать нужно [select * from table1 where fld1='77'] почитать сюда http://kodu.neti.ee/~juri4/vfp60/ca_01_ru.htm удачи и терпения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:01 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
а чтобы так непонятно не ругался, сделаем костылик Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:04 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
ПОЛУЧИЛОСЬ!!!! И данные поняла как обратно отправить))))) ОГРОМНОЕ ВАМ СПАСИБО ЗА ПОМОЩЬ И ТЕРПЕНИЕ!!!! Дальше попробую сама справиться, дальнейшие действия пока понятны))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:08 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
пожалуйста большая просьба начать писать классами т.к. Вам будет проще понимать процессы и проще решать задачи а если чего с классами непонятно, то я постараюсь подсказать и объяснить удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:13 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
слава тебе, Господи, что не влез тов.Максимов и я надеюсь ВФП+ООП обретет еще одного поклонника и ВФП продержится еще хотя-бы некот.время. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:17 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Ваши отношения с тов. Максимовым мне неизвестны. Но за желание помочь огромное спасибо, тем более я понимаю, что вопросы на которые Вы сегодня ответили, для Вас на уровне начальных классов. А новичкам тяжеловато приходиться. Но преимущество классов, я сегодня наглядно увидела и буду использовать дальше. ЕЩЕ РАЗ СПАСИБО! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:29 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Ваши отношения с тов. Максимовым мне неизвестны. Но за желание помочь огромное спасибо, тем более я понимаю, что вопросы на которые Вы сегодня ответили, для Вас на уровне начальных классов. А новичкам тяжеловато приходиться. Но преимущество классов, я сегодня наглядно увидела и буду использовать дальше. ЕЩЕ РАЗ СПАСИБО! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2007, 18:31 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
...такое КАД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 11:09 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Набиваю первые шишки с КАДом. Перенесла класс в свой проект. Теперь при вызове формы в классе дает ошибку Property OCAD is not found Ругается на выделенную строку. Перенесла аккуратно. Вроде все так. Только в свойстве mycad - classlibrary стоит myapp. У Вас стоит library. Но беда в том, что если я при построении када указываю library кад переносит в эту библиотеку. Исправить это у меня не получается. Подозреваю что проблема в этом. Не знаю понятно ли я написала. lparameters toCAD if vartype(oCad)='O' ELSE MESSAGEBOX("ошибка") RETURN .f. endif if toCAD.cursorfill() this.oCad = toCAD this.oGrid1.RecordSource=toCAD.Alias else messagebox('Ошибка при выполнении метода cursorfill КА') return .f. endif ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 15:54 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
Набиваю первые шишки с КАДом. Перенесла класс в свой проект. Теперь при вызове формы в классе дает ошибку Property OCAD is not found Ругается на выделенную строку. Перенесла аккуратно. Вроде все так. Только в свойстве mycad - classlibrary стоит myapp. У Вас стоит library. Но беда в том, что если я при построении када указываю library кад переносит в эту библиотеку. Исправить это у меня не получается. Подозреваю что проблема в этом. Не знаю понятно ли я написала. lparameters toCAD if vartype(oCad)='O' ELSE MESSAGEBOX("ошибка") RETURN .f. endif if toCAD.cursorfill() this.oCad = toCAD this.oGrid1.RecordSource=toCAD.Alias else messagebox('Ошибка при выполнении метода cursorfill КА') return .f. endif ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 15:56 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
проблема в том, что мы быстро перепрыгнули на классы добавьте проперти откройте на редактирование форму или класс в ините, которого Вы пишите это в гл.меню найдите пункт form (для формы) class (если Вы работаете с классом) в выпадающем меню найдите пункт New property добавьте свойство oCad , сохраните класс или форму, запустите - проблема решится чтобы понимать что у Вас происходит, Вы должны научиться рассматривать классы если у Вас происходит ошибка есть дебаггер в коммандном окне введите debug и нажмите энтер в окошко вачь пишем this или thisform или тянем в него из локалсов объект дальше если это объект, то его можно раскрыть, нажав на крестик и посмотреть на свойства давайте еще почитаем про классы здесь http://foxclub.ru/vfpbook/gl11/gl11.htm желательно конечно при начале чтения всего этого Вам объяснить для чего это нужно, давайте пока исправьте ошибку, почитайте, а затем если непонятно, я объясню какие преимущества дает программирование с пом.классов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 16:12 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
alex11100слава тебе, Господи, что не влез тов.Максимов Зря ты так, Саня :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 16:36 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
СПАСИБО!!! Заработало! Сейчас займусь увлекательным чтением))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 17:10 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
пожалуйста затем на досуге, нужно взять любой учебник Логики в руки почитайте темы - абстракция, опреации над объемами если с английским - хорошо, то вот сюда http://fox.wikis.com/wc.dll?Wiki~ObjectOrientedProgramming http://www.utmag.com/ViewPageArticle.aspx?Session=4F59676F6B7544652F71773D204A4B5651732F6756324959576E73666B766D787134673D3D и далее по всем номерам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2007, 17:24 |
|
||
|
Помогите правильно построить программу!
|
|||
|---|---|---|---|
|
#18+
alex11100слава тебе, Господи, что не влез тов.Максимов А почему я должен был влезать? Пока Вы ведете себя вменяемо и более-менее здраво объясняет не вижу причин вмешиваться. Вот если Вы начнете сыпать лозунгами и агитками, да еще откровенными провокациями (вроде этой), тогда конечно, как не вмешаться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2007, 14:23 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34393869&tid=1589715]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
148ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 429ms |

| 0 / 0 |
