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

Хранилище

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

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



> Сумма подчиненных документов          
bereznoy Подменю пользователя
сообщение 07.10.12, 21:34
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 329
Из: Simferopol
Спасибо сказали: 9 раз
Рейтинг: 0

Есть документ,в нем табличная часть, есть реквизит в строке ЗАКАЗ, там ссылка на заказ, на основании есть возвраты, как мне в мою ТЧ получить сумму связных возвратных накладных


Signature
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад

ignsv Подменю пользователя
сообщение 08.10.12, 8:21
Сообщение #2

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 193
Спасибо сказали: 60 раз
Рейтинг: 0

Таблица = ПолныеПрава.ПолучитьСписокДокументовПоКритериюОтбора("СвязанныеДокументы", ТекущийДокумент);

+ посмотрите в типовых конфигурациях как формируется список подчиненных док-ов


bereznoy Подменю пользователя
сообщение 08.10.12, 19:56
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 329
Из: Simferopol
Спасибо сказали: 9 раз
Рейтинг: 0

Цитата(ignsv @ 08.10.12, 9:21) *
Таблица = ПолныеПрава.ПолучитьСписокДокументовПоКритериюОтбора("СвязанныеДокументы", ТекущийДокумент);

+ посмотрите в типовых конфигурациях как формируется список подчиненных док-ов

Вс\ проблема в том что делаю все ПриВыводеСтроке и не ясно как получить именно сумму по возвратным накладным,
Таблица = ПолныеПрава.ПолучитьСписокДокументовПоКритериюОтбора("СвязанныеДокументы", Данныестроки.Заказ);

Как потом получить из этой таблицы сумму всех возвратных накладных?

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


Signature
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад

bereznoy Подменю пользователя
сообщение 08.10.12, 23:08
Сообщение #4

Оратор
*****
Группа: Пользователи
Сообщений: 329
Из: Simferopol
Спасибо сказали: 9 раз
Рейтинг: 0

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

КонецЦикла;


Signature
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад

logist Подменю пользователя
сообщение 09.10.12, 7:51
Сообщение #5

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

Цитата(bereznoy @ 09.10.12, 0:08) *
если один возврат то проблем нет, а если несколько, то цифра не ясно как вообще получилась

Стоит использовать не "Сделка", а документ продажи указываемый в ТЧ Товары возврата. Как вариант smile.gif


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

bereznoy Подменю пользователя
сообщение 12.10.12, 22:05
Сообщение #6

Оратор
*****
Группа: Пользователи
Сообщений: 329
Из: Simferopol
Спасибо сказали: 9 раз
Рейтинг: 0

Проблемка небольшая получилась с запросом, делаю запрос по документам возвратным, где сделка = моему заказу, все это в процедуре ПриВыводе строки, проблема в том что считает два раза, т.е. задваивает, например два возвратных дока по заказу,
мой запрос удваивает сумму, вот собственно запрос

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

Пока Выборка1.Следующий() Цикл
    
    ДанныеСтроки.Возврат = Выборка1.СуммаВозврата + ДанныеСтроки.Возврат;

КонецЦикла;


Signature
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад

logist Подменю пользователя
сообщение 12.10.12, 22:18
Сообщение #7

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

Выборка = Запрос.Выполнить().Выбрать();
ДанныеСтроки.Возврат = 0;
Если Выборка.Следующий() Тогда
    ДанныеСтроки.Возврат = Выборка.СуммаВозврата + ДанныеСтроки.Возврат;
КонецЕсли;

думаю, как-то так.


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

Спасибо сказали: bereznoy,

bereznoy Подменю пользователя
сообщение 12.10.12, 22:35
Сообщение #8

Оратор
*****
Группа: Пользователи
Сообщений: 329
Из: Simferopol
Спасибо сказали: 9 раз
Рейтинг: 0

Цитата(logist @ 12.10.12, 23:18) *
Выборка = Запрос.Выполнить().Выбрать();
ДанныеСтроки.Возврат = 0;
Если Выборка.Следующий() Тогда
    ДанныеСтроки.Возврат = Выборка.СуммаВозврата + ДанныеСтроки.Возврат;
КонецЕсли;

думаю, как-то так.



Вот так вроде бы правильно считает
Выборка = Запрос.Выполнить().Выбрать();
ДанныеСтроки.Возврат = 0;

Пока Выборка.Следующий()=1 Цикл
ДанныеСтроки.Возврат = Выборка.СуммаВозврата + ДанныеСтроки.Возврат;
КонецЦикла;


Жму кнопочку - спасибо


Signature
Ковыряю 1С 8.2.14.528 конфигурация УТП ред. 1.2.1.3
1С 8.3 (8.3.1.531) конфиг УТ 2.3.16.1
1С 7.7 Торговля+Склад

logist Подменю пользователя
сообщение 13.10.12, 9:06
Сообщение #9

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

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

Не пойму зачем вы загоняете подсчет в цикл, если вы запросом получаете итог, и он находится в первой позиции выборки, т.е. мой вариант с Если должен считать правильно.
Или перепишите запрос, вместо Итогов используйте СУММА(), глупо гонять цикл, если цифру можно получить запросом.


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

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


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

 

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