|
OFF: Как вы пишете код? | ☑ | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0
Mentos1C
06.08.21
✎
12:34
|
Всем привет. Пьятничный вопрос, как вы пишете код? Вопрос касательно программирования обменов, преобразования данных. Есть ли какие то алгоритмы выведенные эмпирически, или же используете готовые конструкции? Как понять что алгоритм придуманный на ходу говнокод?
В мою голову закрадываются сомнения о качестве своей работы, связано это с тем, что я иногда настолько сильно усложняю алгоритм преобразования данных. Зато в процессе создания и заполнения документа в базе 1С не возникает никаких проблем. Или же стиль написания кода это что то уникальное и не стоит за это заморачиваться? Соединение таблицзначений на языке запросов //Заполнение таблиц полями соединения ТаблЕРЦ.Колонки.Добавить("ВидНачисления", Новый ОписаниеТипов("СправочникСсылка.КУ_ВидыНачисленийНаЖилье")); Для каждого Строка из ТаблЕРЦ цикл Строка.ВидНачисления = Соответствие.Получить(Строка.ServiceName); КонецЦикла; ТаблБД.Колонки.Добавить("ВидНачисления", Новый ОписаниеТипов("СправочникСсылка.КУ_ВидыНачисленийНаЖилье")); ТаблБД.Колонки.Добавить("ВидПотребления", Новый ОписаниеТипов("ПеречислениеСсылка.КУ_ВидыПотреблений")); ТаблБД.Колонки.Добавить("ВидОперации", Новый ОписаниеТипов("ПеречислениеСсылка.КУ_ВидОперацииНачисления")); Для каждого Строка из ТаблБД цикл Строка.ВидНачисления = Строка.Ссылка.ВидНачисления; Строка.ВидПотребления = Строка.Ссылка.ВидПотребления; Строка.ВидОперации = Строка.Ссылка.ВидОперации; КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ТаблЕРЦ.ВидНачисления КАК ВидНачисления, | ТаблЕРЦ.BudgetaryChargePart КАК BudgetaryChargePart, | ТаблЕРЦ.HouseCharge КАК HouseCharge, | ТаблЕРЦ.HouseRecalculation КАК HouseRecalculation, | ТаблЕРЦ.HouseVolume КАК HouseVolume, | ТаблЕРЦ.IndividualCharge КАК IndividualCharge, | ТаблЕРЦ.IndividualRecalculation КАК IndividualRecalculation, | ТаблЕРЦ.IndividualVolume КАК IndividualVolume, | ТаблЕРЦ.Tariff КАК Tariff, | ТаблЕРЦ.ServiceName КАК ServiceName, | ТаблЕРЦ.TotalCharge КАК TotalCharge, | ТаблЕРЦ.WelfareCharge КАК WelfareCharge, | ТаблЕРЦ.ВидПотребления КАК ВидПотребления, | ТаблЕРЦ.ВидОперации КАК ВидОперации |ПОМЕСТИТЬ ТаблицаИзЕРЦ |ИЗ | &ТаблЕРЦ КАК ТаблЕРЦ |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТаблБД.Ссылка КАК Ссылка, | ТаблБД.ВидНачисления КАК ВидНачисления, | ТаблБД.ВидПотребления КАК ВидПотребления, | ТаблБД.ВидОперации КАК ВидОперации |ПОМЕСТИТЬ ТаблицаБД |ИЗ | &ТаблБД КАК ТаблБД |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ТаблицаИзЕРЦ.ВидНачисления КАК ВидНачисления, | ТаблицаИзЕРЦ.BudgetaryChargePart КАК BudgetaryChargePart, | ТаблицаИзЕРЦ.HouseCharge КАК HouseCharge, | ТаблицаИзЕРЦ.HouseRecalculation КАК HouseRecalculation, | ТаблицаИзЕРЦ.HouseVolume КАК HouseVolume, | ТаблицаИзЕРЦ.IndividualCharge КАК IndividualCharge, | ТаблицаИзЕРЦ.IndividualRecalculation КАК IndividualRecalculation, | ТаблицаИзЕРЦ.IndividualVolume КАК IndividualVolume, | ТаблицаИзЕРЦ.Tariff КАК Tariff, | ТаблицаИзЕРЦ.ServiceName КАК ServiceName, | ТаблицаИзЕРЦ.TotalCharge КАК TotalCharge, | ТаблицаИзЕРЦ.WelfareCharge КАК WelfareCharge, | ТаблицаБД.Ссылка КАК Ссылка, | ТаблицаИзЕРЦ.ВидПотребления КАК ВидПотребления, | ТаблицаИзЕРЦ.ВидОперации КАК ВидОперации |ИЗ | ТаблицаИзЕРЦ КАК ТаблицаИзЕРЦ | ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаБД КАК ТаблицаБД | ПО (ТаблицаБД.ВидНачисления = ТаблицаИзЕРЦ.ВидНачисления) | И ТаблицаИзЕРЦ.ВидПотребления = ТаблицаБД.ВидПотребления | И ТаблицаИзЕРЦ.ВидОперации = ТаблицаБД.ВидОперации"; Запрос.УстановитьПараметр("ТаблБД", ТаблБД); Запрос.УстановитьПараметр("ТаблЕРЦ", ТаблЕРЦ); РезультатЗапроса = Запрос.Выполнить().Выгрузить(); Возврат РезультатЗапроса; |
||||||||||
29
unknown181538
06.08.21
✎
14:28
|
Наоборот, часто этот префикс ВТ не информативен, посколько каждая таблица ВТ, и при чтении нужно все время его отбрасывать, чтобы различать таблицы.
У каждого свой стиль |
||||||||||
43
DJ Anthon
06.08.21
✎
15:04
|
Вы ещё про эволюцию сантехников вспомните...
У каждого свой стиль |
||||||||||
52
novichok79
06.08.21
✎
16:11
|
(0) либо переносите все в код, либо в запрос.
у вас в коде 1С будет бегать по таблице, а в запросе SQL сервер... я думаю это очевидные вещи. У каждого свой стиль |
||||||||||
60
Deal with it
06.08.21
✎
16:16
|
Пишу исключительно стоя, сидя руки затекают...
У каждого свой стиль |
||||||||||
63
p rj
07.08.21
✎
17:30
|
Чем более ты владелец продукта, тем большее право ты имеешь считать свои перлы "индивидуальным стилем". Всё прочее - оттенки серого вплоть до говнокода
У каждого свой стиль |
||||||||||
65
Mentos1C
08.08.21
✎
22:18
|
Отмечу, что особого значение что за конфа нету. Можно сказать самописка) Поэтому все таки считаю (63) самым адекватным комментом) С чем я собственно полностью согласен) Одно дело когда мы дорабатываем типовой отчёт, дописываем раздельный ндс (привет обычные формы) от лица франчайзинга или от собственного лица. Другое дело когда по ТЗ задача стоит изобрести велосипед, из "китайских" запчастей. В таком случае на первый план выходит педантичность программиста, коей я не обладаю от слова совсем, и всех призываю тратить время на себя а не на буковки. Всем спасибо :)
У каждого свой стиль |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |