|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Начал только разбираться с коллекциями понравилась одна статья вызов типа Tables(’orders’).Fields(’order_date’).Caption За код не ругайтесь (только тест) Если получится буду потом причесывать Задача: Есть Нормативные документы (НД), которые обязательны к применению (R1, R2 , ...., R107) у каждого НД своя сфера (только легковые или только прицепы) + требования на уровне министерства (разные пункты в зависимости от категории ТС, двигателя, новые или б/у) занес все это в таблицу (прилагается) создаю класс условий Код: 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.
и на этапе добавления топлива (дизель/бензин) ругается, что такое свойство уже есть не могу понять почему? Наверное задал не ту коллекцию (FOR EACH loCategory IN loVehicle.Category) до этого все работает, и вызывается Код: sql 1. 2.
подскажите, что не так? и еще, месяц назад видел решение для просмотра коллекций в Дебагере сейчас не могу найти, может у кого есть ссылочка? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2016, 10:33 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
прошу прощения ругается не rikitiki(FOR EACH loCategory IN loVehicle.Category) а FOR EACH loCategory IN loVehicle.Category ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2016, 12:01 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Немного разобрался Вот код, кому интересно (может кто посоветует, как сделать более эффективным?))) ) файл regulationsrequirem.prg Код: 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.
далее вызов Код: sql 1. 2. 3. 4. 5. 6. 7.
но возникает вопрос чисто из интереса возможно ли regulationsrequirem.prg засунуть в DLL если у меня там только объявление класса? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.10.2016, 10:50 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, А можно подробнее цель изложить. Если это просто изучение коллекции, то ОК. Если для работы, то сильно смущает многое в коде. Особенно работа с конкретной таблицей. Скан в ините. По коду, о логике ваще не смог догадаться) Но.. .есть предположение, что что-то не то) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2016, 12:34 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdor, Суть такая: Есть орган по сертификации Дорожных транспортных средств (ОС ДТС) В страну завозят авто, ОС ДТС должен определить нормативные документы (НД) на соответствие которым нужно проверить ДТС, лаборатория проводит испытания и если ДТС соответствует ОС ДТС выдает сертификат, на основании которого регистрируют ДТС в ГАИ. НД - это ГОСТы, ДСТУ, Правила ЕЕК ООН, ОСТы (около 200), в Области применения этих НД описано к каким конкретно ДТС они относятся (только легковые, только мопеды, дизеля или прицепы определенной категории) Категорий ДТС - 17: M1, M2, M3, N1, N2, N3, O1, O2, O3, O4, L1, L2, ..., L7 + Министерство пишет различные приказы (за год может от 2 до бесконечности) в которых может прописать, что испытывать нужно не на весь конкретный НД, а только несколько пунктов (которые тоже зависят от ряда условий) или испытать мопеды по НД мотоциклов (потому как НД на мопеды нет), или новые авто может разделить на дорогие и не дорогие (просто Ужас!!!!!) Условия ((сертификация типа, новый авто, б/у, переоборудованный); (категория); (топливо:бензин, дизель, газ(3 вида), алкоголь, электро); (приказы Министерства)) Неизменные условия только (категория), остальные условия могут меняться Эксперт определяет эти все условия и подбирает НД. У меня есть база ,где эксперт выбирает только вариант и версию ДТС и автоматически формируются первых 3 условия, остается только Министерство. Раньше делал так: была таблица первое поле - обозначение НД, остальные поля название условий (где прописывал пункты) Но так как условия менялись быстро, достало добавлять новые поля в таблицу. Решил сделать загрузку всех условий при запуске программы Код: sql 1.
На форме есть EditBox (НД), туда записываю Код: sql 1. 2. 3. 4.
меняя лишь 'New', 'M1', 'Disel' - наглядно Код: sql 1.
Эксперт может редактировать EditBox (НД). Да забыл сказать, эксперт может не проводить испытания по определенным НД, если протокол на это, конкретное НД ему представил заявитель. вот такая вот "лапша" Если есть идеи лучше готов выслушать, так как уже немного достало это. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2016, 10:08 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Описана некая специфика. В которую надо въезжать. Но рисуете некий класс... А класс, ИМХО - это некий уровень абстракции. Если все вполне конкретно, то можно и без класса, обойтись просто процедурами. Может с хранением что то не то. Попробуйте может нарисовать. Вот что вроде понял. Есть категории, у каждой категории, свой набор правил. Видимо выбрав определенную категорию, или что то не то... Путано объясняете. Забудьте пока про министерства. И попробуйте объяснить терминами БД. Как информация соотносится, Запутался где категории, где НР. Толи это одно и тоже ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2016, 22:44 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Мне кажется вам не класс нужен, а правильная схема хранения. Из сущностей. Что понял. У вас есть набор НД. Есть список ДТС- он же категория? (придите к одной терминологии) Очевидно они связаны. Явно много ко многим. Так же шла речь о каких то условиях, экспертах... и пр. Так же, явно много лишних слов (какая разница, кто меняет, министерство, главк, или просто юзер) В общем, полагаю, вам стоит четко описать взаимоотношения между сущностями. Возможно и ни каких классов не нгужно будет, а надо просто уложить все в разумную схему хранения. Попробуйте объяснить все техническим языком. В процессе объяснения, самому может что от прояснится) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2016, 13:28 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdor, Примерно так (картинку прикрепил), но я так понимаю, нужно еще промежуточные таблицы например cat_fuel, cat_nd, и т.д. попробую сделать и отпишусь, что получилось ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2016, 09:55 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Не забывайте о бритве Оккама))) Рисунок хорошо. Но он вряд ли что скажет, без понимания сущностей, и их связей. Попробуйте написать пояснения. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2016, 11:26 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdor, Вот, что у меня получилось Сущность заявка (номер заявки, дата заявки, код авто , ( код нормативка ?), …) Сущность авто ( код авто , марка, тип, вариант, версия, код категории , код топлива , масса, код состояния авто , …) Сущность категория ( код категори и, обозначение категории, мин. масса, мах. масса, мин. кол-во мест, мах. кол-во мест) Сущность топливо ( код топлива , название топлива) Сущность состояние авто ( код состояния авто , обозначение состояния авто) Сущность нормативка ( код нормативка , код НД , код пункт НД ) Сущность НД ( код НД , обозначение НД, название НД) Сущность Пункт НД ( код пункт НД , название пункта) Между таблицами НД и Пункт НД связь М:М поэтому ввел таблицу Нормативка (как ее привязать к заявке?) Связь между таблицей Заявка и Нормативка должна быть 1:М Между таблицами НД и Категория, НД и Топливо, НД и Состояние авто связь М:М, опять вводить промежуточные таблицы? такие же дела обстоят с таблицей Пункт НД может добавить в таблицу нормативка ( код категории , код топлива и код состояния )? у меня в голове уже каша, топчусь на месте, но выхода не вижу буду очень рад помощи ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 09:41 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Информации много... но "для размышления" ее нет) Вы предлагаете какое то свое видение чего то. А суть задачи... кроме вас никому не ясна. Давайте так попробуем. Вы упоминали эксперта. Это для него ПО? Бум звать его юзер) Далее... что ему надо? С чего он начинает? К нему приезжает авто, и он по нему что то ищет, или наоборот.? Опишите (вкратце) бизнес процесс При отношении М:М без третьей таблицы никак))) Но это вовсе не страшно. (особливо, если решите с однозначностью названий) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 10:48 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdor, Приезжает авто. Експерт 1. составляет договор с владельцем. 2. регистрирует заявку. 3. Определяет состояние авто по заявке, свидетельству регистрации, таможенной декларации (новое, б/у, переоборудованное, незавершенное) 4. В зависимости от п.3 определяет характеристики авто: по свидетельству о регистрации, табличках на авто, одобрению типа, заявке (производитель, масса, вид топлива, кол-во сидений, марка, тип (легково, грузовой,прицеп,...) еще около 150 параметров) 5. В зависимости от массы, кол-ва сидений, типа авто, скорости, кол-ва колес, наличия двигателя, типа кузова, ... определяет категорию (определения категорий расписано в стандарте) 6. Выдает решение для лаборатории, где указывает нормативные документы на соотвествие которым нужно провести испытания (НД -зависят от категории, вида топлива, состояния авто + правил по сертификации) 7.по результатам испытаний выдает заключение (соответствует/не соответствует) 8 выдает сертификат в котором указывает (заявителя, авто с его хар-ками, нд, номера протоколов) Например НД (R58) относиться только к категории N2,N3,O2,O3,O4, но в зависимости от состояния авто на новые нужно испытывать на все пункты стандарта, а для б/у и переоборудованных только пункты Х.1-Х.12 и Раздел ХХ. Это нужно отобразить в решении. Есть НД (R67) которое распространяеться только на газовые авто или только на дизеля (R24) (также разные пункты для разных состояний авто и категорий) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 12:50 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Заявка на сертификацию ID идентификатор заявки ID_SER и т.д. Вид сертификации ID_SER Name новый авто, б/у, переоборудованный Тип топлива ID_GAZ Name бензин, дизель, газ(3 вида), алкоголь, электро Вид ТС ID_TS name легковые, мопеды, дизеля или прицепы определенной категории Нормативные документы (DOC) ID_DOC Name Наименование или тип НД ( ГОСТы, ДСТУ, Правила ЕЕК ООН, ОСТы) Nom Номер документа Date Дата документа Дополнительная таблица для DOC отношение DOC к DocP 1:M ID_DocP ID_DOC Идентификатор нормативного документа ID_TS Идентификатор ТС (на какой вид транспорта распространяется его действие) ID_GAZ Nom_PP Номер пункта НД по данному ТС (к примеру) rikitiki вот Вам примерная структура (уж насколько понял из Вашего объяснения) я бы сделал примерно так. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 13:21 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Rikitikiasdor, 5. В зависимости от массы, кол-ва сидений, типа авто, скорости, кол-ва колес, наличия двигателя, типа кузова, ... определяет Думается мне..., лучше создать справочник Авто , к примеру ВАЗ 2108, ВАЗ 1118, нисан **** и т.д. с их характеристиками (тип ТС, количество мостов, колес, тип двигателя и т.д.). В дальнейшем нужно будет только выбрать авто из справочника, указать его состояние. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 13:45 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Забыл написать. В решении несколько НД. Например:R13;R48(только количество и цвет);R43(п.п. 1.3-1,6; 2.1);R49 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 13:53 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixRikitikiasdor, 5. В зависимости от массы, кол-ва сидений, типа авто, скорости, кол-ва колес, наличия двигателя, типа кузова, ... определяет Думается мне..., лучше создать справочник Авто , к примеру ВАЗ 2108, ВАЗ 1118, нисан **** и т.д. с их характеристиками (тип ТС, количество мостов, колес, тип двигателя и т.д.). В дальнейшем нужно будет только выбрать авто из справочника, указать его состояние. Так и есть, И работает, Проблема с НД, раньше прописывал жестко правила к конкретным "авто" в процедуре. Выходили изменения и я переписывал процедуры. Достало. + попадались уникальные авто- опять переписывал. Захотел создать нечто обобщенное поэтому придумал класс на основе коллекций и 1таблицы условий, чтобы автоматом формировалось все возможные варианты НД для каждого авто. Проблемка- когда НД десять терпимо, когда 150 злит, когда будет 300, меня пошлют. (имею ввиду время формирования класса) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 14:09 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Вот это оказалось самым инофрмативным. RikitikiТак и есть, И работает, Проблема с НД, раньше прописывал жестко правила к конкретным "авто" в процедуре. Выходили изменения и я переписывал процедуры. Достало. + попадались уникальные авто- опять переписывал. Захотел создать нечто обобщенное поэтому придумал класс на основе коллекций и 1таблицы условий, чтобы автоматом формировалось все возможные варианты НД для каждого авто. Проблемка- когда НД десять терпимо, когда 150 злит, когда будет 300, меня пошлют. (имею ввиду время формирования класса) Вот поверьте, ни при чем тут класс! Здесь нужно правильную схему БД создать, и не будет проблем. Итак есть авто и НД К 1 авто, приписано некое количество НД В случае изменения, некоторые связи пропадают, новые возникают. Ясно что связь М:М Так? Ясно, что при появлении нового авто, надо все прописать (а можно на клиенте копию сделать с близкого, и ее отредактировать) Как бы кажется все просто. Или что то не учли пока? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 14:43 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
RikitikiПроблема с НД, раньше прописывал жестко правила к конкретным "авто" в процедуре. Выходили изменения и я переписывал процедуры. Достало. Вы пропустили первое моё сообщение, обратите внимание на структуру таблиц Doc и DocP. В таблице Doc описываются основные данные о НД (номер, дата, тип, наименование и т.д.), в таблице DocP описываются пункты НД предъявляемые к ТС с определенными характеристиками, Отношение Doc к DocP один ко многим. В результате получаем привязку не к модели автомобиля, а к его характеристикам. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 14:46 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixRikitikiПроблема с НД, раньше прописывал жестко правила к конкретным "авто" в процедуре. Выходили изменения и я переписывал процедуры. Достало. Вы пропустили первое моё сообщение, обратите внимание на структуру таблиц Doc и DocP. В таблице Doc описываются основные данные о НД (номер, дата, тип, наименование и т.д.), в таблице DocP описываются пункты НД предъявляемые к ТС с определенными характеристиками, Отношение Doc к DocP один ко многим. В результате получаем привязку не к модели автомобиля, а к его характеристикам. Я не пропустил, но пока за рулем и не могу попробовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 14:55 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
RikitikiЯ не пропустил, но пока за рулем и не могу попробовать. В общем получается, выбрав авто из справочника, мы уже знаем его характеристики, данные характеристики в дальнейшем используем в SQL запросе к таблице DocP и Doc, можно еще добавить поле дата окончания действия пункта НД (на случай его отмены или изменения, дабы сохранить историю). Но это все в общих чертах. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 15:05 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Судя из вашего описания. Интерес представляет начиная с п.4 В п.4 и п.5 Юзер Каким то образом (опыт!!!))) ), определят хар-ки авто. Полагаю, возможно вместо таблицы авто, можно использовать какую то иную сущность, которая собирает в себе эти хар-ки. Из вашего описания, следует, что у этой таблицы, неограниченное кол-во полей. В это наверное уперлись? Что здесь менять надо, и это достает. Можно хранить данные иначе. Есть табл. с характеристиками - features. Для начала всего 2 поля id,Name Есть таблица которая должна отображать сущность из п.4 и п.5 - categ 2 поля id,Name Теперь между ними создаем связь M:M -LinkFeatures В результате на любую категорию, можете назначить, произвольное кол-во хар-ик. К categ привязаны НД (или пункты НД непонятно) Видимо так же M:M Т.е. БП выглядит так. Определившись с хар-ками, выбрали строку катег, а по ней, подтягивается набор НД. Не все угадал?) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 15:06 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorВ п.4 и п.5 Юзер Каким то образом (опыт!!!))) ), определят хар-ки авто. Юзер - Ванга), он не правильно выразился, характеристики указаны в заявлении и приложенных к заявлению дополнительных документах. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 15:15 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorВот это оказалось самым инофрмативным. RikitikiТак и есть, И работает, Проблема с НД, раньше прописывал жестко правила к конкретным "авто" в процедуре. Выходили изменения и я переписывал процедуры. Достало. + попадались уникальные авто- опять переписывал. Захотел создать нечто обобщенное поэтому придумал класс на основе коллекций и 1таблицы условий, чтобы автоматом формировалось все возможные варианты НД для каждого авто. Проблемка- когда НД десять терпимо, когда 150 злит, когда будет 300, меня пошлют. (имею ввиду время формирования класса) Вот поверьте, ни при чем тут класс! Здесь нужно правильную схему БД создать, и не будет проблем. Итак есть авто и НД К 1 авто, приписано некое количество НД В случае изменения, некоторые связи пропадают, новые возникают. Ясно что связь М:М Так? Ясно, что при появлении нового авто, надо все прописать (а можно на клиенте копию сделать с близкого, и ее отредактировать) Как бы кажется все просто. Или что то не учли пока? Если считать,что "авто" в вашем понимании это набор только 3 атрибутов (категория, тип топлива, состояние авто) тогда верно. Я не хочу связывать НД и транспортное средство (ТС) (атрибуты:марка,версия,вариант,массы, ширина,...) Поскольку одинаковые ТС попадаются очень редко, а вот "авто"-постоянно. 5органов у каждого своя база, таблицы по нормативке сбрасываю им я. Прописывать локально -да, но все мне звонят и просят внести изменения. Иногда добиться чего хотят и где просто не реально. Поэтому Сам изучаю все законы и прописываю всем НД, поскольку сам эксперт. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 15:15 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Rikitiki, много неясных слов. авторЯ не хочу связывать НД и транспортное средство (ТС) (атрибуты:марка,версия,вариант,массы, ширина,...) Поскольку одинаковые ТС попадаются очень редко, а вот "авто"-постоянно. Уверен, вы понимаете что сказали. Я нет. автор5органов у каждого своя база, таблицы по нормативке сбрасываю им я. Прописывать локально -да, но все мне звонят и просят внести изменения. Иногда добиться чего хотят и где просто не реально. Поэтому Сам изучаю все законы и прописываю всем НД, поскольку сам эксперт. Это наверное просто крик души. К делу вряд ли относится) >Юзер - Ванга), он не правильно выразился, характеристики указаны в заявлении и приложенных к заявлению дополнительных >документах. Ну а какая разница? Где б они не были. Либо Вангует, либо еще как. Нам отсюда точно не видно. Никакого описания процесса в общем то нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 15:42 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorВ п.4 и п.5 Юзер Каким то образом (опыт!!!))) ), определят хар-ки авто. )))))))) если ТС стоял на учете (в любой стране), то есть имеется свидетельство регистрации- значит б/у если произвел замену агрегатов (официальное разрешение на переоборудование) - переоборудованный может быть новый, но имеется только рама и кабина - считается как незавершенный остальные - новые Просто накипело все это. Все требуют новую программу (изменились процедуры и условия), переделываю старую, но хочется сделать более универсально, поскольку еще одного такого перехода не переживу, и ..... застрял. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 16:06 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Вы читали что я написал. Плакать котрконструктивно. Что там не устраивает, или непонятно? О способе выбора хар-к не было ни слова. Если есть какой то алгоритм, так вы его умалчиваете) Да и опустить можно наверное пока это. Главное то что беспокоит, угадал? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 16:22 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiПросто накипело все это. Все требуют новую программу (изменились процедуры и условия), переделываю старую, но хочется сделать более универсально, поскольку еще одного такого перехода не переживу, и ..... застрял. Перемен... требуют Наши сердца! Пробуйте предложенный мной вариант. Один нормативный документ имеет несколько пунктов с определенными требованиями к определенным характеристикам транспортного средства (для размышления). А вообще почитайте первых три (основные) правила нормализации базы данных . ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 16:31 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorИз вашего описания, следует, что у этой таблицы, неограниченное кол-во полей. 135 asdorМожно хранить данные иначе. Есть табл. с характеристиками - features. Для начала всего 2 поля id,Name Есть таблица которая должна отображать сущность из п.4 и п.5 - categ 2 поля id,Name Теперь между ними создаем связь M:M -LinkFeatures В результате на любую категорию, можете назначить, произвольное кол-во хар-ик. К categ привязаны НД (или пункты НД непонятно) Видимо так же M:M Т.е. БП выглядит так. Определившись с хар-ками, выбрали строку катег, а по ней, подтягивается набор НД. Не все угадал?) Давайте опустим характеристики, предположим что есть всего 4 таблицы есть таблица Category ( 2 поля: idCategory, name) - категория есть таблица Fuel (2 поля: idFuel, name) - топливо есть таблица СarСondition (2 поля: idСarСondition, name) - состояние (нов., б/у, переоб., ...) есть таблица ND (6 полей: idND, enddata, name, nom, sign M, punkt M) - где name (Правила, ГОСТ, ДСТУ, ТУ У, Директива, ДСТУ ГОСТ, ...); nom - номер (58, 12078, 3649, ...); sign M - полное название; punkt M - пункты если нормализовать таблицу ND (6 полей: idND, enddata, idnormativ, punkt M), поскольку пункты к (name, nom, sign M) - могут быть разные (соответсвенно name, nom, sign M - повторяются) создаем таблицу Normativ (4 поля: idnormativ, name, nom, sign M) как между таблицами Category, Fuel, СarСondition и ND создать связи М:М? создать некую таблицу RRR (4 поля: idCategory, idFuel, idСarСondition, idND)? Сколько же записей будет в таблице? (предположим любой idND распространяется на все idCategory, idFuel, idСarСondition, только для этого idND около 1000 записей если таблица Category, Fuel, СarСondition содержит по 9 записей) я же писал idnormativ около 180, а idND больше то есть перебрать (допустим 1000 записей) легче, чем строку name nom sign условия по пунктам область самого normativПравила ООН R13-01 Единообразные предписания {New.N1.*:1.4.2; 2.1.1; 2.3}{New.!N1O1O2.*:раздел 13}{New.O1O2.*:5.1.2; 5.1.4; 5.2.2; раздел 4 (п.п. 1.4.2; 3.1; 3.2)}{Used.*.*:п.п. 5.1.2 - 5.1.4; 5.2}{Converted.*.*:раздел 4 (п.п. 1.4.2; 1.5; 2.1.1; 2.3; 3.1; 3.2)} *.!M1L1L2L3L4L5L6L7.* где *.!M1L1L2L3L4L5L6L7.*- СarСondition.Category.Fuel После ":" - пункты normativ может в самой таблице можно как-то указывать "!" или только для "этих"? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 17:04 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki то есть перебрать (допустим 1000 записей) легче, чем строку В Вашем варианте должно звучать: Перебрать меньшее количество строк и в каждой строке парсить текст. В моем случае будет примерно так SELECT *; FROM RRR; WHERE idCategory = lnCategory OR idFuel = lnFuel OR idСarСondition=lnCarCondition lnCategory, lnFuel, lnСarСondition - переменные ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 17:28 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fix, По моему, мы с вами, решаем разные проблемы. То о чем думаю я, ваш конструкция не решает. Я полагаю, что у ТС 2 проблемы. Это собрать в 1 запись множество характеристик. И частое изменение этого. Я описал как. И по выбранной строке категорий, выбрать НД. Которых тоже много, и они постоянно меняются. Вот эти проблемы я решал своей схемой. Поясните, что решает ваша. Но настоящая проблема ТС неизвестна. Он ее тщательно скрывает. На прделагаемые решения... он не говорит чем они не устраивает, и предлагает... пардон... ((( авторто есть перебрать (допустим 1000 записей) легче, чем строку Конечно легче. Это мгновенно. Почему то вас пугает кол-во записей. Уверяю. 1365 записей, это не много. Это мало, это очень мало. А вот криво построенная БД, это много... очень много ненужного кода, и постоянные изменения в нем. Предложение 4 таблицы... на фига не понял. Они для чего, какую проблему решают. У вас много эмоций. У вас совершенно нет тех. описания. Лаконичного. И при проектировании БД надо мыслить не "министрерствами" и "нормативными документами" А некими кортежами, сущностями... Надо понять как различные кучки информации, согласуются. Попробовать это нормализовать. При таком подходе, гарантирован успех. В конце концов. А если исходить от кода. То не спасут не коллекции, ничего. Код придется постоянно менять. (Не говоря о том что для этого и существуют БД) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 17:55 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fixrikitikiто есть перебрать (допустим 1000 записей) легче, чем строку В Вашем варианте должно звучать: Перебрать меньшее количество строк и в каждой строке парсить текст. В моем случае будет примерно так SELECT *; FROM RRR; WHERE idCategory = lnCategory OR idFuel = lnFuel OR idСarСondition=lnCarCondition lnCategory, lnFuel, lnСarСondition - переменные это, я как раз и понимаю. Наверное просто ищу варианты, чтобы не заполнять 400000 записей Для их проверки и заполнения надо делать форму (придумать) (без визуализации запутаюсь) В моем варианте - открыл dbf и исправил поставил *, и не переживаешь, что пропустил что-то. Может преобразовать таблицу catfuelСarСonditionR1R2R3...R128M1DiselNew1.3-5.7...-N2GasolineUsed5.43.6-...- к виду PraviloM1.Disel.NewN2.Gasoline.UsedR11.35.4R2-3.6R35.7- потом !empty(M1.Disel.New) select или scan но не представляю как реализовать попробую вариант с таблицей RRR и потом отпишусь. asdorМожно хранить данные иначе. Есть табл. с характеристиками - features. Для начала всего 2 поля id,Name Есть таблица которая должна отображать сущность из п.4 и п.5 - categ 2 поля id,Name Теперь между ними создаем связь M:M -LinkFeatures В результате на любую категорию, можете назначить, произвольное кол-во хар-ик. Не совсем понял если можно примерчик ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:06 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Пожалуй невнимательно прочел. авторкак между таблицами Category, Fuel, СarСondition и ND создать связи М:М? Пожалуй правильный вопрос. И ответ тоже, в общем случае правильный. Именно к этому и надо стремиться. Но все же здесь есть вопрос к вам. Из этих 4 таблиц, какая является главной-ведущей. К какой надо привязаться. По любому, конкретно к 1 й записи, основной таблицы, может быть привязано, любое кол-во записей других таблиц. Вы привели строку таблицы Как она получается. Явно поля "условия по пунктам" и "область самого normativ" получены откуда то. А что первично? name nom sign ? И что хочется? Просто имеется и другая возможность предоставить этот материал. Т.н. мастер - детали. Т.е в шапке name nom sign (если верно угадал). А в деталях таблица "условия по пунктам" и "область самого normativ" Ну на этом телепатия закончилась) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:09 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorНа прделагаемые решения... он не говорит чем они не устраивает, и предлагает... пардон... ((( авторто есть перебрать (допустим 1000 записей) легче, чем строку Конечно легче. Это мгновенно. Почему то вас пугает кол-во записей. Уверяю. 1365 записей, это не много. Это мало, это очень мало. А вот криво построенная БД, это много... очень много ненужного кода, и постоянные изменения в нем. Предложение 4 таблицы... на фига не понял. Они для чего, какую проблему решают. У вас много эмоций. У вас совершенно нет тех. описания. Лаконичного. И при проектировании БД надо мыслить не "министрерствами" и "нормативными документами" А некими кортежами, сущностями... Надо понять как различные кучки информации, согласуются. Попробовать это нормализовать. При таком подходе, гарантирован успех. В конце концов. А если исходить от кода. То не спасут не коллекции, ничего. Код придется постоянно менять. (Не говоря о том что для этого и существуют БД) Простите если я Вас оскорбил, я этого точно не хотел Постараюсь все переварить заново, и использовать Ваши варианты Пугает не количество записей, пугает, что я в них запутаюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:18 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorrikitiki, Но все же здесь есть вопрос к вам. Из этих 4 таблиц, какая является главной-ведущей. К какой надо привязаться. По любому, конкретно к 1 й записи, основной таблицы, может быть привязано, любое кол-во записей других таблиц. Вы привели строку таблицы Как она получается. Явно поля "условия по пунктам" и "область самого normativ" получены откуда то. А что первично? name nom sign ? И что хочется? Просто имеется и другая возможность предоставить этот материал. Т.н. мастер - детали. Т.е в шапке name nom sign (если верно угадал). А в деталях таблица "условия по пунктам" и "область самого normativ" Ну на этом телепатия закончилась) прикрепил файл с условиями для новых авто ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:24 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorVik_Fix, По моему, мы с вами, решаем разные проблемы. То о чем думаю я, ваш конструкция не решает. Я полагаю, что у ТС 2 проблемы. Это собрать в 1 запись множество характеристик. И частое изменение этого. Поясните, что решает ваша. Но настоящая проблема ТС неизвестна. Он ее тщательно скрывает. Походу на самом деле разные, про категории (множество характеристик) я что-то упустил. Мой вариант заключается в том, что бы произвести нормализацию базы данных, а именно у него нормативный документ (далее НД) хранится одной строкой, но НД в себе содержит множество требований. Вот я ему и предлагаю создать дополнительную таблицу в которой каждое требование или группа требований будет храниться отдельной записью. Покрайней мере я так понял))). А SQL запрос это ответ на его вопрос про 1000 строк, что проще запросом выбрать из 1000, чем перебирать и парсить 20 строк. {New.!N1O1O2.*:раздел 13} - это вообще убило, шифровка! А так, согласен, надо чтоб внятно описал процедуру работы и критерии по которым выносится то или иное решение, можно даже опираясь на один из его НД и с примерами. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:29 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fix{New.!N1O1O2.*:раздел 13} - это вообще убило, шифровка! Взял пример jSon поскольку данные по Транспортным средствам беру с открытой базы в интернете данные передаются в формате jSon потом парсю и заношу в БД ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:37 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorПросто имеется и другая возможность предоставить этот материал. Т.н. мастер - детали. Т.е в шапке name nom sign (если верно угадал). А в деталях таблица "условия по пунктам" и "область самого normativ" Вот это мне кажется и нужно, где можно почитать (желательно с примерами) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:43 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, авторПростите если я Вас оскорбил, я этого точно не хотел Так и не было такого. Просто... ну раздражает иногда непонимание))) Но судя по авторНаверное просто ищу варианты, чтобы не заполнять 400000 записей Для их проверки и заполнения надо делать форму (придумать) (без визуализации запутаюсь) В моем варианте - открыл dbf и исправил поставил *, и не переживаешь, что пропустил что-то. Вообще беда. Т.е. вы работает с дбф, как с екселем? Не примите за издевку, тогда может лучше ексель? Ясно, что без визуализации, при нормализации, работать просто невозможно. Мне лично яснее стало, откуда проблемы. Схема построения приложения, упрощенно следующая. Создание правильной БД. Создание приложений, работающих с этим БД. Конечно, процессы перехлестываются) Т.е. либо вы готовы строить визуальную часть, либо... все не имеет смысла. авторприкрепил файл с условиями для новых авто Совсем неясен столбец "Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Он поделен еще... немного бы пояснений не помешало.))) Тем не менее. Как можно показать приведенный документ Слева "Фари (ближнього і дальнього світла)" в общем то что у вас в "Об’єкт затверд¬жен¬ня" А справа таблица с перечислением R1 - R123 Количество записей любое. И еще таблица с Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Но там что то не совсем ясно. авторесли можно примерчик Попробую накидать на ваших данных. Ну и визуально заодно, если времени хватит) авторПугает не количество записей, пугает, что я в них запутаюсь. Как раз, при правильной нормализации. И ясном UI, наоборот, все будет гораздо проще. Поверьте, в любой бухгалтерии, гораздо больше и записей, и связей. И ничего, не очень умные бух-ра - справляются))) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:44 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixasdorVik_Fix, По моему, мы с вами, решаем разные проблемы. То о чем думаю я, ваш конструкция не решает. Я полагаю, что у ТС 2 проблемы. Это собрать в 1 запись множество характеристик. И частое изменение этого. Поясните, что решает ваша. Но настоящая проблема ТС неизвестна. Он ее тщательно скрывает. Походу на самом деле разные, про категории (множество характеристик) я что-то упустил. Мой вариант заключается в том, что бы произвести нормализацию базы данных, а именно у него нормативный документ (далее НД) хранится одной строкой, но НД в себе содержит множество требований. Вот я ему и предлагаю создать дополнительную таблицу в которой каждое требование или группа требований будет храниться отдельной записью. Покрайней мере я так понял))). А SQL запрос это ответ на его вопрос про 1000 строк, что проще запросом выбрать из 1000, чем перебирать и парсить 20 строк. {New.!N1O1O2.*:раздел 13} - это вообще убило, шифровка! А так, согласен, надо чтоб внятно описал процедуру работы и критерии по которым выносится то или иное решение, можно даже опираясь на один из его НД и с примерами. +100500) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 18:46 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiVik_Fix{New.!N1O1O2.*:раздел 13} - это вообще убило, шифровка! Взял пример jSon поскольку данные по Транспортным средствам беру с открытой базы в интернете данные передаются в формате jSon потом парсю и заношу в БД Так все равно же парсите) Так может сразу и привести в человеческий вид? Что там значимо? Во вложении 5 табличек, которые могут хранить все данные, из вашего дока. Может не угадал (даже наверняка) с группами. Возможно там несколько иначе. Группы - это ваш "Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Все очень примитивно. В реале, наверное что то придется добавлять. Но что пока вижу, именно так все укладывается. Крайне просто. Попробуйте разобраться. И конечно же, без UI просто неудобно работать... Но все же, сначала данные, что бы ясно было что редактировать ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 19:13 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Это дополнение к закону таких 4 дополнения писал дополнения не я )))) asdorСовсем неясен столбец "Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Он поделен еще... немного бы пояснений не помешало.))) Поделен на категории asdorТем не менее. Как можно показать приведенный документ Слева "Фари (ближнього і дальнього світла)" в общем то что у вас в "Об’єкт затверд¬жен¬ня" А справа таблица с перечислением R1 - R123 Количество записей любое. Лень двигатель прогресса Я как эксперт открываю "Нормативний документ, вимоги" например R56, в нормативном документе в разделе "Область применения" написано "Настоящие правила применяются для официального утверждения фар с лампам накаливания/ которые являются источником только ближнего света и которые устанавливаются на мопеды и приравниваемых к ним транспортных средствах." тоесть, относится к категории L1 и L2 "буква" А (пункт) означает маркировка (есть ли маркировка согласно этому правилу?) описание "букв" - после таблицы - "пункты" asdorИ еще таблица с Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Но там что то не совсем ясно. авторесли можно примерчик примерчик во вложении ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 19:18 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorГруппы - это ваш "Познака вимог до документів, необхідних для підтвердження відповідності для КТЗ категорії" Получается если я правильно понял у меня 5 груп Состояние (это и есть таблица из ворда, всего пока 5 таблиц) Категория Топливо Норматив Пункт норматив и Link - 10 штук Состояние-Категория Состояние-Топливо Состояние-Норматив Состояние-Пункт норматив Категория-Топливо Категория-Норматив Категория-Пункт норматив Топливо-Норматив Топливо-Пункт норматив Норматив-Пункт норматив а потом sele писать из 10 Link? или делать link на link? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 19:49 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Упс... а вложения то и нет((( Опять ничего не понял( Не удивительно. Пример не приложился. Сюда запихиваю. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 20:14 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Скачайте таблички. Посмотрите. Про 5 групп не понял. И вообще... как бы много лишних слов? Поймите, кто читает, не может отделить эмоции от тех. данных. Не путайте нас.))) Сейчас попробую, примитивный проектик на эти табалички нарисовать. Что бы хоть как то предметно говорить... А то вообще не ясно, о чем речь. Я то думал, что док в основе... а тут... то ли просто у вас в голове... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 20:22 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorrikitiki, Упс... а вложения то и нет((( Опять ничего не понял( Не удивительно. Пример не приложился. Сюда запихиваю. Пример приложился но я же объяснил, что таблица общая №объектнормативпознакаМ1M2M3...L71фарыRDBGDBG не знаю как объединить ячейки объект - меня не интересует мне нужны все нормативы написано N1, и написано кучу R к нему, но N1 может быть дизельный, бензиновый, газовый, они этого не расписывали эксперт сам смотрит из области применения R заполняю таблицы, скоро сброшу то, что получилось ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 20:37 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Вот примитивный проект. В _debag в строке Код: sql 1.
Пропишите свой путь. один раз запустите _debag А дальше... основная форма feature Там кнопочки добавить, и пр. сделать не успел. Но как это выглядить может, будет ясно. Все на очень примитивном уровне. Чисто показать как. Дизайна нет вообще))) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 20:39 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Ну.. .последнее надо осмыслить. Что то кажется проясняется) Как же тяжко вытягивать инфу) авторне знаю как объединить ячейки А зачем? автормне нужны все нормативы 1. написано N1, и 2. написано кучу R к нему, 3. но N1 может быть дизельный, бензиновый, газовый, они этого не расписывали 4. эксперт сам смотрит из области применения R 5. заполняю таблицы, скоро сброшу то, что получилось очень путано получилось 1. Есть сущность N 2. К нему куча R Пока все ясно, и просто. Все то же что приводил 3. Кто они? Где не расписывали. Что вообще значит эта фраза?))) 5. Это наверное просто сообщение мне? 4. Вот тут не ясно, это надо детально объяснить. Что понял. N к ней R а в R область применения? > N1 может быть дизельный, бензиновый, газовый Нифига не ясно!))) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 20:48 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorrikitiki, Вот примитивный проект. В _debag в строке Код: sql 1.
Пропишите свой путь. один раз запустите _debag А дальше... основная форма feature Там кнопочки добавить, и пр. сделать не успел. Но как это выглядить может, будет ясно. Все на очень примитивном уровне. Чисто показать как. Дизайна нет вообще))) Все отлично Это я понимаю и делал, но Вы взяли самый простой вариант Возьмите запись №8 Системи гальмування (R13,R13H, В) где “В” - а) вимоги R13 або R13Н застосовують залежно від категорії КТЗ; б) КТЗ категорії М3 (із дизелями) мають бути обладнані зносостійкою системою гальмування або "ретардером"; “В1” - а) для КТЗ категорії М1 – вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; б) для КТЗ категорії N1 – вимоги пунктів 5.1.2; 5.1.4; 5.2.1 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 4 до R13 або вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; в) для КТЗ категорій М2, M3, N2, N3, О3, О4 – вимоги R13 ( крім додатка 13 до R13); г) для КТЗ категорій О1, О2 – вимоги пунктів 5.1.2; 5.1.4; 5.2.2 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 3.1; 3.2 додатка 4 до R13; ґ) для КТЗ категорії L - вимоги пунктів 5.1.2 - 5.1.13; 5.2.1; 5.2.2 додатка 3 до R78; как здесь обойтись 5 таблицами? Вот здесь у меня и загвоздка ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 21:49 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
или запись №13 Димність КТЗ з дизелями R24,Е вимоги додатка 5 до R24 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 21:51 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
я Вам сбросил только таблицу Перелік вимог щодо індивідуального затвердження конструкції нових КТЗ категорій M, N, O, L еще есть Перелік вимог щодо індивідуального затвердження конструкції КТЗ категорій M, N, O, L - это б/у и переоборудованные Перелік вимог щодо затвердження типу малих серій КТЗ категорій M, N, O, L Перелік вимог щодо затвердження типу КТЗ категорій M, N, O, L там такие же таблицы только с другими пунктами (буквы А, Б, В,Г и т.д.) к (Нормативний документ, вимоги) может повторюсь, но эти буквы и есть пункты - они все описаны после таблицы ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 22:05 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Прикрепил таблицы, которые у меня получились таблицы в названии которых знак "_" - таблицы связей взял только 3 Правила №1, №13, №24 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2016, 22:14 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Уф.... реально инфу клещами тянем))) Вот для меня самым информативным стал документ с условиями, но появились вопросы. Пока не поймем сути взаимосвязи всех данных, бесполезно предполагать о нормализации отдельно взятых частей. А вопросы следующие: Категории транспортных средств M1-M3, N1-N3, O1-O4, L1-L7 - что из себя представляют набор характеристик ТС? Это все категории или нет? Объект утверждения - перечень постоянный или меняется (если меняется то как часто)? Что означает Х; А и А; Х1 + Л - особенно интересуют знаки + и ; почему в одном случае стоит плюс, а в другом точка с запятой? Если я правильно понимаю, то процедура работы примерно следующая: По предоставленным Заявителем сведениям о ТС, специалист определяет (неизвестны условия) к какой категории относится ТС ( M1-M3, N1-N3, O1-O4, L1-L7), так же устанавливает его статус (новое или б/у). Далее, в соответствии со статусом ТС использует определенные условия ( rikitiki нам кинул только по новым ТС) для определения каким НД данное ТС должно соответствовать. Как-то так, rikitiki - поправь если, что не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 08:54 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Коротко глянул. Несколько замечаний) Выкладывая таблицы, сделайте что бы с ними легко было работать) Либо вместе с dbc, либо сами свободными сделайте) Зачем усложнять жизнь отвечающим))) авторвзял только 3 Правила №1, №13, №24 Надеюсь это относится к данным, а не к связям между ними. Т.е. в этих табличках у вас все? (я не про количество данных, а про структуру данных) У вас в nd и punktnd есть мемо поля. Для чего? Что в них? Предполагаю, что в них и проблема? Именно туда собираете данные по всем... не знаю термина... правилам? В общем то структура ясна. Примерно. Но в результате неких действий, вы хотите что то получить. Некий набор данных. Опишите это. На основе своих таблиц. Тока по лаконичней, без лишних слов, но подробно) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 08:58 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fix, Согласен со всеми вопросами. Еще помню утверждение ТС "ставлю * и нет проблем" Когда прочел впал в панику)))) Он говорит о чем то своем, о чем больше никто не знает. И стоит угадать (как кажется) одно, тут же приходит что то новое, и... откат на 2 шага назад))) ТС стоит, сесть, и без эмоций, человеческими словами, расписать весь БП. Но очевидно, что у него не выйдет. Потому тянем по крохе) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 09:02 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Сам отвечу на свой вопрос про категории M, N, O, L Категории транспортных средств - M, N, O, L Категория L Категория L - Мототранспортные средства, в том числе: Категория L1 - Двухколесные транспортные средства, максимальная конструктивная скорость которых не превышает 50 км/ч, и характеризующиеся: в случае двигателя внутреннего сгорания - рабочим объемом двигателя, не превышающим 50 см3, или в случае электродвигателя - номинальной максимальной мощностью в режиме длительной нагрузки, не превышающей 4 кВт. Категория L2 - Трехколесные транспортные средства с любым расположением колес, максимальная конструктивная скорость которых не превышает 50 км/ч, и характеризующиеся: в случае двигателя внутреннего сгорания с принудительным зажиганием - рабочим объемом двигателя, не превышающим 50 см3, или в случае двигателя внутреннего сгорания другого типа - максимальной эффективной мощностью, не превышающей 4 кВт, или в случае электродвигателя - номинальной максимальной мощностью в режиме длительной нагрузки, не превышающей 4 кВт. Мотоциклы, мотороллеры, трициклы, в том числе: Категория L3 - Двухколесные транспортные средства, рабочий объем двигателя которых (в случае двигателя внутреннего сгорания) превышает 50 см3 (или) максимальная конструктивная скорость (при любом двигателе) превышает 50 км/ч. Категория L4 - Трехколесные транспортные средства с колесами, асимметричными по отношению к средней продольной плоскости, рабочий объем двигателя которых (в случае двигателя внутреннего сгорания) превышает 50 см3 и (или) максимальная конструктивная скорость (при любом двигателе) превышает 50 км/ч. Категория L5 - Трехколесные транспортные средства с колесами, симметричными по отношению к средней продольной плоскости транспортного средства, рабочий объем двигателя которых (в случае двигателя внутреннего сгорания) превышает 50 см3 и (или) максимальная конструктивная скорость (при любом двигателе) превышает 50 км/ч. Квадрициклы, в том числе: Категория L6 - Четырехколесные транспортные средства, масса которых без нагрузки не превышает 350 кг без учета массы аккумуляторов (в случае электрического транспортного средства), максимальная конструктивная скорость не превышает 50 км/ч, и характеризующиеся: в случае двигателя внутреннего сгорания с принудительным зажиганием - рабочим объемом двигателя, не превышающим 50 см3, или в случае двигателя внутреннего сгорания другого типа - максимальной эффективной мощностью двигателя, не превышающей 4 кВт, или в случае электродвигателя - номинальной максимальной мощностью двигателя в режиме длительной нагрузки, не превышающей 4 кВт. Категория L7 - Четырехколесные транспортные средства, иные, чем транспортные средства категории L6, масса которых без нагрузки не превышает 400 кг (550 кг для транспортных средств, предназначенных для перевозки грузов) без учета массы аккумуляторов (в случае электрического транспортного средства) и максимальная эффективная мощность двигателя не превышает 15 кВт. Категория M Категория M - Транспортные средства, имеющие не менее четырех колес и используемые для перевозки пассажиров. Категория M1 - Транспортные средства, используемые для перевозки пассажиров и имеющие, помимо места водителя, не более восьми мест для сидения - легковые автомобили. Автобусы, троллейбусы, специализированные пассажирские транспортные средства и их шасси, в том числе: Категория M2 - Транспортные средства, используемые для перевозки пассажиров, имеющие, помимо места водителя, более восьми мест для сидения, технически допустимая максимальная масса которых не превышает 5 т. Категория M3 - Транспортные средства, используемые для перевозки пассажиров, имеющие, помимо места водителя, более восьми мест для сидения, технически допустимая максимальная масса которых превышает 5 т. Транспортные средства категорий M2 и M3 вместимостью не более 22 пассажиров помимо водителя, подразделяются на класс A, предназначенные для перевозки стоящих и сидящих пассажиров, и класс B, предназначенные для перевозки только сидящих пассажиров. Транспортные средства категорий M2 и M3 вместимостью свыше 22 пассажиров помимо водителя, подразделяются на класс I, имеющие выделенную площадь для стоящих пассажиров и обеспечивающие быструю смену пассажиров, класс II, предназначенные для перевозки преимущественно сидящих пассажиров и имеющие возможность для перевозки стоящих пассажиров в проходе и (или) на площади, не превышающей площадь двойного пассажирского сидения, и класс III, предназначенные для перевозки исключительно сидящих пассажиров. Категория N Категория N - Транспортные средства, используемые для перевозки грузов - автомобили грузовые и их шасси, в том числе: Категория N1 - Транспортные средства, предназначенные для перевозки грузов, имеющие технически допустимую максимальную массу не более 3,5 т. Категория N2 - Транспортные средства, предназначенные для перевозки грузов, имеющие технически допустимую максимальную массу свыше 3,5 т, но не более 12 т. Категория N3 - Транспортные средства, предназначенные для перевозки грузов, имеющие технически допустимую максимальную массу более 12 т. Категория O Категория O - Прицепы (полуприцепы) к транспортным средствам категорий L, M, N, в том числе: (замечание АСМАП). Категория O1 - Прицепы, технически допустимая максимальная масса которых не более 0,75 т. Категория O2 - Прицепы, технически допустимая максимальная масса которых свыше 0,75 т, но не более 3,5 т. Категория O3 - Прицепы, технически допустимая максимальная масса которых свыше 3,5 т, но не более 10 т. Категория O4 - Прицепы, технически допустимая максимальная масса которых более 10 т. Транспортное средство, имеющее не более восьми мест для сидения, не считая места водителя, предназначенное для перевозки пассажиров и грузов, относится к категории: M1, если произведение предусмотренного конструкцией числа пассажиров на условную массу одного пассажира (68 кг) превышает расчетную массу перевозимого одновременно с пассажирами груза; N, если это условие не выполняется. Отсюда следует, что данные о характеристиках нужны только для отнесения ТС к одной из категорий. В результате для определения НД необходимо только знать категорию, каким топливом питается (дизель, газ, бензин и т.д.) и его состояние (новое, б/у, переоборудованное может еще что-то есть) и тут напрашивается составной индекс по этим трем полям. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 09:31 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixУф.... реально инфу клещами тянем))) Вот для меня самым информативным стал документ с условиями, но появились вопросы. Пока не поймем сути взаимосвязи всех данных, бесполезно предполагать о нормализации отдельно взятых частей. А вопросы следующие: Категории транспортных средств M1-M3, N1-N3, O1-O4, L1-L7 - что из себя представляют набор характеристик ТС? я писал Rikitiki5. В зависимости от массы, кол-ва сидений, типа авто, скорости, кол-ва колес, наличия двигателя, типа кузова, ... определяет категорию (определения категорий расписано в стандарте) Vik_FixЭто все категории или нет? Да Vik_FixОбъект утверждения - перечень постоянный или меняется (если меняется то как часто)? Повторюсь - Объект утверждения - не интересует, удалите эту колонку Vik_FixЧто означает Х; А и А; Х1 + Л - особенно интересуют знаки + и ; почему в одном случае стоит плюс, а в другом точка с запятой? Я так понимаю ";" - это "или", а "+" - это "и", (должно выполняться условие Х или А, а во втором случае - должно выполняться условие А или Х1 и Л) Vik_FixЕсли я правильно понимаю, то процедура работы примерно следующая: По предоставленным Заявителем сведениям о ТС, специалист определяет (неизвестны условия) к какой категории относится ТС ( M1-M3, N1-N3, O1-O4, L1-L7), так же устанавливает его статус (новое или б/у). Далее, в соответствии со статусом ТС использует определенные условия ( rikitiki нам кинул только по новым ТС) для определения каким НД данное ТС должно соответствовать. Как-то так, rikitiki - поправь если, что не так.Все правильно Vik_FixВ результате для определения НД необходимо только знать категорию, каким топливом питается (дизель, газ, бензин и т.д.) и его состояние (новое, б/у, переоборудованное может еще что-то есть) Я это и писал в самом начале asdorТ.е. в этих табличках у вас все? (я не про количество данных, а про структуру данных)да asdorУ вас в nd и punktnd есть мемо поля. Для чего? Что в них?в таблице ND поле Memo для названия стандарта например: обозначение стандарта: Правила ЄЕК ООН R14-04 название стандарта: Единообразные предписания, касающиеся официального утверждения транспортных средств в отношении креплений ремней безопасности, систем креплений ISOFIX и креплений верхнего страховочного троса ISOFIX Названия бывают очень длинными в таблице PunktND поле Memo для перечня пунктов например: из таблицы Word (которую я сбрасывал) для категории М1, дизель, новый - согласно НД R13 должны применяться пункты Х1+В1 где автор “Х1” -"Х" або протокол випробувань КТЗ, наданий на індивідуальне затвердження; “Х” -а) окреме затвердження типу та інформаційна підшивка документів; або б) протокол випробувань та інформаційна підшивка документів; або в) маркування КТЗ щодо відповідності типу за окремим Правилом ЄЕК ООН або альтернативною Директивою ЄС; або г) затвердження типу КТЗ ЄС та наявність маркування цього затвердження на КТЗ; “В1” -а) для КТЗ категорії М1 – вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; б) для КТЗ категорії N1 – вимоги пунктів 5.1.2; 5.1.4; 5.2.1 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 4 до R13 або вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; в) для КТЗ категорій М2, M3, N2, N3, О3, О4 – вимоги R13 ( крім додатка 13 до R13); г) для КТЗ категорій О1, О2 – вимоги пунктів 5.1.2; 5.1.4; 5.2.2 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 3.1; 3.2 додатка 4 до R13; так как у нас категория М1 нас интересует расшифровка "Х" и В1 с подпунктом а) , поэтому в поле Мемо таблицы PunktND заносим следующую информацию: окреме затвердження типу та інформаційна підшивка документів або протокол випробувань та інформаційна підшивка документів або маркування КТЗ щодо відповідності типу за окремим Правилом ЄЕК ООН або альтернативною Директивою ЄС або затвердження типу КТЗ ЄС та наявність маркування цього затвердження на КТЗ, у разі відсутності переліченого підтвердженням відповідності є випробування згідно п.п. 5.1.2; 5.1.4; 5.2; додаток 3 (1.4.2; 2.1.1; 2.3) asdorНо в результате неких действий, вы хотите что то получить. Некий набор данных. То, что я хочу получить, я сбрасывал в txt файле (прикрепил еще раз Хочу получить.rar ). (для конкретной категории с конкретным топливом и конкретным состоянием) это определенный перечень : обозначений стандартов + перечень пунктов к каждому стандарту Прикрепил dbc и файлы txt для примера в названии файла txt указана категория, топливо и состояние ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 10:51 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorVik_Fix, ТС стоит, сесть, и без эмоций, человеческими словами, расписать весь БП. Но очевидно, что у него не выйдет. Потому тянем по крохе) У человека ломается его "мировозрение" на структуру данных. Для меня было не понятно то, что сначала он говорил про характеристики и связь их с НД, но потом о них как-то забылось и все пошло в немного другом русле. На текущий момент я почти понял всю суть, но пришлось гадать. Основные задачи программы: после заполнения характеристик транспортного средства (или выбрать авто из справочника) Специалистом в программе - необходима процедура которая на основании введенных данных определит категорию ТС. вторая процедура уже основываясь на категории , типе двигателя (введенного пользователем или выбранного из справочника) и состояния (новое, б/у, ...) производит выборку нормативных документов. В принципе ничего сверх естественного (никаких связей М:М не будет), но непонимание (не верное объяснение) может завести в тупик. Главное чтоб топик стартер подтвердил мои догадки )))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 11:15 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiя писал Rikitiki5. В зависимости от массы, кол-ва сидений, типа авто, скорости, кол-ва колес, наличия двигателя, типа кузова, ... определяет категорию (определения категорий расписано в стандарте) Не спорю писали, но проблема в том, что все писали немного скомкано и порциями, когда выдали вторую-третью порцию информации первая уже теряется и теряется общая картина. И надо было уточнить, что это за категории и как они связаны с характеристиками, а то получается неизвестность. rikitikiЯ так понимаю ";" - это "или", а "+" - это "и", (должно выполняться условие Х или А, а во втором случае - должно выполняться условие А или Х1 и Л) Вот еще одна тонкость, которая может частично изменить структуру данных. rikitikiVik_FixВ результате для определения НД необходимо только знать категорию, каким топливом питается (дизель, газ, бензин и т.д.) и его состояние (новое, б/у, переоборудованное может еще что-то есть) Я это и писал в самом начале Как и в первом моем пункте ответе. Сейчас попробую это все переварить и сделать в виде таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 11:37 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixasdorVik_Fix, ТС стоит, сесть, и без эмоций, человеческими словами, расписать весь БП. Но очевидно, что у него не выйдет. Потому тянем по крохе) У человека ломается его "мировозрение" на структуру данных. Для меня было не понятно то, что сначала он говорил про характеристики и связь их с НД, но потом о них как-то забылось и все пошло в немного другом русле. На текущий момент я почти понял всю суть, но пришлось гадать. Основные задачи программы: после заполнения характеристик транспортного средства (или выбрать авто из справочника) Специалистом в программе - необходима процедура которая на основании введенных данных определит категорию ТС. вторая процедура уже основываясь на категории , типе двигателя (введенного пользователем или выбранного из справочника) и состояния (новое, б/у, ...) производит выборку нормативных документов. В принципе ничего сверх естественного (никаких связей М:М не будет), но непонимание (не верное объяснение) может завести в тупик. Главное чтоб топик стартер подтвердил мои догадки )))) Нужна только вторая процедура. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 11:53 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorVik_Fix, ТС стоит, сесть, и без эмоций, человеческими словами, расписать весь БП. Есть входные известные данные ( категория, вид топлива, состояние авто ) на основании этих данных, нужно ( опираясь на таблицу, которая находиться в Word-овском файле ) произвести выборку НД (колонка "Нормативний документ, вимоги" ) и пунктов НД (то есть, описания букв А, Б, В, Г, Д, ...., Я, или их сочетания, описание букв находится после Word-овской таблицы). Напомню, таблица в Word-овском файле - частный случай , который отвечает за состояние авто - новый . Похожие таблицы есть для состояние авто - б/у и переоборудованные Откуда берутся входные данные, меня не интересует, просто есть и все (позвонили сказали, сам придумал, попросили проверить и т.д.) набор данных категория строго определен: M1, M2, M3, N1, N2, N3, O1, O2, O3, O4, L1, ..., L7 набор данных вид топлива со временем может пополняться, на сегодня существует такой набор данных: алкоголь, бензин, СПГ (CNG) (скраплений природний газ), дизельне паливо, електрика, ЗНГ (LPG), СПГ (CNG) (стиснений природний газ, природний газ), водород, None (None - это для категории O, у них нет двигателя, и соответственно топлива). набор данных состояние авто со временем может пополняться, на сегодня существует такой набор данных: новый, б/у, переоборудованный . Постарался изложить без эмоций)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 17:32 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Наконец то вменяемое описание)))!!! Давайте забудем все прошлые слова. И это будет первым, и отталкиваться далее только от него. авторНД (колонка "Нормативний документ, вимоги") и пунктов НД (то есть, описания букв А, Б, В, Г, Д, ...., Я, или их сочетания, описание букв находится после Word-овской таблицы). Напомню, таблица в Word-овском файле - частный случай, который отвечает за состояние авто - новый. Похожие таблицы есть для состояние авто - б/у и переоборудованные Надеюсь что слова "таблица в вордовском файле" - это для топика. А в реале это все же таблица БД. Выбрать такую строку по заданным вами условиям, легко. Как полагаю, с колонкой "Нормативний документ" все ясно. Этот вариант как бы рассматривали. А вот с пунктнд не до конца ясно. В итоге то, надо выбрать некие буковки, в зависимости от правил ";" "+" ? Вопрос верно ли все угадал. Остается четко рассказать про правила пунктнд. Да и про мемо. В одном случае там просто очень длинный текст. Тогда все ОК. А там где собираете туда данные - неверно. Но это кажется опять пунктнд В общем надо детально с ним разбираться. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 18:20 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorНадеюсь что слова "таблица в вордовском файле" - это для топика. А в реале это все же таблица БД.нет, это пока "таблица в вордовском файле" как представить ее в виде таблиц БД и какие связи не могу понять (здесь основная загвоздка). Если бы "БУКВЫ" (на пересечении строк и столбцов) обозначали одно и тоже, но у "БУКВ" - есть ссылки на другие "БУКВЫ" есть разделение на "подБУКВЫ" Пример 1: автор “Х1” - "Х" або протокол випробувань КТЗ, наданий на індивідуальне затвердження; “Х” - а) окреме затвердження типу та інформаційна підшивка документів; або б) протокол випробувань та інформаційна підшивка документів; або в) маркування КТЗ щодо відповідності типу за окремим Правилом ЄЕК ООН або альтернативною Директивою ЄС; або г) затвердження типу КТЗ ЄС та наявність маркування цього затвердження на КТЗ; “В1” - а) для КТЗ категорії М1 – вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; б) для КТЗ категорії N1 – вимоги пунктів 5.1.2; 5.1.4; 5.2.1 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 4 до R13 або вимоги пунктів 5.1.2; 5.1.4; 5.2 R13Н щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3 до R13Н; в) для КТЗ категорій М2, M3, N2, N3, О3, О4 – вимоги R13 ( крім додатка 13 до R13); г) для КТЗ категорій О1, О2 – вимоги пунктів 5.1.2; 5.1.4; 5.2.2 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 3.1; 3.2 додатка 4 до R13; asdorА вот с пунктнд не до конца ясно. В итоге то, надо выбрать некие буковки, в зависимости от правил ";" "+" ?не "буковки", а именно описание, поскольку буковка .... (см. выше) давайте договоримся "БУКВА" - это пересечение столбца и строки "пунктНД" - это нужное описание "БУКВЫ" asdorОстается четко рассказать про правила пунктнд.Пишется закон, в нем такая таблица - вот и все правила))) Могу рассказать как я определяю "пунктНД". авторМне пришли данные категория - М1 , топливо - бензин , состояние - новый 1 Выбрал соответствующую Word-овскую таблицу - согласно состоянию 2 Смотрю столбец М1 в Word-овском документе 3 На пересечении первой строки и столбца М1 стоит "БУКВА" А 4 Ищу описание буквы А это ( маркування щодо відповідності Правилу ЄЕК ООН або альтернативній Директиві ЄС. У разі відсутності маркування на пристроях освітлення і світлової сигналізації підтвердженням відповідності є позитивний висновок, наданий технічною службою ) - это и есть "пунктНД", запоминаю, записываю 5 В столбце "Нормативний документ, вимоги" 11 НД (R1, 2, R8, R20, R56, R57, R72, R76, R82, R98, R112, R123), поэтому открываю каждый документ и смотрю Раздел "Область применения" 6 после этого остаются только (R1, 2, R8, R20, R98, R112, R123) поскольку (R56, R57, R72, R76, R82) распространяются на другие категории (L) 7 записываю R1, 2 (маркування щодо відповідності Правилу ЄЕК ООН або альтернативній Директиві ЄС. У разі відсутності маркування на пристроях освітлення і світлової сигналізації підтвердженням відповідності є позитивний висновок, наданий технічною службою); R8 (маркування ...), R20 (маркування ...), R98(маркування ...), R112(маркування ...), R123(маркування ...) авторВ примере простой вариант, в котором НД зависит только от категории , а "БУКВА" не зависит ни от чего 8 ищу следующее пересечение (и повторяю пункты 4- 8) И вот на пересечение строки 8 и столбца М1 стоят "БУКВЫ" ( Х1+В1 ) описание в Примере 1 и так "пунктНД" = полностью описание "БУКВЫ" Х , поскольку дополнительных условий нет + описание "БУКВЫ" В1 (но здесь появляются новые условия) авторизучив условия мы выбираем подпункт а) , поскольку только он относится к нашей категории. также в этом подпункте написано что нам следует применить только НД R13H "БУКВА" В в столбце "Нормативний документ, вимоги" говорит, что при выборе НД R13 или R13H нужно учесть категорию Итого к пункту 7 добавляем запись R13-H (окреме затвердження типу та інформаційна підшивка документів або протокол випробувань та інформаційна підшивка документів або маркування КТЗ щодо відповідності типу за окремим Правилом ЄЕК ООН або альтернативною Директивою ЄС або затвердження типу КТЗ ЄС та наявність маркування цього затвердження на КТЗ, у разі відсутності переліченого підтвердженням відповідності є випробування згідно п.п. 5.1.2; 5.1.4; 5.2 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 3) Строка 30 - НД R67 - пересечение "БУКВА" Х1+Т , но НД зависит от топлива пропускаем этот НД у нас топливо - бензин , а "Область применения" говорит, что НД применяются к официальному утверждению специального оборудования транспортных средств категорий M и N1 , двигатели которых работают на сжиженном нефтяном газе . и так до конца таблицы потом сохраняю результат, так как данные категория - М1 , топливо - бензин , состояние - новый очень часто повторяются, и пока не поменяют Закон я пользуюсь результатом (чтобы лишний раз не перебирать таблицу) asdorДа и про мемо. В одном случае там просто очень длинный текст. Тогда все ОК. А там где собираете туда данные - неверно. Но это кажется опять пунктндЯ не собираю данные создал таблицу где id - это "БУКВА", а поле МЕМО (то, что эта "БУКВА" обозначает, то есть "пунктНД") куда еще записать значение "БУКВЫ" "В1 г)" (см. пример 1) авторвимоги пунктів 5.1.2; 5.1.4; 5.2.2 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ (вимоги застосовують з урахуванням конструкції КТЗ), а також вимоги пунктів 1.4.2; 3.1; 3.2 додатка 4 до R13 asdorВ общем надо детально с ним разбираться.((( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 20:33 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiнет, это пока "таблица в вордовском файле" как представить ее в виде таблиц БД и какие связи не могу понять (здесь основная загвоздка). Упс!!!! Так вот она в чем главна проблема! rikitikiЕсли бы "БУКВЫ" (на пересечении строк и столбцов) обозначали одно и тоже, но у "БУКВ" - есть ссылки на другие "БУКВЫ" есть разделение на "подБУКВЫ" Пример 1: Дальше непонятно. Прочитать такое не могу. Найдите синонимы в русском. Да и не обязательно перевод (боюсь такая специфика, что вряд ли поможет) Просто, придумайте ясный пример... rikitikiдавайте договоримся "БУКВА" - это пересечение столбца и строки "пунктНД" - это нужное описание "БУКВЫ" Было бы неплохо, если это правда. Такое легко пеобразуется в нормальную таблицу. rikitikiasdorОстается четко рассказать про правила пунктнд.Пишется закон, в нем такая таблица - вот и все правила))) Могу рассказать как я определяю "пунктНД". авторМне пришли данные категория - М1 , топливо - бензин , состояние - новый 1 Выбрал соответствующую Word-овскую таблицу - согласно состоянию Вот. Давайте навремя представим, что есть таблица, каждая строка которой - ваш ворд. ОК. Тогда переписать вышеприведенную фразу легко. Запомним первую проблему. Надо создать структуру хранения вордовской таблицы. rikitiki2 Смотрю столбец М1 в Word-овском документе Легко выбирается, поскольку он задан в начальных условиях отбора. rikitiki3 На пересечении первой строки и столбца М1 стоит "БУКВА" А Всегда 1й? Тогда имеет смысл сразу это значение, вместе с М1 и выбирать. rikitiki4 Ищу описание буквы А это ( маркування щодо відповідності Правилу ЄЕК ООН або альтернативній Директиві ЄС. У разі відсутності маркування на пристроях освітлення і світлової сигналізації підтвердженням відповідності є позитивний висновок, наданий технічною службою ) - это и есть "пунктНД", запоминаю, записываю Этот момент, опять ясен не до конца. Если А везде одинакова, то проще. Если для каждой категории, А своё - то связей поболе rikitiki5 В столбце "Нормативний документ, вимоги" 11 НД (R1, 2, R8, R20, R56, R57, R72, R76, R82, R98, R112, R123), поэтому открываю каждый документ и смотрю Раздел "Область применения" Опять же вопрос. R1, 2, R8... это для всех одно и то же? Увы... отвлекают))) Хотя бы на что спросил, ответьте. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 21:09 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorУпс!!!! Так вот она в чем главна проблема!Да asdorrikitikiЕсли бы "БУКВЫ" (на пересечении строк и столбцов) обозначали одно и тоже, но у "БУКВ" - есть ссылки на другие "БУКВЫ" есть разделение на "подБУКВЫ" Пример 1: Дальше непонятно. Прочитать такое не могу. Найдите синонимы в русском. Да и не обязательно перевод (боюсь такая специфика, что вряд ли поможет) Просто, придумайте ясный пример... авторнапример на пересечении у нас стоят "БУКВЫ" Х1 + В1 в описании "БУКВЫ" Х1 написано смотри "БУКВУ" Х, а если описание "БУКВЫ" Х не исполняется, тогда "Отжимайся" в описании "БУКВЫ" Х написано, если ты без руки, или без ноги или без головы или другая справка, то ты не отжимаешься в описании "БУКВЫ" В1 написано, если тебе 16 отжимайся 50 раз, если 25 отжимайся 45 раз, если 70 достаточно 10 разТак понятней? (есть ссылка на другую "БУКВУ" и есть условия для самой "БУКВЫ") asdorВот. Давайте навремя представим, что есть таблица, каждая строка которой - ваш ворд. ОК.ОК asdorТогда переписать вышеприведенную фразу легко. Запомним первую проблему. Надо создать структуру хранения вордовской таблицы. rikitiki2 Смотрю столбец М1 в Word-овском документе Легко выбирается, поскольку он задан в начальных условиях отбора.То есть NDM1M2M3R1AA- asdorrikitiki3 На пересечении первой строки и столбца М1 стоит "БУКВА" А Всегда 1й? Тогда имеет смысл сразу это значение, вместе с М1 и выбирать.Нет. На первом пересечении где есть "БУКВА" asdorrikitiki4 Ищу описание буквы А это ( маркування щодо відповідності Правилу ЄЕК ООН або альтернативній Директиві ЄС. У разі відсутності маркування на пристроях освітлення і світлової сигналізації підтвердженням відповідності є позитивний висновок, наданий технічною службою ) - это и есть "пунктНД", запоминаю, записываю Этот момент, опять ясен не до конца. Если А везде одинакова, то проще. Если для каждой категории, А своё - то связей поболетолько "БУКВА" А - у всех одинакова, а остальные "БУКВЫ" к сожалению нет. asdorrikitiki5 В столбце "Нормативний документ, вимоги" 11 НД (R1, 2, R8, R20, R56, R57, R72, R76, R82, R98, R112, R123), поэтому открываю каждый документ и смотрю Раздел "Область применения" Опять же вопрос. R1, 2, R8... это для всех одно и то же?Нет. Для каждой Word-овской таблицы столбец "Нормативний документ, вимоги" со своим набором НД, но НД могут и повторяться, поэтому и ввел понятие состояние . По поводу описания "БУКВ" (то есть "пунктНД") для различных состояний но одинаковых категорий и топлива тоже могут отличаться ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2016, 22:03 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Система асимптотически усложняется))) Явно, крайне много зависимостей, и удержать их в голове, невозможно. С "Отжимайся" - отличная аналогия. Главная ясная всем. Глянул файлы тхт что выложили. Т.е. вам надо получить такой отчет-документ в итоге? Что хочется сказать, что структура, что вы прислали, в общем то верна. И теперь понятно, где главная сложность. Мой совет. Опишите правила формирования документа. Математически, Графически, еще как то... можно комплексно. Дайте прочитать соседу. разберется или нет. Уйдите от своей терминологии. Физкультурная - отлично!!!))) Всем понятна. Далее, писать что А одинакова, а остальные нет, не имеет смысла. Это всего лишь частный случай неодинаковости. Т.е. по любому, прежде чем проектировать схему БД, надо четко, по человечески представлять все взаимодействия. Еще. Не обязательно рисовать все сразу в таблицах. Рисуйте для начала группой, которая ясна. Отдельно, можно расшифровать-раскрыть эту группу. (Типичный подход CASE средств. Можете глянуть как с их помощью проектируют. Может навеет какие мысли. Использовать конечно сложно будет. Много времени изучение займет) Важно. Не путайте выдачу информации юзеру, и хранение данных. Это очень разные вещи. Когда данные хранятся правильно, согласовано, юзеру их можно легко отдать в любом удобном ему виде. Это совсем другая задача. (Ну не совсем конечно, но другая))). При правильном проектировании, ничего в коде клиента менять не придется. Но данные вводить, все равно надо))) Без этого никуда. И прописывать все связи. И это должно быть удобно-понятно юзеру. Эт. тоже почти отдельная задача. Еще раз. На вскидку. У вас вполне разумная структура. А там где дошло до сложного, там ничего нет. Можно представить, что вордовский док, это набор таблиц, есть основная - doc, запись которой, и представляет из себя документ. Значит, эта таблица, должна собирать из др. таблиц все нужные сведения. Она видимо, и есть, той самой таблицей связи M:M Собственные дела, не дают серьезно вдуматься. А дошли до вещей, когда надо посидеть, и подумать) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 08:57 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki asdorпропущено... Этот момент, опять ясен не до конца. Если А везде одинакова, то проще. Если для каждой категории, А своё - то связей поболетолько "БУКВА" А - у всех одинакова, а остальные "БУКВЫ" к сожалению нет. Добрый день! Смотрю Вы тут тоже дошли до разбора полетов с буквами, вчера весь вечер размышлял над этим. В общем внесу небольшую ясность. asdor - вордовский файл это документ "Условия" который rikitiki выкладывал на второй странице данной ветки форума. Насколько я понял, БУКВЫ в документе это ссылки на однотипный текст (пункт правил), сделано это только для удобной работы человека (покрайней мере избавляет от 10 и более ячеек с однотипным текстом). Но перенимать эти БУКВЫ в базу данных, а особенно как-то к ним привязываться не стоит (если только как дополнительный реквизит записи). Надо исходить от НД, то есть у одного НД имеется несколько пунктов с правилами (требованиями), в свою очередь в пункте может быть несколько подпунктов (уточняющих критерий применения пункта). Отсюда для меня вырисовывается следующая структура Таблица НД ID_ND - Идентификатор нормативного документа NAME_ND - Наименование нормативного документа (R03, R63 и т.д.) TEXT_ND - Дополнительный текст или еще что либо Таблица пунктов НД ID_P - Идентификатор пункта требований ID_ND - Идентификатор НД к которому данный пункт принадлежит NAME_P - Что-то вроде наименования пункта (п. 2.2 и т.д.) TEXT_P - Текст пункта COMENT - Вот тут можно указать, что данный пункт имеет код А в таком-то документе Таблица подпунктов НД ID_PP - Идентификатор подпункта ID_P - Идентификатор пункта НД NAME_PP - Что-то вроде наименования подпункта (п.п. а) ) TEXT_PP - Текст подпункта Далее можно подумать над созданием таблицы правил, в которой уже будет прописано, что пункт требований с ID_P = 12 применяется к ТС категории N1, типом двигателя дизель и состоянием новый. Примерно как она может выглядеть Таблица правил ID_RUL ID_ND ID_P ID_PP NAME_RUL ID_CAT ID_MOTTYPE ID_STAT Это только пример, надо еще думать над структурой, могу запросто ошибиться т.к. в голове еще структура данных своей проги. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 09:39 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Насколько я понял, документ в котором приведена таблица - что-то вроде таможенного регламента, вот сейчас у меня в голове не сходятся некоторые пункты. Пример: Строка с объектом технического регулирования "Кріплення ременів безпеки" в ней указано, что к креплению ремней безопасности предъявляются требования кода А; Х1+Г если исходить из того, что rikitiki писал ; - это ИЛИ, а + - это И, то получается требования пункта с кодом А или пунктов Х1 и Г . Но под кодом А речь идет об освещении и осветительной сигнализации, такое ощущение, что код А сюда вообще по ошибке попал. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 10:53 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiname nom sign условия по пунктам область самого normativПравила ООН R13-01 Единообразные предписания {New.N1.*:1.4.2; 2.1.1; 2.3}{New.!N1O1O2.*:раздел 13}{New.O1O2.*:5.1.2; 5.1.4; 5.2.2; раздел 4 (п.п. 1.4.2; 3.1; 3.2)}{Used.*.*:п.п. 5.1.2 - 5.1.4; 5.2}{Converted.*.*:раздел 4 (п.п. 1.4.2; 1.5; 2.1.1; 2.3; 3.1; 3.2)} *.!M1L1L2L3L4L5L6L7.* Вот к стати, автор приводил пример, как у него храниться информация. По сути тут нужно содержимое "условия по пунктам" вынести в отдельную таблицу, ну и еще немного подмарафетить. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 11:00 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorТ.е. по любому, прежде чем проектировать схему БД, надо четко, по человечески представлять все взаимодействия. Еще. Не обязательно рисовать все сразу в таблицах. Рисуйте для начала группой, которая ясна. Отдельно, можно расшифровать-раскрыть эту группу. (Типичный подход CASE средств. Можете глянуть как с их помощью проектируют. Может навеет какие мысли. Использовать конечно сложно будет. Много времени изучение займет) Постараюсь изучить, спасибо Vik_FixТаблица подпунктов НД ID_PP - Идентификатор подпункта ID_P - Идентификатор пункта НД NAME_PP - Что-то вроде наименования подпункта (п.п. а) ) TEXT_PP - Текст подпункта Далее можно подумать над созданием таблицы правил, в которой уже будет прописано, что пункт требований с ID_P = 12 применяется к ТС категории N1, типом двигателя дизель и состоянием новый. Примерно как она может выглядеть Таблица правил ID_RUL ID_ND ID_P ID_PP NAME_RUL ID_CAT ID_MOTTYPE ID_STATЯ тоже думал над таблицей подпунктов и таблицей правил, Но Вы предлагаете немного другой подход, отдельно связать Таблицы НД (между собой) не связывая каждую отдельно с Таблицами CAT, MOTTYPE, STAT, а уже в таблице правил связать все воедино. Нужно попробовать. Задам наверное глупый вопрос.) А если у пункта нет подпункта? Еще, ночные размышления. Очень глупая мысль, как следствие такой же вопрос. Есть ли общепринятая структура БД описывающая "дерево"? Я ведь худо-бедно получил правильный объект, может его взять и разложить обратно, но уже в готовую базу? и увидеть, что получилось. Может я зациклился на некоторых не важных связях, или тех без которых можно обойтись? Или может без избыточности не обойтись. Просто да или нет. Если да то где взять или почитать? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 11:02 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_FixНасколько я понял, документ в котором приведена таблица - что-то вроде таможенного регламента, вот сейчас у меня в голове не сходятся некоторые пункты. Пример: Строка с объектом технического регулирования "Кріплення ременів безпеки" в ней указано, что к креплению ремней безопасности предъявляются требования кода А; Х1+Г если исходить из того, что rikitiki писал ; - это ИЛИ, а + - это И, то получается требования пункта с кодом А или пунктов Х1 и Г . Но под кодом А речь идет об освещении и осветительной сигнализации, такое ощущение, что код А сюда вообще по ошибке попал. Люди ошиблись, они имели ввиду "маркировку креплений" Там по документу еще есть пару ошибок (вписаны не те буквы) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 11:04 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki Задам наверное глупый вопрос.) А если у пункта нет подпункта? То в " таблице подпунктов " не будет записи для этого пункта (естественно это должно заполняться через визуальную форму и в обработчике кнопки "Записать" будет проверка, если поле подпункт пусто, то в таблицу п/п ничего не вносим), а при выводе просто запрашивает все записи из таблицы п/п где ID_P равен к примеру 16 (но это опять же пока условно). rikitikiОчень глупая мысль, как следствие такой же вопрос. Есть ли общепринятая структура БД описывающая "дерево"? Такого нет, в БД (не во всех, мы говорим про реляционную СУБД) вообще отсутствует понятие "дерево", есть основные правила нормализации данных (это первых три правила нормализации), почитайте про них и станет все гораздо понятней. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 11:52 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fixrikitiki Задам наверное глупый вопрос.) А если у пункта нет подпункта? То в " таблице подпунктов " не будет записи для этого пункта (естественно это должно заполняться через визуальную форму и в обработчике кнопки "Записать" будет проверка, если поле подпункт пусто, то в таблицу п/п ничего не вносим), а при выводе просто запрашивает все записи из таблицы п/п где ID_P равен к примеру 16 (но это опять же пока условно).Я не об этом, в таблице правил как указать ID_PP? Или делать запись в таблице подпунктов ID_PP, пусто? Vik_FixrikitikiОчень глупая мысль, как следствие такой же вопрос. Есть ли общепринятая структура БД описывающая "дерево"? Такого нет, в БД (не во всех, мы говорим про реляционную СУБД) вообще отсутствует понятие "дерево", есть основные правила нормализации данных (это первых три правила нормализации), почитайте про них и станет все гораздо понятней.Понял Начал вникать в AllFusion ERwin Data Modeler, пока вроде ничего сложного.))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 12:07 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiЯ не об этом, в таблице правил как указать ID_PP? Или делать запись в таблице подпунктов ID_PP, пусто? А... вот про что речь, я просто полностью не продумывал (привел как пример), но можно оставить пустым или добавить логические поля. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 12:29 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
По диагонали пробежал вашу переписку. авторОчень глупая мысль, как следствие такой же вопрос. Есть ли общепринятая структура БД описывающая "дерево"? Вовсе не глупый!!!! Когда вы описывали взаимодействие буковок, сразу родилась мысль, о иерархических данных. Стандартно, хранение таких данных в 1й таблице организуют так. Есть PrentID Т.е. запись таблицы ветки, ссылается на запись этой же таблицы, узел этой ветки. Если не ясно, приведу пример. Там все просто ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 13:05 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorСтандартно, хранение таких данных в 1й таблице организуют так. Есть PrentID Т.е. запись таблицы ветки, ссылается на запись этой же таблицы, узел этой ветки. Если не ясно, приведу пример. Там все простоесли не затруднит, сбросьте простенький примерчик ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 13:09 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Тоже, вовсе не глупы вопрос. авторА если у пункта нет подпункта? В случае дерева, сами понимаете, просто заканчивается... В случае другой организации, все равно ничего страшного. Кстати, дерево то хорошо. Но нужно достаточно доводов в его пользу. Все же, работать с ним, получать данные, сложнее. Это не совсем реляционность. Тем не менее, надо, стоит, рассмотреть все варианты. Кстати - любую функциональность. 2 профи, построят совершенно по разному (или могут ) и не докажешь у кого лучше))) Поэтому вариантов построения достаточно сложной системы, всегда больше одного ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 13:21 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiЕсли не ясно, приведу пример. Там все простоесли не затруднит, сбросьте простенький примерчик[/quot] Прямо здесь накидаю. 1 поле ид, второе парент, 3- имя 1.1. Дерево 2.1.Ветка1 3.1.Ветка2 4.2.Листок1Ветки1 5.3.Листок1Ветки2 ..... Надеюсь ясно? и так до бесконечности. Для работы с деревом, применяют рекурсию. Проблемы с выборками. Но все равно, иногда это эффективнее. В общем надо тщательно считать) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 13:25 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Еще про буковки. А посмотрите, как там с графами? Может из применить? Попробуйте и в эту сторону подумать ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 13:31 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
А вот это сообщение, на сколько не подходит? 19853571 Просто в голове некоторая каша))) Половина забыл, половина и не помнил))) Но ТС очевидно, очень хорошо в теме. Если оно подходит, то там допиливать не сложно. Там главное, 2 уровня. Если по определению, больше уровней невозможно, то это одно. Если уровней может быть любое количество, то все хуже))) (Дерево) Попробуйте ответить на это. И если в общем то подходит, то сразу включайте критику, и ищите что не подходит для вас. Что не сходится. Ошибки проектирования - дорого обходятся в дальнейшем) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 14:10 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Спасибо asdor и Vik_Fix за Ваше время и советы Хочу сначала опробовать 2 варианта предложенных Вами (вариант с таблицей подпункты и вариант с деревом) авторПример "дерева" поняла потом отпишусь вечером командировка и до компа доберусь только в воскресенье вечером на вскидку: вариант с таблицей подпункты - не могу пока представить визуализацию данных (таблица правил) вариант с деревом - визуализация ole объект Treeview Выборка - вариант с таблицей подпункты - будет намного проще В общем пока не попробую ничего сказать не смогу. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2016, 14:46 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, Мысль пришла. Vik_Fix как то упомянул, что все эти буковки, просто искусственные создания. Так может о них лучше забыть. Как результат - мо должны получить данные в виде приложенных тхт. Т.е. просто набор фраз. Делаем таблицу с этими фразами. Не повторяющимися. id,Name,Фраза А дальше, делаем сколь угодно сложную таблицу (группу таблиц) в которой описаны зависимости. Правила получения этих фраз. Полагаю в этом случае и UI становится понятнее, при внесении нового. Ввел новую фразу. И прописал к ней все условия. Изменилось что то - здесь же поменял(Изменил, добавил, удалил) (условия или фразу) То бишь, на кэйсы я зря направил, тут не БП, а математика. Просто ТС рассказывает логику, исходя из того как это организовано сейчас. А надо от нее отвлечься. И описать ее, забыв о буквах и нд. Просто именно все возможные зависимости. Лучше взять пару абстрактных пунктов (файлов ворд), и начать спускаться вниз, постепенно добавляя, забытые связи. И для тестов, ограничиться минимальным набором. Главное, все правила охватить. А может и сам ворд не нужен... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 11:05 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Всем привет! В общем, на выходных под кружечку пивка меня осенило))) Схема из таблиц "Пункты" и "Под пункты" - не совсем хороша, уж больно мудрено придется логику выстраивать. Но тут же подумав, а чем подпункт отличается от пункта? (да в общем-то ничем), исходя из этого нарисовалась немного другая структура БД. "Таблица пункты и подпункты" ID_dDoc - идентификатор дополнительной записи документа (возможно и не нужен) ID_DOC - идентификатор документа (из таблицы НД) ID_TYPE - идентификатор типа записи (0 - Пункт, 1 - Подпункт) Num_P - номер пункта из документа ("1, 2, 3" и т.д.) Num_PP - номер подпункта из документа ("1, 2, 3" или "а, б, в" и т.д.), у пунктов в данном поле 0 или пусто TEXT_dDoc - текст пункта или подпункта "Таблица типов записи" ID_TYPE NAME_TYPE Дальше строим составные индексы, к примеру так: ID_DOC + NUM_P + NUM_PP. В интерфейсе программы при заполнении полей NUM_P и NUM_PP, необходимо сделать проверку на вводимые данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 08:23 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Привет Вчера поздно добрался 3 дня в голове рисовал схемы до чего дошел 8 таблиц "Таблица категории" Id_Category - идентификатор категории N(2) Name_Cat - название категории C(2) Denotation - описание категории M(4) "Таблица топливо" Id_Fuel - идентификатор топлива N(2) Name_Fuel - название топлива C(20) "Таблица обозначение НД" Id_Sign - идентификатор обозначения N(2) Name_Sign - обозначение НД C(20) "Таблица НД" Id_Regulation - идентификатор НД N(4) Id_Sign - идентификатор обозначения НД Number - номер НД C(20) Denotation - название НД M(4) Date_Begin - дата введение в действие НД D(8) Date_End - дата окончания действие НД D(8) "Таблица сфера применения" Id_Scope - идентификатор сферы применения N(5) Id_Regulation Id_Category Id_Fuel Denotation - сфера применения НД M(4) "Таблица состояния" Id_Condition - идентификатор состояния N(2) Name_Condition - название состояния C(20) "Таблица пунктов" Id_PunktND - идентификатор пункта НД N(3) Denotation - текст пункта НД M(4) ну и в завершении "Таблица правил" Id_Rules - идентификатор правил Id_PunktND Id_Scope или Id_Regulation (еще думаю) Id_Condition Логика такая есть "таблица категорий" - она постоянная есть "таблица топливо" - заполняем по максимуму (здесь пока проблемы с добавлением новой записи) при вводе новой записи в "таблицу НД" сразу заполняем "таблицу сфера применения" - поскольку она не меняется у НД, пока он действует Ну и в конце описываем "таблицу правил" Все вроде просто, но сегодня первый день возле компа, сейчас попробую реализовать интерфейс Пока вижу только проблему с добавлением нового топлива Выслушаю Ваши замечания. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 10:10 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitikiесть "таблица топливо" - заполняем по максимуму (здесь пока проблемы с добавлением новой записи) А в чем именно? Опишите в чем может быть проблема при добавлении новой записи? "Таблица обозначение НД" - что в этой таблице будет? "Таблица пунктов" - тот же самый вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 11:01 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Vik_Fixrikitikiесть "таблица топливо" - заполняем по максимуму (здесь пока проблемы с добавлением новой записи) А в чем именно? Опишите в чем может быть проблема при добавлении новой записи?Предположим заполнили все записи в таблицах, появляется новое топливо "напалм", нужно перебирать все НД куда его добавлять (еще не продумал) Vik_Fix"Таблица обозначение НД" - что в этой таблице будет?поле Name_Sign - (ГОСТ, Правило, ДСТУ, ТУ У, ...) Vik_Fix"Таблица пунктов" - тот же самый вопрос.Просто набор фраз - например (вимоги пунктів 5.1.2; 5.1.4; 5.2.1 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ, а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 4) как писал asdorМысль пришла. Vik_Fix как то упомянул, что все эти буковки, просто искусственные создания. Так может о них лучше забыть. Как результат - мо должны получить данные в виде приложенных тхт. Т.е. просто набор фраз. Делаем таблицу с этими фразами. Не повторяющимися. id,Name,Фраза ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 11:23 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki У вас будет огромное число таблиц-справочников и вы быстро запутаетесь в обозначениях. У вас объемная работа. Уже сейчас неясно применение таблиц типа "Таблица правил". Вам надо бы привести в порядок нормативную документацию. Что-то типа этого: http://base.garant.ru/179141/ http://mt27.ru/perechen-pravil-eek-oon/ Я бы посоветовал пронумеровать эти нормативы: n01... и o01... и использовать эти обозначения в соответствующих им названиях справочников. Структуру справочников можно взять везде одинаковой, примерно так: idtab, names, values, notes. Это позволит вам в дальнейшем для редактирования справочников использовать единую форму. Различные условия, и не только при добавлении, обычно пишутся в кодах. Вам придется писать свои что-то типа триггеров, т.к. родные триггеры Фокс громоздки. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 12:37 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, авторПредположим заполнили все записи в таблицах, появляется новое топливо "напалм", нужно перебирать все НД куда его добавлять (еще не продумал) Забей временно. Когда остальное решишь, с этим будет не сложно. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 12:45 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
sg12, sg12Различные условия, и не только при добавлении, обычно пишутся в кодах. Вам придется писать свои что-то типа триггеров, т.к. родные триггеры Фокс громоздки. Ну вот, тут на протяжении 4 страниц боремся, что бы не в коде менять. А тут нате вам - открытие. Не учите плохому. Правила здесь - это не алгоритмы, а связи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 12:49 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdorsg12, sg12Различные условия, и не только при добавлении, обычно пишутся в кодах. Вам придется писать свои что-то типа триггеров, т.к. родные триггеры Фокс громоздки. Ну вот, тут на протяжении 4 страниц боремся, что бы не в коде менять. А тут нате вам - открытие. Не учите плохому. Правила здесь - это не алгоритмы, а связи. К сожалению, база данных Фокс не очень располагает к этому, запутаетесь уже при числе таблиц больше десяти, и придется переделывать. Коды условий удобнее располагать в формах, но при их большом количестве это удобство исчезает, т.к. они обычно изменчивы. Можно для условий создать глобальный объект типа CUSTOM, а в формах или БД оставить только строки вызова. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 13:34 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
sg12К сожалению, база данных Фокс не очень располагает к этому, запутаетесь уже при числе таблиц больше десяти, и придется переделывать. А вы упорны в своих заблуждениях батенька)))) Ну ОК. Пусть БД MS SQL будет. Что то поменяется? Запутаться легко и в одной таблице. А другие и с сотнями не путаются. sg12Коды условий удобнее располагать в формах, но при их большом количестве это удобство исчезает, т.к. они обычно изменчивы. Вообще то формы, это визуальное представление для пользователя. Конечно, легко запихнуть туда логику. Начинающие часто так делают. Но советовать это как подход... sg12Можно для условий создать глобальный объект типа CUSTOM, а в формах или БД оставить только строки вызова. И зачем?... Вообще в этом топике, пытаются создать разумную схему хранения. Убежден, после ее создания, видно будет, как и что программировать. Что в формах, а что в других объектах. Хранить различные алгоритмы, в одном глобальном объекте... Чем хуже просто набор процедур? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 17:13 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
asdor VFP9 это не досовский Fox и не SQL Server. Если у вас что-то по-другому, то пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2016, 18:00 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Ого, да у Вас тут уже "бойня" )))) пойду по порядку. rikitiki "Таблица НД" Id_Regulation - идентификатор НД N(4) Id_Sign - идентификатор обозначения НД Number - номер НД C(20) Denotation - название НД M(4) Date_Begin - дата введение в действие НД D(8) Date_End - дата окончания действие НД D(8) "Таблица пунктов" Id_PunktND - идентификатор пункта НД N(3) Denotation - текст пункта НД M(4) Не вижу связи между этими таблицами, хотя "пункты" это не неотъемлемая часть НД. rikitikiПросто набор фраз - например (вимоги пунктів 5.1.2; 5.1.4; 5.2.1 R13 щодо конструкції гальмівних систем і системи сигналізації КТЗ, а також вимоги пунктів 1.4.2; 2.1.1; 2.3 додатка 4) как писал Извиняюсь, это я немного "протупил", работаю еще над своей программой и у меня в голове сработало "Пункты" - это "населенные пункты" )))) sg12У вас будет огромное число таблиц-справочников и вы быстро запутаетесь в обозначениях. У вас объемная работа. Уже сейчас неясно применение таблиц типа "Таблица правил". Я бы не сказал, что огромное количество таблиц справочников, возьмите к примеру КЛАДР или ФИАС - это уже 3 справочных таблицы (а их часто используют в своих программах), вот про обозначения не понял. Таблица правил - по логике вещей это вспомогательная таблица для создания связи между пунктами НД (требованиями) и сферой их применения. Не спорю на текущий момент у автора не все гладко, но он стремиться к лучшему. sg12Я бы посоветовал пронумеровать эти нормативы: n01... и o01... и использовать эти обозначения в соответствующих им названиях справочников. Не знаю насколько Вы осилили прочтение данного топика, но прослеживается не понимание сути. Нормативные документы - это куча ГОСТов, Правил, ДСТУ, ТУ У и прочего в которых прописаны всевозможные требования к различным объектам сертификации (фары, ремни, колеса и т.д.). Так же транспортные средства (далее ТС) подразделяются: на категории N, L, M, O (подробней я описывал ранее); по состоянию (новое, б/у, переоборудованное) по топливу на котором работают (бензин, газ, электричество и т.д.) Так вот, автору необходимо зная выше перечисленные 3 составляющие, отобразить НД и их пункты относящиеся именно к такому сочетанию составляющих, бррр... как-то мудрено получилось. Отсюда вопрос: как нумерация нормативов поможет? sg12Различные условия, и не только при добавлении, обычно пишутся в кодах. Вам придется писать свои что-то типа триггеров, т.к. родные триггеры Фокс громоздки. Про триггеры вообще не понял, в моем понимании триггер - это всего лишь событие вызываемое при определенном действии, а код который будет исполнятся при этом можно написать какой угодно. Ой, дальше я даже продолжать не буду, а то от темы уходим. rikitiki - на неделе попробую изобразить свое виденье в виде готовых таблиц, чтоб говорить более предметно. А то на словах уже сам начинаю путаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2016, 06:54 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
Добрый день, Asdor и Vik_Fix дошел до точки кипения Можно сбросить Вам на мыло то, что у меня получилось (поскольку размер 1Мб)? Не могу понять как добавлять и сохранять. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2016, 14:33 |
|
Нужна помощь Collections
|
|||
---|---|---|---|
#18+
rikitiki, kv # abz4.ru Но по мере сил) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.11.2016, 19:39 |
|
|
start [/forum/topic.php?all=1&fid=41&tid=1582034]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
96ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 181ms |
0 / 0 |