Измерение РС - строка #777338


#0 by Елена Троянская
Столкнулась с доработкой базы, где измерение регистра сведений - строка. Длина 25 символов. Это номер входного билета, он уникален, в день может быть около 1000 новых билетов. Этот номер билета в виде строки присутствует во многих других объектах - в документах, как измерение другого регистра сведений, как реквизит регистра накопления, уже созданы отчеты с этими данными, а также обработки обмена с другими системами (не 1С). Мне сейчас надо принять решение - следовать уже существующей логике и делать измерение моего РС тоже строкой (хотя по стандартам 1С это неправильно) или создавать свою систему объектов и связывать с существующей. Времени на глобальный рефкторинг старого кода (и, соответственно, обработок конвертации старых данных в новые) сейчас нет, и, возможно, несколько месяцев не будет. Какое решение целесообразнее принять в таком случае - делать как правильно или делать как сделали, а через несколько месяцев вернуться к переделке всего и вся? Или 25 символов - это не 500 и можно оставить? Что бы вы посоветовали и почему?
#1 by vermazar
Делать как сделали. Возвращаться к переделке не нужно.
#2 by vde69
правильно будет сделать справочник "билеты" и все реквизиты заменить на ссылки. обьяснять почему так надо - долго, просто поверь...
#3 by ПиН
согласен с - один из простейших способов решения проблемы
#4 by Evpatiy
+++++
#5 by Елена Троянская
Я знаю, что так правильно, знаю, почему, и с нуля делала бы так же. Но ситуация другая.
#6 by Злопчинский
нет, сказал А - говори Б экономия в объеме от такой замены будет ничтожной. индексация - один фиг, что строка, что ссылка. скорее всего не прав, хотелось бы услушать напутствие
#7 by Господин ПЖ
надо смотреть на пару шагов вперед... какие потребности могут возникнуть ссылка на справочник более перспективна
#8 by Evpatiy
#9 by Злопчинский
не показатель, к этому надо стремится, но это вообщем не является обязательным.
#10 by Господин ПЖ
стесняюсь спросить - причем тут НФ? тут выделять сущности незачем - от нее только один реквизит есть - номер
#11 by Evpatiy
Да вообще нет ничего обязательного кроме дышать, пить h20 и иногда глотать органические соединения.
#12 by John83
дык если 25 символов, то норм (вроде даже где-то в типовой видел), а вот если неограниченная длина, то да
#13 by vde69
1. размер в составном индексе строки больше чем ссылки 2. контроль ссылочной целостности 3. сортировка работает по разному на разных средах 4. часть таблиц можно запихнуть внутрь справочника (например дату билета, и прочее) могу продолжать....
#14 by Cyberhawk
5. В случае потребности добавления в измерения регистров еще каких-нибудь строк можно наткнуться на ограничение длины индекса СУБД
#15 by Елена Троянская
Да, я уже столкнулась с тем, что изменение длины номера билета превращается в геморрой. Но на ближайшие пару месяцев мой график работы довольно жесткий, и переделку везде номеров на ссылку я туда не втисну. Либо делаю как есть единообразно, либо свои дописки делаю со справочником, и при интеграции их с существующими, слежу, где у меня строка, где справочник. Во втором случае еще есть опасность, что если заказчик не согласится с необходимостью отдавать деньги за рефакторинг, то у него так и останется часть объектов со строкой, часть со справочником, и пришедший на мое место новый 1сник проклянёт меня страшными прокляниями. Интересует не академическая правильность, а чисто практическая.
#16 by Evpatiy
Чисто практически: 1) Я не делаю говна даже за деньги, потому что репутация/религия/совесть/бзик (нужное подчеркнуть); 2) Любой каприз за ваши деньги. Выбираете что вам ближе и ура.
#17 by Злопчинский
" размер в составном индексе строки больше чем ссылки " - почему, в данном случае
#18 by Злопчинский
понимаешь, вот ну нахрена мне мелкий костыль, который сделан с соблюдением всего и вся и стоить он будет 40 тыс, если ему красная цена - 3 тыс?
#19 by Это_mike
потом этот мелкий костыль принесет крупный геморрой...
#20 by Злопчинский
если поджимает - то делаешь так как было, по принципу - ЕДИНООБРАЗИЕ - везде строки - это на порядок лучше (исправить потом при возможности) чем часть строки, а часть типа налепит ссылками.
#21 by Злопчинский
а ты его не трогай... ;-)
#22 by Злопчинский
у меня таких "костылей" есть - кучу лет стоят - и только сейчас начал задумываться о рефакторинге - ибо стоимость костыля на тогда - была на порядки меньше чем некостыля. баланс - качество-время-деньги - и ничего иного.
#23 by Evpatiy
Типа пошлет типа на поиски <зачеркнуто>копрокодеров</зачеркнуто> людей с менее принципиальной позицией по вопросам рабочей этики.
#24 by ПиН
"и переделку везде номеров на ссылку я туда не втисну" - разве это так сложно?
#25 by Злопчинский
как пример. есть у меня псевдожурнал на ТЗ. работает. но некузяво и возможности сильно коряво реализованы. Перетер с местными спецами - пошел к начальству - говорю - давайте сделаем по уму,с нормальными фильтрами, красивенько, удобненько, комфортнее будет (на ТП сделать надо) - цена вопроса всего-то ~10 тыс. Руководство сказало - НЕ НАДО! и чего мне теперь - гумусом изойти, от того что руководство не понимает необходимости делания "как надо"..? или даром работать?
#26 by Cyberhawk
А ты доходчиво рассказывал им про финансовый выхлоп от этой переделки?
#27 by Злопчинский
а какой финансовый выхлоп от замены по сабжу?
#28 by Злопчинский
я вообщем не возражаю о необходимости сабжа, но "..не все йогурты одинаково полезны..", имеет смысл смотреть еще и принцип достаточности (или наоборот?)
#29 by Елена Троянская
Объектов с "неправильными" номерами несколько десятков. Все они завязаны на несколько обменов с разными системами (не 1С). Все это надо тестировать, прежде чем что-либо менять. У меня уже есть список "горящих" задач, есть бюджет, есть сроки. Чисто техническую задачу, не облегчающую работу пользователей, никто в приоритеты сейчас не поставит. Такой баланс ресурсов. После решения "горящих" задач- все может быть. Бесплатно работать не готова. Сверхурочно тоже. Я не фикси.
#30 by Злопчинский
ты понимаешь, что ты сейчас тру-программерам в душу плюнула? ;-) причем смачно! они же готовы делать все правильно и задешево!
#31 by Cyberhawk
Так поэтому тебя и бороданули
#32 by Злопчинский
ты предлагаешь мне посчитать финансовый выхлоп, провести обследование и написать ТЗ - бесплатно?
#33 by Cyberhawk
Вроде не это обсуждали
#34 by Злопчинский
обсуждаем трудозатраты на то чтобы делать "правильно"... внезапно оказывается что все имеет свою цену...
#35 by ПиН
вопросы производительности на высоконагруженных системах должны быть приоритетными, иначе рано или поздно это все закончится куда более большими вложениями и потерями...
#36 by Cyberhawk
"внезапно оказывается" // Почему внезапно-то? Тот, кто заказывает банкет (платит), должен же понимать, за что (зачем) он платит, разве не?
#37 by ptiz
Надо с другого конца подходить, говоришь: "Есть возможность сэкономить N рублей в будущем, если потратить N/3 сейчас. Будем делать?".
#38 by Evpatiy
>> и чего мне теперь - гумусом изойти, от того что руководство не понимает необходимости делания "как надо"..? или даром работать? Не надо было делать >>псевдожурнал на ТЗ. работает. но некузяво и возможности сильно коряво реализованы Чтобы потом не было необходимости доказывать начальству что оно должно второй раз за ту же работу заплатить.
#39 by Evpatiy
к
#40 by Елена Троянская
Это верно. Поэтому пока склоняюсь к варианту рефакторинга, но через пару месяцев.
#41 by HardBall
Нормальная "залепуха". Возможно по архитектуре это был "интерфейс" с чужой системой. Потом обломались и стали его юзать как свою таблицу.
#42 by Злопчинский
вот ты умный. сидел бы я тупобыдлокодером, программил бы по заданиям - зашибись былобы. на тот момент когда это надо было делать - там не то что куча гумуса, там вообще страшно было, так что на тот момент псевдожурнал на ТЗ - это вообще был "алмаз неграненый"... ;-)
#43 by Злопчинский
какие профиты финансовые от сабжа рефакторинга?
#44 by Елена Троянская
Да, примерно так буду обосновывать
#45 by Елена Троянская
Всем спасибо за обсуждение.
#46 by Evpatiy
С таким подходом быдлокодить по заданиям как раз самое оно. Пилишь костыль, втыкаешь поглубже в систему, "и так сойдет"!
#47 by vde69
кстати как там у Вас дела? база доросла до терабайта?
#48 by Злопчинский
ну а нахрена мне инструмент, с которым работать невозможно? отдал я как-то на аутсорс мелкую задачку. к прогу - претензий нет. сделал все красиво. одно беда - манагерам с этим работать можно. но лучше повеситься. и нахрена мне такие "нормальные формы"..? я лучше впилю рабочий костыль. будет время - отрефакторим, а может к тому времени как рефакторить - костыль уже и не нужен будет...
#49 by vde69
представь нужно удалить билет... как ты будешь искать все таблицы? Таким образом в таких базах накапливаются фантомные записи, в результате проблемы могут появится самого разного характера, в том числе и несущие фин. потери... а если это справочник - то система не даст его удалить пока на него есть ссылки...
#50 by ПиН
бух - да ))) вроде работает все, значит не зря тут сидим...
#51 by Evpatiy
Вам это абсолютно не нужно. Это нужно вашему заказчику. И вы можете по-честному делать так как нужно заказчику, который оплачивает вашу работу, своевременно предупреждая о рисках. А можете делать как нужно лично вам.
#52 by Это_mike
большинство заказчиков не подозревает о рисках, таящихся внутри "быстрых и дешевых решений". Ну, или понимает, но очень хочет, чтоб все было быстро, дешево и без рисков...
#53 by Cyberhawk
Из плохо осязаемого, например - это увеличение скорости/качества и снижение стоимости последующих доработок. Допустим, у вас там план по доработкам расписан на год вперед (сейчас склад пилим, потом продажи, потом логистику-маршрутизацию, потом закупки). Из более осязаемого - упереться в техническое ограничение на какой-нибудь текущей доработке (в текущем периоде), либо увеличение вероятности этого события с каждой доработкой. Из хорошо осязаемого - высокая стоимость очередной доработки, когда "костыли" сувать уже некуда... Правда, это может и не наступить вовсе.
#54 by Вуглускр1991
Строки в РС - нормальное решение, не парься, во многом даже лучше ненужной сущности в виде справочника.
#55 by Вуглускр1991
+1 Если есть дальнейший ход сущности. Если есть кроссовые ссылки, то строка в РС не катит.
#56 by Это_mike
как раз есть сущность - "билет", имеющий признак - "номер" типа "строка-25"
#57 by EugeniaK
Не очень хорошо, но не критично. Работает - не трожь. Возвращаться не надо. Пусть работает. Разве что если ты там фикси и больше заняться нечем.
#58 by Это_mike
люблю франчей. "сделаем наполовину, зато через *опу"©
#59 by vde69
франчи делают так не половину а все :)))
#60 by EugeniaK
Вопрос не в "сделать", вопрос в "сломать работающее". Не надо ломать лишнее.
#61 by vde69
А я говорю - резать! резать не дожидаясь перитонита!!! я такие говно-решения всегда стараюсь переделать... и пока все еще живы :)
#62 by Cyberhawk
Это ты будучи на фиксе так делаешь или на сдельной оплате продавливаешь рефакторинг / улучшение уже работающего какое-то время кода? Но и на фиксе не всем на такое добро дают (пример в )
#63 by EugeniaK
Идеала не существует. Всегда есть, что улучшать. Только обычно это нецелесообразно. 1. Это лишние деньги. 2. Во вторых есть вероятность что-то поламать. Разве что это фикси и ты там постоянно работаешь. ИМХО, придти к клиенту и без необходимости начать все рефакторить на почасовке это вредительство.
#64 by vde69
и на фикси так делал и работая во франче так делал для Главмосстроя.... и заказчики были довольны, меня до сих пор пытаются к себе зазвать, именно по тому, что сделал так, что хорошо стало всем...
#65 by Cyberhawk
"без необходимости начать все рефакторить" // Тут в ветке, насколько понял, речь не совсем об этом, а о том, чтобы своими доработками не усугублять. Поэтому и возникает необходимость рефакторинга (чтобы все было стройно, едино и понятно)
#66 by Это_mike
дело не в "ломать лишнее". дело в "делать правильно". если есть отдельная сущность - она и должна быть отдельной сущностью. а подход франчей - "из г**на и палок, но на почасовке".... ну я вот так не смог. Любо нормально, либо никак.   Хотя я вполне понимаю суть франча - сейчас возьмут деньги за то, что сделают дерьмово, после возьмут деньги за анализ, почему ж сделано дерьмово, возьмут деньги за план как сделать правильно, и возьмут деньги за рефакторинг.
#67 by Злопчинский
задача какая? - заработать денег! деньги зарабатываются? зарабатываются! я уже приводил пример своего лавочника - впилили ему эквайринг в 77 (мне влом деалть) - ну и улей... сижу, правлю ошибки... причем нехеровые такие ошибки...
#68 by Злопчинский
у мну например много задач которые в части рефакторинга требуется ускорение (или пересмотр архитектурного решения) - функционал написан был быстро, потестили, устраивает, теперь надо ускорить... часть таких доработок неускоряются никогда - ибо устраивает...
#69 by MishaD
Посмотрел сейчас как у нас построена схема работы с БСО. И надо же, в регистре накопления измерение - строка. А самое интересное, все прекрасно работает, никто не жалуется.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С