![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 26.11.2009
Сообщений: 9
|
![]()
всем здравствуйте кто откликнется на мою помощь.
в программе access сделаны 3 запроса и в программе прописаны как открытием этих запросов. как можно сделать чтоб меньше записи было в программе?, т.е в программе прописывается открытием 3 запроса, а как можно это сокращенней прописать. помогите кто-нибудь советами |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
![]()
Здравствуйте ketrik5.
"..как можно это сокращенней прописать.." - на сколько "сокращенней", не с чем сравнивать, выложите код или архив с БД и только после анализа можно будет думать над Вашим вопросом - "..как можно сделать чтоб меньше.." Евгений. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 26.11.2009
Сообщений: 9
|
![]()
здравствуйте евгений.
это прописано в модуле программы DoCmd.OpenQuery "НК_РН_7301" DoCmd.OpenQuery "РН_7301" DoCmd.OpenQuery "Прочие_7301" А сами запросы выглядят так: INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_011, 0AMOUNT_021, 0AMOUNT_031, 0AMOUNT_041, 0AMOUNT_051, 0AMOUNT_061, ZQUANT1_071 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], Sum(zadol1.SumBal0101_pr) AS [Sum-SumBal0101_pr], Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM zadol1 INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((zadol1.nStrEdDop)=10000120) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1 ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_012, 0AMOUNT_022, 0AMOUNT_032, 0AMOUNT_042, 0AMOUNT_052, 0AMOUNT_062, ZQUANT1_072 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], zadol1.SumBal0101_pr, Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM ((zadol1 INNER JOIN dbo_StrEd ON zadol1.nStrEdDop = dbo_StrEd.nStrED) INNER JOIN dbo_CE ON dbo_StrEd.TypeCe = dbo_CE.nType) INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((zadol1.nStrEdDop)<>10000120) AND ((dbo_StrEd.TypeCe)=8 Or (dbo_StrEd.TypeCe)=10) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1, zadol1.SumBal0101_pr ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_013, 0AMOUNT_023, 0AMOUNT_033, 0AMOUNT_043, 0AMOUNT_053, 0AMOUNT_063, ZQUANT1_073 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], Sum(zadol1.SumBal0101_pr) AS [Sum-SumBal0101_pr], Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM ((zadol1 INNER JOIN dbo_StrEd ON zadol1.nStrEdDop = dbo_StrEd.nStrED) INNER JOIN dbo_CE ON dbo_StrEd.TypeCe = dbo_CE.nType) INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((dbo_CE.nType)<>8 And (dbo_CE.nType)<>10) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1 ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; Запросы прописаны поочереде, их можно как-то объединить в один и записать проще? Последний раз редактировалось ketrik5; 21.12.2010 в 17:09. |
![]() |
![]() |
![]() |
#4 | |
Регистрация: 26.11.2009
Сообщений: 9
|
![]() Цитата:
это прописано в модуле программы DoCmd.OpenQuery "НК_РН_7301" DoCmd.OpenQuery "РН_7301" DoCmd.OpenQuery "Прочие_7301" А сами запросы выглядят так: INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_011, 0AMOUNT_021, 0AMOUNT_031, 0AMOUNT_041, 0AMOUNT_051, 0AMOUNT_061, ZQUANT1_071 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], Sum(zadol1.SumBal0101_pr) AS [Sum-SumBal0101_pr], Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM zadol1 INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((zadol1.nStrEdDop)=10000120) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1 ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_012, 0AMOUNT_022, 0AMOUNT_032, 0AMOUNT_042, 0AMOUNT_052, 0AMOUNT_062, ZQUANT1_072 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], zadol1.SumBal0101_pr, Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM ((zadol1 INNER JOIN dbo_StrEd ON zadol1.nStrEdDop = dbo_StrEd.nStrED) INNER JOIN dbo_CE ON dbo_StrEd.TypeCe = dbo_CE.nType) INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((zadol1.nStrEdDop)<>10000120) AND ((dbo_StrEd.TypeCe)=8 Or (dbo_StrEd.TypeCe)=10) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1, zadol1.SumBal0101_pr ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; INSERT INTO import1 ( ZKDZ_VIDZ, ZKDZ_IND, ZKDZ_KATZ, ZKDZ_VIDD, 0AMOUNT_013, 0AMOUNT_023, 0AMOUNT_033, 0AMOUNT_043, 0AMOUNT_053, 0AMOUNT_063, ZQUANT1_073 ) SELECT zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW AS Выражение1, zadol1.VD1, Sum(zadol1.SumBal0101) AS [Sum-SumBal0101], Sum(zadol1.SumBal0101_pr) AS [Sum-SumBal0101_pr], Sum(zadol1.Sum_RabTekGod) AS [Sum-Sum_RabTekGod], Sum(zadol1.Sum_OplTekGod) AS [Sum-Sum_OplTekGod], Sum(zadol1.sumbalans1) AS [Sum-sumbalans1], Sum(zadol1.sumbalans2) AS [Sum-sumbalans2], Max(zadol1.D_pr) AS [Max-D_pr] FROM ((zadol1 INNER JOIN dbo_StrEd ON zadol1.nStrEdDop = dbo_StrEd.nStrED) INNER JOIN dbo_CE ON dbo_StrEd.TypeCe = dbo_CE.nType) INNER JOIN dbo_VidPrihRash_BW ON zadol1.nType = dbo_VidPrihRash_BW.nRash WHERE (((dbo_CE.nType)<>8 And (dbo_CE.nType)<>10) AND ((zadol1.BalChet)=7301) AND ((zadol1.Str_Bal)=244)) GROUP BY zadol1.VidZadol, zadol1.Str_Bal, dbo_VidPrihRash_BW.nBW, zadol1.VD1 ORDER BY zadol1.VidZadol, zadol1.Str_Bal, zadol1.VD1; Запросы прописаны поочереде, их можно как-то объединить в один и записать проще? |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как прописать программу | Miha85193 | Общие вопросы Delphi | 6 | 12.07.2010 00:24 |
как прописать проверку toolButtons | lexluter1988 | Общие вопросы .NET | 2 | 18.05.2010 20:22 |
Как правильно прописать? | clanz | Microsoft Office Access | 1 | 26.02.2010 11:38 |
подскажите как прописать | alexs2141 | Помощь студентам | 6 | 03.06.2008 14:32 |
Как прописать в HKEY_CURRENT_USER ? | UnD)eaD)Snake | Общие вопросы Delphi | 4 | 27.07.2007 21:52 |