Евгений


Разложить строку в массив

2 Добавил: Евгений
Функция 	РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт
	МассивСтрок = Новый Массив();
	Если Разделитель = " " Тогда
		Стр = СокрЛП(Стр);
		Пока 1 = 1 Цикл
			Поз = Найти(Стр, Разделитель);
			Если Поз = 0 Тогда
				МассивСтрок.Добавить(Стр);
				Возврат МассивСтрок;
			КонецЕсли;
			МассивСтрок.Добавить(Лев(Стр, Поз - 1));
			Стр = СокрЛ(Сред(Стр, Поз));
		КонецЦикла;
	Иначе
		ДлинаРазделителя = СтрДлина(Разделитель);
		Пока 1 = 1 Цикл
			Поз = Найти(Стр,Разделитель);
			Если Поз = 0 Тогда
				МассивСтрок.Добавить(Стр);
				Возврат МассивСтрок;
			КонецЕсли;
			МассивСтрок.Добавить(Лев(Стр, Поз - 1));
			Стр = Сред(Стр, Поз + ДлинаРазделителя);
		КонецЦикла;
	КонецЕсли;	
КонецФункции

Поиск в таблице значений неуникальных значений

1 Добавил: Евгений
Отбор = Новый Структура;
Отбор.Вставить("Цвет", "Зелёный");
Строки = Таб.НайтиСтроки(Отбор);
Для Каждого Стр Из Строки Цикл
    Сообщить(Стр.Фрукт); // Яблоко Киви
КонецЦикла;

Программное проведение документа

Программное проведение документа с закрытием формы
2 Добавил: Евгений
&НаСервере
Процедура ОпубликоватьНаСервере()
	ЭО = ДанныеФормыВЗначение(Объект, Тип("ДокументОбъект.Заявка"));
	
	ЭО.Записать(РежимЗаписиДокумента.Проведение);
	
	ЗначениеВДанныеФормы(ЭО, Объект);
	
КонецПроцедуры

&НаКлиенте
Процедура Опубликовать(Команда)
	
	ОпубликоватьНаСервере();
	
	ЭтаФорма.Закрыть(); 
	
	ОбновитьИнтерфейс();
	
КонецПроцедуры