Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 04:56

Помогите свернуть документы!

Автор Julia_fav, 31 окт 2013, 08:19

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

Julia_fav

Добрый день! В 1С 8 необходимо реализовать следующую обработку: Свернуть табличные части документов реализации за период, таким образом чтобы сумма свернутого документа например № 1 была  - 50тыс. № 2 - 40тыс.  и т.д. ( ну где то по 2-3 документа за дату). Так вот никак не могу сообразить как сделать так чтобы происходило отделение строк таб. части в доке. к примере в таб. части след. стр№ 1 - 5тыс., стр №2 - 25тыс. стр № 3 - 30тыс. так вот нужно чтобы в примеру от стр№ 3 взялось только 20тыс. и собралось в реализацию. И еще как хранить оставшиеся позиции тоже не ясно...... Заранее спасибо.

wise

Не огорчаюсь, если люди меня не понимают, - огорчаюсь, если я не понимаю людей.(c)

Julia_fav, можно ПОПОДРОБНЕЕ...
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

Julia_fav

Есть большое количество документов по реализации, клиент не хочет видеть все это количество по различным ИП в 1С, которая предназначена для сдачи отчетность. Чеки пробиваются большими суммами в количество 2-5 штук в день. Суммы по оплата я уже записала в созданный регистр сведения "данные оплат". Так вот необходимо пройти по всем реализациям за период вытащить таб.часть (это я сделала). И сравнив построчно в оплатой в этот день создать на реализацию = оплате в этот день. Проблема возникает тогда когда не всю таб часть нужно записать в новый документ. вероятно моих знаний просто не хватает. Частично нужно убрать. К примеру реализ № 1 (умещается), реализ № 2 (умещается), а вот в третий нужно убрать часть. Не ясно где хранить ? И условие никак не могу сообразить какое ???

wise

я ПОДОБНОЕ делал...
сейчас запрос найду... только я документы на суммы выбирал...

Добавлено: 31 окт 2013, 09:57


подпили под свою задачу... :-)

{
//************************************************************
//
Функция ПолучитьПросроченныеРеализации(Контрагент, ТоргПредставитель, СуммаДолга, НаДату)
   ТекДата = НаДату - rcОдинДень()*(Константы.rcСтопЛистДопОтсрочка.Получить()+
                              Контрагент.ОсновнойДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности);
   Запрос = Новый Запрос;
   Запрос.Текст = "ВЫБРАТЬ
                  |   ВложенныйЗапрос.Ссылка КАК ДокументРеализация,
                  |   ВложенныйЗапрос.СуммаДокумента,
                  |   ВЫБОР
                  |      КОГДА ВложенныйЗапрос.СуммаДокументаИтог <= &Долг
                  |         ТОГДА ВложенныйЗапрос.СуммаДокумента
                  |      ИНАЧЕ ВложенныйЗапрос.СуммаДокумента + &Долг - ВложенныйЗапрос.СуммаДокументаИтог
                  |   КОНЕЦ КАК ДолгДокумента
                  |ИЗ
                  |   (ВЫБРАТЬ
                  |      РеализацияТоваровУслуг.Ссылка КАК Ссылка,
                  |      РеализацияТоваровУслуг.СуммаДокумента КАК СуммаДокумента,
                  |      СУММА(РеализацияТоваровУслуг1.СуммаДокумента) КАК СуммаДокументаИтог
                  |   ИЗ
                  |      Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
                  |         ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг1
                  |         ПО РеализацияТоваровУслуг.МоментВремени <= РеализацияТоваровУслуг1.МоментВремени
                  |   ГДЕ
                  |      РеализацияТоваровУслуг.Контрагент = &ВыбКонтрагент
                  |      И РеализацияТоваровУслуг.Проект = &ВыбТорпреда
                  |      И РеализацияТоваровУслуг.Проведен
                  |      И РеализацияТоваровУслуг.Дата < &ТекДата
                  |      И РеализацияТоваровУслуг1.Контрагент = &ВыбКонтрагент
                  |      И РеализацияТоваровУслуг1.Проект = &ВыбТорпреда
                  |      И РеализацияТоваровУслуг1.Проведен
                  |      И РеализацияТоваровУслуг1.Дата < &ТекДата
                  |   
                  |   СГРУППИРОВАТЬ ПО
                  |      РеализацияТоваровУслуг.Ссылка,
                  |      РеализацияТоваровУслуг.СуммаДокумента) КАК ВложенныйЗапрос
                  |ГДЕ
                  |   ВложенныйЗапрос.СуммаДокументаИтог - ВложенныйЗапрос.СуммаДокумента < &Долг
                  |
                  |УПОРЯДОЧИТЬ ПО
                  |   ВложенныйЗапрос.Ссылка.МоментВремени УБЫВ";
   
   Запрос.УстановитьПараметр("Долг", СуммаДолга);
   Запрос.УстановитьПараметр("ТекДата", ТекДата);
   Запрос.УстановитьПараметр("ВыбКонтрагент", Контрагент);
   Запрос.УстановитьПараметр("ВыбТорпреда", ТоргПредставитель);
   
   Результат = Запрос.Выполнить().Выгрузить();
   Возврат Результат;
КонецФункции // ПолучитьПросроченныеРеализации(СтрокаОстатков)
}
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

Julia_fav


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск