Имя: Пароль:
1C
1С v8
Возможно ли вывод данных в строке табличной части документа?
,
0 KOXEL
 
29.03.13
11:46
Возможно ли вытворить такое?

Табличная часть документа. В нем реквизиты Дата, Оплачено, Долг.

--------------------------
дата       оплачено  долг
01.01.2013   100     100
02.01.2013   50      150
03.01.2013   200     350
...
--------------------------

Нужно чтобы в на пересечении столбца Долг и строк показывал долг на дату в текущей строке. Данные будет брать из регистра накопления где будут те же реквизиты.
В форме списка что-то подобное возможно, а как на счет табличной части документа? Заранее благодарю.
1 olegves
 
29.03.13
12:07
возможно
зы: УФ?
2 KOXEL
 
29.03.13
14:18
(1) Да, УФ. В форме списка можно включать произвольный запрос, а в табличной части как?
3 KOXEL
 
29.03.13
21:36
Замучился уже...нужна помощь

Вот табличная часть документа

--------------------------
 период    продукт количество цена   сумма   суммапродажи
01.01.2013   сорт 1    1        50      50        50
02.01.2013   сорт 1    2        50      100       150
03.01.2013   сорт 1    3        50      150       300
...
--------------------------

Регистр накопления, вид - Остатки

--------------------------

измерения      Ресурсы

Номенклатура   СуммаПродажи
ДеньМесяца

--------------------------

&НаКлиенте
Процедура ТабличнаяЧастьНоменклатураПриИзменении(Элемент)
   ТекущаяСтрока = Элементы.ТабличнаяЧасть.ТекущиеДанные;
   ТекущаяСтрока.СуммаПродажи = ОстаткиПоВзаиморасчетам(ТекущаяСтрока.Номенклатура, ТекущаяСтрока.Период); // СуммаПродажи
КонецПроцедуры

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

У меня выбирает по строкам, т.е. точно так как в регистре.

--------------------------
 период    продукт количество цена   сумма   суммапродажи
01.01.2013   сорт 1    1        50      50        50
02.01.2013   сорт 1    2        50      100       100
03.01.2013   сорт 1    3        50      150       150
...
--------------------------

А нужно чтоб суммировал, в каждой новой строке показывал сумму предыдущих строк в колонке сумма. Как показал выше.
4 KOXEL
 
01.04.13
12:55
Подскажите пожалуйста, нужно отобрать период от начало месяца до текущей даты, как это сделать в этом запросе?

Запрос.Текст =
     "ВЫБРАТЬ
     |    ВзаиморасчетыСКлиентамиОстатки.ДеньМесяца,
     |    ВзаиморасчетыСКлиентамиОстатки.Номенклатура,
     |    ВзаиморасчетыСКлиентамиОстатки.СуммаПродажиОстаток,
     |    ВзаиморасчетыСКлиентамиОстатки.СуммаОплатыОстаток
     |ИЗ
     |    РегистрНакопления.ВзаиморасчетыСКлиентами.Остатки(
     |            ,
     |            Контрагент = &Контрагент
     |                И Номенклатура = &Номенклатура
     |                И ДеньМесяца = &ДеньМесяца) КАК ВзаиморасчетыСКлиентамиОстатки";
   Запрос.УстановитьПараметр("Контрагент", Контрагент);
   Запрос.УстановитьПараметр("Номенклатура", Номенклатура);    
   Запрос.УстановитьПараметр("ДеньМесяца", Период);
5 wise
 
01.04.13
12:58
6 KOXEL
 
01.04.13
13:15
(5) у меня регистр накопления
7 RomaH
 
naïve
01.04.13
13:20
доп реквизит спсика ТЧ (добавить кнопку нажми)
и при изменении даты и при чтении объекта пересчитывай эту колонку
8 KOXEL
 
01.04.13
14:23
(7) у меня колонка дата не активна, не хочу чтоб его изменяли.
Данные беру из регистра накопления

http://i072.radikal.ru/1304/f0/f6cab952d7db.jpg

а вставляю в колонку "Cem mebleg".

http://s005.radikal.ru/i212/1304/4d/aacc2a29cff4.jpg

У меня берет ту цифру которая записана в регистре, а нужно что суммировала, т.е. допустим для позиции 32,5 к 04.03.2013 было не 1100 а 2100 так как в 01.03.2013 есть еще 1000.
9 cw014
 
01.04.13
14:27
(8) ОМГ... Muhte?em Y?zy?l???
10 MSII
 
01.04.13
14:41
Таблица ОстаткиИОбороты, итоги периодами, пробовал?
11 KOXEL
 
01.04.13
14:45
(10) неа, сейчас пороемся
12 mzelensky
 
01.04.13
14:48
(8) у тебя отобрали клаву с русскими буковками?!
13 KOXEL
 
01.04.13
14:53
(12) Вот вам русский, объясните пожалуйста как отобрать итог на дату?
"ВЫБРАТЬ
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.Период,
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.ДеньМесяца,
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.Номенклатура,
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.Контрагент,
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.СуммаПродажиПриход,
     |    ВзаиморасчетыСКлиентамиОстаткиИОбороты.СуммаПродажиОборот
     |ИЗ
     |    РегистрНакопления.ВзаиморасчетыСКлиентами.ОстаткиИОбороты(
     |            ,
     |            ,
     |            День,
     |            ,
     |            Контрагент = &Контрагент
     |                И Номенклатура = &Номенклатура
     |                И ДеньМесяца = &ДеньМесяца) КАК ВзаиморасчетыСКлиентамиОстаткиИОбороты";
   Запрос.УстановитьПараметр("Контрагент", Контрагент);
   Запрос.УстановитьПараметр("Номенклатура", Номенклатура);    
   Запрос.УстановитьПараметр("ДеньМесяца", Период);
   ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать();
14 mzelensky
 
01.04.13
15:06
(13) конретно в чем проблема?!
15 KOXEL
 
01.04.13
15:15
(14) Если документ, в табличной части документа реквизиты: "Дата", "Продажа", "СуммаПродажиНаДату". Это документ закреплен к регистру накопления с видом остатки где Дата - измерение, а продажи - ресурсы. Хочу чтобы при нажатии кнопочки в колонке "СуммаПродажиНаДату" показывалось итог по продажу по даты в той же строке

Т.е.


Дата        Продажа СуммаПродажиНаДату
01.01.2013    100          100  
02.01.2013    50           150
03.01.2013    150          300
...
16 mzelensky
 
01.04.13
15:24
(15) что-то ты лабуду какую-то написал!

Что такое в твоем понимании "ПРОДАЖА" ?! и чем она отличается от "Сумма продажи на дату" ?!

ты изложить можешь по-человечески?!
17 hhhh
 
01.04.13
15:47
похоже сумма продажи на дату нарастающим итогом накапливается
18 KOXEL
 
01.04.13
16:54
(16) Тем что в "Сумма продажи на дату" с каждой строкой сумма увеличивается на сумму продажи в текущей строке.
(17) Да
19 KOXEL
 
01.04.13
16:58
Написал

Дата        Продажа СуммаПродажиНаДату
01.01.2013    100          100  

Провел. В регистр накопления попали данные. Нажал КНОПКУ в форме документа в реквизите ТЧ СуммаПродажиНаДату показал итог суммы за период 01.01.2013.
20 KOXEL
 
01.04.13
16:59
Написал

Дата        Продажа СуммаПродажиНаДату
02.01.2013    50           150  

Провел. Нажал КНОПКУ в форме документа в реквизите ТЧ СуммаПродажиНаДату показал итог суммы за период 02.01.2013.
21 olegves
 
03.04.13
14:38
ты (5) то посмотри, подумай
22 Xatori
 
03.04.13
14:51
Запросом так не получится сделать, получай свои продажи в ТЗ и обрабатывай данные до вывода на экран.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший