Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
Помогите с такой ситуацией: Есть таблица, написанная на FoxPro, состоящая из нескольких полей. Так вот нужно в одном поле отсортировать все данные по алфавиту (по улицам). Вопрос состоит в том, что эти данные расположенны в этом поле так: г.Иркутск,ул.Чкалова,д.16 Иркутская обл.,п.Городище,ул.Новая,д12,кв.4 Иркутская обл.,г.Иркутск,пр.Победы,д.105,кв.43 Помогите с советом!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 06:39 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
Рэзать нада. вах ! Делаем ПФ, в нее передаем строку из поля, посимвольно перебираем, пока не пройдем "ул.", "пр." и прочие переулки, бульвары, мосты, тупики ))) и рэжым. Ну а потом SELECT; CutUDF(Street),; Street; FROM; STREETS; ORDER BY 1; INTO TABLE StreetTmp Хотя можно и тоньше, но я после вчерашнего ))) пока толсто мыслю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 07:49 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
А нельзя ли по-подробнее написать, а то я что-то не совсем поняла. Зараннее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 13:32 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
Проблема заключается и в том, что я незнаю как поместить в отдельные поля город, улицу, дом и квартиру, когда они все набранны в одном поле. Подскажите, пожалуйста, какой командой это лучше сделать (на фоксе). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 16:43 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
liana Проблема заключается и в том, что я незнаю как поместить в отдельные поля город, улицу, дом и квартиру, когда они все набранны в одном поле. Подскажите, пожалуйста, какой командой это лучше сделать (на фоксе). USE МояТаблица EXCL ZAP USE ERASE МояТаблица.dbf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 17:09 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
Можно сделать примерно так: ("Address" - Ваше исходное поле, "Street" - новое, для сортировки) Код: plaintext 1. 2. После этого с полем Street Вы можете делать все, что угодно... "Гост з юха" советовал то же самое... Только посимвольно перебирать не нужно ;-) Но мы его понимаем, да? :-))) А вот господин Давыдов из Чебоксар, сегодня не в духе :-( Да еще и норовит другим жизнь подпортить :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 17:57 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
2 liana Нужно написать свой синтаксический анализатор (т.е. по наличию слова "ул." определять что это именно улица, и т.п.). Работа это достаточно гемморойная. При небольшом количестве записей вполне возмножно, что перебрать их руками окажется быстрее :) А алгоритм такой. С помощью функции GetWordNum() перебираешь части адреса между запятыми. Эта функция появилась в VFP7. В младших версиях нужно подключить библиотеку foxtools.fll Каждую часть адреса анализируешь на наличие там слов "ул.", "г." и т.п. И по этому признаку определяешь, что это - город, улица, дом или переулок. Т.е. примерно так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Ну и под конец, тебе, возможно, придется учесть, что при обычной сортировке "дом 11" встанет аккурат между "дом 1" и "дом 2" ;-) Удачи :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2004, 23:01 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
просто надо тому программисту кто базу создавал настучать по голове! кто-так делает! создал проблему для себя и других!надо справочник делать и подключать! сколько записей в БД! если очень много то есть смысл писать конвертер! если не много!- то вообще надо все переделать по-нормальному.(а скорее всего как я думаю вообще там у вас километр избыточной информации(в смылсе в прог-Е)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 09:50 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
To: СергейJ Программист как правило "не при делах" Виноват обычно постановщик задач, который не придвидит дальнейшего развития системы (как, например, в приведенном примере - не было ему сказано, что кто-то захочет получить список, отсортированный по улицам)... Или аналитик... P.S. Ничего личного и никого не хотел обидеть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 11:06 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
To Sergey_Ch :-))) Однако, программист хоть с малейшим опытом работы должен сам догадаться, что поля стоит разделять + использовать справочники (хотя, конечно, справочники могли быть использованы... только криво - для "составления" полного адресаи впихивания его в одно поле) To Liana Отзовитесь!!! Решение нашлось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 11:39 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
че тут гадать а банке видел структыры базы с анкетными данными год рождения.. паспорти идреса.. и все было в MEMO поле с разделителями!!! и, забыли разработчики слэши поставить в одной из дат.. а придумывал я кАК прогрнмть эту базу, чтобы везде недостающие проставить.. и разработчики были - СЕРЬЕЗНАЯ контора из столицы... и банк далеко не последний в стране... вот так-то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 12:30 |
|
||
|
Как отсортировать по улицам
|
|||
|---|---|---|---|
|
#18+
Когда-то пришлось решать подобную задачу. Необходимо было привести адреса из вида "Область,район,город,улица,дом,кв" в вид "Улица дом кв, город, район, область". Нижеприведенная функция это выполняет. Результат работы функции может показаться очень неплохим, но не 100%! Не рекомендую использовать подобные функции для массовой замены. Лучше сделать, чтобы решение о внесении исправления принимал пользователь. Т.е., ответственность о корректности данных должна оставаться за пользователем. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 12:31 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32496556&tid=1596725]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 339ms |

| 0 / 0 |
