Size: a a a

1С, БСП, DevOps и Архитектура

2021 February 16

g

gosn1ck in 1С, БСП, DevOps и Архитектура
Anton Selin
Работать напрямую через библиотеку кассы -)
Не ну это для слабаков
источник

СЯ

Сергей Якушев... in 1С, БСП, DevOps и Архитектура
Не помню как там в БПО но можно же включать нефискальные строки.
источник

R

Roman in 1С, БСП, DevOps и Архитектура
В поставке БПО вроде была демо-обработка для тестирования принтера. Может в ней удастся найти пример?
источник
2021 February 17

D

DitriX in 1С, БСП, DevOps и Архитектура
Roman
Спасибо, это уже интереснее! Надеюсь, когда-нибудь дорастем)
А че там доростать? Пинайте @PautovLeonid, он там так раз в ванесу этот функционал добавляет и будет вам счастье :)

И там готовить тестовые данные на базе реальных - дело нескольких минут. Ну конечно миллионы таблиц вы врядли так нагенерите. Но, все что надо для тестов - за милую душу.
источник

R

Roman in 1С, БСП, DevOps и Архитектура
DitriX
А че там доростать? Пинайте @PautovLeonid, он там так раз в ванесу этот функционал добавляет и будет вам счастье :)

И там готовить тестовые данные на базе реальных - дело нескольких минут. Ну конечно миллионы таблиц вы врядли так нагенерите. Но, все что надо для тестов - за милую душу.
Благодарю за совет!
источник

D

DitriX in 1С, БСП, DevOps и Архитектура
Roman
Благодарю за совет!
На послднем митапе на инфостарте мы так раз показывали как мы решаем эти проблемы. Так что если есть доступ можете посмотреть там
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
источник

АК

Алексей К. in 1С, БСП, DevOps и Архитектура
Vladimir Nadulich
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
честно говоря, неочевидным лично для меня оказался результат
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
Для меня тоже)
Можно включать в тестовые вопросы на собесе )
источник

AB

Andrey Borodavko in 1С, БСП, DevOps и Архитектура
Vladimir Nadulich
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
а какой результат будет?
я с плюсов помню где что по значению, а что ссылкой, а как в 1с - хз :)
источник

В

Виталий in 1С, БСП, DevOps и Архитектура
Для меня оказалось неожиданным что Макс/Мин не теряют ссылку на значение. Интуитивно считал что их аргументы передаются по значению.
источник

𝖍

𝖍𝖔𝖉𝖞𝖙𝖔𝖓𝖊... in 1С, БСП, DevOps и Архитектура
Vladimir Nadulich
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
А всё потому, что нужно писать Знач Значение, если не собираешься его изменять!
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
Виталий
Для меня оказалось неожиданным что Макс/Мин не теряют ссылку на значение. Интуитивно считал что их аргументы передаются по значению.
При чем не просто ссылку, а одну из ссылок.
Я тоже предполагал, что результат функции - значение, а не ссылка.
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
𝖍𝖔𝖉𝖞𝖙𝖔𝖓𝖊
А всё потому, что нужно писать Знач Значение, если не собираешься его изменять!
И для объектов тоже всегда и везде делать их копии?
Лучше знать и помнить как работает код.
источник

𝖍

𝖍𝖔𝖉𝖞𝖙𝖔𝖓𝖊... in 1С, БСП, DevOps и Архитектура
Vladimir Nadulich
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
А если так?
ВыполнитьОбработкуОповещения(Оповещение, Мин(стк.А, стк.Б));
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
Я потому и скинул код текстом, чтобы каждый мог проверить и проэкспериментировать.
По значению.
источник

VN

Vladimir Nadulich in 1С, БСП, DevOps и Архитектура
𝖍𝖔𝖉𝖞𝖙𝖔𝖓𝖊
А всё потому, что нужно писать Знач Значение, если не собираешься его изменять!
Кстати в оригинальном алгоритме передается Значение и доппарамтеры (в которых ДанныеКоллекцииФормы), при этом значение НЕ МЕНЯЕТСЯ, но "исчезает" при установке неких цифр в в доппараметры.
"Знач Значение" конечно решает проблему, но совет "если не собираетесь менять" не походит - Значение я не меняю в коде функции.
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
Vladimir Nadulich
Кто в уме умеет считать? Разминка для мозга. Какой будет вывод?
&НаКлиенте
Процедура Команда1(Команда)
 
 стк = Новый Структура;
 стк.Вставить("А", 5);
 стк.Вставить("Б", 10);
 
 ААА(Макс(стк.А, стк.Б)); // а если   ААА(Макс(стк.А+5, стк.Б)); ???
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
 Оповещение = новый ОписаниеОповещения("ААА", ЭтотОбъект, Мин(стк.А, стк.Б));
 ВыполнитьОбработкуОповещения(Оповещение);
 
 Сообщить(стк.А);
 Сообщить(стк.Б);
 
КонецПроцедуры

&НаКлиенте
Процедура ААА(Значение, ДопПарам=Неопределено) Экспорт
 Значение = 7;
КонецПроцедуры
Плохой пример считать такое в уме. Хороший пример - написать тесты чтобы зафиксировать поведение.
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
Т.е. на собеседование лучше спросить не посчитайте, а напишите тесткейсы.
источник

Z

ZEEGIN in 1С, БСП, DevOps и Архитектура
А потом перепишите так чтобы это было читаемо и сохраняло поведение.
источник