|
Начало и конец области в коде | ☑ | ||
---|---|---|---|---|
0
vsg-work
11.03.21
✎
09:09
|
Здравствуйте, уважаемые коллеги.
Хочу узнать ваше профессиональное мнение по поводу размещения областей на 8.3. Насколько правильно будет, если размещать области внутри процедуры или функции? Или это некорректно, и области нужно создавать только для группировки функций и процедур? У меня следующий код, и правильно ли это? &НаСервере Процедура ВыгрузитьДанныеВЛюбимыйДомНаСервере() // Справочники ДокПриемник.Организация = Открытие.Справочники.Организации.FindByCode("00-000001"); ДокПриемник.СостояниеЗаказа = Открытие.Справочники.СостоянияЗаказовПокупателей.FindByDescription("Завершен"); ДокПриемник.СтруктурнаяЕдиницаПродажи = Открытие.Справочники.СтруктурныеЕдиницы.FindByDescription("Подразделение"); ДокПриемник.СтруктурнаяЕдиницаРезерв = Открытие.Справочники.СтруктурныеЕдиницы.FindByDescription("Основной - Русский Лес"); ДокПриемник.Источник = Открытие.Справочники.ИсточникРекламы.FindByDescription("Русский Лес"); #Область СозданиеКонтрагента // Контрагент Контрагент = Открытие.Справочники.Контрагенты.FindByCode(Объект.Контрагент.Код); Если Контрагент.Пустая() Тогда КонтрагентПриемник = Открытие.Справочники.Контрагенты.CreateItem(); Иначе КонтрагентПриемник = Контрагент.GetObject(); КонецЕсли; #КонецОбласти КонецПроцедуры |
|||
1
Волшебник
11.03.21
✎
09:11
|
области есть, лесенки нет
|
|||
2
mikecool
11.03.21
✎
09:11
|
код должен соответствовать политике разработки
все остальное от лукавого |
|||
3
Kassern
11.03.21
✎
09:18
|
(0) А можно объяснить why писать code то русскими letters, то английскими (Справочники.Организации.FindByCode("00-000001"))? Какой в этом сакральный смысл?
|
|||
4
vsg-work
11.03.21
✎
09:21
|
(3) Работаю с COMConnector, не поддерживает функции на кириллице
|
|||
5
Hans
11.03.21
✎
09:30
|
Создание областей внутри процедуры я не приветствую. Только для группировки процедур и функций.
|
|||
6
Галахад
гуру
11.03.21
✎
09:31
|
(0) Есть мнение, что процедуры/функции желательно делать не очень крупными. Значит и области там не особо нужны.
|
|||
7
Hans
11.03.21
✎
09:33
|
>> #Область СозданиеКонтрагента
Ты это должен вывнести в отдельную функцию "НайтиСоздатьКонтрагента". |
|||
8
Dmitrii
гуру
11.03.21
✎
09:39
|
(0) Редкостный *авнокод.
ИМХО, гораздо важнее содержание и смысл кода, чем то как именно он структурирован. Потому что, если код грамотно написан, то его правильная структура приходит сама собой. В приведенном примере историю с поиском, созданием и получением ссылки на Контрагент я бы вынес в отдельную процедуру или функцию, а не областями выделял. Аргументы из (4) звучат как-то не очень убедительно. И вообще что касается работы через COM, то, ИМХО, использовать его можно только в двух случаях. Когда другого выхода нет (от безысходности) или когда надо написать какую-то одноразовую(!) простую обработку с подключением к другой базе и заморачиваться с нормальными механизмами нет времени и необходимости (потому что одноразовая история). Но для одноразовых разработок никто не заморачивается с оформлением и структурированием кода. Про *авнометоды типа "НайтиПоКоду" и "НайтиПоНаименованию" я вообще молчу. За это публично расстреливать надо. |
|||
9
Kassern
11.03.21
✎
09:47
|
(4) Попробуй использовать вебсервисы для обмена данными, создай структуру для заполнения данными отдельной функцией и заполняй ее из какой нить таблицы, которую пользователь заполнил. Сегодня тебе нужна организация с кодом 00-000001 а завтра совсем другая, будешь каждый раз код перелопачивать? Лучше дать людям инструмент настройки чем каждый раз самому править. В таком написании как в (0) я бы еще понял, если на 1 раз обработка, но тогда и области не нужны, согласен с (8)
|
|||
10
VladZ
11.03.21
✎
09:54
|
(0) На "Область" всем наср*ть.
А вот за Организации.FindByCode("00-000001") могут и морду набить. |
|||
11
Волшебник
11.03.21
✎
09:56
|
(10) По коду ещё можно, а вот за FindByDescription("Основной - Русский Лес") могут и морду набить
|
|||
12
Hans
11.03.21
✎
09:57
|
>> ИМХО, гораздо важнее содержание и смысл кода, чем то как именно он структурирован.
Хороший код как раз таки хорошо структурирован. Смысл кода может быть один и тот же, но в одном случае все будет в одной процедуре, в другом случае будет все разнесено по смыслу в разные процедуры. |
|||
13
vsg-work
11.03.21
✎
10:12
|
(8) (12) (11) (10) (9) (7)
Всем спасибо за ответы. На самом деле, обработка на один раз, знаю, что использование НайтиПоКоду и НайтиПоНаименованию редкое г... Но тут обработка, нужно просто тупо выгрузить всех контрагентов и договоры к ним, не хотел садиться за конвертацию, поэтому решил быструю обработку. Вопрос был задан по интересу и правильности. Можно ли так использовать или нет. И то что можно код вынести в отдельную процедуру, по-моему каждый начинающий прогер знает. |
|||
14
fisher
11.03.21
✎
10:13
|
Как по мне, полезность областей весьма относительна.
Но если уж их юзать - то в соответствии c системой стандартов 1С. Т.е. никак не для группировки внутри функций. Да и вообще при хорошем структурировании кода необходимость даже в комментариях возникает редко. |
|||
15
Кир Пластелинин
11.03.21
✎
10:13
|
кажется попадалось в стандартах разработки от 1с, что использование #Областей правильно только в рамках самого модуля, но не в рамках процедур/функций. но это не точно)
|
|||
16
Вафель
11.03.21
✎
10:15
|
лучше отдельные процедуры
|
|||
17
Волшебник
11.03.21
✎
10:15
|
(14) Согласен. Названия функций и переменных сами по себе являются комментариями
|
|||
18
ManyakRus
11.03.21
✎
10:16
|
Надо делать отдельную функцию создание контрагента а не область
|
|||
19
vsg-work
11.03.21
✎
10:16
|
(9) Спасибо за совет Вам. НА досуге попробую)
|
|||
20
fisher
11.03.21
✎
10:22
|
Цитата из системы стандартов 1С: "объемные разделы модулей рекомендуется разбивать на подразделы по функциональному признаку. Разделы и подразделы оформляются в виде областей"
Плюс ряд разделов и даже их порядок тоже стандартизирован. Ну, в любой современной типовой это легко наблюдать. |
|||
21
Тихий омут
11.03.21
✎
10:47
|
(8) типовая буха, глобальный поиск НайтиПоКоду(" - 60 вхождений :)))
|
|||
22
ДенисЧ
11.03.21
✎
10:50
|
(21) А что там ищут по коду - ты не смотрел?
|
|||
23
Aleksey
11.03.21
✎
10:51
|
(22) обычно валюту
|
|||
24
ДенисЧ
11.03.21
✎
10:51
|
В основном - классификаторы всякие. Со строгими кодами.
|
|||
25
Kesim
11.03.21
✎
11:57
|
недавно разгребал найтиПоНаименованию/коду более 180 точек в самописной конфе. 4-5 элементов поменяли наименование и не отрабатывали. помимо этого уход от этих методов ускорил открытие некоторых форм на 0,15 секунд.
так что согласен с тем что на области можно не обращать внимание, если есть найтиПоНаименованию/коду |
|||
26
vsg-work
11.03.21
✎
19:27
|
(25) А чем заменяете "НайтиПоНаименованию" или "НайтиПоКоду"? Запросом?
|
|||
27
Волшебник
11.03.21
✎
19:41
|
(26) Предопределённые элементы справочника, константы, таблицы настройки, параметры обработки, ключи
|
|||
28
fisher
12.03.21
✎
11:10
|
С тех пор как связку предопределенных с пользовательскими сделали нестрогой, вообще красота стала.
Теперь в самописке, как только возникает необходимость в НайтиПоКоду - сразу создаю предопределенный элемент и навешиваю его на нужный элемент справочника. Ну, это если нельзя решить более гибко - через ввод дополнительных признаков. |
|||
29
Kassern
22.04.21
✎
12:15
|
(0) По поводу областей внутри функций/процедур. В некоторых процедурах даже вложенные области используют)
Процедура ПриСозданииФормыПодбораНаСервере(Форма) Экспорт Параметры = Форма.Параметры; Элементы = Форма.Элементы; ЭтоФормаПодбораВДокументыПродажи = ПодборТоваровКлиентСервер.ЭтоФормаПодбораВДокументыПродажи(Форма); ЭтоФормаПодбораВДокументыЗакупки = ПодборТоваровКлиентСервер.ЭтоФормаПодбораВДокументыЗакупки(Форма); АвторизованВнешнийПользователь = ОбщегоНазначенияУТКлиентСервер.АвторизованВнешнийПользователь(); #Область ПолучитьЗначенияФункциональныхОпций Форма.ИспользоватьУпаковкиНоменклатуры = ПолучитьФункциональнуюОпцию("ИспользоватьУпаковкиНоменклатуры"); Форма.ИспользоватьХарактеристикиНоменклатуры = ПолучитьФункциональнуюОпцию("ИспользоватьХарактеристикиНоменклатуры"); Форма.ИспользоватьСтандартныйПоискПриПодбореТоваров = Константы.ИспользоватьСтандартныйПоискПриПодбореТоваров.Получить(); Если ЭтоФормаПодбораВДокументыПродажи Тогда Форма.ИспользоватьРучныеСкидкиВПродажах = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВПродажах") И НЕ АвторизованВнешнийПользователь; Форма.ИспользоватьНоменклатуруПродаваемуюСовместно = ПолучитьФункциональнуюОпцию("ИспользоватьНоменклатуруПродаваемуюСовместно"); Если Не Форма.РежимПодбораБезСоглашенийСКлиентами Тогда Форма.ИспользоватьСоглашенияСКлиентами = ПолучитьФункциональнуюОпцию("ИспользоватьСоглашенияСКлиентами"); КонецЕсли; Форма.ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения = ПолучитьФункциональнуюОпцию("ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения"); ИначеЕсли ЭтоФормаПодбораВДокументыЗакупки Тогда Форма.ИспользоватьРучныеСкидкиВЗакупках = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВЗакупках"); Форма.ИспользоватьНоменклатуруПоставщиков = ПолучитьФункциональнуюОпцию("ИспользоватьНоменклатуруПоставщиков"); КонецЕсли; #КонецОбласти #Область УстановитьСвойстваФормыПоПараметрам #Область УстановитьСкладскиеНастройкиПоПараметрам ЭтоГруппаСкладов = Справочники.Склады.ЭтоГруппа(Параметры.Склад); |
|||
30
Kassern
22.04.21
✎
12:16
|
(29) типовая конфа ут11
|
|||
31
Hans
22.04.21
✎
12:19
|
Исползовать области в процедурах и функциях это не правильно.
|
|||
32
Kassern
22.04.21
✎
12:20
|
(31) тогда почему сами разрабы 1с это делают?
|
|||
33
Hans
22.04.21
✎
12:24
|
(32) Похоже что быдлокодеры. Хотя не уверен.
|
|||
34
Kassern
22.04.21
✎
12:33
|
(33) вместо длинной портянки на несколько листов, получается более менее читаемая процедура, где все в одном месте. Видимо в некоторых случаях лучше использовать одну процедуру с областями, чем дробить ее на множество функций/процедур
https://ibb.co/K5X0PPg |
|||
35
acht
22.04.21
✎
12:34
|
33) https://its.1c.ru/db/v8std/content/456/hdoc пункт 8
Не, ты конечно можешь продолжать считать как тебе угодно, да. |
|||
36
acht
22.04.21
✎
12:35
|
(34) Да. Например текст запроса и значения устанавливаемых параметров.
|
|||
37
hhhh
22.04.21
✎
12:41
|
(30) + и в БП3 тоже есть, подтверждаю.
|
|||
38
Hans
22.04.21
✎
12:43
|
(34) Дробить как раз таки и надо, а не использовать области.
|
|||
39
Hans
22.04.21
✎
12:44
|
(36) Можно сворачивать тексты запроса. Это норм. Но сам код нельзя.
|
|||
40
Griffin
22.04.21
✎
12:45
|
#Область Скорее_всего_тут_что_-_то_есть
#КонецОбласти При сворачивании области будет так: Скорее всего тут что - то есть Немного приятнее для глаза:) |
|||
41
acht
22.04.21
✎
12:47
|
(38) Чувак. У вендора есть гайд по кодестайлу. Он использует его сам и рекомендует другим.
При таком подходе твое мнение о том что можно и что нельзя - это всего лишь твое частное мнение. И вот уже началась подгонка этого мнения. То безапелляционое "неправильно" в (31) и (33). Теперь уже "Можно сворачивать тексты запроса". Ты уж определись? |
|||
42
Hans
22.04.21
✎
12:49
|
Отладкой по таким свернутым текстам проходить пробывали? Что будет?
|
|||
43
Hans
22.04.21
✎
12:49
|
Текст запроса можно свернуть, не критично. Но я в таком случае вынесу текст запроса в отдельную функцию и все.
|
|||
44
Kassern
22.04.21
✎
12:50
|
(42) а что с отладкой не так? Она спокойно по областям ходит
|
|||
45
Kassern
22.04.21
✎
12:51
|
(44) и можно развернуть нужную область и отлаживать уже ее.
|
|||
46
Hans
22.04.21
✎
12:51
|
Процедуры и фунции должны быть размером в один два экрана. А на такие размеры не нужны никакие области. Такая процедура может в голове уместиться и ее легко отлаживать.
|
|||
47
acht
22.04.21
✎
12:53
|
(46) Чистный и незамутненный теоретик =)
Ты БСП когда нибудь внедрял, например? Когда она свои обработчики в формы там записывает... |
|||
48
Волшебник
22.04.21
✎
12:54
|
(46) Предлагаю 2-3 экрана с книжной ориентацией.
|
|||
49
Hans
22.04.21
✎
12:55
|
(44) Области мешают отладке. При хождении по шагам - заходит в области если они свернутые.
|
|||
50
Hans
22.04.21
✎
12:56
|
(47) А что там с обработчиками?
|
|||
51
Hans
22.04.21
✎
12:59
|
(47) Я не гуру, не экперт. Но мне почти всегда удается писать код с процедурами край в два экрана максимум.
|
|||
52
Hans
22.04.21
✎
13:03
|
Особо радуют те кто пишет:
Если 5 экранов кода иначеЕсли 5 экранов кода иначе КонецЕсли; |
|||
53
ildary
22.04.21
✎
13:06
|
(49) Как области мешают отладке? Если при хождении по шагам конфигуратор сам развернет область.
|
|||
54
Hans
22.04.21
✎
13:09
|
(53) а в процедуру хочешь заходи, не хочешь - не заходи.
|
|||
55
banco
22.04.21
✎
13:12
|
(14) В стандарте разрешается. В типовых тоже встречал области внутри процедуры.
https://its.1c.ru/db/v8std#content:456:hdoc Тексты больших процедур и функций можно разбивать на отдельные сворачиваемые области. |
|||
56
acht
22.04.21
✎
13:23
|
(50) Они автоматически вставляют туда или обновляют вызовы групп своих методов.
Хотя я сейчас заглянул, они похоже на области еще не перешли, все еще используют маркеры типа // СтандартныеПодсистемы.ВерсионированиеОбъектов ... // Конец СтандартныеПодсистемы.ВерсионированиеОбъектов (51) Великолепно! Осталось только осознать, что бест практикс, к которым относятся правила использования областей, они составлены организацией, у которой немного побольше опыта применения в конкретных боевых условия. Ты, конечно, умничка, только пока маленькая и локальная. |
|||
57
fisher
22.04.21
✎
13:26
|
(55) Да, действительно...
Спасибо за замечание, буду знать. Но все равно мне это не кажется оправданным. Мне удобнее, когда внутри функции ничего не сворачивается. В идеале функции вообще не должны быть большими, а этапы которые не кажется оправданным выносить в отдельные процедуры привычнее комментариями выделять. |
|||
58
skpoo
22.04.21
✎
13:31
|
(7) И гонять туда сюда процедуры/функции через стек?
|
|||
59
fisher
22.04.21
✎
13:34
|
(58) Да. Сэкономленные микросекунды ты бережно пронесешь до ближайшего обращения к БД.
|
|||
60
Kassern
22.04.21
✎
13:41
|
(57) я, если честно, сам пока не могу понять логику использования областей, где-то обернут в область стек процедур, где-то запихнут в отдельную процедуру с параметром формы.
К примеру, все тот же модуль из ут11: Параметры = Форма.Параметры; Элементы = Форма.Элементы; ЭтоФормаПодбораВДокументыПродажи = ПодборТоваровКлиентСервер.ЭтоФормаПодбораВДокументыПродажи(Форма); ЭтоФормаПодбораВДокументыЗакупки = ПодборТоваровКлиентСервер.ЭтоФормаПодбораВДокументыЗакупки(Форма); АвторизованВнешнийПользователь = ОбщегоНазначенияУТКлиентСервер.АвторизованВнешнийПользователь(); #Область ПолучитьЗначенияФункциональныхОпций Форма.ИспользоватьУпаковкиНоменклатуры = ПолучитьФункциональнуюОпцию("ИспользоватьУпаковкиНоменклатуры"); Форма.ИспользоватьХарактеристикиНоменклатуры = ПолучитьФункциональнуюОпцию("ИспользоватьХарактеристикиНоменклатуры"); Форма.ИспользоватьСтандартныйПоискПриПодбореТоваров = Константы.ИспользоватьСтандартныйПоискПриПодбореТоваров.Получить(); Если ЭтоФормаПодбораВДокументыПродажи Тогда Форма.ИспользоватьРучныеСкидкиВПродажах = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВПродажах") И НЕ АвторизованВнешнийПользователь; Форма.ИспользоватьНоменклатуруПродаваемуюСовместно = ПолучитьФункциональнуюОпцию("ИспользоватьНоменклатуруПродаваемуюСовместно"); Если Не Форма.РежимПодбораБезСоглашенийСКлиентами Тогда Форма.ИспользоватьСоглашенияСКлиентами = ПолучитьФункциональнуюОпцию("ИспользоватьСоглашенияСКлиентами"); КонецЕсли; Форма.ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения = ПолучитьФункциональнуюОпцию("ИспользоватьРасширеннуюФормуПодбораКоличестваИВариантовОбеспечения"); ИначеЕсли ЭтоФормаПодбораВДокументыЗакупки Тогда Форма.ИспользоватьРучныеСкидкиВЗакупках = ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВЗакупках"); Форма.ИспользоватьНоменклатуруПартнеров = ПолучитьФункциональнуюОпцию("ИспользоватьНоменклатуруПартнеров"); КонецЕсли; #КонецОбласти Вот тут могли же создать процедуру ПолучитьЗначенияФункциональныхОпций(Форма) и в нее это пихнуть. В этой же процедуре где области, есть следующая строчка: УстановитьЗначенияПоНастройкамФормы(Форма); С тем же успехом они могли создать область #УстановитьЗначенияПоНастройкамФормы и запихнуть все туда... |
|||
61
Kassern
22.04.21
✎
13:44
|
(60) и да, они еще накосячили, назвали 2 области одинаково в этой процедуре, видимо копипастили, внутрянку заменили, а область не переименовали)
#Область УстановитьОтборОсобенностьУчета Если Параметры.Свойство("ОсобенностьУчета") Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Форма.СписокНоменклатура, "Ссылка.ОсобенностьУчета", Параметры.ОсобенностьУчета, ВидСравненияКомпоновкиДанных.Равно, "ОтборОсобенностьУчета",ЗначениеЗаполнено(Параметры.ОсобенностьУчета)); КонецЕсли; #КонецОбласти #Область УстановитьОтборОсобенностьУчета Если Параметры.Свойство("КоллекцияНоменклатуры") Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Форма.СписокНоменклатура, "Ссылка.КоллекцияНоменклатуры", Параметры.КоллекцияНоменклатуры, ВидСравненияКомпоновкиДанных.Равно, "ОтборКоллекцияНоменклатуры",ЗначениеЗаполнено(Параметры.КоллекцияНоменклатуры)); КонецЕсли; #КонецОбласти |
|||
62
Hans
22.04.21
✎
14:00
|
(56) Даже если они будут туда вставлять области, то это не для того что бы код был свернут. Они в формы вставляют небольшие куски кода.
|
|||
63
Hans
22.04.21
✎
14:20
|
Я так называемый гугл программист и то такое понимаю.
|
|||
64
fisher
22.04.21
✎
14:41
|
(60) Ну так декомпозиция кода - это вопрос во многом религиозный. Поэтому как карта легла, так и есть. А нужный аспект нужно выделить в любом случае. Неважно, декомпозировался он в отдельную функцию или нет.
|
|||
65
fisher
22.04.21
✎
14:49
|
(64) + Но лично я бы конечно предпочел такие вещи по возможности в отдельные функции выносить.
|
|||
66
Hans
22.04.21
✎
15:08
|
(65) Спец литературу по декомпозиции не знаешь случаем?
|
|||
67
Hans
22.04.21
✎
15:34
|
Функция ЗначениеВФайл(<ИмяФайла>, <Значение>) пример быдлокодинга разработчиков платформы?
|
|||
68
Волшебник
22.04.21
✎
15:35
|
(67) Deprecated - устарело, осуждаемо
Депрекация — в программировании некоторое указание нежелательности применения какой-либо части программы, процедуры или языка программирования. |
|||
69
Hans
22.04.21
✎
15:41
|
(68) Активно используем.
|
|||
70
fisher
22.04.21
✎
17:55
|
(66) Прям вот отдельно по процедурному программированию не подскажу. В литературе по ООП много про декомпозицию. Многое ведь упирается в особенности более богатых языков - там не грех и подсмотреть best practices когда уже есть некоторое понимание. Ну там строгая типизация, классы, интерфейсы, функции высшего порядка, инъекция зависимостей и прочие факторы. А в 1С же фактически процедурное программирование. Если регулярно приходится рефакторить собственный код, то все большей частью интуитивно приходит и упирается в банальные вещи, к которым просто надо прийти своей шкурой. Через "лень - двигатель прогресса".
Фактически все сводится к ясным наименованиям сущностей и вынесению максимума функциональности в простые однозадачные чистые функции без сайдэффектов. Я часто больше умственных усилий трачу на придумывание хорошего имени, чем на собственно кодинг. Это повышает ясность мышления. В процессе очень многое автоматически проясняется. Не зря ведь "как вы яхту назовете, так она и поплывет". Когда думаешь, насколько хорошо данное название отражает сущность - часто понимаешь что не только назвать нужно иначе, но и реализовывать тоже. Часто при этом приходит в голову, как можно дешево повысить универсальность кода. Когда пытаешься писать самодокументируемый код, то грамотная декомпозиция проявляется автоматически, как сайдэффект :) |
|||
71
Мимохожий Однако
22.04.21
✎
18:08
|
Если функция будет использоваться только один раз в коде, то её можно и не создавать. В этом случае включение в область самое то.))
|
|||
72
Cthulhu
22.04.21
✎
18:12
|
выше много кто прав.
если внутри процедуры/функции выделена область - значит это временное решение, "костыль" и напоминание о том, что содержимое области необходимо вынести в отдельную процедуру (реже - функцию). точка. |
|||
73
Волшебник
22.04.21
✎
18:19
|
(69) В 1С скоро добавят атрибуты. Истину вам говорю!
|
|||
74
acht
22.04.21
✎
21:46
|
(73) &Причиндал РежимСовместимости("Авто")
|
|||
75
Mort
22.04.21
✎
21:56
|
Запрос.Текст =
[Область текст запроса] гораздо удобнее чем: Запрос.Текст = ПростоВернутьОченьДлинныйЛитерал(); Хотя если текст запроса собирается по кускам, то выносить стоит. |
|||
76
acht
22.04.21
✎
22:04
|
(72) Еще за кулисами есть сценарий
#Область Изменил_Иванов_Иван_Иванович_1_апреля_45_размер_ноги #КонецОбласти Но на нашей сцене все пишут чистейший код и срут бабочками |
|||
77
Kassern
23.04.21
✎
09:02
|
(76) а это нормальная практика свои вставки кода через область выделять?
|
|||
78
Kassern
23.04.21
✎
09:03
|
(77) или это все от лукавого?)
|
|||
79
acht
23.04.21
✎
09:09
|
(77) Что есть "нормальность"?
|
|||
80
fisher
23.04.21
✎
09:18
|
(77) Почему нет. Сразу бросается в глаза на фоне обычных комментариев. Другое дело, что в идеале это вообще не нужно (если конфигурация сопровождается через удобную VCS). Но...
Если это типовая с единичными правками, сопровождаемая от случая к случаю самыми разными подрядчиками - то вариантов нет. |
|||
81
Hans
23.04.21
✎
09:21
|
(78) От лукавого. В сравнении объединении области отдельно показывают.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |