Имя: Пароль:
1C
 
Ошибка в параметре
0 maptbln
 
27.08.18
14:53
Можете подсказать ,что я делаю не так
хочу ввести параметры с формы при помощи ВвестиДату
текст :


    Перем Нп;
    Перем Кп;
    
    Нп=ВвестиДату(Нп);
    Кп=ВвестиДату(Кп);

    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ХозрасчетныйОбороты.СуммаОборотДт КАК СуммаОборотДт
        |ПОМЕСТИТЬ Вт
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Обороты(&Нп, &Кп, Квартал, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОсновноеПроизводство), , КорСубконто2.ПЛ_ВБазеПеременныхЗатрат = ИСТИНА, КорСчет <> ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОбщепроизводственныеРасходы), ) КАК ХозрасчетныйОбороты
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    ХозрасчетныйОбороты.Субконто1 КАК Субконто1,
        |    Вт.СуммаОборотДт / ХозрасчетныйОбороты.СуммаОборотДт КАК Поле1
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Обороты(&Нп, &Кп, Квартал, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОсновноеПроизводство), , Субконто2.ПЛ_ВБазеПеременныхЗатрат = ИСТИНА, КорСчет <> ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОбщепроизводственныеРасходы), ) КАК ХозрасчетныйОбороты,
        |    Вт КАК Вт
        |
        |СГРУППИРОВАТЬ ПО
        |    ХозрасчетныйОбороты.Субконто1,
        |    Вт.СуммаОборотДт / ХозрасчетныйОбороты.СуммаОборотДт";
    
    
    Запрос.УстановитьПараметр("Нп", Нп);
    Запрос.УстановитьПараметр("Кп",Кп);
    
Результат = Запрос.Выполнить();    
    
    ТЗ = Результат.Выгрузить();            

В итоге ТЗ не заполняется и пишет ошибку
{Документ.ИС_ПакетБюджетныхОпераций.Форма.ФормаДокумента.Форма(2082)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();    
по причине:
{(5, 2)}: Ошибка обработки представления "РегистрБухгалтерии.Хозрасчетный.Обороты:Несоответствие типов (Параметр номер ""1"")"
<<?>>РегистрБухгалтерии.Хозрасчетный.Обороты(&Нп, &Кп, Квартал, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОсновноеПроизводство), , КорСубконто2.ПЛ_ВБазеПеременныхЗатрат = ИСТИНА, КорСчет <> ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОбщепроизводственныеРасходы), ) КАК ХозрасчетныйОбороты
1 Малыш Джон
 
27.08.18
14:57
ВвестиДату() возвращает не дату, а Истину/Ложь, а дата записывается в параметр функции(т.е.  в твоем случае в нп и кп).
Вместо

Нп=ВвестиДату(Нп);
Кп=ВвестиДату(Кп);

напиши

ВвестиДату(Нп);
ВвестиДату(Кп);
2 Гипервизор
 
27.08.18
14:57
Надо просто ВвестиДату(Нп);
СП хоть почитайте.
3 maptbln
 
27.08.18
14:59
Спасибо,виноват