|
Получить на дату документ остатка | ☑ | ||
---|---|---|---|---|
0
tertva_1C
27.09.11
✎
14:33
|
Всем привет!
Народ а подскажите как запросом получить документ от которго на определенную дату сформировался ДТ или КТ остаток... |
|||
1
butterbean
27.09.11
✎
14:34
|
это последний по очереди документ к этому моменту
|
|||
2
Wobland
27.09.11
✎
14:35
|
ВЫБРАТЬ ПЕРВЫЕ 1 ... УПОРЯДОЧИТЬ ПО Дата Убыв
|
|||
3
tertva_1C
27.09.11
✎
14:36
|
далеко не факт.. поступило 100р по контрагенту, списали 50 висит Кт остаток сформированный документом поступления
|
|||
4
DrShad
27.09.11
✎
14:37
|
(3) телепаты в отпуске, так что сорри
пиши нормально что нужно |
|||
5
tertva_1C
27.09.11
✎
14:37
|
хотя ... надо попробовать...
|
|||
6
butterbean
27.09.11
✎
14:38
|
(5) можешь добавить условие на Приход > 0
|
|||
7
tertva_1C
27.09.11
✎
14:38
|
хорошо например 60 счет суммы могут быть по ДТ и КТ и надо выяснить по каким регистраторам образовалась та или другая задолжность..
|
|||
8
DrShad
27.09.11
✎
14:39
|
(6) в регистрах бухгалтерии нет Приход
|
|||
9
DrShad
27.09.11
✎
14:40
|
(7) теперь вопрос у тебя ведутся расчеты по расчетным документам или по договору в целом?
|
|||
10
tertva_1C
27.09.11
✎
14:41
|
и так и так к сожалению....
|
|||
11
DrShad
27.09.11
✎
14:42
|
(10) ну и как же ты собираешься получать документ?
|
|||
12
tertva_1C
27.09.11
✎
14:43
|
(11)по контрагенту
|
|||
13
DrShad
27.09.11
✎
14:44
|
(12) у тебя выходит минимум два алгоритма
|
|||
14
unregistered
27.09.11
✎
14:45
|
Текущий остаток может формироваться не одним конкретным документом, а довольно длинной цепочкой последовательных движений как в Дт так и с Кт счета, сделанных самыми различными документами (в том числе Корректировка долга, Операция Бух, Корректировка записей регистров и т.п.).
Сформулируй задачу. |
|||
15
DrShad
27.09.11
✎
14:45
|
(11) и наконец-то прочитай правила форума!
|
|||
16
Ненавижу 1С
гуру
27.09.11
✎
14:46
|
||||
17
tertva_1C
27.09.11
✎
14:49
|
(14) вот мне и надо получить именно такой документ, не какой нибудь конкретного типа а тот который образовывает остаток
|
|||
18
DrShad
27.09.11
✎
14:52
|
(17) ты не понял, ну к примеру ты получишь бух справку, но она не служит документом расчетов
|
|||
19
tertva_1C
27.09.11
✎
14:54
|
почему, может, АВИЗО например
|
|||
20
DrShad
27.09.11
✎
15:05
|
(19) может
|
|||
21
tertva_1C
28.09.11
✎
08:07
|
В общем решение у меня такое делаем первый запрос Запрос.Текст = "ВЫБРАТЬ
| ДанныеПоОстаткам.Организация, | ДанныеПоОстаткам.Счет, | ДанныеПоОстаткам.Субконто1 КАК Субконто1, | СУММА(ДанныеПоОстаткам.СуммаКонечныйОстатокДт) КАК СуммаКонечныйОстатокДт, | СУММА(ДанныеПоОстаткам.СуммаКонечныйОстатокКт) КАК СуммаКонечныйОстатокКт |ИЗ "; если НЕ ЗначениеЗаполнено(Подразделение) тогда Запрос.Текст = Запрос.Текст + " РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(,&ДатаОстатков,,, Счет = &СчетаКД, , ) КАК ДанныеПоОстаткам " иначе Запрос.Текст = Запрос.текст + " РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(,&ДатаОстатков,,, Счет = &СчетаКД, , Подразделение = &Подразделение) КАК ДанныеПоОстаткам"; КонецЕсли; Запрос.Текст = Запрос.Текст +" |СГРУППИРОВАТЬ ПО | ДанныеПоОстаткам.Организация, | ДанныеПоОстаткам.Счет, | ДанныеПоОстаткам.Субконто1 | |УПОРЯДОЧИТЬ ПО | Субконто1"; Запрос.УстановитьПараметр("СчетаКД", СчетаКД); Запрос.УстановитьПараметр("ДатаОстатков", КонецДня(ДатаОстатков)); Запрос.УстановитьПараметр("Подразделение",Подразделение); ТаблицаСДанными = Запрос.Выполнить().Выгрузить(); затем второй запрос = новый запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ОстаткиИОбороты.Субконто1 КАК Контрагент, | ОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаКонечныйДт, | ОстаткиИОбороты.СуммаКонечныйОстатокКт КАК СуммаКонечныйКт, | ОстаткиИОбороты.Субконто2 КАК Регистратор |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(, &ДатаК, , , Счет В (&МассивСчетов), &ВидыСубконто, Организация = &Организация) КАК ОстаткиИОбороты |ГДЕ | (ОстаткиИОбороты.СуммаКонечныйОстатокДт > 0 | ИЛИ ОстаткиИОбороты.СуммаКонечныйОстатокКт > 0) | И ОстаткиИОбороты.Субконто1 В(&Контрагенты) |ИТОГИ | СУММА(СуммаКонечныйДт), | СУММА(СуммаКонечныйКт) |ПО | Контрагент |АВТОУПОРЯДОЧИВАНИЕ" ; МассивСчетов = ТаблицаСДанными.ВыгрузитьКолонку("Счет"); МассивСчетов = ОбщегоНазначения.УдалитьПовторяющиесяЭлементыМассива(МассивСчетов); МассивКонтрагентов = ТаблицаСДанными.ВыгрузитьКолонку("Субконто1"); ВидыСубконто = Новый Массив(); ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты); ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ДокументыРасчетовСКонтрагентами); Запрос.Параметры.Вставить("ВидыСубконто", ВидыСубконто); Запрос.Параметры.Вставить("МассивСчетов", МассивСчетов); Запрос.Параметры.Вставить("Организация", ЭтаФорма.ЭлементыФормы.Организация.Значение); Запрос.Параметры.Вставить("Контрагенты", МассивКонтрагентов); Запрос.УстановитьПараметр("ДатаК",КонецДня(ДатаОстатков)); ТаблицаСДанными = Запрос.Выполнить().Выгрузить(); и дальше выборкой с обходом ... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |