|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Уже полгода работаю над программой по продаже запчастей, столкнулся с проблемой поиска по моей базе данных (пока все организованно в access можно работать просто с flash не нужно разворачивать сервак) аналогов. Начал искать варианты реализации пришел к выводу, что можно все это решить при помощи tecdoc, но информации по этому поводу очень мало. В связи с чем захотелось как то все скомпоновать в одном месте. Может у кого то есть некоммерческий интерес поделиться с людьми своими наработками в этом вопросе Оригинальные запросы TECDOC Итак начнем запрос на вывод всех языков TECDOC Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Запрос на вывод всех стран TECDOC Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Запрос на список марок машин TECDOC Код: sql 1. 2. 3. 4. 5.
После выбора машины получаю марку (id1), страну (id3), язык (id) и получаю список модификаций Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Затем зная марку могу получить модификацию Код: sql 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.
Далее строим дерево Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Далее выводим по клику на дереве ветке или узле перечень деталей и их производителей Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:21 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Далее пользователь выбирает деталь по конкретному производителю и можно уже что то вывести на экран Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:32 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Далее уже для выбранной модификации детали можно вывести ее описание применяемость габаритные размеры и т.д. Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:38 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Ну и самое интересное конструкционные номера Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
У меня кое где есть лишние символы, запросы скопированы из действующей программы на delphi подключаюсь к tecdoc напрямую через TADO использую TADOConection в связке с TADOQuery + TDataSource Все работает достаточно быстро можно сравнивать с оригиналом. Переносил программу на компы с установленным tecdoc разных версий как более старых так и более новых разница только в выводимой информации для меня не существенно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 13:49 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Сейчас работаю над поиском аналогов. У меня есть сервисный код из моей программы(не TECDOC) например OC47 фильтр Kneht мне нужно вывести перечень аналогов из tecdoc по этому фильтру запрос Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Выполняется в зависимости от машины от 1 до 1,5 мин что в моем случае не как не устраивает. Если кто то отлавливал оригинальные запросы прошу выложить оригинальный запрос tecdoc на поиск аналогов. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 17:31 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
ivaha007 Код: sql 1. 2.
ivaha007 Код: sql 1.
:) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2013, 20:13 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Если Вы собираетесь делать базу данных (систему) именно для оптовой и розничной торговли автозапчастями, а не стол заказов (типа Exist.ru), то, как разработчик систем торговли автозапчастями (одна из которых более 10 лет уже находится в эксплуатации у десятков пользователей), могу дать пару толковых советов: 1. Забыть Access и т.п. игрушечные СУБД, использовать только полноценные СУБД (MS,Oracle,DB2,SyBase и т.п.) 2. Забыть монструозный TecDoc и создавать свою базу данных, ориентируясь на основных реальных поставщиков, используя (при крайней необходимости) данные из TecDoc только частично. Если же речь идет о столе заказов (минимальный собственный склад и максимальные данные о складах множества поставщиков (продавцов) - по сути, это аналог Exist.ru), то советую иметь в виду, что в TecDoc отсутствует значительное число производителей (паковщиков) и, таким образом, его реальная ценность для системы оптовой торговли является весьма сомнительной... P.S. TecDoc широко используется многими клиентами для индивидуального подбора запчастей. И только. Для оптовой торговли он совершенно не нужен. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2013, 13:59 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Почитайте внимательнее тему сообщения я предложил людям делиться опытом и искать интересные пути решения по работе приложений с TECDOC. Вы пишите: 1. Забыть Access 2. Забыть монструозный TecDoc К чему это здесь? Так же извините я не просил рекомендации по использованию СУБД. Если у Вас есть опыт разработки, тогда выкладывайте исходники, запросы и т.д. Я воспринимаю критику когда она конструктивная, вы не знаете не специфики использования, ни цели разработки а начинаете мне советовать полноценные СУБД. Скажу больше я владелец магазина и пишу софт для себя если мне понадобиться использовать его в сети, я элементарно переведу все на MySQL, не понимаю в чем тут проблема? И еще один вопрос что это за полноценная СУБД: SyBase насколько я знаю это название компании разрабатывающей (ПО) у них есть в разработках СУБД но оно по другому называется. http://www.sql.ru/forum/actualthread.aspx?tid=826978 Извините. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2013, 19:17 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Уважаемый Garya, сегодня пробовал использовать вашу наводку, большое спасибо за нее. К сожалению большого прироста производительности не получил. Вы можете выложить запрос целиком? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2013, 19:23 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
ivaha007, Для того, чтобы выложить запрос целиком, нужно иметь БД с таблицами под рукой. А у меня под рукой ее нет. И, кроме того, хорошо себе представлять, что именно в каких именно полях этих таблиц содержится. А у меня такого представления нет. Я лишь вижу, что запросы очень сырые. Вижу это по тому, что в запросах присутствуют совершенно бесполезные конструкции, которые только утяжеляют запрос (к примеру, условия, которые выполняются всегда, либо не выполняются никогда). К примеру, такие конструкции "and (-1 < 0 or lae_ga_id in (-1))" - откуда они? Поскольку -1 < 0 всегда, то остальная часть, которая следует за "or" только напрасно расходует вычислительные ресурсы. Если наприсать "lae_ga_id = -1", либо "lae_ga_id in (-1)", то с точки зрения реляционной алгебры результат будет одним и тем же, однако с точки зрения ядра, которое выполняет запрос, план выполнения запроса может получиться совершенно разным. Вообще, конструкцию in нужно использовать с большой осторожностью и только в том случае, если нет возможности преобразовать запрос в конструкцию с inner join либо со сравнением с константой. Включать в запрос конструкцию "distinct" тоже нужно с большой осторожностью и только в том случае, когда без нее обойтись невозможно, потому что ее использование приводит к неявному "group by" по всему перечню возвращаемых полей, то есть, к значительному утяжелению запроса. Использовать ее нужно только в том случае, когда запрос действительно может вернуть более одной записи с идентичными значениями всех перечисленных полей, а этого необходимо избежать. Проверка на уникальность всего содержимого полей в возвращаемых результатах - дорогостоящая, а нужна ли она или нет, я точно не знаю, поскольку не знаю содержимое БД и структуру полей, подозреваю, что далеко не во всех используемых случаях. Использовать конструкцию "UNION" нужно тоже с умом. Потому что просто "UNION" приводит к сверке всей совокупности возвращаемых строк в объединяемых конструкцией UNION запросах, то есть, к дорогостоящей операции поиска полностью идентичных записей (как и с конструкцией "distinct"). Если заведомо известно, что объединяемые множества записей гарантированно не содержат полностью идентичных наборов значений (строк), вместо конструкции "UNION" лучше использовать конструкцию "UNION ALL", которая просто добавляет один набор записей к другому без дорогостоящей операции устранения полностью идентичных записей в объединяемых наборах. Вот такая конструкция " or exists (select 1 from tof_article_user_no ", включенная в условие WHERE, меня просто убила наповал. Она может вызвать выполнение подзапроса ДЛЯ ВСЕХ ЗАПИСЕЙ таблицы, по которой проверяется условие WHERE, как тех, по которые удовлетворяют прочим условиям, так и тем, которые не удовлетворяют. Очень неакуратная конструкция, я бы ее переписал. Но для того, чтобы переписать и не ошибиться, нужно знать состав полей и иметь БД под рукой. Есть еще несколько мест в запросах, которые вызывают сомнения, но обсуждать их нужно предметно. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2013, 22:52 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Привожу оригинальный запрос на поиск аналогов, в таком контексте производительность увеличилась в 10 раз. Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2013, 12:26 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
ivaha007, Помогите пожалуйста! Не могу нигде в описании найти, как ограничить выборку в запросе! Надо получить "Первые 10" записей (не важно сколько - но не всю таблицу)! Не работает ни одна из возможных конструкций, которые пробовал: Select top(10), Select top 10, Select limit 10, select limit(10), select first(10), select 10, Так же пробовал все это размещать уже после полей перед Were, перед From Всегда выдает ошибку! В описании найти ничего не смог! Но многие пишут, что сам Тек док постоянно это использует - значит можно! НО КАК? Помогите! Прочитать ВСЕ таблицы без ограничения занимает кучу времени, а мне только шапки нужны по сути и посмотреть на первые строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2014, 15:28 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Добрый день! Помогите разобраться где берутся переводы названий характеристик автомобилей Есть таблица TOF_TYPES в которой есть поля TYP_KV_VOLTAGE_DES_ ID - (напряжение) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_ABS_DES_ID (Техническая информация/ABS) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_ASR_DES_ID (Техническая информация/ASR) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_ENGINE_DES_ID - (Техническая информация/Вид двигателя) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_BRAKE_TYPE_DES_ID (Техническая информация/Вид тормозов) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_BRAKE_SYST_DES_ID - (Техническая информация/Тормозная система) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_FUEL_DES_ ID - (Техническая информация/Вид горючего) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_CATALYST_DES_ID - (Техническая информация/Вид катализатора) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_BODY_DES_ID - (Техническая информация/Вид конструкции) ключ, ссылающийся на таблицу DESIGNATIONS=>DES_ID TYP_KV_STEERING_DES_ID - возможно характеризует рулевое управление, в текдоке всегда пустое TYP_KV_STEERING_SIDE_DES_ID - возможно характеризует сторону, с которой находится рулевое управление, в текдоке всегда пустое TYP_MAX_WEIGHT Конструкция/Тоннаж В которых значения характеристик или ссылка на перевод значения характеристики А вот названия характеристик имеют в программе тоже переводы - Вид конструкции - Тип привода - Мощность [кВт] - и т.д. Значения можно найти в TOF_DES_TEXTS только как связять с автомобилем?? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2014, 15:04 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Мужчины, кто анализировал таблицу tof_art_lookup.arl_search_number В TecDoc 4-2014 нашел много номеров с мусором. Аля - " 10492693", " `7701032023". Имейте ввиду ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.12.2014, 12:04 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
ivaha0071. Забыть Access Он это писал, потому что выполнить поиск по 60.000.000 аналогов менее чем за 2 секунды не на промышленной БД нереально. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2015, 18:23 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Запрос в копилку. Получение применяемости к моделям автомобилей по ID (LA_ART_ID) запчасти Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2015, 14:42 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Подскажите пожалуйста, каким запросом выбрать информацию к артикулу "Использовать в автомобилях" ? артикул выбираю вот так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2015, 09:20 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
EvfarionЗапрос в копилку. Получение применяемости к моделям автомобилей по ID (LA_ART_ID) запчасти Хах! Это оно и есть! Спасибо ) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2015, 01:28 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
ivaha007, NE RABOTAJUT ZAPROSI ;; POMOGITE ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2019, 19:44 |
|
TecDoc только оригинальные запросы
|
|||
---|---|---|---|
#18+
Evfarion, ne rabotaet zapros pomogite ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2019, 19:45 |
|
|
start [/forum/topic.php?fid=29&fpage=1&tid=1525701]: |
0ms |
get settings: |
25ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
509ms |
get tp. blocked users: |
2ms |
others: | 320ms |
total: | 935ms |
0 / 0 |