| 
    
        
     
     | 
    
    
  | 
Тип данных ресурса | ☑ | ||||||
|---|---|---|---|---|---|---|---|---|
| 
    0
    
        Phil_McLaren    
     26.02.13 
            ✎
    07:33 
 | 
    
 
        Добра!
  
        Заспорили тут, да рассудит нас миста Создается РС, у кого в одном из ресурсов может храниться справочникСсылка или число. Я считаю, что нужно делать ресурс составного типа, мой коллега - что заводить два ресурса разных типов и сравнением числового с 0 (в запросах и вне их) понимать, где лежит реальное значение. Погуглил, с ходу официальных рекомендаций не нашел Мнения? Замучу голосование, пожалуй, вдруг все окажется не проще пареной репы)  | 
|||||||
| 
    1
    
        skunk    
     26.02.13 
            ✎
    07:34 
 | 
         
        а нулл проверять не судьба?     
         | 
|||||||
| 
    2
    
        Phil_McLaren    
     26.02.13 
            ✎
    07:38 
 | 
         
        (1) да проверять-то можно как угодно, вопрос не в этом, а в решении проверять ли вообще или использовать "выразить", в запросах например. В наборе записей и того проще с составным
  
        Проблемы нет, я не спрашиваю совета, я спрашиваю мнения, как вы в таких случаях строите регистр  | 
|||||||
| 
    3
    
        skunk    
     26.02.13 
            ✎
    07:44 
 | 
         
        по мне оба варианта какие-то не очень ... в обоих случаях идет денормализация базы ... стоит ли задача того     
         | 
|||||||
| 
    4
    
        Phil_McLaren    
     26.02.13 
            ✎
    07:48 
 | 
         
        (3) и на ваш взгляд как же быть?     
         | 
|||||||
| 
    5
    
        Phil_McLaren    
     26.02.13 
            ✎
    08:21 
 | 
         
        ап
  
        вяло, миста, вяло. Я не вижу ваших мнений  | 
|||||||
| 
    6
    
        Rovan    
     гуру 
    26.02.13 
            ✎
    08:23 
 | 
         
        (5) в 1м варианте выигрываешь в использовании места и в удобстве программирования,
  
        во 2м в скорости работы с данными Так что вопрос из серии "Что больше - час или километр ?"  | 
|||||||
| 
    7
    
        aka AMIGO    
     26.02.13 
            ✎
    08:30 
 | 
         
        "регистр строится" под конкретную задачу.. вернее, под ситуацию.
  
        а так - только пустотрясение пространства.  | 
|||||||
| 
    8
    
        Тролль главный    
     26.02.13 
            ✎
    08:34 
 | 
         
        а если нужно хранить именно 0?     
         | 
|||||||
| 
    9
    
        patapum    
     26.02.13 
            ✎
    08:42 
 | 
         
        (0) в ресурсе хранится справочник ссылка или число - хреновый регистр. постановку задачи в студию!     
         | 
|||||||
| 
    10
    
        Steel_Wheel    
     26.02.13 
            ✎
    08:43 
 | 
         
        (0) Объектный тип лучше примитивного, т.к. при построении индекса значение примитивного типа полностью включаеся в индекс, от чего индекс становится большим     
         | 
|||||||
| 
    11
    
        Fragster    
     гуру 
    26.02.13 
            ✎
    08:44 
 | 
         
        (10) при составном типе индекс по 2-м колонкам вообще     
         | 
|||||||
| 
    12
    
        Fragster    
     гуру 
    26.02.13 
            ✎
    08:44 
 | 
         
        (9) ихобретают доп.свойства, наверное     
         | 
|||||||
| 
    13
    
        Fragster    
     гуру 
    26.02.13 
            ✎
    08:44 
 | 
         
        изобретают     
         | 
|||||||
| 
    14
    
        1Сергей    
     26.02.13 
            ✎
    08:45 
 | 
         
        в любом случае, физически колонок становится больше одной     
         | 
|||||||
| 
    15
    
        Тролль главный    
     26.02.13 
            ✎
    08:45 
 | 
         
        (10) чем это индекс по целочисленному полю хуже индекса по UUID?     
         | 
|||||||
| 
    16
    
        Phil_McLaren    
     26.02.13 
            ✎
    08:45 
 | 
         
        (6) не думаю, что это час или километр. все-таки это два подхода к реализации одной простой задачи. никакой катастрофы в любом случае не будет, просто интересно, какой вариант следует выбрать "по канону", так сказать
  
        (7), (9) точнее - это тип цены или цена, извлекаться будет пока только из реализации и заказа. вряд ли контекст так уж важен. Боюсь вдаваться в детали, ветка легко может уйти в сторону (8) точно не нужно  | 
|||||||
| 
    17
    
        Тролль главный    
     26.02.13 
            ✎
    08:47 
 | 
         
        (16) вариант №3
  
        три ресурса: 1. перечисление ТипХранимогоРесурса 2. число 3. ссылка  | 
|||||||
| 
    18
    
        1Сергей    
     26.02.13 
            ✎
    08:47 
 | 
         
        (6) см (14)     
         | 
|||||||
| 
    19
    
        Phil_McLaren    
     26.02.13 
            ✎
    08:48 
 | 
         
        (14) вот мне как раз это и не нравится. Логически значение одно, если нет технических "НО", то не вижу смысла класть его в два хранилища.     
         | 
|||||||
| 
    20
    
        Тролль главный    
     26.02.13 
            ✎
    08:48 
 | 
         
        (6) выигрыш в использовании места - вранье     
         | 
|||||||
| 
    21
    
        ДенисЧ    
     26.02.13 
            ✎
    08:49 
 | 
         
        справочник. 
  
        три реквизита - тип, ссылка, число. В РС - ссылка на этот справочник.  | 
|||||||
| 
    22
    
        Тролль главный    
     26.02.13 
            ✎
    08:49 
 | 
         
        (21) для всех цен? круто     
         | 
|||||||
| 
    23
    
        1Сергей    
     26.02.13 
            ✎
    08:49 
 | 
         
        (19) представь, если бы ты программировал не на 1С, а на чём-то другом подключенном к SQL. Где нет составных типов     
         | 
|||||||
| 
    24
    
        1Сергей    
     26.02.13 
            ✎
    08:50 
 | 
         
        (21) а смысл? если, например, каждая запись будет уникальной     
         | 
|||||||
| 
    25
    
        Steel_Wheel    
     26.02.13 
            ✎
    08:53 
 | 
         
        (15) Отсутствием масштабируемости. Например, нам надо завести еще один реквизит в этом "справочнике" или доп. характеристику. Колонка со ссылкой -- по прежнему одна, а колонка с доп. реквизитом идет в наш индекс.
  
        (11) Еще лучше :) (16) По "канону" сделать "обертку": - легко расширять - индекс в регистре не пухнет  | 
|||||||
| 
    26
    
        Тролль главный    
     26.02.13 
            ✎
    08:54 
 | 
         
        (25) а то, что для каждой цены отдельный элемент справочника, причем для одинаковых цен разного товара нельзя использовать скорее всего один и тот же элемент     
         | 
|||||||
| 
    27
    
        patapum    
     26.02.13 
            ✎
    08:57 
 | 
         
        (16) сделай еще один тип цены "фиксированная", когда цена задается числом пиши в этот тип цен. а в РС - всегда тип цен     
         | 
|||||||
| 
    28
    
        Phil_McLaren    
     26.02.13 
            ✎
    08:57 
 | 
         
        (21) вот это явно перебор. Особенно при записи цен
  
        (23) хороший вопрос. Не могу придумать альтернативы дополнительному полю  | 
|||||||
| 
    29
    
        Тролль главный    
     26.02.13 
            ✎
    08:58 
 | 
         
        (28) это логически на уровне 1С составное поле одно, на уровне СУБД их несколько     
         | 
|||||||
| 
    30
    
        Steel_Wheel    
     26.02.13 
            ✎
    09:01 
 | 
         
        (26) Ничего страшного, разницы нет.
  
        Гораздо хуже, если мы потом захотим добавить скидку, наценку, налог, Рекомендуемую цену, категорию покупателя и еще какую-нибудь важную информацию. Во что превратится твой регистр, особенно, если он -- один из популярных в типовой (типа "ТоварыНаСкладах")  | 
|||||||
| 
    31
    
        Steel_Wheel    
     26.02.13 
            ✎
    09:01 
 | 
         
        к 30: разницы нет по сравнению с добавлением одной колонки численного типа, т.к. ссылка -- тоже число     
         | 
|||||||
| 
    32
    
        Phil_McLaren    
     26.02.13 
            ✎
    09:04 
 | 
         
        (27) вариант хороший, но значения, стоящие за типом цен, не меняем. Либо задаем тип цены, либо абсолютную цену, чтобы потом извлечь или саму цену, или сначала тип, а затем вычислить цену.     
         | 
|||||||
| 
    33
    
        Тролль главный    
     26.02.13 
            ✎
    09:08 
 | 
         
        (30) ага, ну давайте вообще откажемся в ресурсах от примитивных типов     
         | 
|||||||
| 
    34
    
        ice777    
     26.02.13 
            ✎
    09:09 
 | 
         
        нефиг плодить лишние сущности.
  
        а так- творите что хотите, только не плакайте.) Два ресурса      | 
|||||||
| 
    35
    
        Phil_McLaren    
     26.02.13 
            ✎
    09:12 
 | 
         
        (34) эм...так "два ресурса" или "нефиг плодить"?)     
         | 
|||||||
| 
    36
    
        ice777    
     26.02.13 
            ✎
    09:19 
 | 
         
        (35) в моем понимании лишняя сущность- составной тип. 
  
        я меряю мерой не количества :)  | 
|||||||
| 
    37
    
        mzelensky    
     26.02.13 
            ✎
    09:19 
 | 
         
        Я за составной. Просто потому как это более расширяемо и меньше гемора при программировании     
        Составной тип      | 
|||||||
| 
    38
    
        H A D G E H O G s    
     26.02.13 
            ✎
    09:21 
 | 
         
        Так     
        Составной тип      | 
|||||||
| 
    39
    
        H A D G E H O G s    
     26.02.13 
            ✎
    09:21 
 | 
         
        или так     
        Два ресурса      | 
|||||||
| 
    40
    
        kosts    
     26.02.13 
            ✎
    09:21 
 | 
         
        т.к. информация разнородная     
        Два ресурса      | 
|||||||
| 
    41
    
        H A D G E H O G s    
     26.02.13 
            ✎
    09:21 
 | 
         
        И не слушай всякие мудроважные вещи про денормализацию и прочую херню.
  
        Просто сделай и посмотри что будет. Будет лажать производительность - перейди на другой вариант.  | 
|||||||
| 
    42
    
        H A D G E H O G s    
     26.02.13 
            ✎
    09:23 
 | 
         
        Ветке уже 2 часа.
  
        За это время можно было сделать все и провести тестирование. Раз 10.  | 
|||||||
| 
    43
    
        Тролль главный    
     26.02.13 
            ✎
    09:24 
 | 
         
        (37) ну и в чем расширяемость? думаешь, если ты тип расширить решишь, то достаточно только галочку нажать?
  
        а логику менять?  | 
|||||||
| 
    44
    
        mzelensky    
     26.02.13 
            ✎
    09:25 
 | 
         
        (43) а тебе логику что так что так менять! Поэтому сразу нужно писать под "потенциальное" расширение и тогда, если таки понадобится, просто еще одно условие дописывается (на новый тип данных) и все.     
         | 
|||||||
| 
    45
    
        kosts    
     26.02.13 
            ✎
    09:27 
 | 
         
        (44) Всё одно, что так, что этак, всё равно потом переделывать запросы, в случае чего...     
         | 
|||||||
| 
    46
    
        mzelensky    
     26.02.13 
            ✎
    09:29 
 | 
         
        (45) да. Просто в одном случае система перестанет работать, а в другой работать будет, но с ограничениями (т.е. ток для тих типов, для которых прописана логика) - но это я чисто про вопрос расширяемости.
  
        В любом случае запрос\логику прийдется корректировать  | 
|||||||
| 
    47
    
        Phil_McLaren    
     26.02.13 
            ✎
    09:34 
 | 
         
        (42) да я в принципе сложа руки не сижу. Сделал через составной тип, работаю себе дальше -)
  
        Может еще переделаю, вас послушаю, нагрузочно потестирую, если придется (45) только в случае с составным и выборкой через ВЫРАЗИТЬ результат все равно будет, даже если один из типов из состава ресурса убрать. Добавлять новый тип (теоретически) и того легче, запросы и запись в регистр вообще трогать не нужно будет. А если будет два ресурса, то геморроя хватит по каждому направлению  | 
|||||||
| 
    48
    
        МихаилМ    
     26.02.13 
            ✎
    09:37 
 | 
         
        если Вы проектируете прототип программы, а не рабочее решение
  
        то составной тип, как идеологически близкое решение + быстрая разработка. если рабочее решение - то выстройте ссылочную связ иерархии таблиц. нужно добиться строгой типизации. любая неодносзначность типов - зло.  | 
|||||||
| 
    49
    
        Тролль главный    
     26.02.13 
            ✎
    09:40 
 | 
         
        (46) иногда лучше перестанет, чем будет, но окажется полная хрень     
         | 
|||||||
| 
    50
    
        mzelensky    
     26.02.13 
            ✎
    09:42 
 | 
         
        (48) Не совсем согласен. У меня РС есть где в измерении объект может быть ссылка на один из 100 справочников. Т.е. тип данных "Любой справочник ссылка".
  
        Если идти по твоему решению, то получается ,что мне нужно 100 регистров сделать.  | 
|||||||
| 
    51
    
        mzelensky    
     26.02.13 
            ✎
    09:43 
 | 
         
        (49) ну решать то тебе. чего ты меня уговариваешь :)     
         | 
|||||||
| 
    52
    
        kosts    
     26.02.13 
            ✎
    09:43 
 | 
         
        (47) Пытаться предугадать будущие хотелки совершенно нет смысла. Жизнь она такая, постелишь соломки тут, а она сверху кирпич бросит =)
  
        Я бы отталкивался от того однородная информация или разнородная (цена и тип цены считаю, например, разнородной).  | 
|||||||
| 
    53
    
        Phil_McLaren    
     26.02.13 
            ✎
    09:47 
 | 
         
        (48) хм, а ссылочная связь иерархии таблиц всегда означает отсутствие нестрогой типизации? Если тип поля как потенциального источника связи может не являться ссылочным, нужно устранять неопределенность даже ценой расширения таблицы?     
         | 
|||||||
| 
    54
    
        МихаилМ    
     26.02.13 
            ✎
    09:49 
 | 
         
        (50)
  
        значит У Вас прототип программы. подобная вольность однозначо идентифицирует программу-прототип. разрабатываемую быстро и кое-как, по принципу мегагерцы все стерпят. вобщем 1с -среда разработки прототипов.  | 
|||||||
| 
    55
    
        МихаилМ    
     26.02.13 
            ✎
    09:56 
 | 
         
        (53)
  
        путем создания новой таблицы. при проектировании БД каждый чих - это прежде всего таблица. кондидат на новую сущность. и только потом кондидат на расширение с-в существующей сущности - поля таблицы. достаточно разрешить халявить и энтропия, как джин который вылетит и кувшина.  | 
|||||||
| 
    56
    
        mzelensky    
     26.02.13 
            ✎
    10:04 
 | 
         
        (54) расскажи это всем тем, кто работает с типовыми конфами 1С. Выходит, что абсолютно все уже десяток лет работают с прототипом...бедные, как мне их жалко...и ведь даже не подозревают, работают себе и все.     
         | 
|||||||
| 
    57
    
        Phil_McLaren    
     26.02.13 
            ✎
    10:05 
 | 
         
        (55) интересный Вы персонаж, уважаемый. Мысль строгая, речь сдержанно-образная, невнимательная грамматика и какая-то небрежная вальяжность. Нечастый Вы фрукт, посмею заметить -)
  
        Люди интереснее 1с) Мнение я понял, информацию принял.  | 
|||||||
| 
    58
    
        МихаилМ    
     26.02.13 
            ✎
    10:08 
 | 
         
        (57)
  
        с граммотностью - беда.  | 
|||||||
| 
    59
    
        GANR    
     26.02.13 
            ✎
    10:12 
 | 
         
        2 регистра с одинаковым набором измерений и у каждого свой ресурс     
         | 
|||||||
| 
    60
    
        Phil_McLaren    
     26.02.13 
            ✎
    10:14 
 | 
         
        (59) и преимущества? Особенно по сравнению с двумя ресурсами     
         | 
|||||||
| 
    61
    
        МихаилМ    
     26.02.13 
            ✎
    10:17 
 | 
         
        (56)
  
        все уже лет 20, начиная с 1с 2.0, работают с прототипами. бедные. и это было нормально, пока функционал типовых конфигураций не усложнился. не припомню чтобы я и Вы переходили на "ты"  | 
|||||||
| 
    62
    
        Анцеранана    
     26.02.13 
            ✎
    10:22 
 | 
         
        (0) Надо определять "по смыслу". Т.е. возможна ли ситуация (когда-нибцдь в будущем, даже если ее нет сейчас) , когда у объекта присутствуют обе характеристики одновременно -  и справочник и число...Если нет - то можно и составной тип выбрать. Если да - придется разделять сущности ибо ошибка.  Но по поводу (6) "легче программировать и  меньше места занимает" -  я бы сильно поспорил. Поэтому воздержусь.     
         | 
|||||||
| 
    63
    
        GANR    
     26.02.13 
            ✎
    10:48 
 | 
         
        (60) А вы прикиньте, что будет занимать меньше места на диске?     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |