Передача параметров в 1С

preview_player
Показать описание
А по промокоду yellowclub получишь 10% скидку.

#1c #ПередачаПараметровВ1С
==========
Информационные площадки "Жёлтого клуба":

Подписывайся на канала Желтого клуба, чтобы не пропустить интересных гостей
Рекомендации по теме
Комментарии
Автор

&НаСервере происходит создание новых переменных Парам1=ЛучшаяЕда и Парам2=ЛучшаяЕда, они никак не связаны с переменной ЛучшаяЕда, а &НаКлиенте Парам1 и Парам2 это и есть переменная ЛучшаяЕда. Чтобы работало как &НаСервере, нужно в описании параметров процедуры добавить ключевое слово "Знач". ( Процедура Парам1, Знач Парам2, Знач Парам3) )

klmitry
Автор

Все просто, в памяти создается 3 переменные с копией лучшей еды, когда код уходит на сервер, у нас на сервере создаются копии наших переменных, далее мы присваиваем первым двум значениям - новые значения, а третье значение у нас остается неизменным, а далее когда код возвращается на клиент, мы это неизмененную переменную и выводим. Это легко проверяется есть в серверной процедуре изменить Парам3, тогда вернется условное "Яблоко" на клиент. А в случае когда меняет контекст исполнения, тогда мы просто записываем поочереди в одну и ту же переменную "Лучшая еда" новые значения, поэтому последний там гамбургер. Надеюсь понятно расписал.

litium
Автор

Если в качестве формальных параметров указано значение одной и той же переменной, то после возврата управления с сервера значение этой переменной будет установлено в значение самого правого формального параметра (без модификатора Знач), который изменялся в вызываемой функции.

Lebowski
Автор

Потому что, это последнее значение, которое присвоилось именно переменной в процедуре и поскольку это происходит в одном контексте, новых переменных не создаётся. Если бы в процедуре &НаКлиенте было бы ключевое слово Знач, то ответ остался бы "Котлетка".

АлександрМартынов-шб
Автор

Интересно это работает). Когда процедура выполнилась на Сервере, то понятно, что это процедура и она ничего не вернула. А у переменной есть значение "Котлетка", а вот когда на Клиенте, она ясно ничего не вернула но видимо в каком то одном поле имён это работает, потому, что когда выполняется строка Парам1="Чипсы" то все три параметра принимают значение "Чипсы", когда выполняется строка Парам2="Гамбургер" то все три параметра принимают значение "Гамбургер"

AlekseiAstahov
Автор

Мне понравилась статья про клиент-серверную часть. Там на рисунках объясняли))На примере библиотеки с книгами)

daaked
Автор

Опять обрезанный экран. А что дальше справа, между и "Сообщить"?

ЕвгенийМедведев-бя
Автор

А если функцию попробовать а не процедуру?

sarabeev_ka
Автор

объясните, в чем магия?)
Как оно так получилось?)

МаксимКириченко-вд
Автор

Передаются аргументы, а не параметры :) ох уж эти 1Эсники :)

Joler
Автор

НаСервере по порядку следования параметров, получается. т.к. нужно вернуть обратно на клиент. А НаКлиенте последний по коду... )

So_Fluffy
Автор

а вы знаете толк в извращениях... котлетки пюрешечки...

cTrudogolik