Имя: Пароль:
1C
1С v8
Помогите выгрузить результат в таблицу с колонкой, по которойМнеНужноВзять Итог
,
0 Добрый_фей
 
03.05.15
00:43
Результат = Запрос.Выполнить();
                    
                    ВыборкаДетальныеЗаписи = Результат.Выбрать();
                    НеобходимоСписать = СтрокаТаблицы.Количество;
                                                            
                    Пока ВыборкаДетальныеЗаписи.Следующий() И НеобходимоСписать > 0 Цикл
                                                КоличествоКСписанию = МИН(НеобходимоСписать, ВыборкаДетальныеЗаписи.Количество);
                        Если КоличествоКСписанию = ВыборкаДетальныеЗаписи.Количество Тогда
                            СуммаКСписанию = ВыборкаДетальныеЗаписи.Сумма;
                        Иначе
                            СуммаКСписанию = ВыборкаДетальныеЗаписи.Сумма/ВыборкаДетальныеЗаписи.Количество*КоличествоКСписанию;
                        КонецЕсли;
                        НеобходимоСписать = НеобходимоСписать - КоличествоКСписанию;
                        
                    КонецЦикла;
1 Добрый_фей
 
03.05.15
00:44
Я не волшебник, я только учусь...
2 vicof
 
03.05.15
00:52
А где ВыборкаИтоги?
3 Garykom
 
гуру
03.05.15
01:08
к первой строчке добавь перед ";" это ".Выгрузить()"

и работай се с ТЗ
4 Добрый_фей
 
03.05.15
01:19
Мне нужно построить таблицу, где будут заноситься значения СуммаКСписанию.
5 Добрый_фей
 
03.05.15
01:22
увы, пока все мои попытки тщетны...
6 Garykom
 
гуру
03.05.15
01:36
Твоя не добрый фей а непонятный
7 Толич
 
03.05.15
07:22
Переменная СуммаКСписанию в данной реализации не несет смысловой нагрузки. Может надо
СуммаКСписанию = СуммаКСписанию +...
8 Добрый_фей
 
03.05.15
09:31
Толич = дай Бог тебе здоровья! Натолкнул меня на правильную мысль. Кому надо чтоб сумму с внебалансового 08 счета списывало так же как по партиям - ниже мои труды, если кто, что-нить посоветует дописать, буду рад мнению.
9 Добрый_фей
 
03.05.15
09:35
ПорядокСубконто1 = Новый Массив();
                    ПорядокСубконто1.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура);
                    ПорядокСубконто1.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Партии);
                    ПорядокСубконто1.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады);
                    
Запрос = Новый Запрос;
                    Запрос.УстановитьПараметр("Счет", текСтрока.СчетУчетаБУ);
                    Запрос.УстановитьПараметр("Склад",           СтруктураШапкиДокумента.Склад);
                    Запрос.УстановитьПараметр("КонецПериода",    СтруктураШапкиДокумента.Ссылка.МоментВремени());    
                    Запрос.УстановитьПараметр("Организация",     СтруктураШапкиДокумента.Организация);
                    Запрос.УстановитьПараметр("Номенклатура", текСтрока.Номенклатура);
                    Запрос.УстановитьПараметр("ПорядокСубконто", ПорядокСубконто1);
                    
Запрос.Текст =
"ВЫБРАТЬ
                    |    ХозрасчетныйОстатки.Счет,
                    |    ХозрасчетныйОстатки.Субконто1 КАК Номенклатура,
                    |    ХозрасчетныйОстатки.Субконто2 КАК Партии,
                    |    ХозрасчетныйОстатки.Субконто3 КАК Склады,
                    |    ХозрасчетныйОстатки.СуммаОстатокДт КАК Сумма,
                    |    ХозрасчетныйОстатки.КоличествоОстатокДт КАК Количество
                    |ИЗ
                    |    РегистрБухгалтерии.Хозрасчетный.Остатки(
                    |            &КонецПериода,
                    |            Счет = &Счет,
                    |            &ПорядокСубконто,
                    |            Организация = &Организация
                    |                И Субконто1 = &Номенклатура
                    |                И Субконто3 = &Склад) КАК ХозрасчетныйОстатки
                    |ГДЕ
                    |    ХозрасчетныйОстатки.СуммаОстатокДт > 0
                    |    И ХозрасчетныйОстатки.КоличествоОстатокДт > 0
                    |
                    |СГРУППИРОВАТЬ ПО
                    |    ХозрасчетныйОстатки.Субконто2,
                    |    ХозрасчетныйОстатки.Счет,
                    |    ХозрасчетныйОстатки.Субконто1,
                    |    ХозрасчетныйОстатки.Субконто3,
                    |    ХозрасчетныйОстатки.СуммаОстатокДт,
                    |    ХозрасчетныйОстатки.КоличествоОстатокДт";

Результат = Запрос.Выполнить();
                    ВыборкаДетальныеЗаписи = Результат.Выбрать();
НеобходимоСписать = СтрокаТаблицы.Количество;
                    НакопительнаяСумма = 0;
                    
Пока ВыборкаДетальныеЗаписи.Следующий() И НеобходимоСписать > 0 Цикл
                        КоличествоКСписанию = МИН(НеобходимоСписать, ВыборкаДетальныеЗаписи.Количество);
Если КоличествоКСписанию = ВыборкаДетальныеЗаписи.Количество Тогда
                            СуммаКСписанию = ВыборкаДетальныеЗаписи.Сумма;
Иначе
                            СуммаКСписанию = ВыборкаДетальныеЗаписи.Сумма/ВыборкаДетальныеЗаписи.Количество*КоличествоКСписанию;
                        КонецЕсли;
                        НеобходимоСписать = НеобходимоСписать - КоличествоКСписанию;
                        
Если НакопительнаяСумма <> СуммаКСписанию Тогда
                            НакопительнаяСумма = НакопительнаяСумма + СуммаКСписанию;
                        КонецЕсли;
                        
КонецЦикла;
10 Добрый_фей
 
03.05.15
09:42
Да, забыл сказать, это бланки строгой отчетности)
11 НП
 
03.05.15
10:00
Вот и выгружайте сразу в таблицу. А там можно делать, что угодно.
12 Добрый_фей
 
03.05.15
16:52
условие Если НакопительнаяСумма <> СуммаКСписанию Тогда по ходу лишнее, нужно  оставить просто НакопительнаяСумма = НакопительнаяСумма + СуммаКСписанию;
13 Garykom
 
гуру
03.05.15
18:59
походу тс живет в каком то своем отдельном топике...
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой