|
|
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Нужно выбрать итоги по датам после выполнение бухгалтерского запроса. Итоги.СоздатьЗапрос(НачДата, КонДата, "10.1", , , , , период ) ; //Значение итогов нужно получить с учетом субконто. Итоги.ВыбратьПериоды() Пока Итоги.ПолучитьПериод()=1 Цикл П=ПолучитьПериод(); Итоги.ВыбратьСубконто(); Пока Итоги.ПолучитьСубконто()=1 Цикл .......... ......... КонецЦикла; КонецЦикла; Например, пользователь выбирает период с 1.06.2009 по 1.08.2009 и деталицию по периодам в диалоге, со значением "месяц", которое передается переменной "период", заданной в запросе. Как получить в коде значение каждого из периодов? Я пробовал сделать это способом, который описан кодом выше. Но переменная П имеет в этом случае значение 0. В доке ничего не нашел по этому вопросу, поэтому прошу помощи здесь. Кто знает, как получить период кодом внутри периода, помогите. Для наглядности, если слегка сумбурно описал, визуальный пример результата. Июнь Июль Август Итоги Итоги Итоги ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 13:40 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
По моему там просто итоги.начдата и итоги.кондата ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 16:44 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
сначала список с датами начал периодов а после запроса к итогам ПолучитьПериод(,датаначалапериода) уже перед выводом будешь знать что за период будет выведен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 17:37 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Last1Cmen, а как получить этот список? Я понимаю, вы имеете ввиду список значений. Но все равно как в него записать даты начал периодов не совсем понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 04:44 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Neiroromantik, А ведь Программист1с тебе все правильно написал. Ты когда выбираешь период то в перменных запроса итоги.начдата и итоги.кондата содержатся нужные тебе даты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 09:05 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Reder, да, все верно. Можно получить дату начала и конца периода, выбранного пользователем. Но пользователь может выбирать период и три месяца, и декаду, и год. Например, пользователь выбирает период, включающий в себя три месяца. По условию отчета нужно вывести сальдо по каждому из этих месяцев. Соответственно необходимо указать в отчете период по каждому месяцу(датуначала и датуконца). Как получить начальную и конечную дату отдельно по каждому месяцу, входящему в период? Может есть какая-нибудь функция специально для этих целей? В доке я таких примеров не нашел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 10:00 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
есть функция периодстр(итоги.начдата,итоги.кондата), она тебе и вернёт строковое представление проблема если периоды будут скажем не месяц а неделя (не говоря уже о операциях и проводках)... по-этому и перед запросом определить все нач. даты периодов чтоб вывести в виде (1я неделя, 2я неделя и т.д.) если же речь идет о опрециях и проводках то там уже получать из других источников (даты то одинаковые) и метод ПолучитьПериод(,начпериода) уже не то что необходимо т.е. подводя итог если нет крайней необходиомсти разворота до операций и проводок и устроит строковое представление периодов то используй Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. если разворачивать пероды надо "вправо" то в любом случае без списка перодов не обойтись... сначала выводишь шапку списка (в который вносишь значения первого прохода по выборке периодов) а итоги уже получаешь позиционированием на дату из списка (это ещё раз заостряю внимание если детализация не до операции или проводки... там немного по другому позиционироваться надо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 11:15 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Извиняюсь, что исчез на неделю в теме, в которой сам же в 1-ую очередь заинтересован, много было др. работы, не связанной с 1с. С помощью функции периодстр можно получить строковое представление периода. Но с условием разбиения периода внутри периода, она пока не очень полезна без конечной даты. Lastmen, сделал как ты и советовал. Создал даты начал периода, пока для примера, чтобы разобраться. Взял в диалоге период четыре месяца и записал даты начал каждого из месяцев в список значений. Далее Для итая по Даталист.РазмерСписка Цикл номердаты=получитьЗначение(итая); Итоги.ВыбратьПериоды; П= Итоги.ПолучитьПериод(, номердаты); Итоги.ВыбратьСубконто(); Пока Итоги.ПолучитьСубконто()=1 Цикл .......... ......... КонецЦикла; КонецЦикла; Смотрю через отладчик. На первой итерации переменная П имеет значение 1. А на последующих повторениях цикла 0. Т.е. получается, что цикл дальше работает вхолостую и следующие периоды не выбираются. Как мне перебрать все периоды, входящие в список? Параметр у ПолучитьПериод задан верно, т.е. имеет значение типа дата, проверял. Не понимаю почему на следующих повторениях цикла переменная П имеет значение 0, на не 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2009, 13:06 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
перед последущим периодом ВыбратьПериоды делаешь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2009, 13:38 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Last1Cmen, да, делаю Для итая по Даталист.РазмерСписка Цикл номердаты=получитьЗначение(итая); Итоги.ВыбратьПериоды; П= Итоги.ПолучитьПериод(, номердаты); .................................... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2009, 10:15 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
вот код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. выводит 1 1 1 :) если берёшь не целые периода от есть "подводный" камешек... скажем если период "неделя" то если начало недели не попадает в рамки запроса по итогам то и периода не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2009, 10:53 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
Last1Cmen, Спасибо,так работает. Я количество запятых неверное ставил в параметрах запроса. Теперь думаю как организовать вывод на каждой итерации цикла итогов по текущим периодам. Наверное, лучше использовать таблицу значений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2009, 04:14 |
|
||
|
Выбор периода итогов в бухгалтерском запросе.
|
|||
|---|---|---|---|
|
#18+
на момент получения итога могёшь обращаться к стандартным ф-циям получения данных... они ведь уже расчитаны на этот период т.е. после ПолучитьПериод у тебя доступны все данные (как в параметрах запроса написал) на этом уровне если чет хитрое там группировать надо то может и таблицей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2009, 14:06 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=36214134&tid=1523233]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
176ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 538ms |

| 0 / 0 |
