|
Как записать select
|
|||
---|---|---|---|
#18+
Есть VFP9, форма, грид, recordsourcetype 4-sql statemen, recordsource выражение SELECT S_rab.sr_kr,S_rab.sr_naim,a.nr_kol,a.nr_st from (SELECT nar_r.sr_id,SUM(nar_r.nr_kol) as nr_kol,SUM(nar_r.nr_st) as nr_st FROM nar_r WHERE nar_r.nf_id in (SELECT nar_f.nf_id from nar_f WHERE nar_f.nh_id=1) GROUP BY nar_r.sr_id) a LEFT OUTER JOIN s_rab ON a.sr_id = S_rab.sr_id INTO CURSOR csr, Но он видать больше 254 знаков и поэтому в recordsource не записывается, как-то можно его туда записать, с помощью каких-нибудь подстановок функций и т.д... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 07:06 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Вообще-то должен, но можно проще: THISFORM.Ваш грид.RecordSource="" THISFORM.Ваш грид.RecordSourceType= 1 THISFORM.Ваш грид.RecordSource="scr" ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 07:48 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Спасибо, но это проблем не вызывает.. LOCAL lctmpalias AS STRING WITH THIS.page4.grid1 lctmpalias=.RECORDSOURCE .RECORDSOURCE="" .RECORDSOURCE=lctmpalias .REFRESH .SETFOCUS ENDWITH Проблема в том, что пользуясь Form Disigner, и открывая properties грида, где recordsource(там ещё такая кнопка с лупой нарисована-Zoom recordsource), вставляю туда код, нажимаю Ok, всё нормально, как только нажимаю сохоранить форму, код из recordsource становится каким был предыдущий(если пустой, то обнуляется, если был записан select до 250 знаков, то он восстанавливается...) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 08:14 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Я не пользуюсь конструктором. :) У меня в Ините формы вызывается метод, допустим create_cur В нем явно прописываю: THISFORM.Ваш грид.recordsource="" THISFORM.Ваш грид.recordsource=[SELECT список полей FROM таблица WHERE условие отбора INTO CURSOR csr] Проверено - ограничений никаких нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 08:27 |
|
Как записать select
|
|||
---|---|---|---|
#18+
не знаю, перенёс в инит формы та же фигня .RECORDSOURCE=[SELECT S_rab.sr_kr,S_rab.sr_naim,a.nr_kol,a.nr_st from (SELECT nar_r.sr_id,SUM(nar_r.nr_kol) as nr_kol,SUM(nar_r.nr_st) as nr_st FROM nar_r WHERE nar_r.nf_id in (SELECT nar_f.nf_id from nar_f WHERE nar_f.nh_id=1) GROUP BY nar_r.sr_id) a LEFT OUTER JOIN s_rab ON a.sr_id = S_rab.sr_id INTO CURSOR csr] как только закрываю окно инит, ошибка... урезаю селект .RECORDSOURCE=[SELECT nar_r.sr_id,SUM(nar_r.nr_kol) as nr_kol,SUM(nar_r.nr_st) as nr_st FROM nar_r WHERE nar_r.nf_id in (SELECT nar_f.nf_id from nar_f WHERE nar_f.nh_id=1) GROUP BY nar_r.sr_id INTO CURSOR csr] записывает... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 08:55 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Какую ошибку выдает? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 09:04 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 09:50 |
|
Как записать select
|
|||
---|---|---|---|
#18+
научитесь писать по-человечьи вот, - сразу стала видна лишняя скобка в строке from nar_f WHERE nar_f.nh_id=1) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 09:52 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1, вариант 4-sql stmt Вы увидели, а вариант 3-Query(.qpr) куда дели? Или Вы принципиально не используете то, что по каким-то причинам не понадобилось другим? Пробивать стены лбом привычнее? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 10:04 |
|
Как записать select
|
|||
---|---|---|---|
#18+
прошелмимо, Постараюсь, но прежде чем подставлять sql выражение, я его проверяю в коммандной строке, а скобка... не знаю, лишняя ли она, я убираю, сразу же редактор подчёркивает, типа ошибка, все скобки вроде бы нормально и select выдавал результат... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 10:27 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Sergey Sizov, А какая разница между 4(SQL stmt) и 3(qure) вариантом, что тот выбирал, что другой, дизайнер формы, всё равно не пропускает длинные выражения в recordsource ... Не знаю может в макрос записать его, а этот макрос в recordsource.. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 10:35 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1Sergey Sizov, А какая разница между 4(SQL stmt) и 3(qure) вариантом, что тот выбирал, что другой, дизайнер формы, всё равно не пропускает длинные выражения в recordsource ... Не знаю может в макрос записать его, а этот макрос в recordsource..А подумать не пробовали? А почитать в хелпе? Как я понял, Вы совершенно не знаете про наличие файлов типа QPR и понятия не имеет о их назначении? Так может ликвидировать пробел в знаниях? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 12:31 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Sergey Sizov, могу ответить, что не всё знаю, и не верю кто говорит, что всё знает...это вопрос дискуссионый, (знаю-не знаю, ничего не знаю...), но если эти qwery файлы решают проблему, то почему бы не сказать, как...но тему надо закрывать, проблему обошёл, не так как хотелось бы...но уже не актуально... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 12:52 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1Sergey Sizov, могу ответить, что не всё знаю, и не верю кто говорит, что всё знает...это вопрос дискуссионый, (знаю-не знаю, ничего не знаю...), но если эти qwery файлы решают проблему, то почему бы не сказать, как...но тему надо закрывать, проблему обошёл, не так как хотелось бы...но уже не актуально...А можно узнать, почему так вот хочется именно готовый ответ, а не направление поисков? Самом то что-нибудь сделать никак? Кто-то должен разжевать и готовенькое в рот положить? В хелпе все уже написано. На кой ляд мне тут распинаться и писать это же самое еще раз? Ради кого? Ради лентяя, который не может одну страничку прочитать? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 13:22 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Sergey Sizovq1w1e1Sergey Sizov, могу ответить, что не всё знаю, и не верю кто говорит, что всё знает...это вопрос дискуссионый, (знаю-не знаю, ничего не знаю...), но если эти qwery файлы решают проблему, то почему бы не сказать, как...но тему надо закрывать, проблему обошёл, не так как хотелось бы...но уже не актуально...А можно узнать, почему так вот хочется именно готовый ответ, а не направление поисков? Самом то что-нибудь сделать никак? Кто-то должен разжевать и готовенькое в рот положить? В хелпе все уже написано. На кой ляд мне тут распинаться и писать это же самое еще раз? Ради кого? Ради лентяя, который не может одну страничку прочитать? фоксклаб людей портит ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 13:31 |
|
Как записать select
|
|||
---|---|---|---|
#18+
Как-то не охота пикироваться...априори, 1. всё знать невозможно, 2. всё уже когда либо сказано и написано, 3. надо искать, когда, где и почём.... Поэтому задаётся вопрос тем, кто уже сталкивался с проблемой и отвечать не лень по разным причинам(в первый раз отвечает, просто есть желание ответить и т.д.). Возникла проблема, на своём делетанском уровне я постарался её решить, всё... проблем нет... спасибо за ответы... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 13:38 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1Как-то не охота пикироваться...априори, 1. всё знать невозможно,А об этом кроме Вас кто-то что-то где-то писал/говорил? 2. всё уже когда либо сказано и написано,То это Вы знаете, но пользоваться этим не хотите? 3. надо искать, когда, где и почём....А ведь лень. Поэтому задаётся вопрос тем, кто уже сталкивался с проблемой и отвечать не лень по разным причинам(в первый раз отвечает, просто есть желание ответить и т.д.).Вам не ответили? Или Вам не нравиться форма ответа? Не совсем готовенькое выдали? Возникла проблема, на своём делетанском уровне я постарался её решить, всё... проблем нет...Это Вам только кажется. Как дилетанту. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 13:44 |
|
Как записать select
|
|||
---|---|---|---|
#18+
1. Действительно, есть ограничение конструктора. Он не может сохранять более 254 символов вне зависимости от того, пользовались кнопкой Zoom или нет 2. Это ограничение только и исключительно дизайнера. Программно можно ввести символьную строку, длиной до 8`192 символов - это ограничение на длину одной команды в FoxPro. В данном случае - команда присвоения значения. 3. Вы сделали распространенную ошибку перепутав символьную константу и символьную переменную. Символьноая константа (то, что записано между парными кавычками) не может иметь длину более 254 символов. А вот символьная переменная может содержать в себе тест размером до 16МБ В чем разница между символьной константой и символьной переменной проще объяснить на примере Код: plaintext
Так вот, в этом примере то, что записано в кавычках - это 2 символьные константы. А lcVar - это символьная переменная Для удобства записи длинного текста в символьную переменную проще воспользоваться текстовыми скобками TEXT...ENDTEXT. В данном случае примерно так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2011, 14:02 |
|
Как записать select
|
|||
---|---|---|---|
#18+
ВладимирМ, Спасибо, осталось выяснить, где в конструкторе(или ещё где, это же выражение не запишишь в Zoom recordsource) записать эту символьную переменную (lcStringSQL); как вариант вроде создать метод и там прописать эту символьную переменную, или есть более правильные варианты? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 04:58 |
|
Как записать select
|
|||
---|---|---|---|
#18+
прошелмимо, кого и портит(развивается высокомерие....), а насколько я знаю своей взаимовыручкой, больше привлекает.... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 04:59 |
|
Как записать select
|
|||
---|---|---|---|
#18+
ВладимирМ, спасибо, переписал всё в инит формы... :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 05:06 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1прошелмимо, кого и портит(развивается высокомерие....), а насколько я знаю своей взаимовыручкой, больше привлекает.... угумс. обратите внимание на курсорадаптер. писать запрос в св-во грида - дурдом. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 10:31 |
|
Как записать select
|
|||
---|---|---|---|
#18+
прошелмимо, о вкусах не спорят... а по поводу курсорадаптера... я тоже знаю кун фу, каратэ, айкидо и другие страшные слова...:-) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 14:17 |
|
Как записать select
|
|||
---|---|---|---|
#18+
q1w1e1прошелмимо, о вкусах не спорят... а по поводу курсорадаптера... я тоже знаю кун фу, каратэ, айкидо и другие страшные слова...:-) не зарывайтесь, я не только знаю, но и владею показательным ударом учи маваши. (занимался киокушином). у Вас дурные вкусы и действительно сами пытаетесь нажить проблем. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2011, 15:04 |
|
|
start [/forum/topic.php?fid=41&msg=37287037&tid=1584333]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
25ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 134ms |
0 / 0 |