Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Арифметические операции с результатами запроса          
meverikxp Подменю пользователя
сообщение 27.05.11, 11:14
Сообщение #1

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Здравствуйте, как реализовать арифметическую операцию у же после текста самого запроса. типа:
ВЫБРАТЬ СУММА (Количество) КАК Кол, СУММА(Сумма) КАК Сум
ИЗ
Документ.Приходная

Результат=Запрос.выполнить().Выбрать()
Пока Результат.Следующий Цикл
         Цена=Результат.Сум/Результат.Кол
КонецЦикла

Спасибо?


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

Batchir Подменю пользователя
сообщение 27.05.11, 11:31
Сообщение #2

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1426 раз
Рейтинг: 0

Запрос = Новый Запрос;
    ТекстЗапроса = "
    |ВЫБРАТЬ СУММА (Количество) КАК Кол,
    |СУММА(Сумма) КАК Сум
    |ИЗ
    |Документ.Приходная
    |";
    Запрос.Текст = ТекстЗапроса;
    РезультатЗапроса = Запрос.Выполнить();
    Если Не РезультатЗапроса.Пустой() Тогда
        // обходим результат зароса
        Выборка = РезультатЗапроса.Выбрать();
        Пока Выборка.Следующий() Цикл
            Цена=Выборка.Сум/Выборка.Кол
        КонецЦикла;  
    Иначе
        // обрабатываем пустой результат
    КонецЕсли;

Vofka Подменю пользователя
сообщение 27.05.11, 11:36
Сообщение #3

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Ахренеть. Вот я специально открыл доступ и "уважаемым посетителям" к базе знаний, т.к. вменяемы человек должне понимать для чего этот раздел. Ну задавать в нём вопросы - это ж уже через счур.
1. Переезжаем;
2. meverikxp, переводим в группу "пользователь".

meverikxp Подменю пользователя
сообщение 27.05.11, 11:47
Сообщение #4

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Ошибка:

{Форма.ФормаОтчета(59)}: Перетворення значення к типу Число не може бути виконано


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

Batchir Подменю пользователя
сообщение 27.05.11, 12:11
Сообщение #5

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1426 раз
Рейтинг: 0

Я описал шаблон, текст запроса уже вы должны сами написать и уж тем более сами контролировать какого типа у Вас "цена"

meverikxp Подменю пользователя
сообщение 27.05.11, 12:26
Сообщение #6

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(Batchir @ 27.05.11, 12:11) *
Я описал шаблон, текст запроса уже вы должны сами написать и уж тем более сами контролировать какого типа у Вас "цена"

Да все данные должны быть в типе число


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

Vofka Подменю пользователя
сообщение 27.05.11, 12:40
Сообщение #7

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Функция есть
Число()


Я вас умоляю, откройте книгу icon_20050121.gif

meverikxp Подменю пользователя
сообщение 27.05.11, 12:48
Сообщение #8

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(Vofka @ 27.05.11, 12:40) *
Функция есть
Число()


Я вас умоляю, откройте книгу icon_20050121.gif

Уже делал, та же ошибка


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

DartRomanius Подменю пользователя
сообщение 27.05.11, 12:49
Сообщение #9

Ветеран
Иконка группы
Группа: Местный
Сообщений: 824
Из: Запорожье
Спасибо сказали: 145 раз
Рейтинг: 0

19000000.gif


Signature
-----------------------------------------------------------------------------------
Единственный, интуитивно понятный интерфейс - мамкина сиська!
Всему остальному надо учиться! (с) Не знаю кто....

Vofka Подменю пользователя
сообщение 27.05.11, 12:54
Сообщение #10

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

А я знаю правильный ответ. Но не скажу 16000000.gif . Я искринне надеюсь, что вы сами додумаетесь (дочитаетесь).

И это, честно говоря, меня убивает:
Цитата
Спасибо?

Очень интересный вопрос.

meverikxp Подменю пользователя
сообщение 27.05.11, 14:51
Сообщение #11

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(Vofka @ 27.05.11, 12:54) *
А я знаю правильный ответ. Но не скажу 16000000.gif . Я искринне надеюсь, что вы сами додумаетесь (дочитаетесь).

И это, честно говоря, меня убивает:

Очень интересный вопрос.

Ну я и баран, все действительно просто. Надо было написать
 Если ПустаяСтрока(Выборка.Количество) Тогда
Иначе
Цена = Выборка.Сумма/Выборка.Количество;
КонецЕсли
;
вот и все, и не надо даже проверять на постой запрос


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

logist Подменю пользователя
сообщение 27.05.11, 15:21
Сообщение #12

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

А почему не:
 Если НЕ ПустаяСтрока(Выборка.Количество) Тогда
        Цена = Выборка.Сумма/Выборка.Количество;
КонецЕсли;


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Batchir Подменю пользователя
сообщение 27.05.11, 15:51
Сообщение #13

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1426 раз
Рейтинг: 0

Цитата
вот и все, и не надо даже проверять на постой запрос

1. К пониманию проверки на пустой результат запроса Вы придете чуть позже ...
2. Если есть строки в документе с пустыми количествами и эти строки обрабатывать не нужно, то опишите запрос таким образом что бы в его результате не было этих строк.

meverikxp Подменю пользователя
сообщение 27.05.11, 15:54
Сообщение #14

Оратор
Иконка группы
Группа: Местный
Сообщений: 334
Из: Ровно
Спасибо сказали: 10 раз
Рейтинг: 0

Цитата(logist @ 27.05.11, 15:21) *
А почему не:
 Если НЕ ПустаяСтрока(Выборка.Количество) Тогда
        Цена = Выборка.Сумма/Выборка.Количество;
КонецЕсли;

Можно и так, но есть действие которое нужно выполнить если условие удовлетворится.


Signature
Самая нелюбимая пословица сапёров: одна нога здесь, другая там...

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 24.04.24, 10:22
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!