Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Обороти Дт по номенклатурним групам
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
Юля
Привіт, потрібно витянути дебетову суму по 231 рахунку по відповідній номенклатурній нрупі і статі затрат, ці параметри ми вибираємо на формі, коли формую запит видає помилку: "не можна порівнювати поля необмеженої довжини і поля несумісних типів.ХохрасчетныйОборотыДтКт.СчетДт <<?>>СчетДт"
код запиту:
Процедура ЗагСумВитратНачалоВыбораИзСписка()
    ЗагСума= 0;    
    СубконтоДт2 = Элементы.НомГрупаГотова;
    СубконтоДт3 = Элементы.ВиберитьСтатюВитрат;
    СчетДт = Элементы.РахунокКт;
    //ВиберитьСтатюВитрат = Элементы.ВиберитьСтатюВитрат.Значение.код;
    
    
    //
    Запрос = Новый Запрос();
    Запрос.Текст =
        "ВЫБРАТЬ
        
        |    ХозрасчетныйОборотыДтКт.СубконтоДт2,
        |    ХозрасчетныйОборотыДтКт.СубконтоДт3,
        |    ХозрасчетныйОборотыДтКт.СчетДт,
        |    СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт КАК ХозрасчетныйОборотыДтКт
        |ГДЕ
        |    ХозрасчетныйОборотыДтКт.СчетДт = &СчетДт
        |    И ХозрасчетныйОборотыДтКт.СубконтоДт2 = &СубконтоДт2
        |    И ХозрасчетныйОборотыДтКт.СубконтоДт3 = &СубконтоДт3
        |
        |СГРУППИРОВАТЬ ПО
        |    ХозрасчетныйОборотыДтКт.СчетДт,
        |    ХозрасчетныйОборотыДтКт.СубконтоДт2,
        |    ХозрасчетныйОборотыДтКт.СубконтоДт3";
    
    Запрос.УстановитьПараметр("СубконтоДт2", СубконтоДт2);
    Запрос.УстановитьПараметр("СубконтоДт3", СубконтоДт3);
    Запрос.УстановитьПараметр("СчетДт", СчетДт);
    Запрос.УстановитьПараметр("КонПериода", КонПериода);
    Запрос.УстановитьПараметр("НачПериода", НачПериода);
    РезультатЗапроса = Запрос.Выполнить();
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        
        Если ВыборкаДетальныеЗаписи.СубконтоДт3.Код =  ВиберитьСтатюВитрат и ВыборкаДетальныеЗаписи.СубконтоДт2 = Элементы.СубконтоДт2.Значение  Тогда  
        ЗагСума = ВыборкаДетальныеЗаписи.СуммаОборотДт1;
        
         Элементы.ЗагСумВитрат.Значение = ВыборкаДетальныеЗаписи.СуммаОборот;

     КонецЕсли;
    // возврат ЗагСума;

        // Вставити обробку вибірки ВыборкаДетальныеЗаписи
    КонецЦикла;
    
    //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
ЗагСумВитрат = ЗагСума;
КонецПроцедуры
Vofka
А СчетДт на форме небось какая-то строка или число?
Юля
Vofka @ Сегодня, 12:07 необходимо зарегистрироваться для просмотра ссылки
СчетДт =ПланыСчетов.Хозрасчетный.ОсновноеПроизводство;
на форі його не має, на формі період, номенклатурна нрупа і стаття витрат, рх Дт постійно 231
sava1
А можно мои 5 копеек ?
Условия в запросе сразу в параметры таблицы
группировок не надо
в запросе сразу получать итоговую сумму

параметры запроса привести к типам значений таблицы.
Цитата(Юля @ 27.05.19, 12:04) необходимо зарегистрироваться для просмотра ссылки
Если ВыборкаДетальныеЗаписи.СубконтоДт3.Код = ВиберитьСтатюВитрат

Petre
QUOTE (Юля @ 27.05.19, 11:25) необходимо зарегистрироваться для просмотра ссылки
на форі його не має, на формі період, номенклатурна нрупа і стаття витрат, рх Дт постійно 231

QUOTE (Юля @ 27.05.19, 11:04) необходимо зарегистрироваться для просмотра ссылки
СчетДт = Элементы.РахунокКт;

Юля
Petre @ Сегодня, 12:42 необходимо зарегистрироваться для просмотра ссылки ,
я вже виправила на СчетДт =ПланыСчетов.Хозрасчетный.ОсновноеПроизводство;
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.