8.х Регистр накопления

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем PavelBaryshev, 10 мар 2009.

  1. TopicStarter Overlay
    PavelBaryshev
    Offline

    PavelBaryshev Опытный в 1С

    Регистрация:
    9 сен 2008
    Сообщения:
    316
    Симпатии:
    0
    Баллы:
    26
    Скажите пожалуйста, как присвоить значение элементу формы с запроса, который делает выборку с регистра сведений?
    Код:
    Запрос = Новый запрос ("ВЫБРАТЬ
    |	ВыполненыеЗаказы.Заказы.(
    |		СУММА(Пробег),
    |		СУММА(Сумма)
    |	)
    |ИЗ
    |	Документ.ВыполненыеЗаказы КАК ВыполненыеЗаказы");
    
    нужно два значения СУММА(Пробег) и СУММА(Сумма)
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Код:
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
    ЭлементФормы1 = Выборка.СуммаПробега;
    Иначе
    ЭлементФормы1 = 0;
    КонецЕсли;
    
    
    ЗЫ. Запрос только нормально напишите, обратитесь сразу к ТЧ
    "Документ.ВыполненыеЗаказы.Заказы КАК ВыполненыеЗаказыЗаказы"

    ЗЗЫ. И причем тут название темы???
  3. TopicStarter Overlay
    PavelBaryshev
    Offline

    PavelBaryshev Опытный в 1С

    Регистрация:
    9 сен 2008
    Сообщения:
    316
    Симпатии:
    0
    Баллы:
    26
    Спасибо
  4. TopicStarter Overlay
    PavelBaryshev
    Offline

    PavelBaryshev Опытный в 1С

    Регистрация:
    9 сен 2008
    Сообщения:
    316
    Симпатии:
    0
    Баллы:
    26
    Выводит вот такую ошибку:

    {Документ.РассчетПрибыли.Форма.ФормаДокумента(25)}: Поле объекта не обнаружено (СУММАПробег)
    ЭлементыФормы.ОбщийПробег.Значение = Выборка.СУММАПробег;


    вот весь текст:

    Код:
    Запрос = новый запрос;
    Запрос.Текст ="ВЫБРАТЬ
    |	УчетЗаявокОстаткиИОбороты.Заявка КАК Заявка,
    |	СУММА(УчетЗаявокОстаткиИОбороты.ПробегПриход) КАК Пробег,
    |	СУММА(УчетЗаявокОстаткиИОбороты.СтоимостьПриход) КАК Стоимость
    |ИЗ
    |	РегистрНакопления.УчетЗаявок.ОстаткиИОбороты КАК УчетЗаявокОстаткиИОбороты
    |
    |СГРУППИРОВАТЬ ПО
    |	УчетЗаявокОстаткиИОбороты.Заявка
    |
    |УПОРЯДОЧИТЬ ПО
    |	Заявка
    |ИТОГИ
    |	СУММА(Пробег),
    |	СУММА(Стоимость)
    |ПО
    |	ОБЩИЕ,
    |	Заявка"  ;
    
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
    ЭлементыФормы.ОбщийПробег.Значение = Выборка.СУММАПробег;
    Иначе
    ЭлементыФормы.ОбщийПробег.Значение = 0;
    КонецЕсли
    
  5. 1Cnica
    Offline

    1Cnica Опытный в 1С

    Регистрация:
    13 фев 2009
    Сообщения:
    416
    Симпатии:
    0
    Баллы:
    26
    дык наверно не так

    Код:
    ЭлементыФормы.ОбщийПробег.Значение = Выборка.СУММАПробег;
    
    а так:

    Код:
    ЭлементыФормы.ОбщийПробег.Значение = Выборка.Пробег;
    
    попробуй
  6. TopicStarter Overlay
    PavelBaryshev
    Offline

    PavelBaryshev Опытный в 1С

    Регистрация:
    9 сен 2008
    Сообщения:
    316
    Симпатии:
    0
    Баллы:
    26
    вот так он мне показывает значение только одной записи:
    ЭлементыФормы.ОбщийПробег.Значение = Выборка.Пробег;
    а мне надо сумму этих записей
  7. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Так вам уже запрос вернет сумму!
  8. 1Cnica
    Offline

    1Cnica Опытный в 1С

    Регистрация:
    13 фев 2009
    Сообщения:
    416
    Симпатии:
    0
    Баллы:
    26
    Код:
     |ИТОГИ	              |	СУММА(Пробег),
    
    вот эта строчка и вернет сумму пробегов

    в отладке посмотрите какие значения есть в таблице значений

    только не так:
    Код:
    Выборка = Запрос.Выполнить().Выбрать();
    
    а так:
    Код:
    Выборка = Запрос.Выполнить().Выгрузить();
    
    здесь точку останова и вперёд :) я всегда так делаю.
  9. TopicStarter Overlay
    PavelBaryshev
    Offline

    PavelBaryshev Опытный в 1С

    Регистрация:
    9 сен 2008
    Сообщения:
    316
    Симпатии:
    0
    Баллы:
    26
    а как выбрать записи за определенный период?
  10. 1Cnica
    Offline

    1Cnica Опытный в 1С

    Регистрация:
    13 фев 2009
    Сообщения:
    416
    Симпатии:
    0
    Баллы:
    26
    думаю, надо чтобы вид регистра был Обороты
    а потом в конструкторе запроса в закладке Условия, добавляешь Период, сравнение Между, и вводишь параметры, например ДатаНач и ДатаКон


    ибо в ОстаткахИОборотах нету периода...
  11. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Период есть в ОиО :)
  12. 1Cnica
    Offline

    1Cnica Опытный в 1С

    Регистрация:
    13 фев 2009
    Сообщения:
    416
    Симпатии:
    0
    Баллы:
    26
    да? а хде? :unsure:
  13. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    В параметрах виртуальной таблице есть понятие ПЕРИОДИЧНОСТЬ
  14. 1Cnica
    Offline

    1Cnica Опытный в 1С

    Регистрация:
    13 фев 2009
    Сообщения:
    416
    Симпатии:
    0
    Баллы:
    26
    аа точно, спс, я знала)

Поделиться этой страницей