Универсальный редактор данных (УРД)

0. 187 27.08.21 15:02 Сейчас в теме
Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

Перейти к публикации

Лучшие комментарии
21. AntonProgma 34 29.08.21 13:50 Сейчас в теме
(6) "Желтая" магия что-то такое и подразумевает по аналогии с желтым снегом.
AlvaroD; bidond; so-quest; IntellXeon; Kovekh; korefano; Adeptus; +7 Ответить
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. tormozit 6441 27.08.21 15:53 Сейчас в теме
Не качал. Но по картинкам видно, что автор старался. Много мелочей реализовал и продумал.
kaliuzhnyi; papche; cleaner_it; cprit; +4 Ответить
2. Yashazz 4120 27.08.21 15:55 Сейчас в теме
(1) что не отменяет факта - это баян и велосипед, и как любой в своём классе, опасен в руках юзера.

Все мы когда-то писали что-то подобное)
user595646_formsg2007; cleaner_it; +2 Ответить
20. AntonProgma 34 29.08.21 13:47 Сейчас в теме
3. Yashazz 4120 27.08.21 15:57 Сейчас в теме
Да, достойная работа в ряду аналогов. Внутренности не смотрел, т.к. качать незачем, но по рассмотрению картинок - одна из лучших разработок в этой категории.
Браво.
4. Hans 1 28.08.21 23:37 Сейчас в теме
ИмяФайла = КаталогВременныхФайлов() 
					+ Формат(ТекущаяДата(), "ДФ=yyyyMMdd_HHmmss") 
					+ "_" + Объект.ИмяОбъекта
					+ ?(СтрНайти(ИмяКоманды, "Таблицу") > 0, "_" + ЭтаФорма.ТекущийЭлемент.Имя, "")
					+ "_" + ГУИД + "." + НРег(Формат);


На текущий момент это считается конченым быдлокодингом.

В форме почему все не сворачивается в области?
Много комментированного кода.

Что ты этим проверяешь. Выдели в функцию и назови ЭтоГУИД()

//Поиск по ГУИД 
	//bf5218b0-649f-11e8-be4f-6c626d9e6dd2
	ИначеЕсли Объект.ТипОбъекта <> ""
				И СтрДлина(Текст) = 36 
				И Сред(Текст, 9, 1) = "-" 
				И Сред(Текст, 14, 1) = "-" 
				И Сред(Текст, 19, 1) = "-" 
				И Сред(Текст, 24, 1) = "-" Тогда
imaster; Hatson; BomjBandit; pavlov_dv; Evg-Lylyk; +5 6 Ответить
5. МимохожийОднако 137 29.08.21 07:05 Сейчас в теме
(4) Если показанный код работает, то придирки лишние. Не нравится код- перепиши.
Если кодировщика не остановить, он будет править до бесконечности.
Hatson; chg; AnryMc; Трактор; itoptimum; torbeev; rpgshnik; PowerBoy; +8 Ответить
6. Hans 1 29.08.21 09:14 Сейчас в теме
(5) если бы он не написал

Ну и конечно же оптимальный, изящный и невероятно красивый код от настоящего адепта желтой магии.


Я бы нафиг туда не полез. Захотел посмотреть что значит оптимальный код. Код хороший. Но погрешности есть.
21. AntonProgma 34 29.08.21 13:50 Сейчас в теме
(6) "Желтая" магия что-то такое и подразумевает по аналогии с желтым снегом.
AlvaroD; bidond; so-quest; IntellXeon; Kovekh; korefano; Adeptus; +7 Ответить
23. Yashazz 4120 29.08.21 14:14 Сейчас в теме
(21) Лучшей фразой на эту тему я считаю диалог:
"Бухгалтер, вламываясь к айтишникам: - Вот у меня тут выделения жёлтым, я же говорила!
Одинэснег, не отрываясь от монитора: - Если выделения, да ещё жёлтым, так это к доктору надо..."
triviumfan; ivnik; +2 Ответить
30. &rew 31 30.08.21 07:11 Сейчас в теме
(23)Был случай. Звонок по телефону:
Б: У меня ничего не работает!
П: Что не работает?
Б: НИЧЕГО!!!!
П: Подойдите к двери.
Б: Что?
П: Подойдите к двери... Подошли?
Б: Да.
П. На стене выключатель. Проверьте работает ли электричество.
Б: Вы что издеваетесь?!!!
П: Вернемся к вопросу - что не работает....
segatron; chg; anderson; TORIS; Upiterus; dime2; AnryMc; +7 Ответить
7. Yashazz 4120 29.08.21 09:26 Сейчас в теме
(4) Ой. Ну это свинство и маразм, а не "оптимальный, изящный и невероятно красивый". Это жуть. Такое вообще, если не надо кроссплатформенно, регуляркой проверяют по шаблону. А если уж посимвольно, то надо ещё цифробуквенное проверять, иначе вот возьмут и сделают вроде "!!62+9*", дефисы в нужных местах, а по факту ни разу не гуид.
Или вообще так:
Попытка ГУИД=Новый УникальныйИдентификатор(Текст) Исключение Сообщить("Нифига не гуид!") КонецПопытки;
8. avbolshakov 29.08.21 10:11 Сейчас в теме
(4) Вы не подскажите, что не так с формированием имени файла? Конкатенация вместо СтрШаблон? Или что слишком сложное название файла? ps я не ерничаю, просто хотел для себя понять как надо делать
9. Hans 1 29.08.21 10:42 Сейчас в теме
(8) Я лично конкатенацию стараюсь не использовать и не люблю такое читать. Только СтрШаблон.

КаталогВременныхФайлов() 
                    + Формат(ТекущаяДата(), "ДФ=yyyyMMdd_HHmmss") 
                    + "_" + Объект.ИмяОбъекта
                    + ?(СтрНайти(ИмяКоманды, "Таблицу") > 0, "_" + ЭтаФорма.ТекущийЭлемент.Имя, "")
                    + "_" + ГУИД + "." + НРег(Формат);


ИмяФайла = СтрШаблон("%1_%2_%3_%4.%5", ......);
Aleskey_K; pavlov_dv; +2 6 Ответить
10. avbolshakov 29.08.21 10:50 Сейчас в теме
(9) Да, согласен. СтрШаблон более читабельнее (правда его вроде только с 8.3.6)
14. Hans 1 29.08.21 11:24 Сейчас в теме
(10)
СтрШаблон более читабельнее (правда его вроде только с 8.3.6)


Пилю свою по быстрому если в платформе нет.

Функция СтрШаб(Знач ИсхСтрока, Пар1 = "", Пар2 = "", Пар3 = "", Пар4 = "", Пар5 = "", Пар6 = "", Пар7 = "")

Строка = ИсхСтрока;

Строка = СтрЗаменить(Строка, "%1", Пар1);
Строка = СтрЗаменить(Строка, "%2", Пар2);
Строка = СтрЗаменить(Строка, "%3", Пар3);
Строка = СтрЗаменить(Строка, "%4", Пар4);
Строка = СтрЗаменить(Строка, "%5", Пар5);
Строка = СтрЗаменить(Строка, "%6", Пар6);
Строка = СтрЗаменить(Строка, "%7", Пар7);

Возврат Строка;

КонецФункции
Показать
avbolshakov; +1 1 Ответить
22. AntonProgma 34 29.08.21 13:53 Сейчас в теме
(14) Вот, кстати, интересно, а почему не в цикле СтрЗаменить?
27. Hans 1 29.08.21 22:33 Сейчас в теме
Не знаю даже как тут в цикле сделать. Изменять в цикле имя переменной и потом через Выполнить?
28. tamepjlah 2 30.08.21 05:21 Сейчас в теме
(27) Предположу, что вот так. Только зачем?..

Функция СтрШаб(Знач ИсхСтрока, Пар1 = "", Пар2 = "", Пар3 = "", Пар4 = "", Пар5 = "", Пар6 = "", Пар7 = "")

	Строка = ИсхСтрока;

	Для Счетчик = 1 По 7 Цикл
		Если ЗначениеЗаполнено(Вычислить("Пар" + Счетчик)) Тогда
			Строка = СтрЗаменить(Строка, "%" + Счетчик, Вычислить("Пар" + Счетчик));
		КонецЕсли; 
	КонецЦикла; 

	Возврат Строка;

КонецФункции
Показать
35. AntonProgma 34 30.08.21 10:35 Сейчас в теме
(28) ну почти. Только вычисление значения лучше один раз делать; вообще проверка на заполненность параметра не нужна (не предполагается оставлять в тексте %n); замены лучше производить в обратном порядке, тогда %1 не переедет %12.

Запись повторяющиеся действий через цикл имеет некоторые преимущеста. Например, так гарантируется последовательность счетчика, уменьшается возможность опечатки, читается легче, упрощается изменение количества параметров. Само собой, 2-3 несложных действия можно не оформлять циклом, но даже 2 сложных - желательно.
tamepjlah; +1 Ответить
39. tamepjlah 2 31.08.21 04:34 Сейчас в теме
(35)
вычисление значения лучше один раз делать

Согласен, но тут не такие большие объемы данных будут, чтобы сильно загрузить систему (хотя было бы интересно провести тесты на 100 тыс. - 1 млн. параметров)

вообще проверка на заполненность параметра не нужна

отголоски моего внутреннего контрол-фрика

замены лучше производить в обратном порядке, тогда %1 не переедет %12

Согласен, но и в коде без цикла такая же проблема. Я отталкивался от того, что нужно переписать существующую функцию. Большое количество переменных я бы куда-нибудь, например, в структуру запихнул.
А вообще, код написан на коленке, распивая кофе за 10 минут до собрания.
42. AntonProgma 34 31.08.21 09:56 Сейчас в теме
(39) само собой, мы сейчас занимаемся занудством, но, коллега, давайте исходить из предположения, что повторяющиеся действия предпочтительнее оформлять циклом.
43. tamepjlah 2 01.09.21 04:30 Сейчас в теме
(42) Абсолютно согласен и полностью поддерживаю.
24. Yashazz 4120 29.08.21 14:17 Сейчас в теме
(10) А я вот нифига не соглашусь. это НЕ быдлокодинг, это нормальное, легко меняемое действие. СтрШаблон мне никогда не был удобен - его так же разносят на несколько строк, только вот и отлаживать труднее, и закомментить, если что, и сверять порядок ещё приходится, чтоб не перепутать.
Так что вполне себе нормальная конкатенация. А уж что стрельнуло писателям типовых на этот раз, и какая мода, так это всё временно. Пострадают дурью, поймут, как проще. Не раз уж было)
segatron; Zerkon; dreamadv; Anything; lmm; dime2; Olenevod; +7 Ответить
12. Brawler 484 29.08.21 11:13 Сейчас в теме
(9) Не поверите, но даже в 2021 году есть базы где СтрШаблон'ом можно подтереться ибо он не работает в тех базах.
25. Yashazz 4120 29.08.21 14:18 Сейчас в теме
(12) Я уж не говорю, что во многих релизах некоторые "Стр..."-функции просто не компилируются или их проверка синтаксиса не пропускает.
13. tormozit 6441 29.08.21 11:13 Сейчас в теме
(9) Ты хитрец - не полный аналог показал, а лишь его самую короткую (вкусную) часть. СтрШаблон нагляднее только для малого количества параметров. Наиболее универсальным и нечувствительным к количеству параметров является подход именованных подстановок - помещаем в структуру короткие имена со значениями и затем вызываем функцию подстановки их в строку. Но для <=3 параметров (95% случаев) он конечно проигрывает в наглядности подходу СтрШаблон.
33. Hans 1 30.08.21 09:48 Сейчас в теме
(13) переписывай свои инструменты уже на управляемые формы. Еще лучше сделай это как опенсорс и командой пилить если у тебя нет ресурсов.
29. rpgshnik 2734 30.08.21 06:13 Сейчас в теме
(9) не все сразу к этому приходят)
31. Adeptus 187 30.08.21 08:48 Сейчас в теме
(4) Не способны понять и оценить всю глубину это нормально. А вот придраться на пустом месте это дело такое же не хитрое как дурное.
34. Hans 1 30.08.21 10:02 Сейчас в теме
(31) Я думал ты готов к придиркам т.к писал

оптимальный, изящный и невероятно красивый код


Зачем ты тогда это писал?
11. avbolshakov 29.08.21 11:02 Сейчас в теме
Мне нравится. Да, очень приятно все выглядит. И оформление публикации тоже. Вопрос не совсем по теме: сейчас ковыряю конвертацию данных третью, и хотелось в справочниках ПКС навести красоты, добавить для типов данных картинок. Может вы знаете где можно взять исходники этих пиктограмм? Сейчас пока попробовал из EDT просто скриншотить, и уже в граф редакторе подчищать ( типы данных Строка, Число, Булево итд.) Спасибо за обработку, завтра скачаю
15. Hans 1 29.08.21 11:31 Сейчас в теме
(11) В конфигуратор зайди. Табличный документ создай. Меню Таблица > Рисунки > Картинка Там можно сохранить типовые.
avbolshakov; +1 Ответить
16. avbolshakov 29.08.21 11:46 Сейчас в теме
(15) )) Спасибо! Жаль что там нет типовых картинок для примитивных типов данных
17. Hans 1 29.08.21 11:50 Сейчас в теме
18. avbolshakov 29.08.21 11:55 Сейчас в теме
19. r0610201 293 29.08.21 12:40 Сейчас в теме
(11) Специально ж для таких вещей когда-то сделал :)
https://infostart.ru/public/546529/
avbolshakov; +1 Ответить
26. aspirator23 470 29.08.21 18:13 Сейчас в теме
Серилиализация.... :( Это как то режет глаз для серьезной разработки. :) Тут часто бывает борец за чистоту русского языка. Ему это может не понравиться.
38. webester 35 31.08.21 02:54 Сейчас в теме
(26) А в чем проблема с сериализацией кроме придирок стилавана(вроде правильно написал) на которые можно не обращать внимания?
40. Adeptus 187 31.08.21 08:52 Сейчас в теме
(38) Да ни в чем все ок. Ну и как фишка таким образом можно передавать информацию между разными табл. частями или движения между разными документами
41. webester 35 31.08.21 08:57 Сейчас в теме
(40)Догнал в чем проблема ) у вас очепятка там, должно быть "Сериализация"
32. Поручик 4547 30.08.21 09:30 Сейчас в теме
лучший инструмент в своем классе - это универсальный редактор реквизитов от Трактора
36. wazup666 23 30.08.21 17:00 Сейчас в теме
В регистре бухгалтерии отсутствуют колонки Дт Кт. Поправьте.
37. ao_donstroy 30.08.21 18:03 Сейчас в теме
Очень хорошо, но нет возможности редактировать реквизиты с типом UUID
44. gull22 88 01.09.21 09:22 Сейчас в теме
Мне понравилось, только на скриншоте с расшифровкой кнопок лучше заменить "Текущюю" на "Текущую"
Прикрепленные файлы:
45. AlexeyIsip 13 02.09.21 08:15 Сейчас в теме
Чем-то похоже на https://infostart.ru/1c/articles/1464476/
Вопрос. Есть ли в этой обработке возможность сохранить в режиме ОбменДанными.Загрузка=Истина
46. Adeptus 187 02.09.21 09:33 Сейчас в теме
(45) Только так и сохраняет
47. Alex17 2 02.09.21 10:19 Сейчас в теме
//"Ref": "32670206-0815-11e9-917b-78e3b5c01a77",
	Шаблон = "[a-f\d]{8}-([a-f\d]{4}-){3}[a-f\d]{12}"; //шаблон GUID
	
	RegExp = Новый COMОбъект("VBScript.RegExp");// создаем объект для работы с регулярными выражениями
	RegExp.MultiLine = Истина;  // истина — текст многострочный, ложь — одна строка
	RegExp.Global = Истина;     // истина — поиск по всей строке, ложь — до первого совпадения
	RegExp.IgnoreCase = Истина; // истина — игнорировать регистр строки при поиске	
	RegExp.Pattern = Шаблон;    // шаблон (регулярное выражение)
	
	objMatches = RegExp.Execute(Строка(стр[текКолонка]));
	Если objMatches.Count > 0 Тогда
		Возврат objMatches.Item(0).Value;
	КонецЕсли;
	
	Возврат "";
Показать
48. MaxS 2342 07.09.21 13:43 Сейчас в теме
Пользоваться вроде удобно. Спасибо за быстрый выбор вида объекта.
А вот оперативно открыть новую форму этого же УРД не нашел как, кроме как открыть новую обработку.
ОбменДанными.Загрузка=Истина используется при записи или нет? как это контролировать?
49. Adeptus 187 07.09.21 13:51 Сейчас в теме
(48) А вот оперативно открыть новую форму этого же УРД не нашел как, кроме как открыть новую обработку. Такой операции нету добавлю в ТуДу

ОбменДанными.Загрузка=Истина используется Всегда
50. ROL32 386 08.09.21 10:47 Сейчас в теме
для тех, кому что то не хватает в этой обработке - можно посмотреть на обработку СДРОбъектУпр
правда она не претендует на "оптимальный, изящный и невероятно красивый код"
51. Adeptus 187 08.09.21 12:37 Сейчас в теме
(50) это уж точно что не претендует. Она можно сказать вообще ни на что не претендует)))
52. пользователь 08.09.21 13:34
Сообщение было скрыто модератором.
...
53. пользователь 10.09.21 11:41
Сообщение было скрыто модератором.
...
54. пользователь 10.09.21 21:32
Сообщение было скрыто модератором.
...
Оставьте свое сообщение
Вопросы с вознаграждением
Вакансии
Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Севастополь
зарплата от 150 000 руб. до 200 000 руб.
Полный день

Программист 1С
Москва
зарплата от 120 000 руб.
Полный день

Ведущий программист-консультант 1С (УХ)
Москва
зарплата от 250 000 руб. до 250 000 руб.
Полный день

Программист 1С (розница)
Москва
зарплата от 160 000 руб. до 160 000 руб.
Полный день