Обработка Расчета Суммы По Плану
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Ключ.Пустая() Тогда
Если Параметры.Свойство("МассивВыбранныхСтрокИзСписка" ) Тогда
Объект.КоличествоВыбраноОрганизаци = Параметры.МассивВыбранныхСтрокИзСписка.Количество();
Массив = Новый Массив(Объект.КоличествоВыбраноОрганизаци);
Для ИндексСтрокиИзСписка = 0 По Объект.КоличествоВыбраноОрганизаци-1 Цикл
Массив[ИндексСтрокиИзСписка] = Параметры.МассивВыбранныхСтрокИзСписка.Получить(ИндексСтрокиИзСписка);
КонецЦикла;
РасчетСуммыПоПлануОрганизации(Массив);
КонецЕсли;
КонецЕсли
КонецПроцедуры
&НаСервере
Процедура РасчетСуммыПоПлануОрганизации(МассивНаименовОрганизации)
ИндексМассива = 0;
Для Каждого ЭлементМассива из МассивНаименовОрганизации Цикл
Если ИндексМассива = 0 Тогда
Объект.НаименованияВыбранныхОрганизаций = Объект.НаименованияВыбранныхОрганизаций + ЭлементМассива;
Иначе
Объект.НаименованияВыбранныхОрганизаций = Объект.НаименованияВыбранныхОрганизаций + Символы.ПС +ЭлементМассива;
КонецЕсли;
ИндексМассива = ИндексМассива + 1
КонецЦикла
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПланПоОтгрузкеПоОплате.Ссылка,
| ПланПоОтгрузкеПоОплате.ПланПоОтгрузкеНаГод,
| ПланПоОтгрузкеПоОплате.ПланПоОплатеНаГод,
| ПланПоОтгрузкеПоОплате.Месяц,
| ПланПоОтгрузкеПоОплате.ПланПоОплате,
| ПланПоОтгрузкеПоОплате.ПланПоОтгрузке,
| ПланПоОтгрузкеПоОплате.Наименование,
| ПланПоОтгрузкеПоОплате.Подразделение,
| ПланПоОтгрузкеПоОплате.Партнер,
| ПланПоОтгрузкеПоОплате.ПривязанК,
| ПланПоОтгрузкеПоОплате.Период,
| ПланПоОтгрузкеПоОплате.КоличОтДней,
| ПланПоОтгрузкеПоОплате.КоличРбДней
|ИЗ
| Справочник.ПланПоОтгрузкеПоОплате КАК ПланПоОтгрузкеПоОплате
|ГДЕ
| ПланПоОтгрузкеПоОплате.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
//...
//...
//...
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Ключ.Пустая() Тогда
Если Параметры.Свойство("МассивВыбранныхСтрокИзСписка" ) Тогда
Объект.КоличествоВыбраноОрганизаци = Параметры.МассивВыбранныхСтрокИзСписка.Количество();
Массив = Новый Массив(Объект.КоличествоВыбраноОрганизаци);
Для ИндексСтрокиИзСписка = 0 По Объект.КоличествоВыбраноОрганизаци-1 Цикл
Массив[ИндексСтрокиИзСписка] = Параметры.МассивВыбранныхСтрокИзСписка.Получить(ИндексСтрокиИзСписка);
КонецЦикла;
РасчетСуммыПоПлануОрганизации(Массив);
КонецЕсли;
КонецЕсли
КонецПроцедуры
&НаСервере
Процедура РасчетСуммыПоПлануОрганизации(МассивНаименовОрганизации)
ИндексМассива = 0;
Для Каждого ЭлементМассива из МассивНаименовОрганизации Цикл
Если ИндексМассива = 0 Тогда
Объект.НаименованияВыбранныхОрганизаций = Объект.НаименованияВыбранныхОрганизаций + ЭлементМассива;
Иначе
Объект.НаименованияВыбранныхОрганизаций = Объект.НаименованияВыбранныхОрганизаций + Символы.ПС +ЭлементМассива;
КонецЕсли;
ИндексМассива = ИндексМассива + 1
КонецЦикла
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПланПоОтгрузкеПоОплате.Ссылка,
| ПланПоОтгрузкеПоОплате.ПланПоОтгрузкеНаГод,
| ПланПоОтгрузкеПоОплате.ПланПоОплатеНаГод,
| ПланПоОтгрузкеПоОплате.Месяц,
| ПланПоОтгрузкеПоОплате.ПланПоОплате,
| ПланПоОтгрузкеПоОплате.ПланПоОтгрузке,
| ПланПоОтгрузкеПоОплате.Наименование,
| ПланПоОтгрузкеПоОплате.Подразделение,
| ПланПоОтгрузкеПоОплате.Партнер,
| ПланПоОтгрузкеПоОплате.ПривязанК,
| ПланПоОтгрузкеПоОплате.Период,
| ПланПоОтгрузкеПоОплате.КоличОтДней,
| ПланПоОтгрузкеПоОплате.КоличРбДней
|ИЗ
| Справочник.ПланПоОтгрузкеПоОплате КАК ПланПоОтгрузкеПоОплате
|ГДЕ
| ПланПоОтгрузкеПоОплате.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
//...
//...
//...
КонецЦикла;
КонецПроцедуры
Комментариев нет:
Отправить комментарий