Çàãðóçêà ÊËÀÄÐ-à âî âíóòðåííèå òàáëèöû |
Dim strSQL SysCmd acSysCmdInitMeter, "Ïðîöåññ îáíîâëåíèÿ...", 13 'ÑÎÇÄÀÅÌ ÏÎËÎÑÓ ÑÎÑÒÎßÍÈß SysCmd acSysCmdUpdateMeter, 0 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß On Error GoTo err_kod SysCmd acSysCmdUpdateMeter, 1 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'Äîáàâëÿåì ëèíîâêó íà òàáëèöó KLADR DoCmd.TransferDatabase acLink, "dBase III", Application.CurrentProject.Path, , "KLADR.DBF", "KLADR" SysCmd acSysCmdUpdateMeter, 2 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'ÎÁÐÀÁÀÒÛÂÀÅÌ ÐÅÃÈÎÍÛ CurrentDb.Execute "Delete * from Ðåãèîíû;" SysCmd acSysCmdUpdateMeter, 3 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß strSQL = "INSERT INTO Ðåãèîíû (ÊîäÐåãèîíà, Ðåãèîí, INDEX) SELECT clng(Left([KLADR]![code],2)) AS ÊîäÐåãèîíà, [KLADR]![NAME] & ' ' & [KLADR]![SOCR] AS Ðåãèîí, KLADR.INDEX FROM KLADR WHERE (((Right([KLADR]![code],11))='00000000000'));" CurrentDb.Execute strSQL SysCmd acSysCmdUpdateMeter, 4 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'ÎÁÐÀÁÀÒÛÂÀÅÌ ÐÀÉÎÍÛ CurrentDb.Execute "Delete * from Ðàéîíû;" SysCmd acSysCmdUpdateMeter, 5 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß strSQL = "INSERT INTO Ðàéîíû (ÊîäÐåãèîíà, ÊîäÐàéîíà, Ðàéîí, INDEX) SELECT clng(Left([KLADR]![code],2)) AS ÊîäÐåãèîíà, CLng(Mid([KLADR]![code],3,3)) AS êîäÐàéîíà, [KLADR]![NAME] & ' ' & [KLADR]![SOCR] AS Ðàéîí, KLADR.INDEX FROM KLADR WHERE ((Mid([KLADR]![code],3,3)<>'000') AND (Right([code],8)='00000000'));" CurrentDb.Execute strSQL SysCmd acSysCmdUpdateMeter, 6 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'ÎÁÐÀÁÀÒÛÂÀÅÌ ÃÎÐÎÄÀ CurrentDb.Execute "Delete * from Ãîðîäà;" SysCmd acSysCmdUpdateMeter, 7 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß '=============================================================== 'ÈÇÌÅͨÍÍÎÅ strSQL = "INSERT INTO Ãîðîäà (ÊîäÐåãèîíà, ÊîäÐàéîíà, ÊîäÃîðîäà, Ãîðîä, INDEX) SELECT CLng(Left([KLADR]![code],2)) AS ÊîäÐåãèîíà, CLng(Mid([KLADR]![code],3,3)) AS ÊîäÐàéîíà, CLng(Mid([KLADR]![code],6,3)) AS ÊîäÃîðîäà, [KLADR]![NAME] & ' ' & [KLADR]![SOCR] AS Ãîðîä, KLADR.INDEX FROM KLADR WHERE (Mid([KLADR]![code],6,3)<>'000') AND (Right([code],5)='00000'));" CurrentDb.Execute strSQL SysCmd acSysCmdUpdateMeter, 8 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'ÎÁÐÀÁÀÒÛÂÀÅÌ ÍÀÑÅ˨ÍÍÛÅ ÏÓÍÊÒÛ CurrentDb.Execute "Delete * from Íàñåë¸ííûåÏóíêòû;" SysCmd acSysCmdUpdateMeter, 9 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß ' ÍÎÂÎÅ strSQL = "INSERT INTO Ãîðîäà (ÊîäÐåãèîíà, ÊîäÐàéîíà, ÊîäÃîðîäà, Ãîðîä, ÊîäÏóíêòà, Ïóíêò, INDEX) SELECT CLng(Left([KLADR]![code],2)) AS ÊîäÐåãèîíà, CLng(Mid([KLADR]![code],3,3)) AS ÊîäÐàéîíà, CLng(Mid([KLADR]![code],6,3)) AS ÊîäÃîðîäà, CLng(Mid([KLADR]![code],9,3)) AS ÊîäÏóíêòà, [KLADR]![NAME] & ' ' & [KLADR]![SOCR] AS Ïóíêò, KLADR.INDEX FROM KLADR WHERE (Mid([KLADR]![code],9,3)<>'000');" CurrentDb.Execute strSQL SysCmd acSysCmdUpdateMeter, 10 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß '=============================================================== 'Óäàëÿåì ëèíîâêó íà òàáëèöó KLADR DoCmd.DeleteObject acTable, "KLADR" SysCmd acSysCmdUpdateMeter, 11 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'Äîáàâëÿåì ëèíîâêó íà òàáëèöó STREET DoCmd.TransferDatabase acLink, "dBase III", Application.CurrentProject.Path, , "STREET.DBF", "STREET" SysCmd acSysCmdUpdateMeter, 12 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'ÎÁÐÀÁÀÒÛÂÀÅÌ ÓËÈÖÛ CurrentDb.Execute "Delete * from Óëèöû;" SysCmd acSysCmdUpdateMeter, 13 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß strSQL = "INSERT INTO Óëèöû (ÊîäÐåãèîíà, ÊîäÐàéîíà, ÊîäÃîðîäà, ÊîäÓëèöû, Óëèöà, INDEX) SELECT CLng(Left([STREET]![code],2)) AS ÊîäÐåãèîíà, CLng(Mid([STREET]![code],3,3)) AS ÊîäÐàéîíà, CLng(Mid([STREET]![code],6,6)) AS ÊîäÃîðîäà, CLng(Mid([STREET]![code],12,4)) AS ÊîäÓëèöû, [STREET]![NAME] & ' ' & [STREET]![SOCR] AS Óëèöà, STREET.INDEX FROM STREET WHERE (Mid([STREET]![code],12,4)<>'0000')" CurrentDb.Execute strSQL SysCmd acSysCmdUpdateMeter, 14 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß 'Óäàëÿåì ëèíîâêó íà òàáëèöó STREET DoCmd.DeleteObject acTable, "STREET" SysCmd acSysCmdUpdateMeter, 15 'ÏÎËÎÑÀ ÑÎÑÒÎßÍÈß SysCmd acSysCmdRemoveMeter exit_sub: Exit Sub err_kod: Debug.Print Err.Description
http://www.sql.ru/forum/1112559/zagruzka-kladr-a-vo-vnutrennie-tablicy
| Êîììåíòèðîâàòü | « Ïðåä. çàïèñü — Ê äíåâíèêó — Ñëåä. çàïèñü » | Ñòðàíèöû: [1] [Íîâûå] |