Имя: Пароль:
1C
 
Два вызова одной функции
0 myr4ik07
 
13.08.15
15:16
Привет. Такое возможно, в процедуре вызивается одна и та же функция но один вызов с одним параметром, а другой с двумя, в функции два параметра, как то с такой ситуации можно выйти или нужно создавать отдельные функции с нужным количеством параметров?
1 ДенисЧ
 
13.08.15
15:17
Функция МояФункция (параметр1, Параметр2 = "")
Сообщить("Параметр 1 = " + параметр1);
Сообщить("Параметр 2 = " + параметр2);
КонецФункции

процедура Моя()
  МояФункция(10);
  МояФункция(20, "Лев Толстой");
КонецПроцедуры
2 myr4ik07
 
13.08.15
15:18
хочу получить остатки, один вызов берет остатки объектным методом из РН полностью по номенклатуре, а другой вызов не только по номенклатуре, а и по складу нужно отбор наложить и выходит не хочется создавать две функции или все же потребуется?
3 Ёпрст
 
гуру
13.08.15
15:20
(2) сделай одну функцию с куевой тучей параметров по-умолчанию
4 myr4ik07
 
13.08.15
15:21
(1) а Знач МойПараметр что делает тогда?
5 Ёпрст
 
гуру
13.08.15
15:21
унутри функции смотри, если параметр прилетел, то накладывай фильтр в запрос. усё.
6 ДенисЧ
 
13.08.15
15:21
(4) а причём тут Знач?
7 Ёпрст
 
гуру
13.08.15
15:21
(4) передача параметра по значению, а не по ссылке
8 ДенисЧ
 
13.08.15
15:22
(7) Не пугай человека...
9 myr4ik07
 
13.08.15
15:22
(6) интересно, никогда не применял, не понимаю для чего
10 Ёпрст
 
гуру
13.08.15
15:23
(9)
  Знач
     Необязательное ключевое слово, которое указывает на то, что следующий за ним параметр передается по значению, т.е. изменение значения формального параметра при выполнении функции никак не повлияет на фактический параметр, переданный при вызове функции. Если это ключевое слово не указано, то параметр функции передается по ссылке, то есть изменение внутри функции значения формального параметра приведет к изменению значения соответствующего фактического параметра.
11 myr4ik07
 
13.08.15
15:23
(7) а типа если передается Ссылка.Номенклатура, а мне нужно что бы значения получилось, а что за значения, что имеется ввиду?
12 myr4ik07
 
13.08.15
15:24
(10) понял )
13 ДенисЧ
 
13.08.15
15:24
(10) "изменение значения формального параметра при выполнении функции никак не повлияет на фактический параметр, переданный при вызове функции"

Не вводи в заблуждение ))
Давно уже разобрали, что это не полностью правда.
14 myr4ik07
 
13.08.15
15:25
Типа
Число = 10;
Процедура ИзменитьЧисло110 (Знач Число)
Число = Число + 1;
КонецПроцедуры

Сообщить(Число); \\ будет 10?
15 Ёпрст
 
гуру
13.08.15
15:26
+10 тебе , для понимания


Функция Вася(Знач а, б, С=10)
   а= 20;
   б=30;
  с=100;
КонецФункции

....
а=0;б=0;с=0;
Вася(а,б);
Сообщить(а);
Сообщить(б);
Вася(а,б,с);
Сообщить(а);
Сообщить(б);
Сообщить(с);
16 ДенисЧ
 
13.08.15
15:26
(14) Для числа, строки, даты - да
17 Ёпрст
 
гуру
13.08.15
15:27
(13) ну да, всё зависит от типа передаваемого параметра, но основы то (0) должен же знать ? Это же в школе, в 8 классе преподают
18 ДенисЧ
 
13.08.15
15:27
(17) Мне бы в такую школу в 8м классе...
19 myr4ik07
 
13.08.15
15:27
спасибо, общайтесь на здоровье )
20 Ёпрст
 
гуру
13.08.15
15:28
(18) а чего, бейсика не было ?
21 Ёпрст
 
гуру
13.08.15
15:28
или паскаль, не помню уже, чего там и когда было
22 Ёпрст
 
гуру
13.08.15
15:28
:)
23 ДенисЧ
 
13.08.15
15:29
(20) Я чуток постарше тебя буду... У нас информатика только с 9го класса началась...
И мне со вторго полугодия пришлось подтягивать одноклассников...
24 Ёпрст
 
гуру
13.08.15
15:31
всё может быть, я учился в 2-х школах, и с какого она класса началась уже и не вспомню.
25 Ёпрст
 
гуру
13.08.15
15:32
но паскаль был и бейсик был - это точно.. и еще какая то муть типа лексикона
26 GROOVY
 
13.08.15
15:32
(0)

Функция Моя(ОбазательныйПараметр, НеобязательныйПараметр = Неопределено)

КонецФункции
27 Timon1405
 
13.08.15
15:35
(15)+по поводу знач была эпичная тема про недокументированные возможности Использование Знач в процедурах и функциях
там оказалось что с коллекциями еще и в зависимости от контекста по-разному работает
28 myr4ik07
 
13.08.15
15:55
Ребята, а у меня на форме есть реквизит, а мне как то его нужно переобразовать и отдать на серверную процедуру в качестве Ссылка, как это сделать? ДаннныеФормыВЗначение?
29 myr4ik07
 
13.08.15
16:11
ЭтотОбъект.Объект.СтруктурнаяЕдиница вытягнул
30 Nuobu
 
13.08.15
16:13
(29) ТАк и передавай.
31 GROOVY
 
13.08.15
18:58
(29) Для надежности пиши ЭтотОбъект.ЭтотОбъект.ЭтотОбъект.Объект.СтруктурнаяЕдиница