Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
30 Мар 2017, 09:48
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Получение данных табличной части справочника по наименованию через функцию  (Прочитано 1248 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн marshalbratsk

  • *
  • Сообщений: 14
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-25
  • Сайт: 
  • Профессия: Ученик 1С
Уже кипит голова, нужна помощь бывалых.:dfbsdfbsdf:
Имеется справочник АвтомобилиИМеханизмы с табличной частью РасходТоплива и реквизитами этой табличной части Сезон, ОборудованиеИлиОперация и РасходТоплива.
Мне нужно сделать функцию для обработки, которая по трём переменным (Транспорт (наименование транспорта), Сезон, ОборудованиеИлиОперация) будет возвращать значение столбца РасходТоплива нужной строки

Т.е.
Функция ПолучитьДанные(Транспорт, Сезон, ОборудованиеИлиОперация)
//Тут запрос, который мне уже все мозги выел, потому что в интернетах не могу найти нормальных примеров

Возврат РасходТоплива
КонецФункции

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Оффлайн marshalbratsk

  • *
  • Сообщений: 14
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-25
  • Сайт: 
  • Профессия: Ученик 1С
Прикинул примерный запрос, а как вернуть значение РасходТоплива из запроса???:dfbsdfbsdf: И может ошибки есть?
Функция ПолучитьРасход (Транспорт, Сезон, ОборудованиеИлиОперация)

Запрос1 = Новый Запрос (
"ВЫБРАТЬ
| АвтомобилиИМеханизмы.Наименование,
| АвтомобилиИМеханизмы.РасходТоплива.(
| Сезон,
| ОборудованиеИлиОперация,
| РасходТоплива
| )
|ИЗ
| Справочник.АвтомобилиИМеханизмы КАК АвтомобилиИМеханизмы
|ГДЕ АвтомобилиИМеханизмы.Наименование = &Транспорт,
| АвтомобилиИМеханизмы.РасходТоплива.Сезон = &Сезон,
| АвтомобилиИМеханизмы.РасходТоплива.ОборудованиеИлиОперация = &ОборудованиеИлиОперация
|");

Запрос1.УстановитьПараметр("Транспорт",Транспорт);
Запрос1.УстановитьПараметр("Сезон",Сезон);
Запрос1.УстановитьПараметр("ОборудованиеИлиОперация",ОборудованиеИлиОперация);

//а как вернуть значение поля РасходТоплива???

КонецФункции

Добавлено: 28 Май 2016, 18:36

Есть кто живой? Очень нужна помощь, я в тупике

Есть Процедура, которая обращается к функции (ниже). Переменными для функции служит наименование транспорта из формы калькулятора и ещё два значения указал напрямую из перечислений для проверки
&НаКлиенте
Процедура Рассчитать(Команда)

Транспорт1=ЭтаФорма.Объект.Транспорт;
Сезон1=ПредопределенноеЗначение("Перечисление.Сезон.Лето");
Операция1=ПредопределенноеЗначение("Перечисление.ОборудованиеИлиОперация.Нет");
Сообщить(ПолучитьРасход(Транспорт1,Сезон1,Операция1));

КонецПроцедуры

Есть функция
Функция ПолучитьРасход (Транспорт, Сезон, ОборудованиеИлиОперация)

Запрос1 = Новый Запрос (
"ВЫБРАТЬ
| АвтомобилиИМеханизмы.Наименование,
| АвтомобилиИМеханизмы.РасходТоплива.(
| Сезон,
| ОборудованиеИлиОперация,
| РасходТоплива
| )
|ИЗ
| Справочник.АвтомобилиИМеханизмы КАК АвтомобилиИМеханизмы
|ГДЕ
| АвтомобилиИМеханизмы.Наименование = &Транспорт
| и АвтомобилиИМеханизмы.РасходТоплива.Сезон = &Сезон
| и АвтомобилиИМеханизмы.РасходТоплива.ОборудованиеИлиОперация = &ОборудованиеИлиОперация
|");

Запрос1.УстановитьПараметр("Транспорт",Транспорт);
Запрос1.УстановитьПараметр("Сезон",Сезон);
Запрос1.УстановитьПараметр("ОборудованиеИлиОперация",ОборудованиеИлиОперация);

РезультатЗапроса = Запрос1.Выполнить();
Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл

РасходТоплива = Выборка

КонецЦикла;

Возврат РасходТоплива;

КонецФункции

В итоге сообщается пустое значение, вместо указания расхода топлива

Последний раз редактировалось: marshalbratsk; 28 Май 2016, 18:36. Причина: Объединение сообщений

Оффлайн дфтын

  • Могу решить ЛЮБУЮ задачу в 1С и не только.. С вопросами в личку:)
  • *****
  • Сообщений: 2640
  • РЕПУТАЦИЯ: 319
  • КПД: 12%
  • 1С наше все
  • Регистрация: 2014-04-29
    • Skype: Soprov1C
  • Компания: Корпорация зонтиков
  • Профессия: Разработчик 1С
Да проблем нет, просто много букв. переформулируйте в 2 - 3 строчки.
уверен там отбор не тот
Помог? Нажми - Спасибо :)
skype: Soprov1C

Оффлайн electr

  • *
  • Сообщений: 13
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-07-14
  • Сайт: 
  • Профессия: Программист 8.1
А почему в запросе не использовать только табличную часть и из нее все достать. Проверьте при пошаговой отладке точно ли передаются значения параметров или нет ли траблов с типами данных

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
По какому объекту делаете запрос?


Отправлено с моего iPhone используя Tapatalk

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
Если я правильно понял, то вы все запрашиваете по справочнику


Отправлено с моего iPhone используя Tapatalk

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
Но в запросе нет не одного параметра, у вас их 4, первых два где нет по 2 полю оборудования, 2 других есть оборудование, и того надо поставить в запрос 2 параметра которые вы передадите
- зима
- нет оборудования

К примеру, если их спросите, запрос найдет в цикле их, соответственно и вытащит поле с расходом топлива, т.е. на форме надо сделать 2 перечисления, зима и лето, и второе перечисление нет оборудования


Отправлено с моего iPhone используя Tapatalk

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
Должна после запроса быть только одна строка,


Отправлено с моего iPhone используя Tapatalk

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
У вас на форме есть, зима и лето, и есть мото часы где вы пишите количество часов, но для запроса нужно не количество часов а параметр мото час работы двигателя
т.е.
Лето и мото час работы двигателя - эти два параметра в запро надо передать, после выберется 1 час работы, далее остается этот час умножить на количество мото часов.......


Отправлено с моего iPhone используя Tapatalk

Оффлайн TytovV

  • **
  • Сообщений: 94
  • РЕПУТАЦИЯ: 2
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
И в запросе ошибки, к примеру
РасходТоплива = Выборка , выборка чего? Должно быть
Выборка.Параметр


Отправлено с моего iPhone используя Tapatalk


Теги:
 

Перенос данных из 1с 82 БП (базовая) в 1с 82 БГУ (базовая)

Автор Владимир87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 6350
Последний ответ 06 Дек 2014, 17:40
от дфтын
Поиск по бае данных,(полнотекстовый поиск)

Автор kot_ooРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 3301
Последний ответ 19 Май 2014, 15:40
от kot_oo
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

Автор dollРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1256
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
"Задваивание" данных в отчете

Автор mashencev_antonРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 13
Просмотров: 5480
Последний ответ 15 Окт 2015, 11:21
от Mari_beginner
Как вызвать "Анализ субконто" из справочника "Контрагенты"

Автор EnigManРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 5750
Последний ответ 06 Фев 2012, 10:46
от cska-fanat-kz

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
158 Сообщений
alex0402
123 Сообщений
MuI_I_Ika MuI_I_Ika
55 Сообщений
Norfolk
52 Сообщений
LexaK
50 Сообщений
alexandr_ll
23 Сообщений
друган
20 Сообщений
Константин5825
18 Сообщений
AsadRoman
18 Сообщений
MrLvovsky MrLvovsky
16 Сообщений

* Кто онлайн

  • Точка Гостей: 944
  • Точка Скрытых: 0
  • Точка Пользователей: 12
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal