Фрагменты кода
Привет Мир!
Главное с самого главного начать
ПриветМир();
Процедура ПриветМир()
Сообщить("Привет мир!");
КонецПроцедуры
BSL
Фрагмент из задачи Задача № 43. Вывести предыдущие и текущие актуальные розничные цены, процент изменения данных цен
ВЫБРАТЬ
Цены1.Номенклатура КАК Номенклатура,
СрезЦен.РозничнаяЦена КАК ТекущаяРозничнаяЦена,
Цены1.Цена КАК ПредыдущаяРозничнаяЦена,
ОКР(((СрезЦен.РозничнаяЦена-Цены1.Цена)/СрезЦен.РозничнаяЦена*100), 2) КАК ПроцентИзмененияЦены
ИЗ
РегистрСведений.Цены КАК Цены1
СОЕДИНЕНИЕ РегистрСведений.Цены КАК Цены2
ПО Цены1.Номенклатура = Цены2.Номенклатура
И Цены1.Период < Цены2.Период
ЛЕВОЕ СОЕДИНЕНИЕ
(ВЫБРАТЬ РАЗЛИЧНЫЕ
Цены.Номенклатура КАК Номенклатура,
Цены.Цена КАК РозничнаяЦена,
Цены.Период КАК ДатаУстановкиТекущейЦены
ИЗ
РегистрСведений.Цены.СрезПоследних КАК Цены
ГДЕ
Цены.ВидЦены = &ОсновнаяРозничнаяЦена
) КАК СрезЦен
ПО Цены1.Номенклатура = СрезЦен.Номенклатура
ГДЕ
Цены1.ВидЦены = &ОсновнаяРозничнаяЦена
И Срезцен.ДатаУстановкиТекущейЦены <> Цены1.Период
СГРУППИРОВАТЬ ПО
Цены1.Номенклатура,
Цены1.Цена,
Цены1.Период,
СрезЦен.РозничнаяЦена,
Срезцен.ДатаУстановкиТекущейЦены
ИМЕЮЩИЕ
КОЛИЧЕСТВО(Цены1.Период) = 1
УПОРЯДОЧИТЬ ПО
Номенклатура
BSL_QUERY
Создать основной договор контрагента
Создать основной договор контрагента для 1С Бухгалтерия предприятия 3.0
Функция СоздатьОсновнойДоговорКонтрагента(Организация, Контрагент, ВалютаВзаиморасчетов, ВидДоговора)
НовыйОбъект = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент();
ЗначенияЗаполнения = Новый Структура();
ЗначенияЗаполнения.Вставить("ВидДоговора", ВидДоговора);
ЗначенияЗаполнения.Вставить("Организация", Организация);
ЗначенияЗаполнения.Вставить("Владелец", Контрагент);
ЗначенияЗаполнения.Вставить("ВалютаВзаиморасчетов", ВалютаВзаиморасчетов);
Наименование = ПечатьДоговоровКлиентСервер.НаименованиеПоУмолчаниюБезРеквизитов();
ЗначенияЗаполнения.Вставить("Наименование", Наименование);
НовыйОбъект.Заполнить(ЗначенияЗаполнения);
НовыйОбъект.УстановитьНовыйКод();
НовыйОбъект.ОбменДанными.Загрузка = Истина;
НовыйОбъект.Записать();
УстановитьОсновнойДоговорКонтрагента(НовыйОбъект.Ссылка, Организация, Контрагент, ВидДоговора);
Возврат НовыйОбъект.Ссылка;
КонецФункции
BSL
Таблица дат. Календарь программно
ВЫБРАТЬ
ДОБАВИТЬКДАТЕ(&ДатаНач, ДЕНЬ, Цифры4.Цифра * 1000 + Цифры3.Цифра * 100 + Цифры2.Цифра * 10 + Цифры1.Цифра * 1) КАК ДатаДень
ПОМЕСТИТЬ ТаблицаДат
ИЗ
(ВЫБРАТЬ
0 КАК Цифра
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
1
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
2
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
3
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
4
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
5
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
6
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
7
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
8
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
9) КАК Цифры1
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
0 КАК Цифра
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
1
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
2
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
3
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
4
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
5
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
6
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
7
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
8
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
9) КАК Цифры2
ПО (Цифры2.Цифра * 10 + Цифры1.Цифра * 1 <= РАЗНОСТЬДАТ(&ДатаНач, &ДатаКон, ДЕНЬ))
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
0 КАК Цифра
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
1
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
2
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
3
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
4
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
5
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
6
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
7
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
8
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
9) КАК Цифры3
ПО (Цифры3.Цифра * 100 + Цифры2.Цифра * 10 + Цифры1.Цифра * 1 <= РАЗНОСТЬДАТ(&ДатаНач, &ДатаКон, ДЕНЬ))
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
0 КАК Цифра
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
1
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
2
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
3
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
4
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
5
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
6
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
7
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
8
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
9) КАК Цифры4
ПО (Цифры4.Цифра * 1000 + Цифры3.Цифра * 100 + Цифры2.Цифра * 10 + Цифры1.Цифра * 1 <= РАЗНОСТЬДАТ(&ДатаНач, &ДатаКон, ДЕНЬ))
;
BSL_QUERY
Программное подключение сканера ШК к документу
&НаКлиенте
Процедура ПриОткрытии(Отказ)
// ПодключаемоеОборудование
Если УправлениеНебольшойФирмойПовтИсп.ИспользоватьПодключаемоеОборудование() // Проверка на включенную ФО "Использовать ВО"
И МенеджерОборудованияКлиент.ОбновитьРабочееМестоКлиента() Тогда // Проверка на определенность рабочего места ВО
ОписаниеОшибки = "";
ПоддерживаемыеТипыВО = Новый Массив();
ПоддерживаемыеТипыВО.Добавить("СканерШтрихкода");
Если НЕ МенеджерОборудованияКлиент.ПодключитьОборудованиеПоТипу(Новый УникальныйИдентификатор, ПоддерживаемыеТипыВО, ОписаниеОшибки) Тогда
ТекстСообщения = НСтр(
"ru = 'При подключении оборудования произошла ошибка:
|""%ОписаниеОшибки%"".'"
);
ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ОписаниеОшибки%", ОписаниеОшибки);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
КонецЕсли;
// Конец ПодключаемоеОборудование
//Васильев В.
Если Параметры.Свойство("Штрихкод") Тогда
Штрихкод = Параметры.Штрихкод;
ПолучитьДанныеПоТовару(Штрихкод);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
// ПодключаемоеОборудование
Если Источник = "ПодключаемоеОборудование" И ВводДоступен() Тогда
Если ИмяСобытия = "ScanData" Тогда
//Преобразуем предварительно к ожидаемому формату
Данные = Новый Массив();
МассивШтрихкодов = Новый Массив;
Если Параметр[1] = Неопределено Тогда
Данные.Добавить(Новый Структура("Штрихкод, Количество", Параметр[0], 1)); // Достаем штрихкод из основных данных
Иначе
Данные.Добавить(Новый Структура("Штрихкод, Количество", Параметр[1][1], 1)); // Достаем штрихкод из дополнительных данных
КонецЕсли;
Если ТипЗнч(Данные) = Тип("Массив") Тогда
МассивШтрихкодов = Данные;
Иначе
МассивШтрихкодов = Новый Массив;
МассивШтрихкодов.Добавить(Данные);
КонецЕсли;
Для каждого ТекШтрихкод Из МассивШтрихкодов Цикл
ПолучитьДанныеПоТовару(ТекШтрихкод.Штрихкод);
КонецЦикла;
КонецЕсли;
КонецЕсли;
// Конец ПодключаемоеОборудование
КонецПроцедуры
&НаКлиенте
Процедура ПриЗакрытии()
// ПодключаемоеОборудование
ПоддерживаемыеТипыВО = Новый Массив();
ПоддерживаемыеТипыВО.Добавить("СканерШтрихкода");
МенеджерОборудованияКлиент.ОтключитьОборудованиеПоТипу(УникальныйИдентификатор, ПоддерживаемыеТипыВО);
// Конец ПодключаемоеОборудование
КонецПроцедуры
BSL
Тестовый фрагмент
Пример фрагмента кода
Если КтоТо_ЧтоТо Тогда
ЯКВашимУслугам = Истина;
КонецЕсли;
BSL