Выборка из Журнала Расчетов.

  • Автор темы Ramzay
  • Дата начала
R

Ramzay

#1
Как выбрать записи из журнала расчетов за несколько периодов регистрации по всем объектам?
Ж=СоздатьОбъект("ЖурналРасчетов.Заралата");
Ж.ВыбратьЗаписиПодскажитеПоКакомуПризнакуИхМожноВыбратьСНачалаДоКонцаГода() ????????
Пока Ж.ПолучитьЗапись()=1 Цикл
. . .
 
J

jcnby

#2
кхм ....
Задай Дату Начали Дату конца .... если ты хочешь выбирать отдельно по месяцам, тогда юзай цикл :
1. ДатаНачалаГода
2. ТекущаяДата
3. Гони по циклу Для ы=1 По Текущая дата - Естевственно что ТекущуюДату нужно будет оформить как число месяца ( в синтаксис помочнике посмотришь);
4.В начале цикла Задаешь переменную Даты = с начала года
5. В конце Цикла делаешь КонМесяца(Дата)+1 - т.е. переходим на новый месяц.
6. И так по кругу - но это очень долго) Проще Задать Интервал от начала года и до нужного месяца , через Ж.ВыбратьЗаписи(Начало,Конец);
 
R

Ramzay

#3
Т.е. ты хочешь сказать, что нужно задать цикл переборки месяцев нужного периода и в этом цикле организвать еще один цикл, в котором пользуясь методом Ж.ВыбратьПериод() выбирать записи за месяц.
Код:
НачДата='01.01.2009'; КонДата='31.12.2009'; Ы=НачДата;
Пока Ы<КонДата Цикл
Ж.СоздатьОбъект("ЖурналРасчетов.Зарплата");
Ж.ВыбратьПериод(Ы);
Пока Ж.ПолучитьЗапись()=1 Цикл
. . .
КонецЦикла;
Ы=ДобавитьМесяц(Ы,1);
КонецЦикла
Да, такой способ будет работать и выбирать то, что нужно. Но согласитесь это через*цензура*ый способ.
А Ж.ВыбратьЗаписи(Начало,Конец) использовать нельзя потому что выберутся записи, действующие (нужно зарегистрированные).
 
J

jcnby

#4
брррр.... что ты усложняешь))))
вот просто проверку можешь поставить ???? На регистрацию !
Выбрать(Начало, КОнец)
Если (проверка регистрации) Тогда
вот твои данные

Дело в том что в зависимости от ситуации используются разные конструкции, в твоем случае( ето я понял уже из последнего хоста:
1.Жрн.ВыбратьЗаписи(НачалоГода,КОнецГода) -Цикл
2. Проверка на регистрацию в данном периоде- и все...... больше ничего не нада))))
 
R

Ramzay

#5
брррр.... что ты усложняешь))))
вот просто проверку можешь поставить ???? На регистрацию !
Выбрать(Начало, КОнец)
Если (проверка регистрации) Тогда
вот твои данные

Дело в том что в зависимости от ситуации используются разные конструкции, в твоем случае( ето я понял уже из последнего хоста:
1.Жрн.ВыбратьЗаписи(НачалоГода,КОнецГода) -Цикл
2. Проверка на регистрацию в данном периоде- и все...... больше ничего не нада))))
Так нельзя.
Жрн.ВыбратьЗаписи(НачалоГода,КОнецГода) - выбирает записи, которые действуют в течение года. В эту выборку не попадут записи, которые действуют в декабре прошлого года и зарегистрированы в этом году.
 
J

jcnby

#6
А они туда и не должны попадать ..... их там ваобще не должно быть) возможно они зарегистрированы в декабре а действуют в январе?))))))))))))))))0

Что касается , если всетаки нада, то выбирай с декабря 08 по 31,12,09
и ставь проверку на дату- если она попадает на Декабрь 8-го года, тогда проверяй на регистрацию нужного года, в остальном все так же ....

Складывается у меня впечатление что вы не совсем представляете что хотите сделать, и ваобще не представляете как это делается.......
 
B

Bania

#7
По-моему, в запросе период регистрации: Период С ПО; период действия: С ПО. Или наоборот, точно не помню. То бишь попробуйте через запрос
 
R

Ramzay

#8
По-моему, в запросе период регистрации: Период С ПО; период действия: С ПО. Или наоборот, точно не помню. То бишь попробуйте через запрос
Сказанное относится к языку запросов. Запросом, к великому счастью, можно. А что, простым циклом невозможно?